diff --git a/.openapi-generator/configs/gooddata-api-client.yaml b/.openapi-generator/configs/gooddata-api-client.yaml index b00459370..f624c4abd 100644 --- a/.openapi-generator/configs/gooddata-api-client.yaml +++ b/.openapi-generator/configs/gooddata-api-client.yaml @@ -1,5 +1,5 @@ # (C) 2022 GoodData Corporation -generatorName: python +generatorName: python-prior templateDir: /local/.openapi-generator/custom_templates appName: "GoodData api client OpenAPI definition" infoName: "GoodData (generated by OpenAPI Generator)" diff --git a/docker-compose.yaml b/docker-compose.yaml index f86f7bb78..6a5e742f0 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -397,6 +397,7 @@ services: condition: service_healthy environment: <<: [*java-opts, *quiver-env-vars] + JAVA_OPTS: "${JAVA_OPTS:--Xmx1G --add-opens=java.base/sun.net=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.nio=ALL-UNNAMED}" GRPC_CALCIQUE_HOST: calcique GRPC_CALCIQUE_PORT: 6577 GRPC_METADATA_HOST: metadata-api diff --git a/gooddata-api-client/.openapi-generator/FILES b/gooddata-api-client/.openapi-generator/FILES index 1912bf0d4..07aa05f83 100644 --- a/gooddata-api-client/.openapi-generator/FILES +++ b/gooddata-api-client/.openapi-generator/FILES @@ -84,12 +84,15 @@ docs/AlertCondition.md docs/AlertConditionOperand.md docs/AlertDescription.md docs/AlertEvaluationRow.md +docs/AllTimeDateFilter.md +docs/AllTimeDateFilterAllTimeDateFilter.md docs/AllowedRelationshipType.md docs/AnalyticsCatalogCreatedBy.md docs/AnalyticsCatalogTags.md docs/AnalyticsCatalogUser.md docs/AnalyticsModelApi.md docs/AnomalyDetection.md +docs/AnomalyDetectionConfig.md docs/AnomalyDetectionRequest.md docs/AnomalyDetectionResult.md docs/AnomalyDetectionWrapper.md @@ -137,8 +140,17 @@ docs/AutomationVisualExport.md docs/AutomationsApi.md docs/AvailableAssignees.md docs/AvailableDriversApi.md +docs/AwsBedrockAccessKeyAuth.md +docs/AwsBedrockAccessKeyAuthAllOf.md +docs/AwsBedrockProviderConfig.md +docs/AzureFoundryApiKeyAuth.md +docs/AzureFoundryApiKeyAuthAllOf.md +docs/AzureFoundryProviderAuth.md +docs/AzureFoundryProviderConfig.md +docs/BedrockProviderAuth.md docs/BoundedFilter.md docs/CSPDirectivesApi.md +docs/CertificationApi.md docs/ChangeAnalysisParams.md docs/ChangeAnalysisParamsFiltersInner.md docs/ChangeAnalysisRequest.md @@ -150,6 +162,7 @@ docs/ChatHistoryResult.md docs/ChatRequest.md docs/ChatResult.md docs/ChatUsageResponse.md +docs/ClusteringConfig.md docs/ClusteringRequest.md docs/ClusteringResult.md docs/ColumnLocation.md @@ -172,6 +185,8 @@ docs/ComputationApi.md docs/ContentSlideTemplate.md docs/CookieSecurityConfigurationApi.md docs/CoverSlideTemplate.md +docs/CreateKnowledgeDocumentRequestDto.md +docs/CreateKnowledgeDocumentResponseDto.md docs/CreatedVisualization.md docs/CreatedVisualizationFiltersInner.md docs/CreatedVisualizations.md @@ -300,6 +315,7 @@ docs/DeclarativeWorkspacePermissions.md docs/DeclarativeWorkspaces.md docs/DefaultSmtp.md docs/DefaultSmtpAllOf.md +docs/DeleteKnowledgeDocumentResponseDto.md docs/DependencyGraphApi.md docs/DependentEntitiesGraph.md docs/DependentEntitiesNode.md @@ -349,14 +365,19 @@ docs/FilterContextApi.md docs/FilterDefinition.md docs/FilterDefinitionForSimpleMeasure.md docs/FilterViewsApi.md +docs/ForecastConfig.md docs/ForecastRequest.md docs/ForecastResult.md docs/FoundObjects.md docs/Frequency.md docs/FrequencyBucket.md docs/FrequencyProperties.md +docs/GenerateDescriptionRequest.md +docs/GenerateDescriptionResponse.md docs/GenerateLdmRequest.md docs/GenerateLogicalDataModelApi.md +docs/GenerateTitleRequest.md +docs/GenerateTitleResponse.md docs/GeoAreaConfig.md docs/GeoCollectionIdentifier.md docs/GeographicDataApi.md @@ -414,7 +435,7 @@ docs/JsonApiAnalyticalDashboardOutMeta.md docs/JsonApiAnalyticalDashboardOutMetaAccessInfo.md docs/JsonApiAnalyticalDashboardOutRelationships.md docs/JsonApiAnalyticalDashboardOutRelationshipsAnalyticalDashboards.md -docs/JsonApiAnalyticalDashboardOutRelationshipsCreatedBy.md +docs/JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy.md docs/JsonApiAnalyticalDashboardOutRelationshipsDashboardPlugins.md docs/JsonApiAnalyticalDashboardOutRelationshipsDatasets.md docs/JsonApiAnalyticalDashboardOutRelationshipsFilterContexts.md @@ -748,6 +769,18 @@ docs/JsonApiLlmEndpointOutWithLinks.md docs/JsonApiLlmEndpointPatch.md docs/JsonApiLlmEndpointPatchAttributes.md docs/JsonApiLlmEndpointPatchDocument.md +docs/JsonApiLlmProviderIn.md +docs/JsonApiLlmProviderInAttributes.md +docs/JsonApiLlmProviderInAttributesModelsInner.md +docs/JsonApiLlmProviderInAttributesProviderConfig.md +docs/JsonApiLlmProviderInDocument.md +docs/JsonApiLlmProviderOut.md +docs/JsonApiLlmProviderOutDocument.md +docs/JsonApiLlmProviderOutList.md +docs/JsonApiLlmProviderOutWithLinks.md +docs/JsonApiLlmProviderPatch.md +docs/JsonApiLlmProviderPatchAttributes.md +docs/JsonApiLlmProviderPatchDocument.md docs/JsonApiMemoryItemIn.md docs/JsonApiMemoryItemInAttributes.md docs/JsonApiMemoryItemInDocument.md @@ -969,13 +1002,22 @@ docs/KeyDriversDimension.md docs/KeyDriversRequest.md docs/KeyDriversResponse.md docs/KeyDriversResult.md +docs/KnowledgeDocumentMetadataDto.md +docs/KnowledgeSearchResultDto.md docs/LDMDeclarativeAPIsApi.md docs/LLMEndpointsApi.md +docs/LLMProvidersApi.md docs/LabelIdentifier.md docs/LabelsApi.md docs/LayoutApi.md +docs/ListDatabaseInstancesResponse.md +docs/ListKnowledgeDocumentsResponseDto.md docs/ListLinks.md docs/ListLinksAllOf.md +docs/ListServicesResponse.md +docs/LlmModel.md +docs/LlmProviderAuth.md +docs/LlmProviderConfig.md docs/LocalIdentifier.md docs/LocaleRequest.md docs/ManageDashboardPermissionsRequestInner.md @@ -996,9 +1038,11 @@ docs/MemoryItemUser.md docs/MetadataCheckApi.md docs/MetadataSyncApi.md docs/Metric.md +docs/MetricDefinitionOverride.md docs/MetricRecord.md docs/MetricValueChange.md docs/MetricsApi.md +docs/ModelTestResult.md docs/NegativeAttributeFilter.md docs/NegativeAttributeFilterNegativeAttributeFilter.md docs/Note.md @@ -1014,6 +1058,10 @@ docs/NotificationsMeta.md docs/NotificationsMetaTotal.md docs/ObjectLinks.md docs/ObjectLinksContainer.md +docs/OpenAIProviderConfig.md +docs/OpenAiApiKeyAuth.md +docs/OpenAiApiKeyAuthAllOf.md +docs/OpenAiProviderAuth.md docs/Operation.md docs/OperationError.md docs/OptionsApi.md @@ -1032,6 +1080,7 @@ docs/Over.md docs/PageMetadata.md docs/Paging.md docs/Parameter.md +docs/PatchKnowledgeDocumentRequestDto.md docs/PdfTableStyle.md docs/PdfTableStyleProperty.md docs/PdmLdmRequest.md @@ -1094,6 +1143,7 @@ docs/ResultSpec.md docs/RouteResult.md docs/RsaSpecification.md docs/RulePermission.md +docs/RunServiceCommandRequest.md docs/RunningSection.md docs/SavedVisualization.md docs/ScanRequest.md @@ -1101,11 +1151,15 @@ docs/ScanResultPdm.md docs/ScanSqlRequest.md docs/ScanSqlResponse.md docs/ScanningApi.md +docs/SearchKnowledgeResponseDto.md docs/SearchRelationshipObject.md docs/SearchRequest.md docs/SearchResult.md docs/SearchResultObject.md +docs/SearchStatisticsDto.md docs/SectionSlideTemplate.md +docs/ServiceInfo.md +docs/SetCertificationRequest.md docs/Settings.md docs/SimpleMeasureDefinition.md docs/SimpleMeasureDefinitionMeasure.md @@ -1139,6 +1193,9 @@ docs/TabularExportRequest.md docs/TestConnectionApi.md docs/TestDefinitionRequest.md docs/TestDestinationRequest.md +docs/TestLlmProviderDefinitionRequest.md +docs/TestLlmProviderDefinitionRequestProviderConfig.md +docs/TestLlmProviderResponse.md docs/TestNotification.md docs/TestNotificationAllOf.md docs/TestQueryDuration.md @@ -1152,6 +1209,8 @@ docs/TotalResultHeader.md docs/TranslationsApi.md docs/TriggerAutomationRequest.md docs/TriggerQualityIssuesCalculationResponse.md +docs/UpsertKnowledgeDocumentRequestDto.md +docs/UpsertKnowledgeDocumentResponseDto.md docs/UsageApi.md docs/UserAssignee.md docs/UserContext.md @@ -1185,6 +1244,7 @@ docs/Value.md docs/VisibleFilter.md docs/VisualExportApi.md docs/VisualExportRequest.md +docs/VisualizationConfig.md docs/VisualizationObjectApi.md docs/Webhook.md docs/WebhookAllOf.md @@ -1192,6 +1252,9 @@ docs/WebhookAutomationInfo.md docs/WebhookMessage.md docs/WebhookMessageData.md docs/WebhookRecipient.md +docs/WhatIfMeasureAdjustmentConfig.md +docs/WhatIfScenarioConfig.md +docs/WhatIfScenarioItem.md docs/WidgetSlidesTemplate.md docs/WorkspaceAutomationIdentifier.md docs/WorkspaceAutomationManagementBulkRequest.md @@ -1223,6 +1286,7 @@ gooddata_api_client/api/attributes_api.py gooddata_api_client/api/automation_organization_view_controller_api.py gooddata_api_client/api/automations_api.py gooddata_api_client/api/available_drivers_api.py +gooddata_api_client/api/certification_api.py gooddata_api_client/api/computation_api.py gooddata_api_client/api/cookie_security_configuration_api.py gooddata_api_client/api/csp_directives_api.py @@ -1250,6 +1314,7 @@ 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/llm_providers_api.py gooddata_api_client/api/manage_permissions_api.py gooddata_api_client/api/metadata_check_api.py gooddata_api_client/api/metadata_sync_api.py @@ -1369,11 +1434,14 @@ gooddata_api_client/model/alert_condition.py gooddata_api_client/model/alert_condition_operand.py gooddata_api_client/model/alert_description.py gooddata_api_client/model/alert_evaluation_row.py +gooddata_api_client/model/all_time_date_filter.py +gooddata_api_client/model/all_time_date_filter_all_time_date_filter.py gooddata_api_client/model/allowed_relationship_type.py gooddata_api_client/model/analytics_catalog_created_by.py gooddata_api_client/model/analytics_catalog_tags.py gooddata_api_client/model/analytics_catalog_user.py gooddata_api_client/model/anomaly_detection.py +gooddata_api_client/model/anomaly_detection_config.py gooddata_api_client/model/anomaly_detection_request.py gooddata_api_client/model/anomaly_detection_result.py gooddata_api_client/model/anomaly_detection_wrapper.py @@ -1415,6 +1483,14 @@ gooddata_api_client/model/automation_slides_export.py gooddata_api_client/model/automation_tabular_export.py gooddata_api_client/model/automation_visual_export.py gooddata_api_client/model/available_assignees.py +gooddata_api_client/model/aws_bedrock_access_key_auth.py +gooddata_api_client/model/aws_bedrock_access_key_auth_all_of.py +gooddata_api_client/model/aws_bedrock_provider_config.py +gooddata_api_client/model/azure_foundry_api_key_auth.py +gooddata_api_client/model/azure_foundry_api_key_auth_all_of.py +gooddata_api_client/model/azure_foundry_provider_auth.py +gooddata_api_client/model/azure_foundry_provider_config.py +gooddata_api_client/model/bedrock_provider_auth.py gooddata_api_client/model/bounded_filter.py gooddata_api_client/model/change_analysis_params.py gooddata_api_client/model/change_analysis_params_filters_inner.py @@ -1427,6 +1503,7 @@ 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/chat_usage_response.py +gooddata_api_client/model/clustering_config.py gooddata_api_client/model/clustering_request.py gooddata_api_client/model/clustering_result.py gooddata_api_client/model/column_location.py @@ -1447,6 +1524,8 @@ gooddata_api_client/model/compound_measure_value_filter.py gooddata_api_client/model/compound_measure_value_filter_compound_measure_value_filter.py gooddata_api_client/model/content_slide_template.py gooddata_api_client/model/cover_slide_template.py +gooddata_api_client/model/create_knowledge_document_request_dto.py +gooddata_api_client/model/create_knowledge_document_response_dto.py gooddata_api_client/model/created_visualization.py gooddata_api_client/model/created_visualization_filters_inner.py gooddata_api_client/model/created_visualizations.py @@ -1570,6 +1649,7 @@ 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/delete_knowledge_document_response_dto.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 @@ -1611,13 +1691,18 @@ gooddata_api_client/model/filter.py gooddata_api_client/model/filter_by.py gooddata_api_client/model/filter_definition.py gooddata_api_client/model/filter_definition_for_simple_measure.py +gooddata_api_client/model/forecast_config.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 +gooddata_api_client/model/generate_description_request.py +gooddata_api_client/model/generate_description_response.py gooddata_api_client/model/generate_ldm_request.py +gooddata_api_client/model/generate_title_request.py +gooddata_api_client/model/generate_title_response.py gooddata_api_client/model/geo_area_config.py gooddata_api_client/model/geo_collection_identifier.py gooddata_api_client/model/get_ai_lake_operation200_response.py @@ -1669,7 +1754,7 @@ gooddata_api_client/model/json_api_analytical_dashboard_out_meta.py gooddata_api_client/model/json_api_analytical_dashboard_out_meta_access_info.py gooddata_api_client/model/json_api_analytical_dashboard_out_relationships.py gooddata_api_client/model/json_api_analytical_dashboard_out_relationships_analytical_dashboards.py -gooddata_api_client/model/json_api_analytical_dashboard_out_relationships_created_by.py +gooddata_api_client/model/json_api_analytical_dashboard_out_relationships_certified_by.py gooddata_api_client/model/json_api_analytical_dashboard_out_relationships_dashboard_plugins.py gooddata_api_client/model/json_api_analytical_dashboard_out_relationships_datasets.py gooddata_api_client/model/json_api_analytical_dashboard_out_relationships_filter_contexts.py @@ -2003,6 +2088,18 @@ 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_llm_provider_in.py +gooddata_api_client/model/json_api_llm_provider_in_attributes.py +gooddata_api_client/model/json_api_llm_provider_in_attributes_models_inner.py +gooddata_api_client/model/json_api_llm_provider_in_attributes_provider_config.py +gooddata_api_client/model/json_api_llm_provider_in_document.py +gooddata_api_client/model/json_api_llm_provider_out.py +gooddata_api_client/model/json_api_llm_provider_out_document.py +gooddata_api_client/model/json_api_llm_provider_out_list.py +gooddata_api_client/model/json_api_llm_provider_out_with_links.py +gooddata_api_client/model/json_api_llm_provider_patch.py +gooddata_api_client/model/json_api_llm_provider_patch_attributes.py +gooddata_api_client/model/json_api_llm_provider_patch_document.py gooddata_api_client/model/json_api_memory_item_in.py gooddata_api_client/model/json_api_memory_item_in_attributes.py gooddata_api_client/model/json_api_memory_item_in_document.py @@ -2224,9 +2321,17 @@ gooddata_api_client/model/key_drivers_dimension.py gooddata_api_client/model/key_drivers_request.py gooddata_api_client/model/key_drivers_response.py gooddata_api_client/model/key_drivers_result.py +gooddata_api_client/model/knowledge_document_metadata_dto.py +gooddata_api_client/model/knowledge_search_result_dto.py gooddata_api_client/model/label_identifier.py +gooddata_api_client/model/list_database_instances_response.py +gooddata_api_client/model/list_knowledge_documents_response_dto.py gooddata_api_client/model/list_links.py gooddata_api_client/model/list_links_all_of.py +gooddata_api_client/model/list_services_response.py +gooddata_api_client/model/llm_model.py +gooddata_api_client/model/llm_provider_auth.py +gooddata_api_client/model/llm_provider_config.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 @@ -2244,8 +2349,10 @@ gooddata_api_client/model/measure_value_filter.py gooddata_api_client/model/memory_item_created_by_users.py gooddata_api_client/model/memory_item_user.py gooddata_api_client/model/metric.py +gooddata_api_client/model/metric_definition_override.py gooddata_api_client/model/metric_record.py gooddata_api_client/model/metric_value_change.py +gooddata_api_client/model/model_test_result.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 @@ -2260,6 +2367,10 @@ gooddata_api_client/model/notifications_meta.py gooddata_api_client/model/notifications_meta_total.py gooddata_api_client/model/object_links.py gooddata_api_client/model/object_links_container.py +gooddata_api_client/model/open_ai_api_key_auth.py +gooddata_api_client/model/open_ai_api_key_auth_all_of.py +gooddata_api_client/model/open_ai_provider_auth.py +gooddata_api_client/model/open_ai_provider_config.py gooddata_api_client/model/operation.py gooddata_api_client/model/operation_error.py gooddata_api_client/model/organization_automation_identifier.py @@ -2272,6 +2383,7 @@ gooddata_api_client/model/over.py gooddata_api_client/model/page_metadata.py gooddata_api_client/model/paging.py gooddata_api_client/model/parameter.py +gooddata_api_client/model/patch_knowledge_document_request_dto.py gooddata_api_client/model/pdf_table_style.py gooddata_api_client/model/pdf_table_style_property.py gooddata_api_client/model/pdm_ldm_request.py @@ -2330,17 +2442,22 @@ gooddata_api_client/model/result_spec.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/run_service_command_request.py gooddata_api_client/model/running_section.py gooddata_api_client/model/saved_visualization.py gooddata_api_client/model/scan_request.py gooddata_api_client/model/scan_result_pdm.py gooddata_api_client/model/scan_sql_request.py gooddata_api_client/model/scan_sql_response.py +gooddata_api_client/model/search_knowledge_response_dto.py gooddata_api_client/model/search_relationship_object.py gooddata_api_client/model/search_request.py gooddata_api_client/model/search_result.py gooddata_api_client/model/search_result_object.py +gooddata_api_client/model/search_statistics_dto.py gooddata_api_client/model/section_slide_template.py +gooddata_api_client/model/service_info.py +gooddata_api_client/model/set_certification_request.py gooddata_api_client/model/settings.py gooddata_api_client/model/simple_measure_definition.py gooddata_api_client/model/simple_measure_definition_measure.py @@ -2370,6 +2487,9 @@ gooddata_api_client/model/table_warning.py gooddata_api_client/model/tabular_export_request.py gooddata_api_client/model/test_definition_request.py gooddata_api_client/model/test_destination_request.py +gooddata_api_client/model/test_llm_provider_definition_request.py +gooddata_api_client/model/test_llm_provider_definition_request_provider_config.py +gooddata_api_client/model/test_llm_provider_response.py gooddata_api_client/model/test_notification.py gooddata_api_client/model/test_notification_all_of.py gooddata_api_client/model/test_query_duration.py @@ -2382,6 +2502,8 @@ gooddata_api_client/model/total_execution_result_header.py gooddata_api_client/model/total_result_header.py gooddata_api_client/model/trigger_automation_request.py gooddata_api_client/model/trigger_quality_issues_calculation_response.py +gooddata_api_client/model/upsert_knowledge_document_request_dto.py +gooddata_api_client/model/upsert_knowledge_document_response_dto.py gooddata_api_client/model/user_assignee.py gooddata_api_client/model/user_context.py gooddata_api_client/model/user_group_assignee.py @@ -2404,12 +2526,16 @@ gooddata_api_client/model/validate_llm_endpoint_response.py gooddata_api_client/model/value.py gooddata_api_client/model/visible_filter.py gooddata_api_client/model/visual_export_request.py +gooddata_api_client/model/visualization_config.py gooddata_api_client/model/webhook.py gooddata_api_client/model/webhook_all_of.py gooddata_api_client/model/webhook_automation_info.py gooddata_api_client/model/webhook_message.py gooddata_api_client/model/webhook_message_data.py gooddata_api_client/model/webhook_recipient.py +gooddata_api_client/model/what_if_measure_adjustment_config.py +gooddata_api_client/model/what_if_scenario_config.py +gooddata_api_client/model/what_if_scenario_item.py gooddata_api_client/model/widget_slides_template.py gooddata_api_client/model/workspace_automation_identifier.py gooddata_api_client/model/workspace_automation_management_bulk_request.py diff --git a/gooddata-api-client/.openapi-generator/VERSION b/gooddata-api-client/.openapi-generator/VERSION index 66672d4e9..cd802a1ec 100644 --- a/gooddata-api-client/.openapi-generator/VERSION +++ b/gooddata-api-client/.openapi-generator/VERSION @@ -1 +1 @@ -6.1.0-SNAPSHOT \ No newline at end of file +6.6.0 \ No newline at end of file diff --git a/gooddata-api-client/README.md b/gooddata-api-client/README.md index c7dbd8f08..f2f8881e1 100644 --- a/gooddata-api-client/README.md +++ b/gooddata-api-client/README.md @@ -5,7 +5,7 @@ This Python package is automatically generated by the [OpenAPI Generator](https: - API version: v0 - Package version: 1.60.0 -- Build package: org.openapitools.codegen.languages.PythonClientCodegen +- Build package: org.openapitools.codegen.languages.PythonPriorClientCodegen ## Requirements. @@ -103,10 +103,13 @@ Class | Method | HTTP request | Description *AIApi* | [**search_entities_memory_items**](docs/AIApi.md#search_entities_memory_items) | **POST** /api/v1/entities/workspaces/{workspaceId}/memoryItems/search | Search request for MemoryItem *AIApi* | [**update_entity_knowledge_recommendations**](docs/AIApi.md#update_entity_knowledge_recommendations) | **PUT** /api/v1/entities/workspaces/{workspaceId}/knowledgeRecommendations/{objectId} | *AIApi* | [**update_entity_memory_items**](docs/AIApi.md#update_entity_memory_items) | **PUT** /api/v1/entities/workspaces/{workspaceId}/memoryItems/{objectId} | -*AILakeApi* | [**deprovision_ai_lake_database_instance**](docs/AILakeApi.md#deprovision_ai_lake_database_instance) | **DELETE** /api/v1/ailake/database/instance/{instanceId} | (BETA) Delete an existing AILake Database instance -*AILakeApi* | [**get_ai_lake_database_instance**](docs/AILakeApi.md#get_ai_lake_database_instance) | **GET** /api/v1/ailake/database/instance/{instanceId} | (BETA) Get the specified AILake Database instance -*AILakeApi* | [**get_ai_lake_operation**](docs/AILakeApi.md#get_ai_lake_operation) | **GET** /api/v1/ailake/operation/{operationId} | (BETA) Get Long Running Operation details -*AILakeApi* | [**provision_ai_lake_database_instance**](docs/AILakeApi.md#provision_ai_lake_database_instance) | **POST** /api/v1/ailake/database/instance | (BETA) Create a new AILake Database instance +*AILakeApi* | [**deprovision_ai_lake_database_instance**](docs/AILakeApi.md#deprovision_ai_lake_database_instance) | **DELETE** /api/v1/ailake/database/instances/{instanceId} | (BETA) Delete an existing AILake Database instance +*AILakeApi* | [**get_ai_lake_database_instance**](docs/AILakeApi.md#get_ai_lake_database_instance) | **GET** /api/v1/ailake/database/instances/{instanceId} | (BETA) Get the specified AILake Database instance +*AILakeApi* | [**get_ai_lake_operation**](docs/AILakeApi.md#get_ai_lake_operation) | **GET** /api/v1/ailake/operations/{operationId} | (BETA) Get Long Running Operation details +*AILakeApi* | [**list_ai_lake_database_instances**](docs/AILakeApi.md#list_ai_lake_database_instances) | **GET** /api/v1/ailake/database/instances | (BETA) List AI Lake Database instances +*AILakeApi* | [**list_ai_lake_services**](docs/AILakeApi.md#list_ai_lake_services) | **GET** /api/v1/ailake/services | (BETA) List AI Lake services +*AILakeApi* | [**provision_ai_lake_database_instance**](docs/AILakeApi.md#provision_ai_lake_database_instance) | **POST** /api/v1/ailake/database/instances | (BETA) Create a new AILake Database instance +*AILakeApi* | [**run_ai_lake_service_command**](docs/AILakeApi.md#run_ai_lake_service_command) | **POST** /api/v1/ailake/services/{serviceId}/commands/{commandName}/run | (BETA) Run an AI Lake services command *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 @@ -167,6 +170,7 @@ Class | Method | HTTP request | Description *CSPDirectivesApi* | [**get_entity_csp_directives**](docs/CSPDirectivesApi.md#get_entity_csp_directives) | **GET** /api/v1/entities/cspDirectives/{id} | Get CSP Directives *CSPDirectivesApi* | [**patch_entity_csp_directives**](docs/CSPDirectivesApi.md#patch_entity_csp_directives) | **PATCH** /api/v1/entities/cspDirectives/{id} | Patch CSP Directives *CSPDirectivesApi* | [**update_entity_csp_directives**](docs/CSPDirectivesApi.md#update_entity_csp_directives) | **PUT** /api/v1/entities/cspDirectives/{id} | Put CSP Directives +*CertificationApi* | [**set_certification**](docs/CertificationApi.md#set_certification) | **POST** /api/v1/actions/workspaces/{workspaceId}/setCertification | Set Certification *ComputationApi* | [**cancel_executions**](docs/ComputationApi.md#cancel_executions) | **POST** /api/v1/actions/workspaces/{workspaceId}/execution/afm/cancel | Applies all the given cancel tokens. *ComputationApi* | [**change_analysis**](docs/ComputationApi.md#change_analysis) | **POST** /api/v1/actions/workspaces/{workspaceId}/execution/computeChangeAnalysis | Compute change analysis *ComputationApi* | [**change_analysis_result**](docs/ComputationApi.md#change_analysis_result) | **GET** /api/v1/actions/workspaces/{workspaceId}/execution/computeChangeAnalysis/result/{resultId} | Get change analysis result @@ -309,6 +313,12 @@ Class | Method | HTTP request | Description *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 +*LLMProvidersApi* | [**create_entity_llm_providers**](docs/LLMProvidersApi.md#create_entity_llm_providers) | **POST** /api/v1/entities/llmProviders | Post LLM Provider entities +*LLMProvidersApi* | [**delete_entity_llm_providers**](docs/LLMProvidersApi.md#delete_entity_llm_providers) | **DELETE** /api/v1/entities/llmProviders/{id} | Delete LLM Provider entity +*LLMProvidersApi* | [**get_all_entities_llm_providers**](docs/LLMProvidersApi.md#get_all_entities_llm_providers) | **GET** /api/v1/entities/llmProviders | Get all LLM Provider entities +*LLMProvidersApi* | [**get_entity_llm_providers**](docs/LLMProvidersApi.md#get_entity_llm_providers) | **GET** /api/v1/entities/llmProviders/{id} | Get LLM Provider entity +*LLMProvidersApi* | [**patch_entity_llm_providers**](docs/LLMProvidersApi.md#patch_entity_llm_providers) | **PATCH** /api/v1/entities/llmProviders/{id} | Patch LLM Provider entity +*LLMProvidersApi* | [**update_entity_llm_providers**](docs/LLMProvidersApi.md#update_entity_llm_providers) | **PUT** /api/v1/entities/llmProviders/{id} | PUT LLM Provider 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 *LabelsApi* | [**patch_entity_labels**](docs/LabelsApi.md#patch_entity_labels) | **PATCH** /api/v1/entities/workspaces/{workspaceId}/labels/{objectId} | Patch a Label (beta) @@ -402,11 +412,15 @@ Class | Method | HTTP request | Description *SmartFunctionsApi* | [**created_by**](docs/SmartFunctionsApi.md#created_by) | **GET** /api/v1/actions/workspaces/{workspaceId}/ai/analyticsCatalog/createdBy | Get Analytics Catalog CreatedBy Users *SmartFunctionsApi* | [**forecast**](docs/SmartFunctionsApi.md#forecast) | **POST** /api/v1/actions/workspaces/{workspaceId}/execution/functions/forecast/{resultId} | (BETA) Smart functions - Forecast *SmartFunctionsApi* | [**forecast_result**](docs/SmartFunctionsApi.md#forecast_result) | **GET** /api/v1/actions/workspaces/{workspaceId}/execution/functions/forecast/result/{resultId} | (BETA) Smart functions - Forecast Result +*SmartFunctionsApi* | [**generate_description**](docs/SmartFunctionsApi.md#generate_description) | **POST** /api/v1/actions/workspaces/{workspaceId}/ai/analyticsCatalog/generateDescription | Generate Description for Analytics Object +*SmartFunctionsApi* | [**generate_title**](docs/SmartFunctionsApi.md#generate_title) | **POST** /api/v1/actions/workspaces/{workspaceId}/ai/analyticsCatalog/generateTitle | Generate Title for Analytics Object *SmartFunctionsApi* | [**get_quality_issues**](docs/SmartFunctionsApi.md#get_quality_issues) | **GET** /api/v1/actions/workspaces/{workspaceId}/ai/issues | Get Quality Issues *SmartFunctionsApi* | [**get_quality_issues_calculation_status**](docs/SmartFunctionsApi.md#get_quality_issues_calculation_status) | **GET** /api/v1/actions/workspaces/{workspaceId}/ai/issues/status/{processId} | Get Quality Issues Calculation Status *SmartFunctionsApi* | [**memory_created_by_users**](docs/SmartFunctionsApi.md#memory_created_by_users) | **GET** /api/v1/actions/workspaces/{workspaceId}/ai/memory/createdBy | Get AI Memory CreatedBy Users *SmartFunctionsApi* | [**resolve_llm_endpoints**](docs/SmartFunctionsApi.md#resolve_llm_endpoints) | **GET** /api/v1/actions/workspaces/{workspaceId}/ai/resolveLlmEndpoints | Get Active LLM Endpoints for this workspace *SmartFunctionsApi* | [**tags**](docs/SmartFunctionsApi.md#tags) | **GET** /api/v1/actions/workspaces/{workspaceId}/ai/analyticsCatalog/tags | Get Analytics Catalog Tags +*SmartFunctionsApi* | [**test_llm_provider**](docs/SmartFunctionsApi.md#test_llm_provider) | **POST** /api/v1/actions/ai/llmProvider/test | Test LLM Provider +*SmartFunctionsApi* | [**test_llm_provider_by_id**](docs/SmartFunctionsApi.md#test_llm_provider_by_id) | **POST** /api/v1/actions/ai/llmProvider/{llmProviderId}/test | Test LLM Provider By Id *SmartFunctionsApi* | [**trigger_quality_issues_calculation**](docs/SmartFunctionsApi.md#trigger_quality_issues_calculation) | **POST** /api/v1/actions/workspaces/{workspaceId}/ai/issues/triggerCheck | Trigger Quality Issues Calculation *SmartFunctionsApi* | [**validate_llm_endpoint**](docs/SmartFunctionsApi.md#validate_llm_endpoint) | **POST** /api/v1/actions/ai/llmEndpoint/test | Validate LLM Endpoint *SmartFunctionsApi* | [**validate_llm_endpoint_by_id**](docs/SmartFunctionsApi.md#validate_llm_endpoint_by_id) | **POST** /api/v1/actions/ai/llmEndpoint/{llmEndpointId}/test | Validate LLM Endpoint By Id @@ -524,6 +538,7 @@ Class | Method | HTTP request | Description *ActionsApi* | [**compute_valid_descendants**](docs/ActionsApi.md#compute_valid_descendants) | **POST** /api/v1/actions/workspaces/{workspaceId}/execution/afm/computeValidDescendants | (BETA) Valid descendants *ActionsApi* | [**compute_valid_objects**](docs/ActionsApi.md#compute_valid_objects) | **POST** /api/v1/actions/workspaces/{workspaceId}/execution/afm/computeValidObjects | Valid objects *ActionsApi* | [**create_dashboard_export_request**](docs/ActionsApi.md#create_dashboard_export_request) | **POST** /api/v1/actions/workspaces/{workspaceId}/analyticalDashboards/{dashboardId}/export/tabular | (EXPERIMENTAL) Create dashboard tabular export request +*ActionsApi* | [**create_document**](docs/ActionsApi.md#create_document) | **POST** /api/v1/actions/workspaces/{workspaceId}/ai/knowledge/documents | *ActionsApi* | [**create_image_export**](docs/ActionsApi.md#create_image_export) | **POST** /api/v1/actions/workspaces/{workspaceId}/export/image | (EXPERIMENTAL) Create image export request *ActionsApi* | [**create_pdf_export**](docs/ActionsApi.md#create_pdf_export) | **POST** /api/v1/actions/workspaces/{workspaceId}/export/visual | Create visual - pdf export request *ActionsApi* | [**create_raw_export**](docs/ActionsApi.md#create_raw_export) | **POST** /api/v1/actions/workspaces/{workspaceId}/export/raw | (EXPERIMENTAL) Create raw export request @@ -531,16 +546,20 @@ Class | Method | HTTP request | Description *ActionsApi* | [**create_tabular_export**](docs/ActionsApi.md#create_tabular_export) | **POST** /api/v1/actions/workspaces/{workspaceId}/export/tabular | Create tabular export request *ActionsApi* | [**created_by**](docs/ActionsApi.md#created_by) | **GET** /api/v1/actions/workspaces/{workspaceId}/ai/analyticsCatalog/createdBy | Get Analytics Catalog CreatedBy Users *ActionsApi* | [**dashboard_permissions**](docs/ActionsApi.md#dashboard_permissions) | **GET** /api/v1/actions/workspaces/{workspaceId}/analyticalDashboards/{dashboardId}/permissions | Get Dashboard Permissions +*ActionsApi* | [**delete_document**](docs/ActionsApi.md#delete_document) | **DELETE** /api/v1/actions/workspaces/{workspaceId}/ai/knowledge/documents/{filename} | *ActionsApi* | [**delete_organization_automations**](docs/ActionsApi.md#delete_organization_automations) | **POST** /api/v1/actions/organization/automations/delete | Delete selected automations across all workspaces *ActionsApi* | [**delete_workspace_automations**](docs/ActionsApi.md#delete_workspace_automations) | **POST** /api/v1/actions/workspaces/{workspaceId}/automations/delete | Delete selected automations in the workspace *ActionsApi* | [**explain_afm**](docs/ActionsApi.md#explain_afm) | **POST** /api/v1/actions/workspaces/{workspaceId}/execution/afm/explain | AFM explain resource. *ActionsApi* | [**forecast**](docs/ActionsApi.md#forecast) | **POST** /api/v1/actions/workspaces/{workspaceId}/execution/functions/forecast/{resultId} | (BETA) Smart functions - Forecast *ActionsApi* | [**forecast_result**](docs/ActionsApi.md#forecast_result) | **GET** /api/v1/actions/workspaces/{workspaceId}/execution/functions/forecast/result/{resultId} | (BETA) Smart functions - Forecast Result +*ActionsApi* | [**generate_description**](docs/ActionsApi.md#generate_description) | **POST** /api/v1/actions/workspaces/{workspaceId}/ai/analyticsCatalog/generateDescription | Generate Description for Analytics Object *ActionsApi* | [**generate_logical_model**](docs/ActionsApi.md#generate_logical_model) | **POST** /api/v1/actions/dataSources/{dataSourceId}/generateLogicalModel | Generate logical data model (LDM) from physical data model (PDM) *ActionsApi* | [**generate_logical_model_aac**](docs/ActionsApi.md#generate_logical_model_aac) | **POST** /api/v1/actions/dataSources/{dataSourceId}/generateLogicalModelAac | Generate logical data model in AAC format from physical data model (PDM) +*ActionsApi* | [**generate_title**](docs/ActionsApi.md#generate_title) | **POST** /api/v1/actions/workspaces/{workspaceId}/ai/analyticsCatalog/generateTitle | Generate Title for Analytics Object *ActionsApi* | [**get_data_source_schemata**](docs/ActionsApi.md#get_data_source_schemata) | **GET** /api/v1/actions/dataSources/{dataSourceId}/scanSchemata | Get a list of schema names of a database *ActionsApi* | [**get_dependent_entities_graph**](docs/ActionsApi.md#get_dependent_entities_graph) | **GET** /api/v1/actions/workspaces/{workspaceId}/dependentEntitiesGraph | Computes the dependent entities graph *ActionsApi* | [**get_dependent_entities_graph_from_entry_points**](docs/ActionsApi.md#get_dependent_entities_graph_from_entry_points) | **POST** /api/v1/actions/workspaces/{workspaceId}/dependentEntitiesGraph | Computes the dependent entities graph from given entry points +*ActionsApi* | [**get_document**](docs/ActionsApi.md#get_document) | **GET** /api/v1/actions/workspaces/{workspaceId}/ai/knowledge/documents/{filename} | *ActionsApi* | [**get_exported_file**](docs/ActionsApi.md#get_exported_file) | **GET** /api/v1/actions/workspaces/{workspaceId}/export/visual/{exportId} | Retrieve exported files *ActionsApi* | [**get_image_export**](docs/ActionsApi.md#get_image_export) | **GET** /api/v1/actions/workspaces/{workspaceId}/export/image/{exportId} | (EXPERIMENTAL) Retrieve exported files *ActionsApi* | [**get_image_export_metadata**](docs/ActionsApi.md#get_image_export_metadata) | **GET** /api/v1/actions/workspaces/{workspaceId}/export/image/{exportId}/metadata | (EXPERIMENTAL) Retrieve metadata context @@ -557,6 +576,7 @@ Class | Method | HTTP request | Description *ActionsApi* | [**inherited_entity_prefixes**](docs/ActionsApi.md#inherited_entity_prefixes) | **GET** /api/v1/actions/workspaces/{workspaceId}/inheritedEntityPrefixes | Get used entity prefixes in hierarchy *ActionsApi* | [**key_driver_analysis**](docs/ActionsApi.md#key_driver_analysis) | **POST** /api/v1/actions/workspaces/{workspaceId}/execution/computeKeyDrivers | (EXPERIMENTAL) Compute key driver analysis *ActionsApi* | [**key_driver_analysis_result**](docs/ActionsApi.md#key_driver_analysis_result) | **GET** /api/v1/actions/workspaces/{workspaceId}/execution/computeKeyDrivers/result/{resultId} | (EXPERIMENTAL) Get key driver analysis result +*ActionsApi* | [**list_documents**](docs/ActionsApi.md#list_documents) | **GET** /api/v1/actions/workspaces/{workspaceId}/ai/knowledge/documents | *ActionsApi* | [**list_workspace_user_groups**](docs/ActionsApi.md#list_workspace_user_groups) | **GET** /api/v1/actions/workspaces/{workspaceId}/userGroups | *ActionsApi* | [**list_workspace_users**](docs/ActionsApi.md#list_workspace_users) | **GET** /api/v1/actions/workspaces/{workspaceId}/users | *ActionsApi* | [**manage_dashboard_permissions**](docs/ActionsApi.md#manage_dashboard_permissions) | **POST** /api/v1/actions/workspaces/{workspaceId}/analyticalDashboards/{dashboardId}/managePermissions | Manage Permissions for a Dashboard @@ -573,6 +593,7 @@ Class | Method | HTTP request | Description *ActionsApi* | [**outlier_detection_result**](docs/ActionsApi.md#outlier_detection_result) | **GET** /api/v1/actions/workspaces/{workspaceId}/execution/detectOutliers/result/{resultId} | (BETA) Outlier Detection Result *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* | [**patch_document**](docs/ActionsApi.md#patch_document) | **PATCH** /api/v1/actions/workspaces/{workspaceId}/ai/knowledge/documents/{filename} | *ActionsApi* | [**pause_organization_automations**](docs/ActionsApi.md#pause_organization_automations) | **POST** /api/v1/actions/organization/automations/pause | Pause selected automations across all workspaces *ActionsApi* | [**pause_workspace_automations**](docs/ActionsApi.md#pause_workspace_automations) | **POST** /api/v1/actions/workspaces/{workspaceId}/automations/pause | Pause selected automations in the workspace *ActionsApi* | [**register_upload_notification**](docs/ActionsApi.md#register_upload_notification) | **POST** /api/v1/actions/dataSources/{dataSourceId}/uploadNotification | Register an upload notification @@ -586,12 +607,16 @@ Class | Method | HTTP request | Description *ActionsApi* | [**retrieve_translations**](docs/ActionsApi.md#retrieve_translations) | **POST** /api/v1/actions/workspaces/{workspaceId}/translations/retrieve | Retrieve translations for entities. *ActionsApi* | [**scan_data_source**](docs/ActionsApi.md#scan_data_source) | **POST** /api/v1/actions/dataSources/{dataSourceId}/scan | Scan a database to get a physical data model (PDM) *ActionsApi* | [**scan_sql**](docs/ActionsApi.md#scan_sql) | **POST** /api/v1/actions/dataSources/{dataSourceId}/scanSql | Collect metadata about SQL query +*ActionsApi* | [**search_knowledge**](docs/ActionsApi.md#search_knowledge) | **GET** /api/v1/actions/workspaces/{workspaceId}/ai/knowledge/search | +*ActionsApi* | [**set_certification**](docs/ActionsApi.md#set_certification) | **POST** /api/v1/actions/workspaces/{workspaceId}/setCertification | Set Certification *ActionsApi* | [**set_translations**](docs/ActionsApi.md#set_translations) | **POST** /api/v1/actions/workspaces/{workspaceId}/translations/set | Set translations for entities. *ActionsApi* | [**switch_active_identity_provider**](docs/ActionsApi.md#switch_active_identity_provider) | **POST** /api/v1/actions/organization/switchActiveIdentityProvider | Switch Active Identity Provider *ActionsApi* | [**tags**](docs/ActionsApi.md#tags) | **GET** /api/v1/actions/workspaces/{workspaceId}/ai/analyticsCatalog/tags | Get Analytics Catalog Tags *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* | [**test_existing_notification_channel**](docs/ActionsApi.md#test_existing_notification_channel) | **POST** /api/v1/actions/notificationChannels/{notificationChannelId}/test | Test existing notification channel. +*ActionsApi* | [**test_llm_provider**](docs/ActionsApi.md#test_llm_provider) | **POST** /api/v1/actions/ai/llmProvider/test | Test LLM Provider +*ActionsApi* | [**test_llm_provider_by_id**](docs/ActionsApi.md#test_llm_provider_by_id) | **POST** /api/v1/actions/ai/llmProvider/{llmProviderId}/test | Test LLM Provider By Id *ActionsApi* | [**test_notification_channel**](docs/ActionsApi.md#test_notification_channel) | **POST** /api/v1/actions/notificationChannels/test | Test notification channel. *ActionsApi* | [**trigger_automation**](docs/ActionsApi.md#trigger_automation) | **POST** /api/v1/actions/workspaces/{workspaceId}/automations/trigger | Trigger automation. *ActionsApi* | [**trigger_existing_automation**](docs/ActionsApi.md#trigger_existing_automation) | **POST** /api/v1/actions/workspaces/{workspaceId}/automations/{automationId}/trigger | Trigger existing automation. @@ -603,6 +628,7 @@ Class | Method | HTTP request | Description *ActionsApi* | [**unsubscribe_organization_automations**](docs/ActionsApi.md#unsubscribe_organization_automations) | **POST** /api/v1/actions/organization/automations/unsubscribe | Unsubscribe from selected automations across all workspaces *ActionsApi* | [**unsubscribe_selected_workspace_automations**](docs/ActionsApi.md#unsubscribe_selected_workspace_automations) | **POST** /api/v1/actions/workspaces/{workspaceId}/automations/unsubscribe | Unsubscribe from selected automations in the workspace *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* | [**upsert_document**](docs/ActionsApi.md#upsert_document) | **PUT** /api/v1/actions/workspaces/{workspaceId}/ai/knowledge/documents | *ActionsApi* | [**validate_llm_endpoint**](docs/ActionsApi.md#validate_llm_endpoint) | **POST** /api/v1/actions/ai/llmEndpoint/test | Validate LLM Endpoint *ActionsApi* | [**validate_llm_endpoint_by_id**](docs/ActionsApi.md#validate_llm_endpoint_by_id) | **POST** /api/v1/actions/ai/llmEndpoint/{llmEndpointId}/test | Validate LLM Endpoint By Id *ActionsApi* | [**workspace_resolve_all_settings**](docs/ActionsApi.md#workspace_resolve_all_settings) | **GET** /api/v1/actions/workspaces/{workspaceId}/resolveSettings | Values for all settings. @@ -626,6 +652,7 @@ Class | Method | HTTP request | Description *EntitiesApi* | [**create_entity_jwks**](docs/EntitiesApi.md#create_entity_jwks) | **POST** /api/v1/entities/jwks | Post Jwks *EntitiesApi* | [**create_entity_knowledge_recommendations**](docs/EntitiesApi.md#create_entity_knowledge_recommendations) | **POST** /api/v1/entities/workspaces/{workspaceId}/knowledgeRecommendations | *EntitiesApi* | [**create_entity_llm_endpoints**](docs/EntitiesApi.md#create_entity_llm_endpoints) | **POST** /api/v1/entities/llmEndpoints | Post LLM endpoint entities +*EntitiesApi* | [**create_entity_llm_providers**](docs/EntitiesApi.md#create_entity_llm_providers) | **POST** /api/v1/entities/llmProviders | Post LLM Provider entities *EntitiesApi* | [**create_entity_memory_items**](docs/EntitiesApi.md#create_entity_memory_items) | **POST** /api/v1/entities/workspaces/{workspaceId}/memoryItems | *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 @@ -658,6 +685,7 @@ Class | Method | HTTP request | Description *EntitiesApi* | [**delete_entity_jwks**](docs/EntitiesApi.md#delete_entity_jwks) | **DELETE** /api/v1/entities/jwks/{id} | Delete Jwk *EntitiesApi* | [**delete_entity_knowledge_recommendations**](docs/EntitiesApi.md#delete_entity_knowledge_recommendations) | **DELETE** /api/v1/entities/workspaces/{workspaceId}/knowledgeRecommendations/{objectId} | *EntitiesApi* | [**delete_entity_llm_endpoints**](docs/EntitiesApi.md#delete_entity_llm_endpoints) | **DELETE** /api/v1/entities/llmEndpoints/{id} | +*EntitiesApi* | [**delete_entity_llm_providers**](docs/EntitiesApi.md#delete_entity_llm_providers) | **DELETE** /api/v1/entities/llmProviders/{id} | Delete LLM Provider entity *EntitiesApi* | [**delete_entity_memory_items**](docs/EntitiesApi.md#delete_entity_memory_items) | **DELETE** /api/v1/entities/workspaces/{workspaceId}/memoryItems/{objectId} | *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} | Delete Notification Channel entity @@ -698,6 +726,7 @@ Class | Method | HTTP request | Description *EntitiesApi* | [**get_all_entities_knowledge_recommendations**](docs/EntitiesApi.md#get_all_entities_knowledge_recommendations) | **GET** /api/v1/entities/workspaces/{workspaceId}/knowledgeRecommendations | *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_llm_providers**](docs/EntitiesApi.md#get_all_entities_llm_providers) | **GET** /api/v1/entities/llmProviders | Get all LLM Provider entities *EntitiesApi* | [**get_all_entities_memory_items**](docs/EntitiesApi.md#get_all_entities_memory_items) | **GET** /api/v1/entities/workspaces/{workspaceId}/memoryItems | *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_channel_identifiers**](docs/EntitiesApi.md#get_all_entities_notification_channel_identifiers) | **GET** /api/v1/entities/notificationChannelIdentifiers | @@ -742,6 +771,7 @@ Class | Method | HTTP request | Description *EntitiesApi* | [**get_entity_knowledge_recommendations**](docs/EntitiesApi.md#get_entity_knowledge_recommendations) | **GET** /api/v1/entities/workspaces/{workspaceId}/knowledgeRecommendations/{objectId} | *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_llm_providers**](docs/EntitiesApi.md#get_entity_llm_providers) | **GET** /api/v1/entities/llmProviders/{id} | Get LLM Provider entity *EntitiesApi* | [**get_entity_memory_items**](docs/EntitiesApi.md#get_entity_memory_items) | **GET** /api/v1/entities/workspaces/{workspaceId}/memoryItems/{objectId} | *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_channel_identifiers**](docs/EntitiesApi.md#get_entity_notification_channel_identifiers) | **GET** /api/v1/entities/notificationChannelIdentifiers/{id} | @@ -782,6 +812,7 @@ Class | Method | HTTP request | Description *EntitiesApi* | [**patch_entity_knowledge_recommendations**](docs/EntitiesApi.md#patch_entity_knowledge_recommendations) | **PATCH** /api/v1/entities/workspaces/{workspaceId}/knowledgeRecommendations/{objectId} | *EntitiesApi* | [**patch_entity_labels**](docs/EntitiesApi.md#patch_entity_labels) | **PATCH** /api/v1/entities/workspaces/{workspaceId}/labels/{objectId} | Patch a Label (beta) *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_llm_providers**](docs/EntitiesApi.md#patch_entity_llm_providers) | **PATCH** /api/v1/entities/llmProviders/{id} | Patch LLM Provider entity *EntitiesApi* | [**patch_entity_memory_items**](docs/EntitiesApi.md#patch_entity_memory_items) | **PATCH** /api/v1/entities/workspaces/{workspaceId}/memoryItems/{objectId} | *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 @@ -836,6 +867,7 @@ Class | Method | HTTP request | Description *EntitiesApi* | [**update_entity_jwks**](docs/EntitiesApi.md#update_entity_jwks) | **PUT** /api/v1/entities/jwks/{id} | Put Jwk *EntitiesApi* | [**update_entity_knowledge_recommendations**](docs/EntitiesApi.md#update_entity_knowledge_recommendations) | **PUT** /api/v1/entities/workspaces/{workspaceId}/knowledgeRecommendations/{objectId} | *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_llm_providers**](docs/EntitiesApi.md#update_entity_llm_providers) | **PUT** /api/v1/entities/llmProviders/{id} | PUT LLM Provider entity *EntitiesApi* | [**update_entity_memory_items**](docs/EntitiesApi.md#update_entity_memory_items) | **PUT** /api/v1/entities/workspaces/{workspaceId}/memoryItems/{objectId} | *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 @@ -909,6 +941,7 @@ Class | Method | HTTP request | Description *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_llm_providers**](docs/OrganizationModelControllerApi.md#create_entity_llm_providers) | **POST** /api/v1/entities/llmProviders | Post LLM Provider 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 @@ -923,6 +956,7 @@ Class | Method | HTTP request | Description *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_llm_endpoints**](docs/OrganizationModelControllerApi.md#delete_entity_llm_endpoints) | **DELETE** /api/v1/entities/llmEndpoints/{id} | +*OrganizationModelControllerApi* | [**delete_entity_llm_providers**](docs/OrganizationModelControllerApi.md#delete_entity_llm_providers) | **DELETE** /api/v1/entities/llmProviders/{id} | Delete LLM Provider entity *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 @@ -939,6 +973,7 @@ Class | Method | HTTP request | Description *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_llm_providers**](docs/OrganizationModelControllerApi.md#get_all_entities_llm_providers) | **GET** /api/v1/entities/llmProviders | Get all LLM Provider entities *OrganizationModelControllerApi* | [**get_all_entities_notification_channel_identifiers**](docs/OrganizationModelControllerApi.md#get_all_entities_notification_channel_identifiers) | **GET** /api/v1/entities/notificationChannelIdentifiers | *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 @@ -957,6 +992,7 @@ Class | Method | HTTP request | Description *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_llm_providers**](docs/OrganizationModelControllerApi.md#get_entity_llm_providers) | **GET** /api/v1/entities/llmProviders/{id} | Get LLM Provider entity *OrganizationModelControllerApi* | [**get_entity_notification_channel_identifiers**](docs/OrganizationModelControllerApi.md#get_entity_notification_channel_identifiers) | **GET** /api/v1/entities/notificationChannelIdentifiers/{id} | *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 @@ -973,6 +1009,7 @@ Class | Method | HTTP request | Description *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_llm_providers**](docs/OrganizationModelControllerApi.md#patch_entity_llm_providers) | **PATCH** /api/v1/entities/llmProviders/{id} | Patch LLM Provider 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 @@ -987,6 +1024,7 @@ Class | Method | HTTP request | Description *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_llm_providers**](docs/OrganizationModelControllerApi.md#update_entity_llm_providers) | **PUT** /api/v1/entities/llmProviders/{id} | PUT LLM Provider 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 @@ -1215,11 +1253,14 @@ Class | Method | HTTP request | Description - [AlertConditionOperand](docs/AlertConditionOperand.md) - [AlertDescription](docs/AlertDescription.md) - [AlertEvaluationRow](docs/AlertEvaluationRow.md) + - [AllTimeDateFilter](docs/AllTimeDateFilter.md) + - [AllTimeDateFilterAllTimeDateFilter](docs/AllTimeDateFilterAllTimeDateFilter.md) - [AllowedRelationshipType](docs/AllowedRelationshipType.md) - [AnalyticsCatalogCreatedBy](docs/AnalyticsCatalogCreatedBy.md) - [AnalyticsCatalogTags](docs/AnalyticsCatalogTags.md) - [AnalyticsCatalogUser](docs/AnalyticsCatalogUser.md) - [AnomalyDetection](docs/AnomalyDetection.md) + - [AnomalyDetectionConfig](docs/AnomalyDetectionConfig.md) - [AnomalyDetectionRequest](docs/AnomalyDetectionRequest.md) - [AnomalyDetectionResult](docs/AnomalyDetectionResult.md) - [AnomalyDetectionWrapper](docs/AnomalyDetectionWrapper.md) @@ -1261,6 +1302,14 @@ Class | Method | HTTP request | Description - [AutomationTabularExport](docs/AutomationTabularExport.md) - [AutomationVisualExport](docs/AutomationVisualExport.md) - [AvailableAssignees](docs/AvailableAssignees.md) + - [AwsBedrockAccessKeyAuth](docs/AwsBedrockAccessKeyAuth.md) + - [AwsBedrockAccessKeyAuthAllOf](docs/AwsBedrockAccessKeyAuthAllOf.md) + - [AwsBedrockProviderConfig](docs/AwsBedrockProviderConfig.md) + - [AzureFoundryApiKeyAuth](docs/AzureFoundryApiKeyAuth.md) + - [AzureFoundryApiKeyAuthAllOf](docs/AzureFoundryApiKeyAuthAllOf.md) + - [AzureFoundryProviderAuth](docs/AzureFoundryProviderAuth.md) + - [AzureFoundryProviderConfig](docs/AzureFoundryProviderConfig.md) + - [BedrockProviderAuth](docs/BedrockProviderAuth.md) - [BoundedFilter](docs/BoundedFilter.md) - [ChangeAnalysisParams](docs/ChangeAnalysisParams.md) - [ChangeAnalysisParamsFiltersInner](docs/ChangeAnalysisParamsFiltersInner.md) @@ -1273,6 +1322,7 @@ Class | Method | HTTP request | Description - [ChatRequest](docs/ChatRequest.md) - [ChatResult](docs/ChatResult.md) - [ChatUsageResponse](docs/ChatUsageResponse.md) + - [ClusteringConfig](docs/ClusteringConfig.md) - [ClusteringRequest](docs/ClusteringRequest.md) - [ClusteringResult](docs/ClusteringResult.md) - [ColumnLocation](docs/ColumnLocation.md) @@ -1293,6 +1343,8 @@ Class | Method | HTTP request | Description - [CompoundMeasureValueFilterCompoundMeasureValueFilter](docs/CompoundMeasureValueFilterCompoundMeasureValueFilter.md) - [ContentSlideTemplate](docs/ContentSlideTemplate.md) - [CoverSlideTemplate](docs/CoverSlideTemplate.md) + - [CreateKnowledgeDocumentRequestDto](docs/CreateKnowledgeDocumentRequestDto.md) + - [CreateKnowledgeDocumentResponseDto](docs/CreateKnowledgeDocumentResponseDto.md) - [CreatedVisualization](docs/CreatedVisualization.md) - [CreatedVisualizationFiltersInner](docs/CreatedVisualizationFiltersInner.md) - [CreatedVisualizations](docs/CreatedVisualizations.md) @@ -1416,6 +1468,7 @@ Class | Method | HTTP request | Description - [DeclarativeWorkspaces](docs/DeclarativeWorkspaces.md) - [DefaultSmtp](docs/DefaultSmtp.md) - [DefaultSmtpAllOf](docs/DefaultSmtpAllOf.md) + - [DeleteKnowledgeDocumentResponseDto](docs/DeleteKnowledgeDocumentResponseDto.md) - [DependentEntitiesGraph](docs/DependentEntitiesGraph.md) - [DependentEntitiesNode](docs/DependentEntitiesNode.md) - [DependentEntitiesRequest](docs/DependentEntitiesRequest.md) @@ -1457,13 +1510,18 @@ Class | Method | HTTP request | Description - [FilterBy](docs/FilterBy.md) - [FilterDefinition](docs/FilterDefinition.md) - [FilterDefinitionForSimpleMeasure](docs/FilterDefinitionForSimpleMeasure.md) + - [ForecastConfig](docs/ForecastConfig.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) + - [GenerateDescriptionRequest](docs/GenerateDescriptionRequest.md) + - [GenerateDescriptionResponse](docs/GenerateDescriptionResponse.md) - [GenerateLdmRequest](docs/GenerateLdmRequest.md) + - [GenerateTitleRequest](docs/GenerateTitleRequest.md) + - [GenerateTitleResponse](docs/GenerateTitleResponse.md) - [GeoAreaConfig](docs/GeoAreaConfig.md) - [GeoCollectionIdentifier](docs/GeoCollectionIdentifier.md) - [GetAiLakeOperation200Response](docs/GetAiLakeOperation200Response.md) @@ -1515,7 +1573,7 @@ Class | Method | HTTP request | Description - [JsonApiAnalyticalDashboardOutMetaAccessInfo](docs/JsonApiAnalyticalDashboardOutMetaAccessInfo.md) - [JsonApiAnalyticalDashboardOutRelationships](docs/JsonApiAnalyticalDashboardOutRelationships.md) - [JsonApiAnalyticalDashboardOutRelationshipsAnalyticalDashboards](docs/JsonApiAnalyticalDashboardOutRelationshipsAnalyticalDashboards.md) - - [JsonApiAnalyticalDashboardOutRelationshipsCreatedBy](docs/JsonApiAnalyticalDashboardOutRelationshipsCreatedBy.md) + - [JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy](docs/JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy.md) - [JsonApiAnalyticalDashboardOutRelationshipsDashboardPlugins](docs/JsonApiAnalyticalDashboardOutRelationshipsDashboardPlugins.md) - [JsonApiAnalyticalDashboardOutRelationshipsDatasets](docs/JsonApiAnalyticalDashboardOutRelationshipsDatasets.md) - [JsonApiAnalyticalDashboardOutRelationshipsFilterContexts](docs/JsonApiAnalyticalDashboardOutRelationshipsFilterContexts.md) @@ -1849,6 +1907,18 @@ Class | Method | HTTP request | Description - [JsonApiLlmEndpointPatch](docs/JsonApiLlmEndpointPatch.md) - [JsonApiLlmEndpointPatchAttributes](docs/JsonApiLlmEndpointPatchAttributes.md) - [JsonApiLlmEndpointPatchDocument](docs/JsonApiLlmEndpointPatchDocument.md) + - [JsonApiLlmProviderIn](docs/JsonApiLlmProviderIn.md) + - [JsonApiLlmProviderInAttributes](docs/JsonApiLlmProviderInAttributes.md) + - [JsonApiLlmProviderInAttributesModelsInner](docs/JsonApiLlmProviderInAttributesModelsInner.md) + - [JsonApiLlmProviderInAttributesProviderConfig](docs/JsonApiLlmProviderInAttributesProviderConfig.md) + - [JsonApiLlmProviderInDocument](docs/JsonApiLlmProviderInDocument.md) + - [JsonApiLlmProviderOut](docs/JsonApiLlmProviderOut.md) + - [JsonApiLlmProviderOutDocument](docs/JsonApiLlmProviderOutDocument.md) + - [JsonApiLlmProviderOutList](docs/JsonApiLlmProviderOutList.md) + - [JsonApiLlmProviderOutWithLinks](docs/JsonApiLlmProviderOutWithLinks.md) + - [JsonApiLlmProviderPatch](docs/JsonApiLlmProviderPatch.md) + - [JsonApiLlmProviderPatchAttributes](docs/JsonApiLlmProviderPatchAttributes.md) + - [JsonApiLlmProviderPatchDocument](docs/JsonApiLlmProviderPatchDocument.md) - [JsonApiMemoryItemIn](docs/JsonApiMemoryItemIn.md) - [JsonApiMemoryItemInAttributes](docs/JsonApiMemoryItemInAttributes.md) - [JsonApiMemoryItemInDocument](docs/JsonApiMemoryItemInDocument.md) @@ -2070,9 +2140,17 @@ Class | Method | HTTP request | Description - [KeyDriversRequest](docs/KeyDriversRequest.md) - [KeyDriversResponse](docs/KeyDriversResponse.md) - [KeyDriversResult](docs/KeyDriversResult.md) + - [KnowledgeDocumentMetadataDto](docs/KnowledgeDocumentMetadataDto.md) + - [KnowledgeSearchResultDto](docs/KnowledgeSearchResultDto.md) - [LabelIdentifier](docs/LabelIdentifier.md) + - [ListDatabaseInstancesResponse](docs/ListDatabaseInstancesResponse.md) + - [ListKnowledgeDocumentsResponseDto](docs/ListKnowledgeDocumentsResponseDto.md) - [ListLinks](docs/ListLinks.md) - [ListLinksAllOf](docs/ListLinksAllOf.md) + - [ListServicesResponse](docs/ListServicesResponse.md) + - [LlmModel](docs/LlmModel.md) + - [LlmProviderAuth](docs/LlmProviderAuth.md) + - [LlmProviderConfig](docs/LlmProviderConfig.md) - [LocalIdentifier](docs/LocalIdentifier.md) - [LocaleRequest](docs/LocaleRequest.md) - [ManageDashboardPermissionsRequestInner](docs/ManageDashboardPermissionsRequestInner.md) @@ -2090,8 +2168,10 @@ Class | Method | HTTP request | Description - [MemoryItemCreatedByUsers](docs/MemoryItemCreatedByUsers.md) - [MemoryItemUser](docs/MemoryItemUser.md) - [Metric](docs/Metric.md) + - [MetricDefinitionOverride](docs/MetricDefinitionOverride.md) - [MetricRecord](docs/MetricRecord.md) - [MetricValueChange](docs/MetricValueChange.md) + - [ModelTestResult](docs/ModelTestResult.md) - [NegativeAttributeFilter](docs/NegativeAttributeFilter.md) - [NegativeAttributeFilterNegativeAttributeFilter](docs/NegativeAttributeFilterNegativeAttributeFilter.md) - [Note](docs/Note.md) @@ -2106,6 +2186,10 @@ Class | Method | HTTP request | Description - [NotificationsMetaTotal](docs/NotificationsMetaTotal.md) - [ObjectLinks](docs/ObjectLinks.md) - [ObjectLinksContainer](docs/ObjectLinksContainer.md) + - [OpenAIProviderConfig](docs/OpenAIProviderConfig.md) + - [OpenAiApiKeyAuth](docs/OpenAiApiKeyAuth.md) + - [OpenAiApiKeyAuthAllOf](docs/OpenAiApiKeyAuthAllOf.md) + - [OpenAiProviderAuth](docs/OpenAiProviderAuth.md) - [Operation](docs/Operation.md) - [OperationError](docs/OperationError.md) - [OrganizationAutomationIdentifier](docs/OrganizationAutomationIdentifier.md) @@ -2118,6 +2202,7 @@ Class | Method | HTTP request | Description - [PageMetadata](docs/PageMetadata.md) - [Paging](docs/Paging.md) - [Parameter](docs/Parameter.md) + - [PatchKnowledgeDocumentRequestDto](docs/PatchKnowledgeDocumentRequestDto.md) - [PdfTableStyle](docs/PdfTableStyle.md) - [PdfTableStyleProperty](docs/PdfTableStyleProperty.md) - [PdmLdmRequest](docs/PdmLdmRequest.md) @@ -2176,17 +2261,22 @@ Class | Method | HTTP request | Description - [RouteResult](docs/RouteResult.md) - [RsaSpecification](docs/RsaSpecification.md) - [RulePermission](docs/RulePermission.md) + - [RunServiceCommandRequest](docs/RunServiceCommandRequest.md) - [RunningSection](docs/RunningSection.md) - [SavedVisualization](docs/SavedVisualization.md) - [ScanRequest](docs/ScanRequest.md) - [ScanResultPdm](docs/ScanResultPdm.md) - [ScanSqlRequest](docs/ScanSqlRequest.md) - [ScanSqlResponse](docs/ScanSqlResponse.md) + - [SearchKnowledgeResponseDto](docs/SearchKnowledgeResponseDto.md) - [SearchRelationshipObject](docs/SearchRelationshipObject.md) - [SearchRequest](docs/SearchRequest.md) - [SearchResult](docs/SearchResult.md) - [SearchResultObject](docs/SearchResultObject.md) + - [SearchStatisticsDto](docs/SearchStatisticsDto.md) - [SectionSlideTemplate](docs/SectionSlideTemplate.md) + - [ServiceInfo](docs/ServiceInfo.md) + - [SetCertificationRequest](docs/SetCertificationRequest.md) - [Settings](docs/Settings.md) - [SimpleMeasureDefinition](docs/SimpleMeasureDefinition.md) - [SimpleMeasureDefinitionMeasure](docs/SimpleMeasureDefinitionMeasure.md) @@ -2216,6 +2306,9 @@ Class | Method | HTTP request | Description - [TabularExportRequest](docs/TabularExportRequest.md) - [TestDefinitionRequest](docs/TestDefinitionRequest.md) - [TestDestinationRequest](docs/TestDestinationRequest.md) + - [TestLlmProviderDefinitionRequest](docs/TestLlmProviderDefinitionRequest.md) + - [TestLlmProviderDefinitionRequestProviderConfig](docs/TestLlmProviderDefinitionRequestProviderConfig.md) + - [TestLlmProviderResponse](docs/TestLlmProviderResponse.md) - [TestNotification](docs/TestNotification.md) - [TestNotificationAllOf](docs/TestNotificationAllOf.md) - [TestQueryDuration](docs/TestQueryDuration.md) @@ -2228,6 +2321,8 @@ Class | Method | HTTP request | Description - [TotalResultHeader](docs/TotalResultHeader.md) - [TriggerAutomationRequest](docs/TriggerAutomationRequest.md) - [TriggerQualityIssuesCalculationResponse](docs/TriggerQualityIssuesCalculationResponse.md) + - [UpsertKnowledgeDocumentRequestDto](docs/UpsertKnowledgeDocumentRequestDto.md) + - [UpsertKnowledgeDocumentResponseDto](docs/UpsertKnowledgeDocumentResponseDto.md) - [UserAssignee](docs/UserAssignee.md) - [UserContext](docs/UserContext.md) - [UserGroupAssignee](docs/UserGroupAssignee.md) @@ -2250,12 +2345,16 @@ Class | Method | HTTP request | Description - [Value](docs/Value.md) - [VisibleFilter](docs/VisibleFilter.md) - [VisualExportRequest](docs/VisualExportRequest.md) + - [VisualizationConfig](docs/VisualizationConfig.md) - [Webhook](docs/Webhook.md) - [WebhookAllOf](docs/WebhookAllOf.md) - [WebhookAutomationInfo](docs/WebhookAutomationInfo.md) - [WebhookMessage](docs/WebhookMessage.md) - [WebhookMessageData](docs/WebhookMessageData.md) - [WebhookRecipient](docs/WebhookRecipient.md) + - [WhatIfMeasureAdjustmentConfig](docs/WhatIfMeasureAdjustmentConfig.md) + - [WhatIfScenarioConfig](docs/WhatIfScenarioConfig.md) + - [WhatIfScenarioItem](docs/WhatIfScenarioItem.md) - [WidgetSlidesTemplate](docs/WidgetSlidesTemplate.md) - [WorkspaceAutomationIdentifier](docs/WorkspaceAutomationIdentifier.md) - [WorkspaceAutomationManagementBulkRequest](docs/WorkspaceAutomationManagementBulkRequest.md) @@ -2269,9 +2368,11 @@ Class | Method | HTTP request | Description - [Xliff](docs/Xliff.md) + ## Documentation For Authorization - All endpoints do not require authorization. +Endpoints do not require authorization. + ## Author diff --git a/gooddata-api-client/docs/AFM.md b/gooddata-api-client/docs/AFM.md index f0e919ef5..1876a4cc4 100644 --- a/gooddata-api-client/docs/AFM.md +++ b/gooddata-api-client/docs/AFM.md @@ -9,6 +9,7 @@ Name | Type | Description | Notes **filters** | [**[AFMFiltersInner]**](AFMFiltersInner.md) | Various filter types to filter the execution result. | **measures** | [**[MeasureItem]**](MeasureItem.md) | Metrics to be computed. | **aux_measures** | [**[MeasureItem]**](MeasureItem.md) | Metrics to be referenced from other AFM objects (e.g. filters) but not included in the result. | [optional] +**measure_definition_overrides** | [**[MetricDefinitionOverride]**](MetricDefinitionOverride.md) | (EXPERIMENTAL) Override definitions of catalog metrics for this request. Allows substituting a catalog metric's MAQL definition without modifying the stored definition. | [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/AFMFiltersInner.md b/gooddata-api-client/docs/AFMFiltersInner.md index 3f5b2c615..c8ff00a9a 100644 --- a/gooddata-api-client/docs/AFMFiltersInner.md +++ b/gooddata-api-client/docs/AFMFiltersInner.md @@ -10,6 +10,7 @@ Name | Type | Description | Notes **ranking_filter** | [**RankingFilterRankingFilter**](RankingFilterRankingFilter.md) | | [optional] **absolute_date_filter** | [**AbsoluteDateFilterAbsoluteDateFilter**](AbsoluteDateFilterAbsoluteDateFilter.md) | | [optional] **relative_date_filter** | [**RelativeDateFilterRelativeDateFilter**](RelativeDateFilterRelativeDateFilter.md) | | [optional] +**all_time_date_filter** | [**AllTimeDateFilterAllTimeDateFilter**](AllTimeDateFilterAllTimeDateFilter.md) | | [optional] **negative_attribute_filter** | [**NegativeAttributeFilterNegativeAttributeFilter**](NegativeAttributeFilterNegativeAttributeFilter.md) | | [optional] **positive_attribute_filter** | [**PositiveAttributeFilterPositiveAttributeFilter**](PositiveAttributeFilterPositiveAttributeFilter.md) | | [optional] **match_attribute_filter** | [**MatchAttributeFilterMatchAttributeFilter**](MatchAttributeFilterMatchAttributeFilter.md) | | [optional] diff --git a/gooddata-api-client/docs/AILakeApi.md b/gooddata-api-client/docs/AILakeApi.md index 82ff0fa26..cd4bdfad3 100644 --- a/gooddata-api-client/docs/AILakeApi.md +++ b/gooddata-api-client/docs/AILakeApi.md @@ -4,10 +4,13 @@ All URIs are relative to *http://localhost* Method | HTTP request | Description ------------- | ------------- | ------------- -[**deprovision_ai_lake_database_instance**](AILakeApi.md#deprovision_ai_lake_database_instance) | **DELETE** /api/v1/ailake/database/instance/{instanceId} | (BETA) Delete an existing AILake Database instance -[**get_ai_lake_database_instance**](AILakeApi.md#get_ai_lake_database_instance) | **GET** /api/v1/ailake/database/instance/{instanceId} | (BETA) Get the specified AILake Database instance -[**get_ai_lake_operation**](AILakeApi.md#get_ai_lake_operation) | **GET** /api/v1/ailake/operation/{operationId} | (BETA) Get Long Running Operation details -[**provision_ai_lake_database_instance**](AILakeApi.md#provision_ai_lake_database_instance) | **POST** /api/v1/ailake/database/instance | (BETA) Create a new AILake Database instance +[**deprovision_ai_lake_database_instance**](AILakeApi.md#deprovision_ai_lake_database_instance) | **DELETE** /api/v1/ailake/database/instances/{instanceId} | (BETA) Delete an existing AILake Database instance +[**get_ai_lake_database_instance**](AILakeApi.md#get_ai_lake_database_instance) | **GET** /api/v1/ailake/database/instances/{instanceId} | (BETA) Get the specified AILake Database instance +[**get_ai_lake_operation**](AILakeApi.md#get_ai_lake_operation) | **GET** /api/v1/ailake/operations/{operationId} | (BETA) Get Long Running Operation details +[**list_ai_lake_database_instances**](AILakeApi.md#list_ai_lake_database_instances) | **GET** /api/v1/ailake/database/instances | (BETA) List AI Lake Database instances +[**list_ai_lake_services**](AILakeApi.md#list_ai_lake_services) | **GET** /api/v1/ailake/services | (BETA) List AI Lake services +[**provision_ai_lake_database_instance**](AILakeApi.md#provision_ai_lake_database_instance) | **POST** /api/v1/ailake/database/instances | (BETA) Create a new AILake Database instance +[**run_ai_lake_service_command**](AILakeApi.md#run_ai_lake_service_command) | **POST** /api/v1/ailake/services/{serviceId}/commands/{commandName}/run | (BETA) Run an AI Lake services command # **deprovision_ai_lake_database_instance** @@ -221,6 +224,154 @@ 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) +# **list_ai_lake_database_instances** +> ListDatabaseInstancesResponse list_ai_lake_database_instances() + +(BETA) List AI Lake Database instances + +(BETA) Lists database instances in the organization's AI Lake. Supports paging via size and offset query parameters. Use metaInclude=page to get total count. + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import ai_lake_api +from gooddata_api_client.model.list_database_instances_response import ListDatabaseInstancesResponse +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_lake_api.AILakeApi(api_client) + size = 50 # int | (optional) if omitted the server will use the default value of 50 + offset = 0 # int | (optional) if omitted the server will use the default value of 0 + meta_include = [ + "metaInclude_example", + ] # [str] | (optional) + + # example passing only required values which don't have defaults set + # and optional values + try: + # (BETA) List AI Lake Database instances + api_response = api_instance.list_ai_lake_database_instances(size=size, offset=offset, meta_include=meta_include) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling AILakeApi->list_ai_lake_database_instances: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **size** | **int**| | [optional] if omitted the server will use the default value of 50 + **offset** | **int**| | [optional] if omitted the server will use the default value of 0 + **meta_include** | **[str]**| | [optional] + +### Return type + +[**ListDatabaseInstancesResponse**](ListDatabaseInstancesResponse.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | AI Lake database instances successfully retrieved | - | + +[[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) + +# **list_ai_lake_services** +> ListServicesResponse list_ai_lake_services() + +(BETA) List AI Lake services + +(BETA) Lists services configured for the organization's AI Lake. Returns only non-sensitive fields (id, name). Supports paging via size and offset query parameters. Use metaInclude=page to get total count. + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import ai_lake_api +from gooddata_api_client.model.list_services_response import ListServicesResponse +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_lake_api.AILakeApi(api_client) + size = 50 # int | (optional) if omitted the server will use the default value of 50 + offset = 0 # int | (optional) if omitted the server will use the default value of 0 + meta_include = [ + "metaInclude_example", + ] # [str] | (optional) + + # example passing only required values which don't have defaults set + # and optional values + try: + # (BETA) List AI Lake services + api_response = api_instance.list_ai_lake_services(size=size, offset=offset, meta_include=meta_include) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling AILakeApi->list_ai_lake_services: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **size** | **int**| | [optional] if omitted the server will use the default value of 50 + **offset** | **int**| | [optional] if omitted the server will use the default value of 0 + **meta_include** | **[str]**| | [optional] + +### Return type + +[**ListServicesResponse**](ListServicesResponse.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | AI Lake services successfully retrieved | - | + +[[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) + # **provision_ai_lake_database_instance** > {str: (bool, date, datetime, dict, float, int, list, str, none_type)} provision_ai_lake_database_instance(provision_database_instance_request) @@ -304,3 +455,90 @@ 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) +# **run_ai_lake_service_command** +> {str: (bool, date, datetime, dict, float, int, list, str, none_type)} run_ai_lake_service_command(service_id, command_name, run_service_command_request) + +(BETA) Run an AI Lake services command + +(BETA) Runs a specific AI Lake service command. + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import ai_lake_api +from gooddata_api_client.model.run_service_command_request import RunServiceCommandRequest +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_lake_api.AILakeApi(api_client) + service_id = "serviceId_example" # str | + command_name = "commandName_example" # str | + run_service_command_request = RunServiceCommandRequest( + context={ + "key": "key_example", + }, + payload=JsonNode(), + ) # RunServiceCommandRequest | + operation_id = "operation-id_example" # str | (optional) + + # example passing only required values which don't have defaults set + try: + # (BETA) Run an AI Lake services command + api_response = api_instance.run_ai_lake_service_command(service_id, command_name, run_service_command_request) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling AILakeApi->run_ai_lake_service_command: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # (BETA) Run an AI Lake services command + api_response = api_instance.run_ai_lake_service_command(service_id, command_name, run_service_command_request, operation_id=operation_id) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling AILakeApi->run_ai_lake_service_command: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **service_id** | **str**| | + **command_name** | **str**| | + **run_service_command_request** | [**RunServiceCommandRequest**](RunServiceCommandRequest.md)| | + **operation_id** | **str**| | [optional] + +### Return type + +**{str: (bool, date, datetime, dict, float, int, list, str, none_type)}** + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: application/json + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**202** | Accepted | * operation-id - Operation ID to use for polling.
* operation-location - Operation location URL that can be used for polling.
| + +[[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/AbsoluteDateFilterAbsoluteDateFilter.md b/gooddata-api-client/docs/AbsoluteDateFilterAbsoluteDateFilter.md index a82af8ee5..a8cb9af60 100644 --- a/gooddata-api-client/docs/AbsoluteDateFilterAbsoluteDateFilter.md +++ b/gooddata-api-client/docs/AbsoluteDateFilterAbsoluteDateFilter.md @@ -8,6 +8,7 @@ Name | Type | Description | Notes **_from** | **str** | | **to** | **str** | | **apply_on_result** | **bool** | | [optional] +**empty_value_handling** | **str** | Specifies how rows with empty (null/missing) date values should be handled. INCLUDE includes empty dates in addition to the date range restriction, EXCLUDE removes rows with empty dates (default), ONLY keeps only rows with empty dates. | [optional] if omitted the server will use the default value of "EXCLUDE" **local_identifier** | **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/ActionsApi.md b/gooddata-api-client/docs/ActionsApi.md index b192509db..00977d702 100644 --- a/gooddata-api-client/docs/ActionsApi.md +++ b/gooddata-api-client/docs/ActionsApi.md @@ -26,6 +26,7 @@ Method | HTTP request | Description [**compute_valid_descendants**](ActionsApi.md#compute_valid_descendants) | **POST** /api/v1/actions/workspaces/{workspaceId}/execution/afm/computeValidDescendants | (BETA) Valid descendants [**compute_valid_objects**](ActionsApi.md#compute_valid_objects) | **POST** /api/v1/actions/workspaces/{workspaceId}/execution/afm/computeValidObjects | Valid objects [**create_dashboard_export_request**](ActionsApi.md#create_dashboard_export_request) | **POST** /api/v1/actions/workspaces/{workspaceId}/analyticalDashboards/{dashboardId}/export/tabular | (EXPERIMENTAL) Create dashboard tabular export request +[**create_document**](ActionsApi.md#create_document) | **POST** /api/v1/actions/workspaces/{workspaceId}/ai/knowledge/documents | [**create_image_export**](ActionsApi.md#create_image_export) | **POST** /api/v1/actions/workspaces/{workspaceId}/export/image | (EXPERIMENTAL) Create image export request [**create_pdf_export**](ActionsApi.md#create_pdf_export) | **POST** /api/v1/actions/workspaces/{workspaceId}/export/visual | Create visual - pdf export request [**create_raw_export**](ActionsApi.md#create_raw_export) | **POST** /api/v1/actions/workspaces/{workspaceId}/export/raw | (EXPERIMENTAL) Create raw export request @@ -33,16 +34,20 @@ Method | HTTP request | Description [**create_tabular_export**](ActionsApi.md#create_tabular_export) | **POST** /api/v1/actions/workspaces/{workspaceId}/export/tabular | Create tabular export request [**created_by**](ActionsApi.md#created_by) | **GET** /api/v1/actions/workspaces/{workspaceId}/ai/analyticsCatalog/createdBy | Get Analytics Catalog CreatedBy Users [**dashboard_permissions**](ActionsApi.md#dashboard_permissions) | **GET** /api/v1/actions/workspaces/{workspaceId}/analyticalDashboards/{dashboardId}/permissions | Get Dashboard Permissions +[**delete_document**](ActionsApi.md#delete_document) | **DELETE** /api/v1/actions/workspaces/{workspaceId}/ai/knowledge/documents/{filename} | [**delete_organization_automations**](ActionsApi.md#delete_organization_automations) | **POST** /api/v1/actions/organization/automations/delete | Delete selected automations across all workspaces [**delete_workspace_automations**](ActionsApi.md#delete_workspace_automations) | **POST** /api/v1/actions/workspaces/{workspaceId}/automations/delete | Delete selected automations in the workspace [**explain_afm**](ActionsApi.md#explain_afm) | **POST** /api/v1/actions/workspaces/{workspaceId}/execution/afm/explain | AFM explain resource. [**forecast**](ActionsApi.md#forecast) | **POST** /api/v1/actions/workspaces/{workspaceId}/execution/functions/forecast/{resultId} | (BETA) Smart functions - Forecast [**forecast_result**](ActionsApi.md#forecast_result) | **GET** /api/v1/actions/workspaces/{workspaceId}/execution/functions/forecast/result/{resultId} | (BETA) Smart functions - Forecast Result +[**generate_description**](ActionsApi.md#generate_description) | **POST** /api/v1/actions/workspaces/{workspaceId}/ai/analyticsCatalog/generateDescription | Generate Description for Analytics Object [**generate_logical_model**](ActionsApi.md#generate_logical_model) | **POST** /api/v1/actions/dataSources/{dataSourceId}/generateLogicalModel | Generate logical data model (LDM) from physical data model (PDM) [**generate_logical_model_aac**](ActionsApi.md#generate_logical_model_aac) | **POST** /api/v1/actions/dataSources/{dataSourceId}/generateLogicalModelAac | Generate logical data model in AAC format from physical data model (PDM) +[**generate_title**](ActionsApi.md#generate_title) | **POST** /api/v1/actions/workspaces/{workspaceId}/ai/analyticsCatalog/generateTitle | Generate Title for Analytics Object [**get_data_source_schemata**](ActionsApi.md#get_data_source_schemata) | **GET** /api/v1/actions/dataSources/{dataSourceId}/scanSchemata | Get a list of schema names of a database [**get_dependent_entities_graph**](ActionsApi.md#get_dependent_entities_graph) | **GET** /api/v1/actions/workspaces/{workspaceId}/dependentEntitiesGraph | Computes the dependent entities graph [**get_dependent_entities_graph_from_entry_points**](ActionsApi.md#get_dependent_entities_graph_from_entry_points) | **POST** /api/v1/actions/workspaces/{workspaceId}/dependentEntitiesGraph | Computes the dependent entities graph from given entry points +[**get_document**](ActionsApi.md#get_document) | **GET** /api/v1/actions/workspaces/{workspaceId}/ai/knowledge/documents/{filename} | [**get_exported_file**](ActionsApi.md#get_exported_file) | **GET** /api/v1/actions/workspaces/{workspaceId}/export/visual/{exportId} | Retrieve exported files [**get_image_export**](ActionsApi.md#get_image_export) | **GET** /api/v1/actions/workspaces/{workspaceId}/export/image/{exportId} | (EXPERIMENTAL) Retrieve exported files [**get_image_export_metadata**](ActionsApi.md#get_image_export_metadata) | **GET** /api/v1/actions/workspaces/{workspaceId}/export/image/{exportId}/metadata | (EXPERIMENTAL) Retrieve metadata context @@ -59,6 +64,7 @@ Method | HTTP request | Description [**inherited_entity_prefixes**](ActionsApi.md#inherited_entity_prefixes) | **GET** /api/v1/actions/workspaces/{workspaceId}/inheritedEntityPrefixes | Get used entity prefixes in hierarchy [**key_driver_analysis**](ActionsApi.md#key_driver_analysis) | **POST** /api/v1/actions/workspaces/{workspaceId}/execution/computeKeyDrivers | (EXPERIMENTAL) Compute key driver analysis [**key_driver_analysis_result**](ActionsApi.md#key_driver_analysis_result) | **GET** /api/v1/actions/workspaces/{workspaceId}/execution/computeKeyDrivers/result/{resultId} | (EXPERIMENTAL) Get key driver analysis result +[**list_documents**](ActionsApi.md#list_documents) | **GET** /api/v1/actions/workspaces/{workspaceId}/ai/knowledge/documents | [**list_workspace_user_groups**](ActionsApi.md#list_workspace_user_groups) | **GET** /api/v1/actions/workspaces/{workspaceId}/userGroups | [**list_workspace_users**](ActionsApi.md#list_workspace_users) | **GET** /api/v1/actions/workspaces/{workspaceId}/users | [**manage_dashboard_permissions**](ActionsApi.md#manage_dashboard_permissions) | **POST** /api/v1/actions/workspaces/{workspaceId}/analyticalDashboards/{dashboardId}/managePermissions | Manage Permissions for a Dashboard @@ -75,6 +81,7 @@ Method | HTTP request | Description [**outlier_detection_result**](ActionsApi.md#outlier_detection_result) | **GET** /api/v1/actions/workspaces/{workspaceId}/execution/detectOutliers/result/{resultId} | (BETA) Outlier Detection Result [**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. +[**patch_document**](ActionsApi.md#patch_document) | **PATCH** /api/v1/actions/workspaces/{workspaceId}/ai/knowledge/documents/{filename} | [**pause_organization_automations**](ActionsApi.md#pause_organization_automations) | **POST** /api/v1/actions/organization/automations/pause | Pause selected automations across all workspaces [**pause_workspace_automations**](ActionsApi.md#pause_workspace_automations) | **POST** /api/v1/actions/workspaces/{workspaceId}/automations/pause | Pause selected automations in the workspace [**register_upload_notification**](ActionsApi.md#register_upload_notification) | **POST** /api/v1/actions/dataSources/{dataSourceId}/uploadNotification | Register an upload notification @@ -88,12 +95,16 @@ Method | HTTP request | Description [**retrieve_translations**](ActionsApi.md#retrieve_translations) | **POST** /api/v1/actions/workspaces/{workspaceId}/translations/retrieve | Retrieve translations for entities. [**scan_data_source**](ActionsApi.md#scan_data_source) | **POST** /api/v1/actions/dataSources/{dataSourceId}/scan | Scan a database to get a physical data model (PDM) [**scan_sql**](ActionsApi.md#scan_sql) | **POST** /api/v1/actions/dataSources/{dataSourceId}/scanSql | Collect metadata about SQL query +[**search_knowledge**](ActionsApi.md#search_knowledge) | **GET** /api/v1/actions/workspaces/{workspaceId}/ai/knowledge/search | +[**set_certification**](ActionsApi.md#set_certification) | **POST** /api/v1/actions/workspaces/{workspaceId}/setCertification | Set Certification [**set_translations**](ActionsApi.md#set_translations) | **POST** /api/v1/actions/workspaces/{workspaceId}/translations/set | Set translations for entities. [**switch_active_identity_provider**](ActionsApi.md#switch_active_identity_provider) | **POST** /api/v1/actions/organization/switchActiveIdentityProvider | Switch Active Identity Provider [**tags**](ActionsApi.md#tags) | **GET** /api/v1/actions/workspaces/{workspaceId}/ai/analyticsCatalog/tags | Get Analytics Catalog Tags [**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 [**test_existing_notification_channel**](ActionsApi.md#test_existing_notification_channel) | **POST** /api/v1/actions/notificationChannels/{notificationChannelId}/test | Test existing notification channel. +[**test_llm_provider**](ActionsApi.md#test_llm_provider) | **POST** /api/v1/actions/ai/llmProvider/test | Test LLM Provider +[**test_llm_provider_by_id**](ActionsApi.md#test_llm_provider_by_id) | **POST** /api/v1/actions/ai/llmProvider/{llmProviderId}/test | Test LLM Provider By Id [**test_notification_channel**](ActionsApi.md#test_notification_channel) | **POST** /api/v1/actions/notificationChannels/test | Test notification channel. [**trigger_automation**](ActionsApi.md#trigger_automation) | **POST** /api/v1/actions/workspaces/{workspaceId}/automations/trigger | Trigger automation. [**trigger_existing_automation**](ActionsApi.md#trigger_existing_automation) | **POST** /api/v1/actions/workspaces/{workspaceId}/automations/{automationId}/trigger | Trigger existing automation. @@ -105,6 +116,7 @@ Method | HTTP request | Description [**unsubscribe_organization_automations**](ActionsApi.md#unsubscribe_organization_automations) | **POST** /api/v1/actions/organization/automations/unsubscribe | Unsubscribe from selected automations across all workspaces [**unsubscribe_selected_workspace_automations**](ActionsApi.md#unsubscribe_selected_workspace_automations) | **POST** /api/v1/actions/workspaces/{workspaceId}/automations/unsubscribe | Unsubscribe from selected automations in the workspace [**unsubscribe_workspace_automations**](ActionsApi.md#unsubscribe_workspace_automations) | **DELETE** /api/v1/actions/workspaces/{workspaceId}/automations/unsubscribe | Unsubscribe from all automations in the workspace +[**upsert_document**](ActionsApi.md#upsert_document) | **PUT** /api/v1/actions/workspaces/{workspaceId}/ai/knowledge/documents | [**validate_llm_endpoint**](ActionsApi.md#validate_llm_endpoint) | **POST** /api/v1/actions/ai/llmEndpoint/test | Validate LLM Endpoint [**validate_llm_endpoint_by_id**](ActionsApi.md#validate_llm_endpoint_by_id) | **POST** /api/v1/actions/ai/llmEndpoint/{llmEndpointId}/test | Validate LLM Endpoint By Id [**workspace_resolve_all_settings**](ActionsApi.md#workspace_resolve_all_settings) | **GET** /api/v1/actions/workspaces/{workspaceId}/resolveSettings | Values for all settings. @@ -1655,6 +1667,21 @@ with gooddata_api_client.ApiClient() as api_client: filters=[ FilterDefinition(), ], + measure_definition_overrides=[ + MetricDefinitionOverride( + definition=InlineMeasureDefinition( + inline=InlineMeasureDefinitionInline( + maql="maql_example", + ), + ), + item=AfmObjectIdentifierCore( + identifier=AfmObjectIdentifierCoreIdentifier( + id="sample_item.price", + type="attribute", + ), + ), + ), + ], measures=[ MeasureItem( definition=MeasureDefinition(), @@ -1875,6 +1902,21 @@ with gooddata_api_client.ApiClient() as api_client: filters=[ FilterDefinition(), ], + measure_definition_overrides=[ + MetricDefinitionOverride( + definition=InlineMeasureDefinition( + inline=InlineMeasureDefinitionInline( + maql="maql_example", + ), + ), + item=AfmObjectIdentifierCore( + identifier=AfmObjectIdentifierCoreIdentifier( + id="sample_item.price", + type="attribute", + ), + ), + ), + ], measures=[ MeasureItem( definition=MeasureDefinition(), @@ -2018,6 +2060,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) +# **create_document** +> CreateKnowledgeDocumentResponseDto create_document(workspace_id, create_knowledge_document_request_dto) + + + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import actions_api +from gooddata_api_client.model.create_knowledge_document_response_dto import CreateKnowledgeDocumentResponseDto +from gooddata_api_client.model.create_knowledge_document_request_dto import CreateKnowledgeDocumentRequestDto +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 + create_knowledge_document_request_dto = CreateKnowledgeDocumentRequestDto( + content="content_example", + filename="filename_example", + page_boundaries=[ + 1, + ], + scopes=[ + "scopes_example", + ], + title="title_example", + ) # CreateKnowledgeDocumentRequestDto | + + # example passing only required values which don't have defaults set + try: + api_response = api_instance.create_document(workspace_id, create_knowledge_document_request_dto) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling ActionsApi->create_document: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| Workspace identifier | + **create_knowledge_document_request_dto** | [**CreateKnowledgeDocumentRequestDto**](CreateKnowledgeDocumentRequestDto.md)| | + +### Return type + +[**CreateKnowledgeDocumentResponseDto**](CreateKnowledgeDocumentResponseDto.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) + # **create_image_export** > ExportResponse create_image_export(workspace_id, image_export_request) @@ -2246,6 +2365,21 @@ with gooddata_api_client.ApiClient() as api_client: filters=[ FilterDefinition(), ], + measure_definition_overrides=[ + MetricDefinitionOverride( + definition=InlineMeasureDefinition( + inline=InlineMeasureDefinitionInline( + maql="maql_example", + ), + ), + item=AfmObjectIdentifierCore( + identifier=AfmObjectIdentifierCoreIdentifier( + id="sample_item.price", + type="attribute", + ), + ), + ), + ], measures=[ MeasureItem( definition=MeasureDefinition(), @@ -2634,6 +2768,72 @@ No authorization required - **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) + +# **delete_document** +> DeleteKnowledgeDocumentResponseDto delete_document(workspace_id, filename) + + + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import actions_api +from gooddata_api_client.model.delete_knowledge_document_response_dto import DeleteKnowledgeDocumentResponseDto +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 + filename = "filename_example" # str | + + # example passing only required values which don't have defaults set + try: + api_response = api_instance.delete_document(workspace_id, filename) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling ActionsApi->delete_document: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| Workspace identifier | + **filename** | **str**| | + +### Return type + +[**DeleteKnowledgeDocumentResponseDto**](DeleteKnowledgeDocumentResponseDto.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + + ### HTTP response details | Status code | Description | Response headers | @@ -2836,6 +3036,21 @@ with gooddata_api_client.ApiClient() as api_client: filters=[ FilterDefinition(), ], + measure_definition_overrides=[ + MetricDefinitionOverride( + definition=InlineMeasureDefinition( + inline=InlineMeasureDefinitionInline( + maql="maql_example", + ), + ), + item=AfmObjectIdentifierCore( + identifier=AfmObjectIdentifierCoreIdentifier( + id="sample_item.price", + type="attribute", + ), + ), + ), + ], measures=[ MeasureItem( definition=MeasureDefinition(), @@ -3082,6 +3297,79 @@ No authorization required - **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) + +# **generate_description** +> GenerateDescriptionResponse generate_description(workspace_id, generate_description_request) + +Generate Description for Analytics Object + +Generates a description for the specified analytics object. Returns description and a note with details if generation was not performed. + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import actions_api +from gooddata_api_client.model.generate_description_request import GenerateDescriptionRequest +from gooddata_api_client.model.generate_description_response import GenerateDescriptionResponse +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 + generate_description_request = GenerateDescriptionRequest( + object_id="object_id_example", + object_type="Visualization", + ) # GenerateDescriptionRequest | + + # example passing only required values which don't have defaults set + try: + # Generate Description for Analytics Object + api_response = api_instance.generate_description(workspace_id, generate_description_request) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling ActionsApi->generate_description: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| Workspace identifier | + **generate_description_request** | [**GenerateDescriptionRequest**](GenerateDescriptionRequest.md)| | + +### Return type + +[**GenerateDescriptionResponse**](GenerateDescriptionResponse.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: application/json + + ### HTTP response details | Status code | Description | Response headers | @@ -3364,12 +3652,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_data_source_schemata** -> DataSourceSchemata get_data_source_schemata(data_source_id) +# **generate_title** +> GenerateTitleResponse generate_title(workspace_id, generate_title_request) -Get a list of schema names of a database +Generate Title for Analytics Object -It scans a database and reads metadata. The result of the request contains a list of schema names of a database. +Generates a title for the specified analytics object. Returns title and a note with details if generation was not performed. ### Example @@ -3378,7 +3666,8 @@ It scans a database and reads metadata. The result of the request contains a lis import time import gooddata_api_client from gooddata_api_client.api import actions_api -from gooddata_api_client.model.data_source_schemata import DataSourceSchemata +from gooddata_api_client.model.generate_title_request import GenerateTitleRequest +from gooddata_api_client.model.generate_title_response import GenerateTitleResponse 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. @@ -3391,15 +3680,19 @@ configuration = gooddata_api_client.Configuration( with gooddata_api_client.ApiClient() as api_client: # Create an instance of the API class api_instance = actions_api.ActionsApi(api_client) - data_source_id = "myPostgres" # str | Data source id + workspace_id = "/6bUUGjjNSwg0_bs" # str | Workspace identifier + generate_title_request = GenerateTitleRequest( + object_id="object_id_example", + object_type="Visualization", + ) # GenerateTitleRequest | # example passing only required values which don't have defaults set try: - # Get a list of schema names of a database - api_response = api_instance.get_data_source_schemata(data_source_id) + # Generate Title for Analytics Object + api_response = api_instance.generate_title(workspace_id, generate_title_request) pprint(api_response) except gooddata_api_client.ApiException as e: - print("Exception when calling ActionsApi->get_data_source_schemata: %s\n" % e) + print("Exception when calling ActionsApi->generate_title: %s\n" % e) ``` @@ -3407,11 +3700,12 @@ with gooddata_api_client.ApiClient() as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **data_source_id** | **str**| Data source id | + **workspace_id** | **str**| Workspace identifier | + **generate_title_request** | [**GenerateTitleRequest**](GenerateTitleRequest.md)| | ### Return type -[**DataSourceSchemata**](DataSourceSchemata.md) +[**GenerateTitleResponse**](GenerateTitleResponse.md) ### Authorization @@ -3419,7 +3713,7 @@ No authorization required ### HTTP request headers - - **Content-Type**: Not defined + - **Content-Type**: application/json - **Accept**: application/json @@ -3427,16 +3721,16 @@ No authorization required | Status code | Description | Response headers | |-------------|-------------|------------------| -**200** | The result of the scan schemata | - | +**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) -# **get_dependent_entities_graph** -> DependentEntitiesResponse get_dependent_entities_graph(workspace_id) +# **get_data_source_schemata** +> DataSourceSchemata get_data_source_schemata(data_source_id) -Computes the dependent entities graph +Get a list of schema names of a database -Computes the dependent entities graph +It scans a database and reads metadata. The result of the request contains a list of schema names of a database. ### Example @@ -3445,7 +3739,7 @@ Computes the dependent entities graph import time import gooddata_api_client from gooddata_api_client.api import actions_api -from gooddata_api_client.model.dependent_entities_response import DependentEntitiesResponse +from gooddata_api_client.model.data_source_schemata import DataSourceSchemata 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. @@ -3458,15 +3752,15 @@ configuration = gooddata_api_client.Configuration( 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 | + data_source_id = "myPostgres" # str | Data source id # example passing only required values which don't have defaults set try: - # Computes the dependent entities graph - api_response = api_instance.get_dependent_entities_graph(workspace_id) + # Get a list of schema names of a database + api_response = api_instance.get_data_source_schemata(data_source_id) pprint(api_response) except gooddata_api_client.ApiException as e: - print("Exception when calling ActionsApi->get_dependent_entities_graph: %s\n" % e) + print("Exception when calling ActionsApi->get_data_source_schemata: %s\n" % e) ``` @@ -3474,11 +3768,11 @@ with gooddata_api_client.ApiClient() as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **workspace_id** | **str**| | + **data_source_id** | **str**| Data source id | ### Return type -[**DependentEntitiesResponse**](DependentEntitiesResponse.md) +[**DataSourceSchemata**](DataSourceSchemata.md) ### Authorization @@ -3494,16 +3788,16 @@ No authorization required | Status code | Description | Response headers | |-------------|-------------|------------------| -**200** | Computes the dependent entities graph | - | +**200** | The result of the scan schemata | - | [[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_dependent_entities_graph_from_entry_points** -> DependentEntitiesResponse get_dependent_entities_graph_from_entry_points(workspace_id, dependent_entities_request) +# **get_dependent_entities_graph** +> DependentEntitiesResponse get_dependent_entities_graph(workspace_id) -Computes the dependent entities graph from given entry points +Computes the dependent entities graph -Computes the dependent entities graph from given entry points +Computes the dependent entities graph ### Example @@ -3512,7 +3806,6 @@ Computes the dependent entities graph from given entry points import time import gooddata_api_client from gooddata_api_client.api import actions_api -from gooddata_api_client.model.dependent_entities_request import DependentEntitiesRequest from gooddata_api_client.model.dependent_entities_response import DependentEntitiesResponse from pprint import pprint # Defining the host is optional and defaults to http://localhost @@ -3527,13 +3820,82 @@ 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 | - dependent_entities_request = DependentEntitiesRequest( - identifiers=[ + + # example passing only required values which don't have defaults set + try: + # Computes the dependent entities graph + api_response = api_instance.get_dependent_entities_graph(workspace_id) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling ActionsApi->get_dependent_entities_graph: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| | + +### Return type + +[**DependentEntitiesResponse**](DependentEntitiesResponse.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Computes the dependent entities graph | - | + +[[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_dependent_entities_graph_from_entry_points** +> DependentEntitiesResponse get_dependent_entities_graph_from_entry_points(workspace_id, dependent_entities_request) + +Computes the dependent entities graph from given entry points + +Computes the dependent entities graph from given entry points + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import actions_api +from gooddata_api_client.model.dependent_entities_request import DependentEntitiesRequest +from gooddata_api_client.model.dependent_entities_response import DependentEntitiesResponse +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 | + dependent_entities_request = DependentEntitiesRequest( + identifiers=[ EntityIdentifier( id="/6bUUGjjNSwg0_bs", type="metric", ), ], + relation="DEPENDENTS", ) # DependentEntitiesRequest | # example passing only required values which don't have defaults set @@ -3575,6 +3937,72 @@ 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_document** +> KnowledgeDocumentMetadataDto get_document(workspace_id, filename) + + + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import actions_api +from gooddata_api_client.model.knowledge_document_metadata_dto import KnowledgeDocumentMetadataDto +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 + filename = "filename_example" # str | + + # example passing only required values which don't have defaults set + try: + api_response = api_instance.get_document(workspace_id, filename) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling ActionsApi->get_document: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| Workspace identifier | + **filename** | **str**| | + +### Return type + +[**KnowledgeDocumentMetadataDto**](KnowledgeDocumentMetadataDto.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **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) + # **get_exported_file** > file_type get_exported_file(workspace_id, export_id) @@ -4703,6 +5131,88 @@ No authorization required - **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) + +# **list_documents** +> ListKnowledgeDocumentsResponseDto list_documents(workspace_id) + + + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import actions_api +from gooddata_api_client.model.list_knowledge_documents_response_dto import ListKnowledgeDocumentsResponseDto +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 + scopes = [ + "scopes_example", + ] # [str] | (optional) + size = 50 # int | (optional) if omitted the server will use the default value of 50 + page_token = "pageToken_example" # str | (optional) + meta_include = "metaInclude_example" # str | (optional) + + # example passing only required values which don't have defaults set + try: + api_response = api_instance.list_documents(workspace_id) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling ActionsApi->list_documents: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + api_response = api_instance.list_documents(workspace_id, scopes=scopes, size=size, page_token=page_token, meta_include=meta_include) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling ActionsApi->list_documents: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| Workspace identifier | + **scopes** | **[str]**| | [optional] + **size** | **int**| | [optional] if omitted the server will use the default value of 50 + **page_token** | **str**| | [optional] + **meta_include** | **str**| | [optional] + +### Return type + +[**ListKnowledgeDocumentsResponseDto**](ListKnowledgeDocumentsResponseDto.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + + ### HTTP response details | Status code | Description | Response headers | @@ -5881,6 +6391,81 @@ No authorization required - **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) + +# **patch_document** +> KnowledgeDocumentMetadataDto patch_document(workspace_id, filename, patch_knowledge_document_request_dto) + + + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import actions_api +from gooddata_api_client.model.knowledge_document_metadata_dto import KnowledgeDocumentMetadataDto +from gooddata_api_client.model.patch_knowledge_document_request_dto import PatchKnowledgeDocumentRequestDto +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 + filename = "filename_example" # str | + patch_knowledge_document_request_dto = PatchKnowledgeDocumentRequestDto( + is_disabled=True, + scopes=[ + "scopes_example", + ], + title="title_example", + ) # PatchKnowledgeDocumentRequestDto | + + # example passing only required values which don't have defaults set + try: + api_response = api_instance.patch_document(workspace_id, filename, patch_knowledge_document_request_dto) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling ActionsApi->patch_document: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| Workspace identifier | + **filename** | **str**| | + **patch_knowledge_document_request_dto** | [**PatchKnowledgeDocumentRequestDto**](PatchKnowledgeDocumentRequestDto.md)| | + +### Return type + +[**KnowledgeDocumentMetadataDto**](KnowledgeDocumentMetadataDto.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: application/json + + ### HTTP response details | Status code | Description | Response headers | @@ -6830,12 +7415,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) -# **set_translations** -> set_translations(workspace_id, xliff) +# **search_knowledge** +> SearchKnowledgeResponseDto search_knowledge(workspace_id, query) -Set translations for entities. -Set translation for existing entities in a particular locale. ### Example @@ -6844,7 +7427,164 @@ Set translation for existing entities in a particular locale. import time import gooddata_api_client from gooddata_api_client.api import actions_api -from gooddata_api_client.model.xliff import Xliff +from gooddata_api_client.model.search_knowledge_response_dto import SearchKnowledgeResponseDto +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 + query = "query_example" # str | + limit = 10 # int | (optional) if omitted the server will use the default value of 10 + min_score = 0.0 # float | (optional) if omitted the server will use the default value of 0.0 + scopes = [ + "scopes_example", + ] # [str] | (optional) + + # example passing only required values which don't have defaults set + try: + api_response = api_instance.search_knowledge(workspace_id, query) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling ActionsApi->search_knowledge: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + api_response = api_instance.search_knowledge(workspace_id, query, limit=limit, min_score=min_score, scopes=scopes) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling ActionsApi->search_knowledge: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| Workspace identifier | + **query** | **str**| | + **limit** | **int**| | [optional] if omitted the server will use the default value of 10 + **min_score** | **float**| | [optional] if omitted the server will use the default value of 0.0 + **scopes** | **[str]**| | [optional] + +### Return type + +[**SearchKnowledgeResponseDto**](SearchKnowledgeResponseDto.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **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) + +# **set_certification** +> set_certification(workspace_id, set_certification_request) + +Set Certification + +Set or clear the certification (e.g. CERTIFIED) of a workspace entity. Requires MANAGE permission. + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import actions_api +from gooddata_api_client.model.set_certification_request import SetCertificationRequest +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 | + set_certification_request = SetCertificationRequest( + id="total-sales", + message="message_example", + status="CERTIFIED", + type="metric", + ) # SetCertificationRequest | + + # example passing only required values which don't have defaults set + try: + # Set Certification + api_instance.set_certification(workspace_id, set_certification_request) + except gooddata_api_client.ApiException as e: + print("Exception when calling ActionsApi->set_certification: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| | + **set_certification_request** | [**SetCertificationRequest**](SetCertificationRequest.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** | 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) + +# **set_translations** +> set_translations(workspace_id, xliff) + +Set translations for entities. + +Set translation for existing entities in a particular locale. + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import actions_api +from gooddata_api_client.model.xliff import Xliff 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. @@ -7338,6 +8078,149 @@ 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) +# **test_llm_provider** +> TestLlmProviderResponse test_llm_provider(test_llm_provider_definition_request) + +Test LLM Provider + +Tests LLM provider connectivity with a full definition. + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import actions_api +from gooddata_api_client.model.test_llm_provider_response import TestLlmProviderResponse +from gooddata_api_client.model.test_llm_provider_definition_request import TestLlmProviderDefinitionRequest +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) + test_llm_provider_definition_request = TestLlmProviderDefinitionRequest( + models=[ + LlmModel( + family="OPENAI", + id="id_example", + ), + ], + provider_config=TestLlmProviderDefinitionRequestProviderConfig(None), + ) # TestLlmProviderDefinitionRequest | + + # example passing only required values which don't have defaults set + try: + # Test LLM Provider + api_response = api_instance.test_llm_provider(test_llm_provider_definition_request) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling ActionsApi->test_llm_provider: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **test_llm_provider_definition_request** | [**TestLlmProviderDefinitionRequest**](TestLlmProviderDefinitionRequest.md)| | + +### Return type + +[**TestLlmProviderResponse**](TestLlmProviderResponse.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) + +# **test_llm_provider_by_id** +> TestLlmProviderResponse test_llm_provider_by_id(llm_provider_id) + +Test LLM Provider By Id + +Tests an existing LLM provider connectivity by its ID. + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import actions_api +from gooddata_api_client.model.test_llm_provider_response import TestLlmProviderResponse +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) + llm_provider_id = "llmProviderId_example" # str | + + # example passing only required values which don't have defaults set + try: + # Test LLM Provider By Id + api_response = api_instance.test_llm_provider_by_id(llm_provider_id) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling ActionsApi->test_llm_provider_by_id: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **llm_provider_id** | **str**| | + +### Return type + +[**TestLlmProviderResponse**](TestLlmProviderResponse.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **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) + # **test_notification_channel** > TestResponse test_notification_channel(test_destination_request) @@ -7572,6 +8455,21 @@ with gooddata_api_client.ApiClient() as api_client: filters=[ FilterDefinition(), ], + measure_definition_overrides=[ + MetricDefinitionOverride( + definition=InlineMeasureDefinition( + inline=InlineMeasureDefinitionInline( + maql="maql_example", + ), + ), + item=AfmObjectIdentifierCore( + identifier=AfmObjectIdentifierCoreIdentifier( + id="sample_item.price", + type="attribute", + ), + ), + ), + ], measures=[ MeasureItem( definition=MeasureDefinition(), @@ -8321,6 +9219,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) +# **upsert_document** +> UpsertKnowledgeDocumentResponseDto upsert_document(workspace_id, upsert_knowledge_document_request_dto) + + + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import actions_api +from gooddata_api_client.model.upsert_knowledge_document_response_dto import UpsertKnowledgeDocumentResponseDto +from gooddata_api_client.model.upsert_knowledge_document_request_dto import UpsertKnowledgeDocumentRequestDto +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 + upsert_knowledge_document_request_dto = UpsertKnowledgeDocumentRequestDto( + content="content_example", + filename="filename_example", + page_boundaries=[ + 1, + ], + scopes=[ + "scopes_example", + ], + title="title_example", + ) # UpsertKnowledgeDocumentRequestDto | + + # example passing only required values which don't have defaults set + try: + api_response = api_instance.upsert_document(workspace_id, upsert_knowledge_document_request_dto) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling ActionsApi->upsert_document: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| Workspace identifier | + **upsert_knowledge_document_request_dto** | [**UpsertKnowledgeDocumentRequestDto**](UpsertKnowledgeDocumentRequestDto.md)| | + +### Return type + +[**UpsertKnowledgeDocumentResponseDto**](UpsertKnowledgeDocumentResponseDto.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) + # **validate_llm_endpoint** > ValidateLLMEndpointResponse validate_llm_endpoint(validate_llm_endpoint_request) diff --git a/gooddata-api-client/docs/AllTimeDateFilter.md b/gooddata-api-client/docs/AllTimeDateFilter.md new file mode 100644 index 000000000..2ec0ccea0 --- /dev/null +++ b/gooddata-api-client/docs/AllTimeDateFilter.md @@ -0,0 +1,13 @@ +# AllTimeDateFilter + +An all-time date filter that does not restrict by date range. Controls how rows with empty (null/missing) date values are handled. + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**all_time_date_filter** | [**AllTimeDateFilterAllTimeDateFilter**](AllTimeDateFilterAllTimeDateFilter.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/AllTimeDateFilterAllTimeDateFilter.md b/gooddata-api-client/docs/AllTimeDateFilterAllTimeDateFilter.md new file mode 100644 index 000000000..c0a4fc42c --- /dev/null +++ b/gooddata-api-client/docs/AllTimeDateFilterAllTimeDateFilter.md @@ -0,0 +1,16 @@ +# AllTimeDateFilterAllTimeDateFilter + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**dataset** | [**AfmObjectIdentifierDataset**](AfmObjectIdentifierDataset.md) | | +**apply_on_result** | **bool** | | [optional] +**empty_value_handling** | **str** | Specifies how rows with empty (null/missing) date values should be handled. INCLUDE means no filtering effect (default), EXCLUDE removes rows with null dates, ONLY keeps only rows with null dates. | [optional] if omitted the server will use the default value of "INCLUDE" +**granularity** | **str** | Date granularity used to resolve the date attribute label for null value checks. Defaults to DAY if not specified. | [optional] if omitted the server will use the default value of "DAY" +**local_identifier** | **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/AnalyticsModelApi.md b/gooddata-api-client/docs/AnalyticsModelApi.md index eca8fd880..91cfda19d 100644 --- a/gooddata-api-client/docs/AnalyticsModelApi.md +++ b/gooddata-api-client/docs/AnalyticsModelApi.md @@ -128,6 +128,13 @@ with gooddata_api_client.ApiClient() as api_client: ], analytical_dashboards=[ DeclarativeAnalyticalDashboard( + certification="CERTIFIED", + certification_message="certification_message_example", + certified_at="0480-72-88 80:01", + certified_by=DeclarativeUserIdentifier( + id="employee123", + type="user", + ), content=JsonNode(), created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( @@ -152,14 +159,14 @@ with gooddata_api_client.ApiClient() as api_client: attribute_hierarchies=[ DeclarativeAttributeHierarchy( content=JsonNode(), - created_at="["2023-07-20 12:30"]", + created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( id="employee123", type="user", ), description="Simple number for total goods in current production.", id="hierarchy-1", - modified_at="["2023-07-20 12:30"]", + modified_at="2023-07-20 12:30", modified_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -171,14 +178,14 @@ with gooddata_api_client.ApiClient() as api_client: dashboard_plugins=[ DeclarativeDashboardPlugin( content=JsonNode(), - created_at="["2023-07-20 12:30"]", + created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( id="employee123", type="user", ), description="Three dimensional view of data.", id="dashboard-plugin-1", - modified_at="["2023-07-20 12:30"]", + modified_at="2023-07-20 12:30", modified_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -189,14 +196,14 @@ with gooddata_api_client.ApiClient() as api_client: ], export_definitions=[ DeclarativeExportDefinition( - created_at="["2023-07-20 12:30"]", + created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( id="employee123", type="user", ), description="Simple number for total goods in current production.", id="export-definition-1", - modified_at="["2023-07-20 12:30"]", + modified_at="2023-07-20 12:30", modified_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -241,8 +248,15 @@ with gooddata_api_client.ApiClient() as api_client: ], metrics=[ DeclarativeMetric( + certification="CERTIFIED", + certification_message="certification_message_example", + certified_at="0480-72-88 80:01", + certified_by=DeclarativeUserIdentifier( + id="employee123", + type="user", + ), content=JsonNode(), - created_at="["2023-07-20 12:30"]", + created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -251,7 +265,7 @@ with gooddata_api_client.ApiClient() as api_client: id="total-sales", is_hidden=False, is_hidden_from_kda=False, - modified_at="["2023-07-20 12:30"]", + modified_at="2023-07-20 12:30", modified_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -262,8 +276,15 @@ with gooddata_api_client.ApiClient() as api_client: ], visualization_objects=[ DeclarativeVisualizationObject( + certification="CERTIFIED", + certification_message="certification_message_example", + certified_at="0480-72-88 80:01", + certified_by=DeclarativeUserIdentifier( + id="employee123", + type="user", + ), content=JsonNode(), - created_at="["2023-07-20 12:30"]", + created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -271,7 +292,7 @@ with gooddata_api_client.ApiClient() as api_client: description="Simple number for total goods in current production.", id="visualization-1", is_hidden=False, - modified_at="["2023-07-20 12:30"]", + modified_at="2023-07-20 12:30", modified_by=DeclarativeUserIdentifier( id="employee123", type="user", diff --git a/gooddata-api-client/docs/AnomalyDetectionConfig.md b/gooddata-api-client/docs/AnomalyDetectionConfig.md new file mode 100644 index 000000000..63b7eaeb5 --- /dev/null +++ b/gooddata-api-client/docs/AnomalyDetectionConfig.md @@ -0,0 +1,13 @@ +# AnomalyDetectionConfig + +Anomaly detection configuration. + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**sensitivity** | **str** | Outlier sensitivity level. | +**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/AutomationsApi.md b/gooddata-api-client/docs/AutomationsApi.md index cf1878bb6..c569e36b5 100644 --- a/gooddata-api-client/docs/AutomationsApi.md +++ b/gooddata-api-client/docs/AutomationsApi.md @@ -181,6 +181,21 @@ with gooddata_api_client.ApiClient() as api_client: filters=[ FilterDefinition(), ], + measure_definition_overrides=[ + MetricDefinitionOverride( + definition=InlineMeasureDefinition( + inline=InlineMeasureDefinitionInline( + maql="maql_example", + ), + ), + item=AfmObjectIdentifierCore( + identifier=AfmObjectIdentifierCoreIdentifier( + id="sample_item.price", + type="attribute", + ), + ), + ), + ], measures=[ MeasureItem( definition=MeasureDefinition(), @@ -1086,6 +1101,21 @@ with gooddata_api_client.ApiClient() as api_client: filters=[ FilterDefinition(), ], + measure_definition_overrides=[ + MetricDefinitionOverride( + definition=InlineMeasureDefinition( + inline=InlineMeasureDefinitionInline( + maql="maql_example", + ), + ), + item=AfmObjectIdentifierCore( + identifier=AfmObjectIdentifierCoreIdentifier( + id="sample_item.price", + type="attribute", + ), + ), + ), + ], measures=[ MeasureItem( definition=MeasureDefinition(), @@ -1792,6 +1822,21 @@ with gooddata_api_client.ApiClient() as api_client: filters=[ FilterDefinition(), ], + measure_definition_overrides=[ + MetricDefinitionOverride( + definition=InlineMeasureDefinition( + inline=InlineMeasureDefinitionInline( + maql="maql_example", + ), + ), + item=AfmObjectIdentifierCore( + identifier=AfmObjectIdentifierCoreIdentifier( + id="sample_item.price", + type="attribute", + ), + ), + ), + ], measures=[ MeasureItem( definition=MeasureDefinition(), @@ -2101,6 +2146,21 @@ with gooddata_api_client.ApiClient() as api_client: filters=[ FilterDefinition(), ], + measure_definition_overrides=[ + MetricDefinitionOverride( + definition=InlineMeasureDefinition( + inline=InlineMeasureDefinitionInline( + maql="maql_example", + ), + ), + item=AfmObjectIdentifierCore( + identifier=AfmObjectIdentifierCoreIdentifier( + id="sample_item.price", + type="attribute", + ), + ), + ), + ], measures=[ MeasureItem( definition=MeasureDefinition(), @@ -2935,6 +2995,21 @@ with gooddata_api_client.ApiClient() as api_client: filters=[ FilterDefinition(), ], + measure_definition_overrides=[ + MetricDefinitionOverride( + definition=InlineMeasureDefinition( + inline=InlineMeasureDefinitionInline( + maql="maql_example", + ), + ), + item=AfmObjectIdentifierCore( + identifier=AfmObjectIdentifierCoreIdentifier( + id="sample_item.price", + type="attribute", + ), + ), + ), + ], measures=[ MeasureItem( definition=MeasureDefinition(), diff --git a/gooddata-api-client/docs/AwsBedrockAccessKeyAuth.md b/gooddata-api-client/docs/AwsBedrockAccessKeyAuth.md new file mode 100644 index 000000000..88acfc280 --- /dev/null +++ b/gooddata-api-client/docs/AwsBedrockAccessKeyAuth.md @@ -0,0 +1,15 @@ +# AwsBedrockAccessKeyAuth + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**type** | **str** | Authentication type. | defaults to "ACCESS_KEY" +**access_key_id** | **str, none_type** | AWS Access Key ID. | [optional] +**secret_access_key** | **str, none_type** | AWS Secret Access Key. | [optional] +**session_token** | **str, none_type** | AWS Session Token (for temporary credentials). | [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/AwsBedrockAccessKeyAuthAllOf.md b/gooddata-api-client/docs/AwsBedrockAccessKeyAuthAllOf.md new file mode 100644 index 000000000..0e8f1c172 --- /dev/null +++ b/gooddata-api-client/docs/AwsBedrockAccessKeyAuthAllOf.md @@ -0,0 +1,15 @@ +# AwsBedrockAccessKeyAuthAllOf + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**access_key_id** | **str, none_type** | AWS Access Key ID. | [optional] +**secret_access_key** | **str, none_type** | AWS Secret Access Key. | [optional] +**session_token** | **str, none_type** | AWS Session Token (for temporary credentials). | [optional] +**type** | **str** | Authentication type. | [optional] if omitted the server will use the default value of "ACCESS_KEY" +**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/AwsBedrockProviderConfig.md b/gooddata-api-client/docs/AwsBedrockProviderConfig.md new file mode 100644 index 000000000..e1c22ed57 --- /dev/null +++ b/gooddata-api-client/docs/AwsBedrockProviderConfig.md @@ -0,0 +1,15 @@ +# AwsBedrockProviderConfig + +Configuration for AWS Bedrock provider. + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**auth** | [**BedrockProviderAuth**](BedrockProviderAuth.md) | | +**region** | **str** | AWS region for Bedrock. | +**type** | **str** | Provider type. | defaults to "AWS_BEDROCK" +**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/AzureFoundryApiKeyAuth.md b/gooddata-api-client/docs/AzureFoundryApiKeyAuth.md new file mode 100644 index 000000000..5c562b557 --- /dev/null +++ b/gooddata-api-client/docs/AzureFoundryApiKeyAuth.md @@ -0,0 +1,13 @@ +# AzureFoundryApiKeyAuth + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**type** | **str** | Authentication type. | defaults to "API_KEY" +**api_key** | **str, none_type** | Azure API key. | [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/AzureFoundryApiKeyAuthAllOf.md b/gooddata-api-client/docs/AzureFoundryApiKeyAuthAllOf.md new file mode 100644 index 000000000..e95e2656d --- /dev/null +++ b/gooddata-api-client/docs/AzureFoundryApiKeyAuthAllOf.md @@ -0,0 +1,13 @@ +# AzureFoundryApiKeyAuthAllOf + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**api_key** | **str, none_type** | Azure API key. | [optional] +**type** | **str** | Authentication type. | [optional] if omitted the server will use the default value of "API_KEY" +**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/AzureFoundryProviderAuth.md b/gooddata-api-client/docs/AzureFoundryProviderAuth.md new file mode 100644 index 000000000..4744d526c --- /dev/null +++ b/gooddata-api-client/docs/AzureFoundryProviderAuth.md @@ -0,0 +1,14 @@ +# AzureFoundryProviderAuth + +Authentication configuration. + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**api_key** | **str, none_type** | Azure API key. | [optional] +**type** | **str** | Authentication type. | [optional] if omitted the server will use the default value of "API_KEY" +**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/AzureFoundryProviderConfig.md b/gooddata-api-client/docs/AzureFoundryProviderConfig.md new file mode 100644 index 000000000..08a6da0b6 --- /dev/null +++ b/gooddata-api-client/docs/AzureFoundryProviderConfig.md @@ -0,0 +1,15 @@ +# AzureFoundryProviderConfig + +Configuration for Azure Foundry provider. + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**auth** | [**AzureFoundryProviderAuth**](AzureFoundryProviderAuth.md) | | +**endpoint** | **str** | Azure AI inference endpoint URL. | +**type** | **str** | Provider type. | defaults to "AZURE_FOUNDRY" +**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/BedrockProviderAuth.md b/gooddata-api-client/docs/BedrockProviderAuth.md new file mode 100644 index 000000000..c7e41575c --- /dev/null +++ b/gooddata-api-client/docs/BedrockProviderAuth.md @@ -0,0 +1,16 @@ +# BedrockProviderAuth + +Authentication configuration. + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**access_key_id** | **str, none_type** | AWS Access Key ID. | [optional] +**secret_access_key** | **str, none_type** | AWS Secret Access Key. | [optional] +**session_token** | **str, none_type** | AWS Session Token (for temporary credentials). | [optional] +**type** | **str** | Authentication type. | [optional] if omitted the server will use the default value of "ACCESS_KEY" +**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/CertificationApi.md b/gooddata-api-client/docs/CertificationApi.md new file mode 100644 index 000000000..e6536cb65 --- /dev/null +++ b/gooddata-api-client/docs/CertificationApi.md @@ -0,0 +1,82 @@ +# gooddata_api_client.CertificationApi + +All URIs are relative to *http://localhost* + +Method | HTTP request | Description +------------- | ------------- | ------------- +[**set_certification**](CertificationApi.md#set_certification) | **POST** /api/v1/actions/workspaces/{workspaceId}/setCertification | Set Certification + + +# **set_certification** +> set_certification(workspace_id, set_certification_request) + +Set Certification + +Set or clear the certification (e.g. CERTIFIED) of a workspace entity. Requires MANAGE permission. + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import certification_api +from gooddata_api_client.model.set_certification_request import SetCertificationRequest +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 = certification_api.CertificationApi(api_client) + workspace_id = "workspaceId_example" # str | + set_certification_request = SetCertificationRequest( + id="total-sales", + message="message_example", + status="CERTIFIED", + type="metric", + ) # SetCertificationRequest | + + # example passing only required values which don't have defaults set + try: + # Set Certification + api_instance.set_certification(workspace_id, set_certification_request) + except gooddata_api_client.ApiException as e: + print("Exception when calling CertificationApi->set_certification: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| | + **set_certification_request** | [**SetCertificationRequest**](SetCertificationRequest.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** | 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/ChangeAnalysisParamsFiltersInner.md b/gooddata-api-client/docs/ChangeAnalysisParamsFiltersInner.md index 0f091de02..0c4ac924c 100644 --- a/gooddata-api-client/docs/ChangeAnalysisParamsFiltersInner.md +++ b/gooddata-api-client/docs/ChangeAnalysisParamsFiltersInner.md @@ -10,6 +10,7 @@ Name | Type | Description | Notes **ranking_filter** | [**RankingFilterRankingFilter**](RankingFilterRankingFilter.md) | | [optional] **absolute_date_filter** | [**AbsoluteDateFilterAbsoluteDateFilter**](AbsoluteDateFilterAbsoluteDateFilter.md) | | [optional] **relative_date_filter** | [**RelativeDateFilterRelativeDateFilter**](RelativeDateFilterRelativeDateFilter.md) | | [optional] +**all_time_date_filter** | [**AllTimeDateFilterAllTimeDateFilter**](AllTimeDateFilterAllTimeDateFilter.md) | | [optional] **negative_attribute_filter** | [**NegativeAttributeFilterNegativeAttributeFilter**](NegativeAttributeFilterNegativeAttributeFilter.md) | | [optional] **positive_attribute_filter** | [**PositiveAttributeFilterPositiveAttributeFilter**](PositiveAttributeFilterPositiveAttributeFilter.md) | | [optional] **match_attribute_filter** | [**MatchAttributeFilterMatchAttributeFilter**](MatchAttributeFilterMatchAttributeFilter.md) | | [optional] diff --git a/gooddata-api-client/docs/ClusteringConfig.md b/gooddata-api-client/docs/ClusteringConfig.md new file mode 100644 index 000000000..245f4a347 --- /dev/null +++ b/gooddata-api-client/docs/ClusteringConfig.md @@ -0,0 +1,14 @@ +# ClusteringConfig + +Clustering configuration. + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**number_of_clusters** | **int** | Number of clusters to create | +**threshold** | **float** | Clustering algorithm threshold | +**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/ComputationApi.md b/gooddata-api-client/docs/ComputationApi.md index 5f5316d8d..e68210423 100644 --- a/gooddata-api-client/docs/ComputationApi.md +++ b/gooddata-api-client/docs/ComputationApi.md @@ -520,6 +520,21 @@ with gooddata_api_client.ApiClient() as api_client: filters=[ FilterDefinition(), ], + measure_definition_overrides=[ + MetricDefinitionOverride( + definition=InlineMeasureDefinition( + inline=InlineMeasureDefinitionInline( + maql="maql_example", + ), + ), + item=AfmObjectIdentifierCore( + identifier=AfmObjectIdentifierCoreIdentifier( + id="sample_item.price", + type="attribute", + ), + ), + ), + ], measures=[ MeasureItem( definition=MeasureDefinition(), @@ -740,6 +755,21 @@ with gooddata_api_client.ApiClient() as api_client: filters=[ FilterDefinition(), ], + measure_definition_overrides=[ + MetricDefinitionOverride( + definition=InlineMeasureDefinition( + inline=InlineMeasureDefinitionInline( + maql="maql_example", + ), + ), + item=AfmObjectIdentifierCore( + identifier=AfmObjectIdentifierCoreIdentifier( + id="sample_item.price", + type="attribute", + ), + ), + ), + ], measures=[ MeasureItem( definition=MeasureDefinition(), @@ -842,6 +872,21 @@ with gooddata_api_client.ApiClient() as api_client: filters=[ FilterDefinition(), ], + measure_definition_overrides=[ + MetricDefinitionOverride( + definition=InlineMeasureDefinition( + inline=InlineMeasureDefinitionInline( + maql="maql_example", + ), + ), + item=AfmObjectIdentifierCore( + identifier=AfmObjectIdentifierCoreIdentifier( + id="sample_item.price", + type="attribute", + ), + ), + ), + ], measures=[ MeasureItem( definition=MeasureDefinition(), diff --git a/gooddata-api-client/docs/CreateKnowledgeDocumentRequestDto.md b/gooddata-api-client/docs/CreateKnowledgeDocumentRequestDto.md new file mode 100644 index 000000000..7fb5d2c15 --- /dev/null +++ b/gooddata-api-client/docs/CreateKnowledgeDocumentRequestDto.md @@ -0,0 +1,16 @@ +# CreateKnowledgeDocumentRequestDto + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**content** | **str** | | +**filename** | **str** | | +**page_boundaries** | **[int]** | | [optional] +**scopes** | **[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/CreateKnowledgeDocumentResponseDto.md b/gooddata-api-client/docs/CreateKnowledgeDocumentResponseDto.md new file mode 100644 index 000000000..f06a7a5ed --- /dev/null +++ b/gooddata-api-client/docs/CreateKnowledgeDocumentResponseDto.md @@ -0,0 +1,15 @@ +# CreateKnowledgeDocumentResponseDto + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**filename** | **str** | | +**message** | **str** | | +**num_chunks** | **int** | | +**success** | **bool** | | +**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 index 66c0bf3e4..fc05128df 100644 --- a/gooddata-api-client/docs/CreatedVisualization.md +++ b/gooddata-api-client/docs/CreatedVisualization.md @@ -12,6 +12,7 @@ Name | Type | Description | Notes **suggestions** | [**[Suggestion]**](Suggestion.md) | Suggestions for next steps | **title** | **str** | Proposed title of the new visualization | **visualization_type** | **str** | Visualization type requested in question | +**config** | [**VisualizationConfig**](VisualizationConfig.md) | | [optional] **saved_visualization_id** | **str** | Saved visualization ID. | [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/DashboardDateFilterDateFilter.md b/gooddata-api-client/docs/DashboardDateFilterDateFilter.md index 9e3b0428f..e76bad2c0 100644 --- a/gooddata-api-client/docs/DashboardDateFilterDateFilter.md +++ b/gooddata-api-client/docs/DashboardDateFilterDateFilter.md @@ -9,6 +9,7 @@ Name | Type | Description | Notes **attribute** | [**IdentifierRef**](IdentifierRef.md) | | [optional] **bounded_filter** | [**RelativeBoundedDateFilter**](RelativeBoundedDateFilter.md) | | [optional] **data_set** | [**IdentifierRef**](IdentifierRef.md) | | [optional] +**empty_value_handling** | **str** | | [optional] **_from** | [**AacDashboardFilterFrom**](AacDashboardFilterFrom.md) | | [optional] **local_identifier** | **str** | | [optional] **to** | [**AacDashboardFilterFrom**](AacDashboardFilterFrom.md) | | [optional] diff --git a/gooddata-api-client/docs/DashboardsApi.md b/gooddata-api-client/docs/DashboardsApi.md index cb43af9e9..1f01d5637 100644 --- a/gooddata-api-client/docs/DashboardsApi.md +++ b/gooddata-api-client/docs/DashboardsApi.md @@ -57,7 +57,7 @@ with gooddata_api_client.ApiClient() as api_client: ), ) # JsonApiAnalyticalDashboardPostOptionalIdDocument | include = [ - "createdBy,modifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", + "createdBy,modifiedBy,certifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", ] # [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=permissions,origin,accessInfo,all", @@ -217,7 +217,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 = "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) include = [ - "createdBy,modifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", + "createdBy,modifiedBy,certifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", ] # [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 @@ -313,7 +313,7 @@ with gooddata_api_client.ApiClient() as api_client: object_id = "objectId_example" # str | 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) include = [ - "createdBy,modifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", + "createdBy,modifiedBy,certifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", ] # [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 = [ @@ -418,7 +418,7 @@ with gooddata_api_client.ApiClient() as api_client: ) # JsonApiAnalyticalDashboardPatchDocument | 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) include = [ - "createdBy,modifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", + "createdBy,modifiedBy,certifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", ] # [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 @@ -617,7 +617,7 @@ with gooddata_api_client.ApiClient() as api_client: ) # JsonApiAnalyticalDashboardInDocument | 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) include = [ - "createdBy,modifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", + "createdBy,modifiedBy,certifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", ] # [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/DateFilter.md b/gooddata-api-client/docs/DateFilter.md index 7efd449c4..20b25cb52 100644 --- a/gooddata-api-client/docs/DateFilter.md +++ b/gooddata-api-client/docs/DateFilter.md @@ -7,6 +7,7 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **absolute_date_filter** | [**AbsoluteDateFilterAbsoluteDateFilter**](AbsoluteDateFilterAbsoluteDateFilter.md) | | [optional] **relative_date_filter** | [**RelativeDateFilterRelativeDateFilter**](RelativeDateFilterRelativeDateFilter.md) | | [optional] +**all_time_date_filter** | [**AllTimeDateFilterAllTimeDateFilter**](AllTimeDateFilterAllTimeDateFilter.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/DeclarativeAnalyticalDashboard.md b/gooddata-api-client/docs/DeclarativeAnalyticalDashboard.md index bde1bb0a3..198df35f3 100644 --- a/gooddata-api-client/docs/DeclarativeAnalyticalDashboard.md +++ b/gooddata-api-client/docs/DeclarativeAnalyticalDashboard.md @@ -7,6 +7,10 @@ Name | Type | Description | Notes **content** | [**JsonNode**](JsonNode.md) | | **id** | **str** | Analytical dashboard ID. | **title** | **str** | Analytical dashboard title. | +**certification** | **str** | Certification status of the entity. | [optional] if omitted the server will use the default value of "CERTIFIED" +**certification_message** | **str, none_type** | Optional message associated with the certification. | [optional] +**certified_at** | **str, none_type** | Time when the certification was set. | [optional] +**certified_by** | [**DeclarativeUserIdentifier**](DeclarativeUserIdentifier.md) | | [optional] **created_at** | **str, none_type** | Time of the entity creation. | [optional] **created_by** | [**DeclarativeUserIdentifier**](DeclarativeUserIdentifier.md) | | [optional] **description** | **str** | Analytical dashboard description. | [optional] diff --git a/gooddata-api-client/docs/DeclarativeMetric.md b/gooddata-api-client/docs/DeclarativeMetric.md index 6fb1f5b7c..a068affcd 100644 --- a/gooddata-api-client/docs/DeclarativeMetric.md +++ b/gooddata-api-client/docs/DeclarativeMetric.md @@ -7,6 +7,10 @@ Name | Type | Description | Notes **content** | [**JsonNode**](JsonNode.md) | | **id** | **str** | Metric ID. | **title** | **str** | Metric title. | +**certification** | **str** | Certification status of the entity. | [optional] if omitted the server will use the default value of "CERTIFIED" +**certification_message** | **str, none_type** | Optional message associated with the certification. | [optional] +**certified_at** | **str, none_type** | Time when the certification was set. | [optional] +**certified_by** | [**DeclarativeUserIdentifier**](DeclarativeUserIdentifier.md) | | [optional] **created_at** | **str, none_type** | Time of the entity creation. | [optional] **created_by** | [**DeclarativeUserIdentifier**](DeclarativeUserIdentifier.md) | | [optional] **description** | **str** | Metric description. | [optional] diff --git a/gooddata-api-client/docs/DeclarativeVisualizationObject.md b/gooddata-api-client/docs/DeclarativeVisualizationObject.md index b3e60dfc1..1a91a583e 100644 --- a/gooddata-api-client/docs/DeclarativeVisualizationObject.md +++ b/gooddata-api-client/docs/DeclarativeVisualizationObject.md @@ -7,6 +7,10 @@ Name | Type | Description | Notes **content** | [**JsonNode**](JsonNode.md) | | **id** | **str** | Visualization object ID. | **title** | **str** | Visualization object title. | +**certification** | **str** | Certification status of the entity. | [optional] if omitted the server will use the default value of "CERTIFIED" +**certification_message** | **str, none_type** | Optional message associated with the certification. | [optional] +**certified_at** | **str, none_type** | Time when the certification was set. | [optional] +**certified_by** | [**DeclarativeUserIdentifier**](DeclarativeUserIdentifier.md) | | [optional] **created_at** | **str, none_type** | Time of the entity creation. | [optional] **created_by** | [**DeclarativeUserIdentifier**](DeclarativeUserIdentifier.md) | | [optional] **description** | **str** | Visualization object description. | [optional] diff --git a/gooddata-api-client/docs/DeleteKnowledgeDocumentResponseDto.md b/gooddata-api-client/docs/DeleteKnowledgeDocumentResponseDto.md new file mode 100644 index 000000000..0f8d7a84d --- /dev/null +++ b/gooddata-api-client/docs/DeleteKnowledgeDocumentResponseDto.md @@ -0,0 +1,13 @@ +# DeleteKnowledgeDocumentResponseDto + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**message** | **str** | | +**success** | **bool** | | +**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/DependencyGraphApi.md b/gooddata-api-client/docs/DependencyGraphApi.md index 31c38aec2..8d7487368 100644 --- a/gooddata-api-client/docs/DependencyGraphApi.md +++ b/gooddata-api-client/docs/DependencyGraphApi.md @@ -111,6 +111,7 @@ with gooddata_api_client.ApiClient() as api_client: type="metric", ), ], + relation="DEPENDENTS", ) # DependentEntitiesRequest | # example passing only required values which don't have defaults set diff --git a/gooddata-api-client/docs/DependentEntitiesRequest.md b/gooddata-api-client/docs/DependentEntitiesRequest.md index 248fd5953..df09341c2 100644 --- a/gooddata-api-client/docs/DependentEntitiesRequest.md +++ b/gooddata-api-client/docs/DependentEntitiesRequest.md @@ -5,6 +5,7 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **identifiers** | [**[EntityIdentifier]**](EntityIdentifier.md) | | +**relation** | **str** | Entity relation for graph traversal from the entry points. DEPENDENTS returns entities that depend on the entry points. DEPENDENCIES returns entities that the entry points depend on. | [optional] if omitted the server will use the default value of "DEPENDENTS" **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 9a6b6699f..6216829ff 100644 --- a/gooddata-api-client/docs/EntitiesApi.md +++ b/gooddata-api-client/docs/EntitiesApi.md @@ -22,6 +22,7 @@ Method | HTTP request | Description [**create_entity_jwks**](EntitiesApi.md#create_entity_jwks) | **POST** /api/v1/entities/jwks | Post Jwks [**create_entity_knowledge_recommendations**](EntitiesApi.md#create_entity_knowledge_recommendations) | **POST** /api/v1/entities/workspaces/{workspaceId}/knowledgeRecommendations | [**create_entity_llm_endpoints**](EntitiesApi.md#create_entity_llm_endpoints) | **POST** /api/v1/entities/llmEndpoints | Post LLM endpoint entities +[**create_entity_llm_providers**](EntitiesApi.md#create_entity_llm_providers) | **POST** /api/v1/entities/llmProviders | Post LLM Provider entities [**create_entity_memory_items**](EntitiesApi.md#create_entity_memory_items) | **POST** /api/v1/entities/workspaces/{workspaceId}/memoryItems | [**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 @@ -54,6 +55,7 @@ Method | HTTP request | Description [**delete_entity_jwks**](EntitiesApi.md#delete_entity_jwks) | **DELETE** /api/v1/entities/jwks/{id} | Delete Jwk [**delete_entity_knowledge_recommendations**](EntitiesApi.md#delete_entity_knowledge_recommendations) | **DELETE** /api/v1/entities/workspaces/{workspaceId}/knowledgeRecommendations/{objectId} | [**delete_entity_llm_endpoints**](EntitiesApi.md#delete_entity_llm_endpoints) | **DELETE** /api/v1/entities/llmEndpoints/{id} | +[**delete_entity_llm_providers**](EntitiesApi.md#delete_entity_llm_providers) | **DELETE** /api/v1/entities/llmProviders/{id} | Delete LLM Provider entity [**delete_entity_memory_items**](EntitiesApi.md#delete_entity_memory_items) | **DELETE** /api/v1/entities/workspaces/{workspaceId}/memoryItems/{objectId} | [**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 Notification Channel entity @@ -94,6 +96,7 @@ Method | HTTP request | Description [**get_all_entities_knowledge_recommendations**](EntitiesApi.md#get_all_entities_knowledge_recommendations) | **GET** /api/v1/entities/workspaces/{workspaceId}/knowledgeRecommendations | [**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_llm_providers**](EntitiesApi.md#get_all_entities_llm_providers) | **GET** /api/v1/entities/llmProviders | Get all LLM Provider entities [**get_all_entities_memory_items**](EntitiesApi.md#get_all_entities_memory_items) | **GET** /api/v1/entities/workspaces/{workspaceId}/memoryItems | [**get_all_entities_metrics**](EntitiesApi.md#get_all_entities_metrics) | **GET** /api/v1/entities/workspaces/{workspaceId}/metrics | Get all Metrics [**get_all_entities_notification_channel_identifiers**](EntitiesApi.md#get_all_entities_notification_channel_identifiers) | **GET** /api/v1/entities/notificationChannelIdentifiers | @@ -138,6 +141,7 @@ Method | HTTP request | Description [**get_entity_knowledge_recommendations**](EntitiesApi.md#get_entity_knowledge_recommendations) | **GET** /api/v1/entities/workspaces/{workspaceId}/knowledgeRecommendations/{objectId} | [**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_llm_providers**](EntitiesApi.md#get_entity_llm_providers) | **GET** /api/v1/entities/llmProviders/{id} | Get LLM Provider entity [**get_entity_memory_items**](EntitiesApi.md#get_entity_memory_items) | **GET** /api/v1/entities/workspaces/{workspaceId}/memoryItems/{objectId} | [**get_entity_metrics**](EntitiesApi.md#get_entity_metrics) | **GET** /api/v1/entities/workspaces/{workspaceId}/metrics/{objectId} | Get a Metric [**get_entity_notification_channel_identifiers**](EntitiesApi.md#get_entity_notification_channel_identifiers) | **GET** /api/v1/entities/notificationChannelIdentifiers/{id} | @@ -178,6 +182,7 @@ Method | HTTP request | Description [**patch_entity_knowledge_recommendations**](EntitiesApi.md#patch_entity_knowledge_recommendations) | **PATCH** /api/v1/entities/workspaces/{workspaceId}/knowledgeRecommendations/{objectId} | [**patch_entity_labels**](EntitiesApi.md#patch_entity_labels) | **PATCH** /api/v1/entities/workspaces/{workspaceId}/labels/{objectId} | Patch a Label (beta) [**patch_entity_llm_endpoints**](EntitiesApi.md#patch_entity_llm_endpoints) | **PATCH** /api/v1/entities/llmEndpoints/{id} | Patch LLM endpoint entity +[**patch_entity_llm_providers**](EntitiesApi.md#patch_entity_llm_providers) | **PATCH** /api/v1/entities/llmProviders/{id} | Patch LLM Provider entity [**patch_entity_memory_items**](EntitiesApi.md#patch_entity_memory_items) | **PATCH** /api/v1/entities/workspaces/{workspaceId}/memoryItems/{objectId} | [**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 @@ -232,6 +237,7 @@ Method | HTTP request | Description [**update_entity_jwks**](EntitiesApi.md#update_entity_jwks) | **PUT** /api/v1/entities/jwks/{id} | Put Jwk [**update_entity_knowledge_recommendations**](EntitiesApi.md#update_entity_knowledge_recommendations) | **PUT** /api/v1/entities/workspaces/{workspaceId}/knowledgeRecommendations/{objectId} | [**update_entity_llm_endpoints**](EntitiesApi.md#update_entity_llm_endpoints) | **PUT** /api/v1/entities/llmEndpoints/{id} | PUT LLM endpoint entity +[**update_entity_llm_providers**](EntitiesApi.md#update_entity_llm_providers) | **PUT** /api/v1/entities/llmProviders/{id} | PUT LLM Provider entity [**update_entity_memory_items**](EntitiesApi.md#update_entity_memory_items) | **PUT** /api/v1/entities/workspaces/{workspaceId}/memoryItems/{objectId} | [**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 @@ -293,7 +299,7 @@ with gooddata_api_client.ApiClient() as api_client: ), ) # JsonApiAnalyticalDashboardPostOptionalIdDocument | include = [ - "createdBy,modifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", + "createdBy,modifiedBy,certifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", ] # [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=permissions,origin,accessInfo,all", @@ -672,6 +678,21 @@ with gooddata_api_client.ApiClient() as api_client: filters=[ FilterDefinition(), ], + measure_definition_overrides=[ + MetricDefinitionOverride( + definition=InlineMeasureDefinition( + inline=InlineMeasureDefinitionInline( + maql="maql_example", + ), + ), + item=AfmObjectIdentifierCore( + identifier=AfmObjectIdentifierCoreIdentifier( + id="sample_item.price", + type="attribute", + ), + ), + ), + ], measures=[ MeasureItem( definition=MeasureDefinition(), @@ -2189,6 +2210,91 @@ No authorization required - **Accept**: application/json, 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_providers** +> JsonApiLlmProviderOutDocument create_entity_llm_providers(json_api_llm_provider_in_document) + +Post LLM Provider entities + +LLM Provider - connection configuration for LLM services + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import entities_api +from gooddata_api_client.model.json_api_llm_provider_out_document import JsonApiLlmProviderOutDocument +from gooddata_api_client.model.json_api_llm_provider_in_document import JsonApiLlmProviderInDocument +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_provider_in_document = JsonApiLlmProviderInDocument( + data=JsonApiLlmProviderIn( + attributes=JsonApiLlmProviderInAttributes( + default_model_id="default_model_id_example", + description="description_example", + models=[ + JsonApiLlmProviderInAttributesModelsInner( + family="OPENAI", + id="id_example", + ), + ], + name="name_example", + provider_config=JsonApiLlmProviderInAttributesProviderConfig(None), + ), + id="id1", + type="llmProvider", + ), + ) # JsonApiLlmProviderInDocument | + + # example passing only required values which don't have defaults set + try: + # Post LLM Provider entities + api_response = api_instance.create_entity_llm_providers(json_api_llm_provider_in_document) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling EntitiesApi->create_entity_llm_providers: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **json_api_llm_provider_in_document** | [**JsonApiLlmProviderInDocument**](JsonApiLlmProviderInDocument.md)| | + +### Return type + +[**JsonApiLlmProviderOutDocument**](JsonApiLlmProviderOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json, application/vnd.gooddata.api+json + - **Accept**: application/json, application/vnd.gooddata.api+json + + ### HTTP response details | Status code | Description | Response headers | @@ -2348,7 +2454,7 @@ with gooddata_api_client.ApiClient() as api_client: ), ) # JsonApiMetricPostOptionalIdDocument | include = [ - "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", ] # [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", @@ -3064,7 +3170,7 @@ with gooddata_api_client.ApiClient() as api_client: ), ) # JsonApiVisualizationObjectPostOptionalIdDocument | include = [ - "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", ] # [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", @@ -4816,7 +4922,7 @@ 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 = "title==someString;provider==LLMProviderValue" # 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 = "title==someString;provider==LlmEndpointProviderValue" # 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: @@ -4833,6 +4939,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_llm_providers** +> delete_entity_llm_providers(id) + +Delete LLM Provider 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 = "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 LLM Provider entity + api_instance.delete_entity_llm_providers(id) + except gooddata_api_client.ApiException as e: + print("Exception when calling EntitiesApi->delete_entity_llm_providers: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Delete LLM Provider entity + api_instance.delete_entity_llm_providers(id, filter=filter) + except gooddata_api_client.ApiException as e: + print("Exception when calling EntitiesApi->delete_entity_llm_providers: %s\n" % e) +``` + + ### Parameters Name | Type | Description | Notes @@ -6109,7 +6288,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 = "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) include = [ - "createdBy,modifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", + "createdBy,modifiedBy,certifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", ] # [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 @@ -8144,7 +8323,7 @@ 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) - filter = "title==someString;provider==LLMProviderValue" # 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 = "title==someString;provider==LlmEndpointProviderValue" # 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 = [ @@ -8189,6 +8368,84 @@ No authorization required - **Accept**: application/json, 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_providers** +> JsonApiLlmProviderOutList get_all_entities_llm_providers() + +Get all LLM Provider 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_provider_out_list import JsonApiLlmProviderOutList +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 = "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) + 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 Provider entities + api_response = api_instance.get_all_entities_llm_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_llm_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 + +[**JsonApiLlmProviderOutList**](JsonApiLlmProviderOutList.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json, application/vnd.gooddata.api+json + + ### HTTP response details | Status code | Description | Response headers | @@ -8320,7 +8577,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 = "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) include = [ - "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", ] # [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 @@ -9159,7 +9416,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 = "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) include = [ - "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", ] # [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 @@ -9833,7 +10090,7 @@ with gooddata_api_client.ApiClient() as api_client: object_id = "objectId_example" # str | 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) include = [ - "createdBy,modifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", + "createdBy,modifiedBy,certifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", ] # [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 = [ @@ -11816,7 +12073,7 @@ 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 = "title==someString;provider==LLMProviderValue" # 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 = "title==someString;provider==LlmEndpointProviderValue" # 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: @@ -11858,6 +12115,82 @@ No authorization required - **Accept**: application/json, 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_providers** +> JsonApiLlmProviderOutDocument get_entity_llm_providers(id) + +Get LLM Provider 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_provider_out_document import JsonApiLlmProviderOutDocument +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 = "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 LLM Provider entity + api_response = api_instance.get_entity_llm_providers(id) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling EntitiesApi->get_entity_llm_providers: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Get LLM Provider entity + api_response = api_instance.get_entity_llm_providers(id, filter=filter) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling EntitiesApi->get_entity_llm_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 + +[**JsonApiLlmProviderOutDocument**](JsonApiLlmProviderOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json, application/vnd.gooddata.api+json + + ### HTTP response details | Status code | Description | Response headers | @@ -11981,7 +12314,7 @@ with gooddata_api_client.ApiClient() as api_client: object_id = "objectId_example" # str | 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) include = [ - "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", ] # [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 = [ @@ -12863,7 +13196,7 @@ with gooddata_api_client.ApiClient() as api_client: object_id = "objectId_example" # str | 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) include = [ - "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", ] # [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 = [ @@ -13382,7 +13715,7 @@ with gooddata_api_client.ApiClient() as api_client: ) # JsonApiAnalyticalDashboardPatchDocument | 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) include = [ - "createdBy,modifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", + "createdBy,modifiedBy,certifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", ] # [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 @@ -13789,6 +14122,21 @@ with gooddata_api_client.ApiClient() as api_client: filters=[ FilterDefinition(), ], + measure_definition_overrides=[ + MetricDefinitionOverride( + definition=InlineMeasureDefinition( + inline=InlineMeasureDefinitionInline( + maql="maql_example", + ), + ), + item=AfmObjectIdentifierCore( + identifier=AfmObjectIdentifierCoreIdentifier( + id="sample_item.price", + type="attribute", + ), + ), + ), + ], measures=[ MeasureItem( definition=MeasureDefinition(), @@ -15735,7 +16083,7 @@ with gooddata_api_client.ApiClient() as api_client: type="llmEndpoint", ), ) # JsonApiLlmEndpointPatchDocument | - filter = "title==someString;provider==LLMProviderValue" # 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 = "title==someString;provider==LlmEndpointProviderValue" # 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: @@ -15778,6 +16126,102 @@ No authorization required - **Accept**: application/json, 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_providers** +> JsonApiLlmProviderOutDocument patch_entity_llm_providers(id, json_api_llm_provider_patch_document) + +Patch LLM Provider 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_provider_out_document import JsonApiLlmProviderOutDocument +from gooddata_api_client.model.json_api_llm_provider_patch_document import JsonApiLlmProviderPatchDocument +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_provider_patch_document = JsonApiLlmProviderPatchDocument( + data=JsonApiLlmProviderPatch( + attributes=JsonApiLlmProviderPatchAttributes( + default_model_id="default_model_id_example", + description="description_example", + models=[ + JsonApiLlmProviderInAttributesModelsInner( + family="OPENAI", + id="id_example", + ), + ], + name="name_example", + provider_config=JsonApiLlmProviderInAttributesProviderConfig(None), + ), + id="id1", + type="llmProvider", + ), + ) # JsonApiLlmProviderPatchDocument | + 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: + # Patch LLM Provider entity + api_response = api_instance.patch_entity_llm_providers(id, json_api_llm_provider_patch_document) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling EntitiesApi->patch_entity_llm_providers: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Patch LLM Provider entity + api_response = api_instance.patch_entity_llm_providers(id, json_api_llm_provider_patch_document, filter=filter) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling EntitiesApi->patch_entity_llm_providers: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **id** | **str**| | + **json_api_llm_provider_patch_document** | [**JsonApiLlmProviderPatchDocument**](JsonApiLlmProviderPatchDocument.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 + +[**JsonApiLlmProviderOutDocument**](JsonApiLlmProviderOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json, application/vnd.gooddata.api+json + - **Accept**: application/json, application/vnd.gooddata.api+json + + ### HTTP response details | Status code | Description | Response headers | @@ -15939,7 +16383,7 @@ with gooddata_api_client.ApiClient() as api_client: ) # JsonApiMetricPatchDocument | 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) include = [ - "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", ] # [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 @@ -16729,7 +17173,7 @@ with gooddata_api_client.ApiClient() as api_client: ) # JsonApiVisualizationObjectPatchDocument | 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) include = [ - "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", ] # [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 @@ -19411,7 +19855,7 @@ with gooddata_api_client.ApiClient() as api_client: ) # JsonApiAnalyticalDashboardInDocument | 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) include = [ - "createdBy,modifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", + "createdBy,modifiedBy,certifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", ] # [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 @@ -19716,6 +20160,21 @@ with gooddata_api_client.ApiClient() as api_client: filters=[ FilterDefinition(), ], + measure_definition_overrides=[ + MetricDefinitionOverride( + definition=InlineMeasureDefinition( + inline=InlineMeasureDefinitionInline( + maql="maql_example", + ), + ), + item=AfmObjectIdentifierCore( + identifier=AfmObjectIdentifierCoreIdentifier( + id="sample_item.price", + type="attribute", + ), + ), + ), + ], measures=[ MeasureItem( definition=MeasureDefinition(), @@ -21371,7 +21830,7 @@ with gooddata_api_client.ApiClient() as api_client: type="llmEndpoint", ), ) # JsonApiLlmEndpointInDocument | - filter = "title==someString;provider==LLMProviderValue" # 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 = "title==someString;provider==LlmEndpointProviderValue" # 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: @@ -21414,6 +21873,102 @@ No authorization required - **Accept**: application/json, 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_providers** +> JsonApiLlmProviderOutDocument update_entity_llm_providers(id, json_api_llm_provider_in_document) + +PUT LLM Provider 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_provider_out_document import JsonApiLlmProviderOutDocument +from gooddata_api_client.model.json_api_llm_provider_in_document import JsonApiLlmProviderInDocument +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_provider_in_document = JsonApiLlmProviderInDocument( + data=JsonApiLlmProviderIn( + attributes=JsonApiLlmProviderInAttributes( + default_model_id="default_model_id_example", + description="description_example", + models=[ + JsonApiLlmProviderInAttributesModelsInner( + family="OPENAI", + id="id_example", + ), + ], + name="name_example", + provider_config=JsonApiLlmProviderInAttributesProviderConfig(None), + ), + id="id1", + type="llmProvider", + ), + ) # JsonApiLlmProviderInDocument | + 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: + # PUT LLM Provider entity + api_response = api_instance.update_entity_llm_providers(id, json_api_llm_provider_in_document) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling EntitiesApi->update_entity_llm_providers: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # PUT LLM Provider entity + api_response = api_instance.update_entity_llm_providers(id, json_api_llm_provider_in_document, filter=filter) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling EntitiesApi->update_entity_llm_providers: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **id** | **str**| | + **json_api_llm_provider_in_document** | [**JsonApiLlmProviderInDocument**](JsonApiLlmProviderInDocument.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 + +[**JsonApiLlmProviderOutDocument**](JsonApiLlmProviderOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json, application/vnd.gooddata.api+json + - **Accept**: application/json, application/vnd.gooddata.api+json + + ### HTTP response details | Status code | Description | Response headers | @@ -21575,7 +22130,7 @@ with gooddata_api_client.ApiClient() as api_client: ) # JsonApiMetricInDocument | 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) include = [ - "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", ] # [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 @@ -22455,7 +23010,7 @@ with gooddata_api_client.ApiClient() as api_client: ) # JsonApiVisualizationObjectInDocument | 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) include = [ - "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", ] # [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/FailedOperation.md b/gooddata-api-client/docs/FailedOperation.md index 613d680e0..8f156850f 100644 --- a/gooddata-api-client/docs/FailedOperation.md +++ b/gooddata-api-client/docs/FailedOperation.md @@ -7,7 +7,7 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **error** | [**OperationError**](OperationError.md) | | **id** | **str** | Id of the operation | -**kind** | **str** | Type of the long-running operation. * `provision-database` — Provisioning of an AI Lake database. * `deprovision-database` — Deprovisioning (deletion) of an AI Lake database. | +**kind** | **str** | Type of the long-running operation. * `provision-database` — Provisioning of an AI Lake database. * `deprovision-database` — Deprovisioning (deletion) of an AI Lake database. * `run-service-command` — Running a command in a particular AI Lake service. | **status** | **str** | | **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/FilterDefinition.md b/gooddata-api-client/docs/FilterDefinition.md index 30ada85c5..f4fcb4948 100644 --- a/gooddata-api-client/docs/FilterDefinition.md +++ b/gooddata-api-client/docs/FilterDefinition.md @@ -12,6 +12,7 @@ Name | Type | Description | Notes **compound_measure_value_filter** | [**CompoundMeasureValueFilterCompoundMeasureValueFilter**](CompoundMeasureValueFilterCompoundMeasureValueFilter.md) | | [optional] **absolute_date_filter** | [**AbsoluteDateFilterAbsoluteDateFilter**](AbsoluteDateFilterAbsoluteDateFilter.md) | | [optional] **relative_date_filter** | [**RelativeDateFilterRelativeDateFilter**](RelativeDateFilterRelativeDateFilter.md) | | [optional] +**all_time_date_filter** | [**AllTimeDateFilterAllTimeDateFilter**](AllTimeDateFilterAllTimeDateFilter.md) | | [optional] **negative_attribute_filter** | [**NegativeAttributeFilterNegativeAttributeFilter**](NegativeAttributeFilterNegativeAttributeFilter.md) | | [optional] **positive_attribute_filter** | [**PositiveAttributeFilterPositiveAttributeFilter**](PositiveAttributeFilterPositiveAttributeFilter.md) | | [optional] **match_attribute_filter** | [**MatchAttributeFilterMatchAttributeFilter**](MatchAttributeFilterMatchAttributeFilter.md) | | [optional] diff --git a/gooddata-api-client/docs/FilterDefinitionForSimpleMeasure.md b/gooddata-api-client/docs/FilterDefinitionForSimpleMeasure.md index fcf923832..5826ccfce 100644 --- a/gooddata-api-client/docs/FilterDefinitionForSimpleMeasure.md +++ b/gooddata-api-client/docs/FilterDefinitionForSimpleMeasure.md @@ -7,6 +7,7 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **absolute_date_filter** | [**AbsoluteDateFilterAbsoluteDateFilter**](AbsoluteDateFilterAbsoluteDateFilter.md) | | [optional] **relative_date_filter** | [**RelativeDateFilterRelativeDateFilter**](RelativeDateFilterRelativeDateFilter.md) | | [optional] +**all_time_date_filter** | [**AllTimeDateFilterAllTimeDateFilter**](AllTimeDateFilterAllTimeDateFilter.md) | | [optional] **negative_attribute_filter** | [**NegativeAttributeFilterNegativeAttributeFilter**](NegativeAttributeFilterNegativeAttributeFilter.md) | | [optional] **positive_attribute_filter** | [**PositiveAttributeFilterPositiveAttributeFilter**](PositiveAttributeFilterPositiveAttributeFilter.md) | | [optional] **match_attribute_filter** | [**MatchAttributeFilterMatchAttributeFilter**](MatchAttributeFilterMatchAttributeFilter.md) | | [optional] diff --git a/gooddata-api-client/docs/ForecastConfig.md b/gooddata-api-client/docs/ForecastConfig.md new file mode 100644 index 000000000..f302b7a0e --- /dev/null +++ b/gooddata-api-client/docs/ForecastConfig.md @@ -0,0 +1,15 @@ +# ForecastConfig + +Forecast configuration. + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**confidence_level** | **float** | Confidence interval boundary value. | +**forecast_period** | **int** | Number of future periods that should be forecasted | +**seasonal** | **bool** | Whether the input data is seasonal | +**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/GenerateDescriptionRequest.md b/gooddata-api-client/docs/GenerateDescriptionRequest.md new file mode 100644 index 000000000..ecb0e01a2 --- /dev/null +++ b/gooddata-api-client/docs/GenerateDescriptionRequest.md @@ -0,0 +1,13 @@ +# GenerateDescriptionRequest + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**object_id** | **str** | Identifier of the object to describe | +**object_type** | **str** | Type of the object to describe. One of: visualization, dashboard, metric, fact, 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/GenerateDescriptionResponse.md b/gooddata-api-client/docs/GenerateDescriptionResponse.md new file mode 100644 index 000000000..1836677eb --- /dev/null +++ b/gooddata-api-client/docs/GenerateDescriptionResponse.md @@ -0,0 +1,13 @@ +# GenerateDescriptionResponse + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**description** | **str** | Generated description of the requested object | [optional] +**note** | **str** | Additional note with details in case generation was not performed | [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/GenerateTitleRequest.md b/gooddata-api-client/docs/GenerateTitleRequest.md new file mode 100644 index 000000000..573beaf60 --- /dev/null +++ b/gooddata-api-client/docs/GenerateTitleRequest.md @@ -0,0 +1,13 @@ +# GenerateTitleRequest + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**object_id** | **str** | Identifier of the object to title | +**object_type** | **str** | Type of the object to title. Matches chat-search object types. | +**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/GenerateTitleResponse.md b/gooddata-api-client/docs/GenerateTitleResponse.md new file mode 100644 index 000000000..6d960c5e6 --- /dev/null +++ b/gooddata-api-client/docs/GenerateTitleResponse.md @@ -0,0 +1,13 @@ +# GenerateTitleResponse + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**note** | **str** | Additional note with details in case generation was not performed | [optional] +**title** | **str** | Generated title of the requested object | [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/GetAiLakeOperation200Response.md b/gooddata-api-client/docs/GetAiLakeOperation200Response.md index a318e6bde..e977824e0 100644 --- a/gooddata-api-client/docs/GetAiLakeOperation200Response.md +++ b/gooddata-api-client/docs/GetAiLakeOperation200Response.md @@ -7,7 +7,7 @@ Name | Type | Description | Notes **status** | **str** | | **result** | **{str: (bool, date, datetime, dict, float, int, list, str, none_type)}** | Operation-specific result payload, can be missing for operations like delete | [optional] **id** | **str** | Id of the operation | [optional] -**kind** | **str** | Type of the long-running operation. * `provision-database` — Provisioning of an AI Lake database. * `deprovision-database` — Deprovisioning (deletion) of an AI Lake database. | [optional] +**kind** | **str** | Type of the long-running operation. * `provision-database` — Provisioning of an AI Lake database. * `deprovision-database` — Deprovisioning (deletion) of an AI Lake database. * `run-service-command` — Running a command in a particular AI Lake service. | [optional] **error** | [**OperationError**](OperationError.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/JsonApiAnalyticalDashboardOutAttributes.md b/gooddata-api-client/docs/JsonApiAnalyticalDashboardOutAttributes.md index f845db7fc..2242a3828 100644 --- a/gooddata-api-client/docs/JsonApiAnalyticalDashboardOutAttributes.md +++ b/gooddata-api-client/docs/JsonApiAnalyticalDashboardOutAttributes.md @@ -6,6 +6,9 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **content** | **{str: (bool, date, datetime, dict, float, int, list, str, none_type)}** | Free-form JSON content. Maximum supported length is 250000 characters. | **are_relations_valid** | **bool** | | [optional] +**certification** | **str** | Certification status of the entity. | [optional] if omitted the server will use the default value of "CERTIFIED" +**certification_message** | **str, none_type** | Optional message associated with the certification. | [optional] +**certified_at** | **datetime, none_type** | Time when the certification was set. | [optional] **created_at** | **datetime, none_type** | Time of the entity creation. | [optional] **description** | **str** | | [optional] **modified_at** | **datetime, none_type** | Time of the last entity modification. | [optional] diff --git a/gooddata-api-client/docs/JsonApiAnalyticalDashboardOutRelationships.md b/gooddata-api-client/docs/JsonApiAnalyticalDashboardOutRelationships.md index 268c5c89d..dff60916e 100644 --- a/gooddata-api-client/docs/JsonApiAnalyticalDashboardOutRelationships.md +++ b/gooddata-api-client/docs/JsonApiAnalyticalDashboardOutRelationships.md @@ -5,13 +5,14 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **analytical_dashboards** | [**JsonApiAnalyticalDashboardOutRelationshipsAnalyticalDashboards**](JsonApiAnalyticalDashboardOutRelationshipsAnalyticalDashboards.md) | | [optional] -**created_by** | [**JsonApiAnalyticalDashboardOutRelationshipsCreatedBy**](JsonApiAnalyticalDashboardOutRelationshipsCreatedBy.md) | | [optional] +**certified_by** | [**JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy**](JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy.md) | | [optional] +**created_by** | [**JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy**](JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy.md) | | [optional] **dashboard_plugins** | [**JsonApiAnalyticalDashboardOutRelationshipsDashboardPlugins**](JsonApiAnalyticalDashboardOutRelationshipsDashboardPlugins.md) | | [optional] **datasets** | [**JsonApiAnalyticalDashboardOutRelationshipsDatasets**](JsonApiAnalyticalDashboardOutRelationshipsDatasets.md) | | [optional] **filter_contexts** | [**JsonApiAnalyticalDashboardOutRelationshipsFilterContexts**](JsonApiAnalyticalDashboardOutRelationshipsFilterContexts.md) | | [optional] **labels** | [**JsonApiAnalyticalDashboardOutRelationshipsLabels**](JsonApiAnalyticalDashboardOutRelationshipsLabels.md) | | [optional] **metrics** | [**JsonApiAnalyticalDashboardOutRelationshipsMetrics**](JsonApiAnalyticalDashboardOutRelationshipsMetrics.md) | | [optional] -**modified_by** | [**JsonApiAnalyticalDashboardOutRelationshipsCreatedBy**](JsonApiAnalyticalDashboardOutRelationshipsCreatedBy.md) | | [optional] +**modified_by** | [**JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy**](JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy.md) | | [optional] **visualization_objects** | [**JsonApiAnalyticalDashboardOutRelationshipsVisualizationObjects**](JsonApiAnalyticalDashboardOutRelationshipsVisualizationObjects.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/JsonApiAnalyticalDashboardOutRelationshipsCreatedBy.md b/gooddata-api-client/docs/JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy.md similarity index 90% rename from gooddata-api-client/docs/JsonApiAnalyticalDashboardOutRelationshipsCreatedBy.md rename to gooddata-api-client/docs/JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy.md index 93256df3f..75de4af52 100644 --- a/gooddata-api-client/docs/JsonApiAnalyticalDashboardOutRelationshipsCreatedBy.md +++ b/gooddata-api-client/docs/JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy.md @@ -1,4 +1,4 @@ -# JsonApiAnalyticalDashboardOutRelationshipsCreatedBy +# JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy ## Properties diff --git a/gooddata-api-client/docs/JsonApiAttributeHierarchyOutRelationships.md b/gooddata-api-client/docs/JsonApiAttributeHierarchyOutRelationships.md index 4da316af7..e3118acc6 100644 --- a/gooddata-api-client/docs/JsonApiAttributeHierarchyOutRelationships.md +++ b/gooddata-api-client/docs/JsonApiAttributeHierarchyOutRelationships.md @@ -5,8 +5,8 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **attributes** | [**JsonApiAttributeHierarchyOutRelationshipsAttributes**](JsonApiAttributeHierarchyOutRelationshipsAttributes.md) | | [optional] -**created_by** | [**JsonApiAnalyticalDashboardOutRelationshipsCreatedBy**](JsonApiAnalyticalDashboardOutRelationshipsCreatedBy.md) | | [optional] -**modified_by** | [**JsonApiAnalyticalDashboardOutRelationshipsCreatedBy**](JsonApiAnalyticalDashboardOutRelationshipsCreatedBy.md) | | [optional] +**created_by** | [**JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy**](JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy.md) | | [optional] +**modified_by** | [**JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy**](JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy.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/JsonApiAutomationOutRelationships.md b/gooddata-api-client/docs/JsonApiAutomationOutRelationships.md index faec77979..2ed42226a 100644 --- a/gooddata-api-client/docs/JsonApiAutomationOutRelationships.md +++ b/gooddata-api-client/docs/JsonApiAutomationOutRelationships.md @@ -6,9 +6,9 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **analytical_dashboard** | [**JsonApiAutomationInRelationshipsAnalyticalDashboard**](JsonApiAutomationInRelationshipsAnalyticalDashboard.md) | | [optional] **automation_results** | [**JsonApiAutomationOutRelationshipsAutomationResults**](JsonApiAutomationOutRelationshipsAutomationResults.md) | | [optional] -**created_by** | [**JsonApiAnalyticalDashboardOutRelationshipsCreatedBy**](JsonApiAnalyticalDashboardOutRelationshipsCreatedBy.md) | | [optional] +**created_by** | [**JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy**](JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy.md) | | [optional] **export_definitions** | [**JsonApiAutomationInRelationshipsExportDefinitions**](JsonApiAutomationInRelationshipsExportDefinitions.md) | | [optional] -**modified_by** | [**JsonApiAnalyticalDashboardOutRelationshipsCreatedBy**](JsonApiAnalyticalDashboardOutRelationshipsCreatedBy.md) | | [optional] +**modified_by** | [**JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy**](JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy.md) | | [optional] **notification_channel** | [**JsonApiAutomationInRelationshipsNotificationChannel**](JsonApiAutomationInRelationshipsNotificationChannel.md) | | [optional] **recipients** | [**JsonApiAutomationInRelationshipsRecipients**](JsonApiAutomationInRelationshipsRecipients.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/JsonApiDashboardPluginOutRelationships.md b/gooddata-api-client/docs/JsonApiDashboardPluginOutRelationships.md index 95ca9ce8b..c5767fa81 100644 --- a/gooddata-api-client/docs/JsonApiDashboardPluginOutRelationships.md +++ b/gooddata-api-client/docs/JsonApiDashboardPluginOutRelationships.md @@ -4,8 +4,8 @@ ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**created_by** | [**JsonApiAnalyticalDashboardOutRelationshipsCreatedBy**](JsonApiAnalyticalDashboardOutRelationshipsCreatedBy.md) | | [optional] -**modified_by** | [**JsonApiAnalyticalDashboardOutRelationshipsCreatedBy**](JsonApiAnalyticalDashboardOutRelationshipsCreatedBy.md) | | [optional] +**created_by** | [**JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy**](JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy.md) | | [optional] +**modified_by** | [**JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy**](JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy.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/JsonApiExportDefinitionOutRelationships.md b/gooddata-api-client/docs/JsonApiExportDefinitionOutRelationships.md index 602cbb550..8dbce6fc9 100644 --- a/gooddata-api-client/docs/JsonApiExportDefinitionOutRelationships.md +++ b/gooddata-api-client/docs/JsonApiExportDefinitionOutRelationships.md @@ -6,8 +6,8 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **analytical_dashboard** | [**JsonApiAutomationInRelationshipsAnalyticalDashboard**](JsonApiAutomationInRelationshipsAnalyticalDashboard.md) | | [optional] **automation** | [**JsonApiAutomationResultOutRelationshipsAutomation**](JsonApiAutomationResultOutRelationshipsAutomation.md) | | [optional] -**created_by** | [**JsonApiAnalyticalDashboardOutRelationshipsCreatedBy**](JsonApiAnalyticalDashboardOutRelationshipsCreatedBy.md) | | [optional] -**modified_by** | [**JsonApiAnalyticalDashboardOutRelationshipsCreatedBy**](JsonApiAnalyticalDashboardOutRelationshipsCreatedBy.md) | | [optional] +**created_by** | [**JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy**](JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy.md) | | [optional] +**modified_by** | [**JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy**](JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy.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/JsonApiLlmProviderIn.md b/gooddata-api-client/docs/JsonApiLlmProviderIn.md new file mode 100644 index 000000000..fa9f062c2 --- /dev/null +++ b/gooddata-api-client/docs/JsonApiLlmProviderIn.md @@ -0,0 +1,15 @@ +# JsonApiLlmProviderIn + +LLM Provider configuration for connecting to LLM services. + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**attributes** | [**JsonApiLlmProviderInAttributes**](JsonApiLlmProviderInAttributes.md) | | +**id** | **str** | API identifier of an object | +**type** | **str** | Object type | defaults to "llmProvider" +**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/JsonApiLlmProviderInAttributes.md b/gooddata-api-client/docs/JsonApiLlmProviderInAttributes.md new file mode 100644 index 000000000..885d9995d --- /dev/null +++ b/gooddata-api-client/docs/JsonApiLlmProviderInAttributes.md @@ -0,0 +1,16 @@ +# JsonApiLlmProviderInAttributes + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**models** | [**[JsonApiLlmProviderInAttributesModelsInner], none_type**](JsonApiLlmProviderInAttributesModelsInner.md) | List of LLM models available for this provider. | +**provider_config** | [**JsonApiLlmProviderInAttributesProviderConfig**](JsonApiLlmProviderInAttributesProviderConfig.md) | | +**default_model_id** | **str, none_type** | ID of the default model to use from the models list. | [optional] +**description** | **str, none_type** | Description of the LLM Provider. | [optional] +**name** | **str, none_type** | | [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/JsonApiLlmProviderInAttributesModelsInner.md b/gooddata-api-client/docs/JsonApiLlmProviderInAttributesModelsInner.md new file mode 100644 index 000000000..d15e8183b --- /dev/null +++ b/gooddata-api-client/docs/JsonApiLlmProviderInAttributesModelsInner.md @@ -0,0 +1,14 @@ +# JsonApiLlmProviderInAttributesModelsInner + +LLM Model configuration (id, family) within a provider. + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**family** | **str** | Family of LLM models. | +**id** | **str** | Unique identifier of the model (e.g., gpt-5.3, claude-4.6). | +**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/JsonApiLlmProviderInAttributesProviderConfig.md b/gooddata-api-client/docs/JsonApiLlmProviderInAttributesProviderConfig.md new file mode 100644 index 000000000..40e1a6639 --- /dev/null +++ b/gooddata-api-client/docs/JsonApiLlmProviderInAttributesProviderConfig.md @@ -0,0 +1,18 @@ +# JsonApiLlmProviderInAttributesProviderConfig + +Provider-specific configuration including authentication. + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**base_url** | **str, none_type** | Custom base URL for OpenAI API. | [optional] if omitted the server will use the default value of "https://api.openai.com" +**organization** | **str, none_type** | OpenAI organization ID. | [optional] +**auth** | [**OpenAiProviderAuth**](OpenAiProviderAuth.md) | | [optional] +**region** | **str** | AWS region for Bedrock. | [optional] +**type** | **str** | Provider type. | [optional] if omitted the server will use the default value of "OPENAI" +**endpoint** | **str** | Azure AI inference endpoint 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/JsonApiLlmProviderInDocument.md b/gooddata-api-client/docs/JsonApiLlmProviderInDocument.md new file mode 100644 index 000000000..a07835e80 --- /dev/null +++ b/gooddata-api-client/docs/JsonApiLlmProviderInDocument.md @@ -0,0 +1,12 @@ +# JsonApiLlmProviderInDocument + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**data** | [**JsonApiLlmProviderIn**](JsonApiLlmProviderIn.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/JsonApiLlmProviderOut.md b/gooddata-api-client/docs/JsonApiLlmProviderOut.md new file mode 100644 index 000000000..3c0fa41cf --- /dev/null +++ b/gooddata-api-client/docs/JsonApiLlmProviderOut.md @@ -0,0 +1,15 @@ +# JsonApiLlmProviderOut + +LLM Provider configuration for connecting to LLM services. + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**attributes** | [**JsonApiLlmProviderInAttributes**](JsonApiLlmProviderInAttributes.md) | | +**id** | **str** | API identifier of an object | +**type** | **str** | Object type | defaults to "llmProvider" +**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/JsonApiLlmProviderOutDocument.md b/gooddata-api-client/docs/JsonApiLlmProviderOutDocument.md new file mode 100644 index 000000000..b8c75d048 --- /dev/null +++ b/gooddata-api-client/docs/JsonApiLlmProviderOutDocument.md @@ -0,0 +1,13 @@ +# JsonApiLlmProviderOutDocument + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**data** | [**JsonApiLlmProviderOut**](JsonApiLlmProviderOut.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/JsonApiLlmProviderOutList.md b/gooddata-api-client/docs/JsonApiLlmProviderOutList.md new file mode 100644 index 000000000..6939df401 --- /dev/null +++ b/gooddata-api-client/docs/JsonApiLlmProviderOutList.md @@ -0,0 +1,15 @@ +# JsonApiLlmProviderOutList + +A JSON:API document with a list of resources + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**data** | [**[JsonApiLlmProviderOutWithLinks]**](JsonApiLlmProviderOutWithLinks.md) | | +**links** | [**ListLinks**](ListLinks.md) | | [optional] +**meta** | [**JsonApiAggregatedFactOutListMeta**](JsonApiAggregatedFactOutListMeta.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/JsonApiLlmProviderOutWithLinks.md b/gooddata-api-client/docs/JsonApiLlmProviderOutWithLinks.md new file mode 100644 index 000000000..0e2c3684c --- /dev/null +++ b/gooddata-api-client/docs/JsonApiLlmProviderOutWithLinks.md @@ -0,0 +1,15 @@ +# JsonApiLlmProviderOutWithLinks + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**attributes** | [**JsonApiLlmProviderInAttributes**](JsonApiLlmProviderInAttributes.md) | | +**id** | **str** | API identifier of an object | +**type** | **str** | Object type | defaults to "llmProvider" +**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/JsonApiLlmProviderPatch.md b/gooddata-api-client/docs/JsonApiLlmProviderPatch.md new file mode 100644 index 000000000..3c6b83a09 --- /dev/null +++ b/gooddata-api-client/docs/JsonApiLlmProviderPatch.md @@ -0,0 +1,15 @@ +# JsonApiLlmProviderPatch + +LLM Provider configuration for connecting to LLM services. + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**attributes** | [**JsonApiLlmProviderPatchAttributes**](JsonApiLlmProviderPatchAttributes.md) | | +**id** | **str** | API identifier of an object | +**type** | **str** | Object type | defaults to "llmProvider" +**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/JsonApiLlmProviderPatchAttributes.md b/gooddata-api-client/docs/JsonApiLlmProviderPatchAttributes.md new file mode 100644 index 000000000..2d7c3d4a1 --- /dev/null +++ b/gooddata-api-client/docs/JsonApiLlmProviderPatchAttributes.md @@ -0,0 +1,16 @@ +# JsonApiLlmProviderPatchAttributes + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**default_model_id** | **str, none_type** | ID of the default model to use from the models list. | [optional] +**description** | **str, none_type** | Description of the LLM Provider. | [optional] +**models** | [**[JsonApiLlmProviderInAttributesModelsInner], none_type**](JsonApiLlmProviderInAttributesModelsInner.md) | List of LLM models available for this provider. | [optional] +**name** | **str, none_type** | | [optional] +**provider_config** | [**JsonApiLlmProviderInAttributesProviderConfig**](JsonApiLlmProviderInAttributesProviderConfig.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/JsonApiLlmProviderPatchDocument.md b/gooddata-api-client/docs/JsonApiLlmProviderPatchDocument.md new file mode 100644 index 000000000..061e8f1f5 --- /dev/null +++ b/gooddata-api-client/docs/JsonApiLlmProviderPatchDocument.md @@ -0,0 +1,12 @@ +# JsonApiLlmProviderPatchDocument + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**data** | [**JsonApiLlmProviderPatch**](JsonApiLlmProviderPatch.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/JsonApiMetricOutAttributes.md b/gooddata-api-client/docs/JsonApiMetricOutAttributes.md index 63d76ef31..fb550c7df 100644 --- a/gooddata-api-client/docs/JsonApiMetricOutAttributes.md +++ b/gooddata-api-client/docs/JsonApiMetricOutAttributes.md @@ -6,6 +6,9 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **content** | [**JsonApiMetricInAttributesContent**](JsonApiMetricInAttributesContent.md) | | **are_relations_valid** | **bool** | | [optional] +**certification** | **str** | Certification status of the entity. | [optional] if omitted the server will use the default value of "CERTIFIED" +**certification_message** | **str, none_type** | Optional message associated with the certification. | [optional] +**certified_at** | **datetime, none_type** | Time when the certification was set. | [optional] **created_at** | **datetime, none_type** | Time of the entity creation. | [optional] **description** | **str** | | [optional] **is_hidden** | **bool** | | [optional] diff --git a/gooddata-api-client/docs/JsonApiMetricOutRelationships.md b/gooddata-api-client/docs/JsonApiMetricOutRelationships.md index 995bc4892..5ee6072a2 100644 --- a/gooddata-api-client/docs/JsonApiMetricOutRelationships.md +++ b/gooddata-api-client/docs/JsonApiMetricOutRelationships.md @@ -5,12 +5,13 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **attributes** | [**JsonApiAttributeHierarchyOutRelationshipsAttributes**](JsonApiAttributeHierarchyOutRelationshipsAttributes.md) | | [optional] -**created_by** | [**JsonApiAnalyticalDashboardOutRelationshipsCreatedBy**](JsonApiAnalyticalDashboardOutRelationshipsCreatedBy.md) | | [optional] +**certified_by** | [**JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy**](JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy.md) | | [optional] +**created_by** | [**JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy**](JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy.md) | | [optional] **datasets** | [**JsonApiAnalyticalDashboardOutRelationshipsDatasets**](JsonApiAnalyticalDashboardOutRelationshipsDatasets.md) | | [optional] **facts** | [**JsonApiDatasetOutRelationshipsFacts**](JsonApiDatasetOutRelationshipsFacts.md) | | [optional] **labels** | [**JsonApiAnalyticalDashboardOutRelationshipsLabels**](JsonApiAnalyticalDashboardOutRelationshipsLabels.md) | | [optional] **metrics** | [**JsonApiAnalyticalDashboardOutRelationshipsMetrics**](JsonApiAnalyticalDashboardOutRelationshipsMetrics.md) | | [optional] -**modified_by** | [**JsonApiAnalyticalDashboardOutRelationshipsCreatedBy**](JsonApiAnalyticalDashboardOutRelationshipsCreatedBy.md) | | [optional] +**modified_by** | [**JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy**](JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy.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/JsonApiVisualizationObjectOutAttributes.md b/gooddata-api-client/docs/JsonApiVisualizationObjectOutAttributes.md index 3e1da6b2d..75b77ebf6 100644 --- a/gooddata-api-client/docs/JsonApiVisualizationObjectOutAttributes.md +++ b/gooddata-api-client/docs/JsonApiVisualizationObjectOutAttributes.md @@ -6,6 +6,9 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **content** | **{str: (bool, date, datetime, dict, float, int, list, str, none_type)}** | Free-form JSON content. Maximum supported length is 250000 characters. | **are_relations_valid** | **bool** | | [optional] +**certification** | **str** | Certification status of the entity. | [optional] if omitted the server will use the default value of "CERTIFIED" +**certification_message** | **str, none_type** | Optional message associated with the certification. | [optional] +**certified_at** | **datetime, none_type** | Time when the certification was set. | [optional] **created_at** | **datetime, none_type** | Time of the entity creation. | [optional] **description** | **str** | | [optional] **is_hidden** | **bool** | | [optional] diff --git a/gooddata-api-client/docs/JsonApiWorkspaceAutomationOutRelationships.md b/gooddata-api-client/docs/JsonApiWorkspaceAutomationOutRelationships.md index 5a7432f3c..f0679bc03 100644 --- a/gooddata-api-client/docs/JsonApiWorkspaceAutomationOutRelationships.md +++ b/gooddata-api-client/docs/JsonApiWorkspaceAutomationOutRelationships.md @@ -6,9 +6,9 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **analytical_dashboard** | [**JsonApiAutomationInRelationshipsAnalyticalDashboard**](JsonApiAutomationInRelationshipsAnalyticalDashboard.md) | | [optional] **automation_results** | [**JsonApiAutomationOutRelationshipsAutomationResults**](JsonApiAutomationOutRelationshipsAutomationResults.md) | | [optional] -**created_by** | [**JsonApiAnalyticalDashboardOutRelationshipsCreatedBy**](JsonApiAnalyticalDashboardOutRelationshipsCreatedBy.md) | | [optional] +**created_by** | [**JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy**](JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy.md) | | [optional] **export_definitions** | [**JsonApiAutomationInRelationshipsExportDefinitions**](JsonApiAutomationInRelationshipsExportDefinitions.md) | | [optional] -**modified_by** | [**JsonApiAnalyticalDashboardOutRelationshipsCreatedBy**](JsonApiAnalyticalDashboardOutRelationshipsCreatedBy.md) | | [optional] +**modified_by** | [**JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy**](JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy.md) | | [optional] **notification_channel** | [**JsonApiAutomationInRelationshipsNotificationChannel**](JsonApiAutomationInRelationshipsNotificationChannel.md) | | [optional] **recipients** | [**JsonApiAutomationInRelationshipsRecipients**](JsonApiAutomationInRelationshipsRecipients.md) | | [optional] **workspace** | [**JsonApiWorkspaceAutomationOutRelationshipsWorkspace**](JsonApiWorkspaceAutomationOutRelationshipsWorkspace.md) | | [optional] diff --git a/gooddata-api-client/docs/KnowledgeDocumentMetadataDto.md b/gooddata-api-client/docs/KnowledgeDocumentMetadataDto.md new file mode 100644 index 000000000..506d460bc --- /dev/null +++ b/gooddata-api-client/docs/KnowledgeDocumentMetadataDto.md @@ -0,0 +1,21 @@ +# KnowledgeDocumentMetadataDto + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**created_at** | **str** | | +**created_by** | **str** | | +**filename** | **str** | | +**num_chunks** | **int** | | +**scopes** | **[str]** | | +**updated_at** | **str** | | +**updated_by** | **str** | | +**is_disabled** | **bool** | | [optional] +**title** | **str** | | [optional] +**workspace_id** | **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/KnowledgeSearchResultDto.md b/gooddata-api-client/docs/KnowledgeSearchResultDto.md new file mode 100644 index 000000000..7e68dddbe --- /dev/null +++ b/gooddata-api-client/docs/KnowledgeSearchResultDto.md @@ -0,0 +1,20 @@ +# KnowledgeSearchResultDto + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**chunk_index** | **int** | | +**content** | **str** | | +**filename** | **str** | | +**page_numbers** | **[int]** | | +**scopes** | **[str]** | | +**score** | **float** | | +**total_chunks** | **int** | | +**title** | **str** | | [optional] +**workspace_id** | **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/LLMEndpointsApi.md b/gooddata-api-client/docs/LLMEndpointsApi.md index 31a56d9d6..e81130cf2 100644 --- a/gooddata-api-client/docs/LLMEndpointsApi.md +++ b/gooddata-api-client/docs/LLMEndpointsApi.md @@ -116,7 +116,7 @@ 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 = "title==someString;provider==LLMProviderValue" # 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 = "title==someString;provider==LlmEndpointProviderValue" # 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: @@ -187,7 +187,7 @@ configuration = gooddata_api_client.Configuration( with gooddata_api_client.ApiClient() as api_client: # Create an instance of the API class api_instance = llm_endpoints_api.LLMEndpointsApi(api_client) - filter = "title==someString;provider==LLMProviderValue" # 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 = "title==someString;provider==LlmEndpointProviderValue" # 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 = [ @@ -266,7 +266,7 @@ 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 = "title==someString;provider==LLMProviderValue" # 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 = "title==someString;provider==LlmEndpointProviderValue" # 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: @@ -357,7 +357,7 @@ with gooddata_api_client.ApiClient() as api_client: type="llmEndpoint", ), ) # JsonApiLlmEndpointPatchDocument | - filter = "title==someString;provider==LLMProviderValue" # 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 = "title==someString;provider==LlmEndpointProviderValue" # 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: @@ -449,7 +449,7 @@ with gooddata_api_client.ApiClient() as api_client: type="llmEndpoint", ), ) # JsonApiLlmEndpointInDocument | - filter = "title==someString;provider==LLMProviderValue" # 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 = "title==someString;provider==LlmEndpointProviderValue" # 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: diff --git a/gooddata-api-client/docs/LLMProvidersApi.md b/gooddata-api-client/docs/LLMProvidersApi.md new file mode 100644 index 000000000..fc7558260 --- /dev/null +++ b/gooddata-api-client/docs/LLMProvidersApi.md @@ -0,0 +1,518 @@ +# gooddata_api_client.LLMProvidersApi + +All URIs are relative to *http://localhost* + +Method | HTTP request | Description +------------- | ------------- | ------------- +[**create_entity_llm_providers**](LLMProvidersApi.md#create_entity_llm_providers) | **POST** /api/v1/entities/llmProviders | Post LLM Provider entities +[**delete_entity_llm_providers**](LLMProvidersApi.md#delete_entity_llm_providers) | **DELETE** /api/v1/entities/llmProviders/{id} | Delete LLM Provider entity +[**get_all_entities_llm_providers**](LLMProvidersApi.md#get_all_entities_llm_providers) | **GET** /api/v1/entities/llmProviders | Get all LLM Provider entities +[**get_entity_llm_providers**](LLMProvidersApi.md#get_entity_llm_providers) | **GET** /api/v1/entities/llmProviders/{id} | Get LLM Provider entity +[**patch_entity_llm_providers**](LLMProvidersApi.md#patch_entity_llm_providers) | **PATCH** /api/v1/entities/llmProviders/{id} | Patch LLM Provider entity +[**update_entity_llm_providers**](LLMProvidersApi.md#update_entity_llm_providers) | **PUT** /api/v1/entities/llmProviders/{id} | PUT LLM Provider entity + + +# **create_entity_llm_providers** +> JsonApiLlmProviderOutDocument create_entity_llm_providers(json_api_llm_provider_in_document) + +Post LLM Provider entities + +LLM Provider - connection configuration for LLM services + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import llm_providers_api +from gooddata_api_client.model.json_api_llm_provider_out_document import JsonApiLlmProviderOutDocument +from gooddata_api_client.model.json_api_llm_provider_in_document import JsonApiLlmProviderInDocument +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_providers_api.LLMProvidersApi(api_client) + json_api_llm_provider_in_document = JsonApiLlmProviderInDocument( + data=JsonApiLlmProviderIn( + attributes=JsonApiLlmProviderInAttributes( + default_model_id="default_model_id_example", + description="description_example", + models=[ + JsonApiLlmProviderInAttributesModelsInner( + family="OPENAI", + id="id_example", + ), + ], + name="name_example", + provider_config=JsonApiLlmProviderInAttributesProviderConfig(None), + ), + id="id1", + type="llmProvider", + ), + ) # JsonApiLlmProviderInDocument | + + # example passing only required values which don't have defaults set + try: + # Post LLM Provider entities + api_response = api_instance.create_entity_llm_providers(json_api_llm_provider_in_document) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling LLMProvidersApi->create_entity_llm_providers: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **json_api_llm_provider_in_document** | [**JsonApiLlmProviderInDocument**](JsonApiLlmProviderInDocument.md)| | + +### Return type + +[**JsonApiLlmProviderOutDocument**](JsonApiLlmProviderOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json, application/vnd.gooddata.api+json + - **Accept**: application/json, 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_providers** +> delete_entity_llm_providers(id) + +Delete LLM Provider entity + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import llm_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 = llm_providers_api.LLMProvidersApi(api_client) + id = "/6bUUGjjNSwg0_bs" # str | + 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 LLM Provider entity + api_instance.delete_entity_llm_providers(id) + except gooddata_api_client.ApiException as e: + print("Exception when calling LLMProvidersApi->delete_entity_llm_providers: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Delete LLM Provider entity + api_instance.delete_entity_llm_providers(id, filter=filter) + except gooddata_api_client.ApiException as e: + print("Exception when calling LLMProvidersApi->delete_entity_llm_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_llm_providers** +> JsonApiLlmProviderOutList get_all_entities_llm_providers() + +Get all LLM Provider entities + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import llm_providers_api +from gooddata_api_client.model.json_api_llm_provider_out_list import JsonApiLlmProviderOutList +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_providers_api.LLMProvidersApi(api_client) + 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) + 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 Provider entities + api_response = api_instance.get_all_entities_llm_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 LLMProvidersApi->get_all_entities_llm_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 + +[**JsonApiLlmProviderOutList**](JsonApiLlmProviderOutList.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json, 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_providers** +> JsonApiLlmProviderOutDocument get_entity_llm_providers(id) + +Get LLM Provider entity + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import llm_providers_api +from gooddata_api_client.model.json_api_llm_provider_out_document import JsonApiLlmProviderOutDocument +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_providers_api.LLMProvidersApi(api_client) + id = "/6bUUGjjNSwg0_bs" # str | + 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 LLM Provider entity + api_response = api_instance.get_entity_llm_providers(id) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling LLMProvidersApi->get_entity_llm_providers: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Get LLM Provider entity + api_response = api_instance.get_entity_llm_providers(id, filter=filter) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling LLMProvidersApi->get_entity_llm_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 + +[**JsonApiLlmProviderOutDocument**](JsonApiLlmProviderOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json, 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_providers** +> JsonApiLlmProviderOutDocument patch_entity_llm_providers(id, json_api_llm_provider_patch_document) + +Patch LLM Provider entity + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import llm_providers_api +from gooddata_api_client.model.json_api_llm_provider_out_document import JsonApiLlmProviderOutDocument +from gooddata_api_client.model.json_api_llm_provider_patch_document import JsonApiLlmProviderPatchDocument +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_providers_api.LLMProvidersApi(api_client) + id = "/6bUUGjjNSwg0_bs" # str | + json_api_llm_provider_patch_document = JsonApiLlmProviderPatchDocument( + data=JsonApiLlmProviderPatch( + attributes=JsonApiLlmProviderPatchAttributes( + default_model_id="default_model_id_example", + description="description_example", + models=[ + JsonApiLlmProviderInAttributesModelsInner( + family="OPENAI", + id="id_example", + ), + ], + name="name_example", + provider_config=JsonApiLlmProviderInAttributesProviderConfig(None), + ), + id="id1", + type="llmProvider", + ), + ) # JsonApiLlmProviderPatchDocument | + 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: + # Patch LLM Provider entity + api_response = api_instance.patch_entity_llm_providers(id, json_api_llm_provider_patch_document) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling LLMProvidersApi->patch_entity_llm_providers: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Patch LLM Provider entity + api_response = api_instance.patch_entity_llm_providers(id, json_api_llm_provider_patch_document, filter=filter) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling LLMProvidersApi->patch_entity_llm_providers: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **id** | **str**| | + **json_api_llm_provider_patch_document** | [**JsonApiLlmProviderPatchDocument**](JsonApiLlmProviderPatchDocument.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 + +[**JsonApiLlmProviderOutDocument**](JsonApiLlmProviderOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json, application/vnd.gooddata.api+json + - **Accept**: application/json, 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_providers** +> JsonApiLlmProviderOutDocument update_entity_llm_providers(id, json_api_llm_provider_in_document) + +PUT LLM Provider entity + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import llm_providers_api +from gooddata_api_client.model.json_api_llm_provider_out_document import JsonApiLlmProviderOutDocument +from gooddata_api_client.model.json_api_llm_provider_in_document import JsonApiLlmProviderInDocument +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_providers_api.LLMProvidersApi(api_client) + id = "/6bUUGjjNSwg0_bs" # str | + json_api_llm_provider_in_document = JsonApiLlmProviderInDocument( + data=JsonApiLlmProviderIn( + attributes=JsonApiLlmProviderInAttributes( + default_model_id="default_model_id_example", + description="description_example", + models=[ + JsonApiLlmProviderInAttributesModelsInner( + family="OPENAI", + id="id_example", + ), + ], + name="name_example", + provider_config=JsonApiLlmProviderInAttributesProviderConfig(None), + ), + id="id1", + type="llmProvider", + ), + ) # JsonApiLlmProviderInDocument | + 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: + # PUT LLM Provider entity + api_response = api_instance.update_entity_llm_providers(id, json_api_llm_provider_in_document) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling LLMProvidersApi->update_entity_llm_providers: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # PUT LLM Provider entity + api_response = api_instance.update_entity_llm_providers(id, json_api_llm_provider_in_document, filter=filter) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling LLMProvidersApi->update_entity_llm_providers: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **id** | **str**| | + **json_api_llm_provider_in_document** | [**JsonApiLlmProviderInDocument**](JsonApiLlmProviderInDocument.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 + +[**JsonApiLlmProviderOutDocument**](JsonApiLlmProviderOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json, application/vnd.gooddata.api+json + - **Accept**: application/json, 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 31aabbfe3..d8986cb7d 100644 --- a/gooddata-api-client/docs/LayoutApi.md +++ b/gooddata-api-client/docs/LayoutApi.md @@ -2005,6 +2005,13 @@ with gooddata_api_client.ApiClient() as api_client: ], analytical_dashboards=[ DeclarativeAnalyticalDashboard( + certification="CERTIFIED", + certification_message="certification_message_example", + certified_at="0480-72-88 80:01", + certified_by=DeclarativeUserIdentifier( + id="employee123", + type="user", + ), content=JsonNode(), created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( @@ -2029,14 +2036,14 @@ with gooddata_api_client.ApiClient() as api_client: attribute_hierarchies=[ DeclarativeAttributeHierarchy( content=JsonNode(), - created_at="["2023-07-20 12:30"]", + created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( id="employee123", type="user", ), description="Simple number for total goods in current production.", id="hierarchy-1", - modified_at="["2023-07-20 12:30"]", + modified_at="2023-07-20 12:30", modified_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -2048,14 +2055,14 @@ with gooddata_api_client.ApiClient() as api_client: dashboard_plugins=[ DeclarativeDashboardPlugin( content=JsonNode(), - created_at="["2023-07-20 12:30"]", + created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( id="employee123", type="user", ), description="Three dimensional view of data.", id="dashboard-plugin-1", - modified_at="["2023-07-20 12:30"]", + modified_at="2023-07-20 12:30", modified_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -2066,14 +2073,14 @@ with gooddata_api_client.ApiClient() as api_client: ], export_definitions=[ DeclarativeExportDefinition( - created_at="["2023-07-20 12:30"]", + created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( id="employee123", type="user", ), description="Simple number for total goods in current production.", id="export-definition-1", - modified_at="["2023-07-20 12:30"]", + modified_at="2023-07-20 12:30", modified_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -2118,8 +2125,15 @@ with gooddata_api_client.ApiClient() as api_client: ], metrics=[ DeclarativeMetric( + certification="CERTIFIED", + certification_message="certification_message_example", + certified_at="0480-72-88 80:01", + certified_by=DeclarativeUserIdentifier( + id="employee123", + type="user", + ), content=JsonNode(), - created_at="["2023-07-20 12:30"]", + created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -2128,7 +2142,7 @@ with gooddata_api_client.ApiClient() as api_client: id="total-sales", is_hidden=False, is_hidden_from_kda=False, - modified_at="["2023-07-20 12:30"]", + modified_at="2023-07-20 12:30", modified_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -2139,8 +2153,15 @@ with gooddata_api_client.ApiClient() as api_client: ], visualization_objects=[ DeclarativeVisualizationObject( + certification="CERTIFIED", + certification_message="certification_message_example", + certified_at="0480-72-88 80:01", + certified_by=DeclarativeUserIdentifier( + id="employee123", + type="user", + ), content=JsonNode(), - created_at="["2023-07-20 12:30"]", + created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -2148,7 +2169,7 @@ with gooddata_api_client.ApiClient() as api_client: description="Simple number for total goods in current production.", id="visualization-1", is_hidden=False, - modified_at="["2023-07-20 12:30"]", + modified_at="2023-07-20 12:30", modified_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -2414,6 +2435,13 @@ with gooddata_api_client.ApiClient() as api_client: ], analytical_dashboards=[ DeclarativeAnalyticalDashboard( + certification="CERTIFIED", + certification_message="certification_message_example", + certified_at="0480-72-88 80:01", + certified_by=DeclarativeUserIdentifier( + id="employee123", + type="user", + ), content=JsonNode(), created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( @@ -2438,14 +2466,14 @@ with gooddata_api_client.ApiClient() as api_client: attribute_hierarchies=[ DeclarativeAttributeHierarchy( content=JsonNode(), - created_at="["2023-07-20 12:30"]", + created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( id="employee123", type="user", ), description="Simple number for total goods in current production.", id="hierarchy-1", - modified_at="["2023-07-20 12:30"]", + modified_at="2023-07-20 12:30", modified_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -2457,14 +2485,14 @@ with gooddata_api_client.ApiClient() as api_client: dashboard_plugins=[ DeclarativeDashboardPlugin( content=JsonNode(), - created_at="["2023-07-20 12:30"]", + created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( id="employee123", type="user", ), description="Three dimensional view of data.", id="dashboard-plugin-1", - modified_at="["2023-07-20 12:30"]", + modified_at="2023-07-20 12:30", modified_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -2475,14 +2503,14 @@ with gooddata_api_client.ApiClient() as api_client: ], export_definitions=[ DeclarativeExportDefinition( - created_at="["2023-07-20 12:30"]", + created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( id="employee123", type="user", ), description="Simple number for total goods in current production.", id="export-definition-1", - modified_at="["2023-07-20 12:30"]", + modified_at="2023-07-20 12:30", modified_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -2527,8 +2555,15 @@ with gooddata_api_client.ApiClient() as api_client: ], metrics=[ DeclarativeMetric( + certification="CERTIFIED", + certification_message="certification_message_example", + certified_at="0480-72-88 80:01", + certified_by=DeclarativeUserIdentifier( + id="employee123", + type="user", + ), content=JsonNode(), - created_at="["2023-07-20 12:30"]", + created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -2537,7 +2572,7 @@ with gooddata_api_client.ApiClient() as api_client: id="total-sales", is_hidden=False, is_hidden_from_kda=False, - modified_at="["2023-07-20 12:30"]", + modified_at="2023-07-20 12:30", modified_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -2548,8 +2583,15 @@ with gooddata_api_client.ApiClient() as api_client: ], visualization_objects=[ DeclarativeVisualizationObject( + certification="CERTIFIED", + certification_message="certification_message_example", + certified_at="0480-72-88 80:01", + certified_by=DeclarativeUserIdentifier( + id="employee123", + type="user", + ), content=JsonNode(), - created_at="["2023-07-20 12:30"]", + created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -2557,7 +2599,7 @@ with gooddata_api_client.ApiClient() as api_client: description="Simple number for total goods in current production.", id="visualization-1", is_hidden=False, - modified_at="["2023-07-20 12:30"]", + modified_at="2023-07-20 12:30", modified_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -2784,6 +2826,21 @@ with gooddata_api_client.ApiClient() as api_client: filters=[ FilterDefinition(), ], + measure_definition_overrides=[ + MetricDefinitionOverride( + definition=InlineMeasureDefinition( + inline=InlineMeasureDefinitionInline( + maql="maql_example", + ), + ), + item=AfmObjectIdentifierCore( + identifier=AfmObjectIdentifierCoreIdentifier( + id="sample_item.price", + type="attribute", + ), + ), + ), + ], measures=[ MeasureItem( definition=MeasureDefinition(), @@ -4195,6 +4252,21 @@ with gooddata_api_client.ApiClient() as api_client: filters=[ FilterDefinition(), ], + measure_definition_overrides=[ + MetricDefinitionOverride( + definition=InlineMeasureDefinition( + inline=InlineMeasureDefinitionInline( + maql="maql_example", + ), + ), + item=AfmObjectIdentifierCore( + identifier=AfmObjectIdentifierCoreIdentifier( + id="sample_item.price", + type="attribute", + ), + ), + ), + ], measures=[ MeasureItem( definition=MeasureDefinition(), @@ -4367,6 +4439,13 @@ with gooddata_api_client.ApiClient() as api_client: ], analytical_dashboards=[ DeclarativeAnalyticalDashboard( + certification="CERTIFIED", + certification_message="certification_message_example", + certified_at="0480-72-88 80:01", + certified_by=DeclarativeUserIdentifier( + id="employee123", + type="user", + ), content=JsonNode(), created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( @@ -4391,14 +4470,14 @@ with gooddata_api_client.ApiClient() as api_client: attribute_hierarchies=[ DeclarativeAttributeHierarchy( content=JsonNode(), - created_at="["2023-07-20 12:30"]", + created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( id="employee123", type="user", ), description="Simple number for total goods in current production.", id="hierarchy-1", - modified_at="["2023-07-20 12:30"]", + modified_at="2023-07-20 12:30", modified_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -4410,14 +4489,14 @@ with gooddata_api_client.ApiClient() as api_client: dashboard_plugins=[ DeclarativeDashboardPlugin( content=JsonNode(), - created_at="["2023-07-20 12:30"]", + created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( id="employee123", type="user", ), description="Three dimensional view of data.", id="dashboard-plugin-1", - modified_at="["2023-07-20 12:30"]", + modified_at="2023-07-20 12:30", modified_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -4428,14 +4507,14 @@ with gooddata_api_client.ApiClient() as api_client: ], export_definitions=[ DeclarativeExportDefinition( - created_at="["2023-07-20 12:30"]", + created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( id="employee123", type="user", ), description="Simple number for total goods in current production.", id="export-definition-1", - modified_at="["2023-07-20 12:30"]", + modified_at="2023-07-20 12:30", modified_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -4480,8 +4559,15 @@ with gooddata_api_client.ApiClient() as api_client: ], metrics=[ DeclarativeMetric( + certification="CERTIFIED", + certification_message="certification_message_example", + certified_at="0480-72-88 80:01", + certified_by=DeclarativeUserIdentifier( + id="employee123", + type="user", + ), content=JsonNode(), - created_at="["2023-07-20 12:30"]", + created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -4490,7 +4576,7 @@ with gooddata_api_client.ApiClient() as api_client: id="total-sales", is_hidden=False, is_hidden_from_kda=False, - modified_at="["2023-07-20 12:30"]", + modified_at="2023-07-20 12:30", modified_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -4501,8 +4587,15 @@ with gooddata_api_client.ApiClient() as api_client: ], visualization_objects=[ DeclarativeVisualizationObject( + certification="CERTIFIED", + certification_message="certification_message_example", + certified_at="0480-72-88 80:01", + certified_by=DeclarativeUserIdentifier( + id="employee123", + type="user", + ), content=JsonNode(), - created_at="["2023-07-20 12:30"]", + created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -4510,7 +4603,7 @@ with gooddata_api_client.ApiClient() as api_client: description="Simple number for total goods in current production.", id="visualization-1", is_hidden=False, - modified_at="["2023-07-20 12:30"]", + modified_at="2023-07-20 12:30", modified_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -5474,6 +5567,21 @@ with gooddata_api_client.ApiClient() as api_client: filters=[ FilterDefinition(), ], + measure_definition_overrides=[ + MetricDefinitionOverride( + definition=InlineMeasureDefinition( + inline=InlineMeasureDefinitionInline( + maql="maql_example", + ), + ), + item=AfmObjectIdentifierCore( + identifier=AfmObjectIdentifierCoreIdentifier( + id="sample_item.price", + type="attribute", + ), + ), + ), + ], measures=[ MeasureItem( definition=MeasureDefinition(), @@ -5646,6 +5754,13 @@ with gooddata_api_client.ApiClient() as api_client: ], analytical_dashboards=[ DeclarativeAnalyticalDashboard( + certification="CERTIFIED", + certification_message="certification_message_example", + certified_at="0480-72-88 80:01", + certified_by=DeclarativeUserIdentifier( + id="employee123", + type="user", + ), content=JsonNode(), created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( @@ -5670,14 +5785,14 @@ with gooddata_api_client.ApiClient() as api_client: attribute_hierarchies=[ DeclarativeAttributeHierarchy( content=JsonNode(), - created_at="["2023-07-20 12:30"]", + created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( id="employee123", type="user", ), description="Simple number for total goods in current production.", id="hierarchy-1", - modified_at="["2023-07-20 12:30"]", + modified_at="2023-07-20 12:30", modified_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -5689,14 +5804,14 @@ with gooddata_api_client.ApiClient() as api_client: dashboard_plugins=[ DeclarativeDashboardPlugin( content=JsonNode(), - created_at="["2023-07-20 12:30"]", + created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( id="employee123", type="user", ), description="Three dimensional view of data.", id="dashboard-plugin-1", - modified_at="["2023-07-20 12:30"]", + modified_at="2023-07-20 12:30", modified_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -5707,14 +5822,14 @@ with gooddata_api_client.ApiClient() as api_client: ], export_definitions=[ DeclarativeExportDefinition( - created_at="["2023-07-20 12:30"]", + created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( id="employee123", type="user", ), description="Simple number for total goods in current production.", id="export-definition-1", - modified_at="["2023-07-20 12:30"]", + modified_at="2023-07-20 12:30", modified_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -5759,8 +5874,15 @@ with gooddata_api_client.ApiClient() as api_client: ], metrics=[ DeclarativeMetric( + certification="CERTIFIED", + certification_message="certification_message_example", + certified_at="0480-72-88 80:01", + certified_by=DeclarativeUserIdentifier( + id="employee123", + type="user", + ), content=JsonNode(), - created_at="["2023-07-20 12:30"]", + created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -5769,7 +5891,7 @@ with gooddata_api_client.ApiClient() as api_client: id="total-sales", is_hidden=False, is_hidden_from_kda=False, - modified_at="["2023-07-20 12:30"]", + modified_at="2023-07-20 12:30", modified_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -5780,8 +5902,15 @@ with gooddata_api_client.ApiClient() as api_client: ], visualization_objects=[ DeclarativeVisualizationObject( + certification="CERTIFIED", + certification_message="certification_message_example", + certified_at="0480-72-88 80:01", + certified_by=DeclarativeUserIdentifier( + id="employee123", + type="user", + ), content=JsonNode(), - created_at="["2023-07-20 12:30"]", + created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -5789,7 +5918,7 @@ with gooddata_api_client.ApiClient() as api_client: description="Simple number for total goods in current production.", id="visualization-1", is_hidden=False, - modified_at="["2023-07-20 12:30"]", + modified_at="2023-07-20 12:30", modified_by=DeclarativeUserIdentifier( id="employee123", type="user", diff --git a/gooddata-api-client/docs/ListDatabaseInstancesResponse.md b/gooddata-api-client/docs/ListDatabaseInstancesResponse.md new file mode 100644 index 000000000..d9c4f53d3 --- /dev/null +++ b/gooddata-api-client/docs/ListDatabaseInstancesResponse.md @@ -0,0 +1,14 @@ +# ListDatabaseInstancesResponse + +Paged response for listing AI Lake database instances + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**databases** | [**[DatabaseInstance]**](DatabaseInstance.md) | List of database instances | +**total_count** | **int** | Total count of items (only set when metaInclude=page) | [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/ListKnowledgeDocumentsResponseDto.md b/gooddata-api-client/docs/ListKnowledgeDocumentsResponseDto.md new file mode 100644 index 000000000..4098dc245 --- /dev/null +++ b/gooddata-api-client/docs/ListKnowledgeDocumentsResponseDto.md @@ -0,0 +1,14 @@ +# ListKnowledgeDocumentsResponseDto + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**documents** | [**[KnowledgeDocumentMetadataDto]**](KnowledgeDocumentMetadataDto.md) | | +**next_page_token** | **str** | | [optional] +**total_count** | **int** | | [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/ListServicesResponse.md b/gooddata-api-client/docs/ListServicesResponse.md new file mode 100644 index 000000000..3ff4a9565 --- /dev/null +++ b/gooddata-api-client/docs/ListServicesResponse.md @@ -0,0 +1,14 @@ +# ListServicesResponse + +Paged response for listing AI Lake services + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**services** | [**[ServiceInfo]**](ServiceInfo.md) | List of services | +**total_count** | **int** | Total count of items (only set when metaInclude=page) | [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/LlmModel.md b/gooddata-api-client/docs/LlmModel.md new file mode 100644 index 000000000..acec0a1e7 --- /dev/null +++ b/gooddata-api-client/docs/LlmModel.md @@ -0,0 +1,14 @@ +# LlmModel + +LLM Model configuration (id, family) within a provider. + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**family** | **str** | Family of LLM models. | +**id** | **str** | Unique identifier of the model (e.g., gpt-5.3, claude-4.6). | +**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/LlmProviderAuth.md b/gooddata-api-client/docs/LlmProviderAuth.md new file mode 100644 index 000000000..814d9fd14 --- /dev/null +++ b/gooddata-api-client/docs/LlmProviderAuth.md @@ -0,0 +1,12 @@ +# LlmProviderAuth + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**type** | **str** | | +**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/LlmProviderConfig.md b/gooddata-api-client/docs/LlmProviderConfig.md new file mode 100644 index 000000000..9ce5198f8 --- /dev/null +++ b/gooddata-api-client/docs/LlmProviderConfig.md @@ -0,0 +1,18 @@ +# LlmProviderConfig + +Provider configuration to test. + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**base_url** | **str, none_type** | Custom base URL for OpenAI API. | [optional] if omitted the server will use the default value of "https://api.openai.com" +**organization** | **str, none_type** | OpenAI organization ID. | [optional] +**auth** | [**OpenAiProviderAuth**](OpenAiProviderAuth.md) | | [optional] +**region** | **str** | AWS region for Bedrock. | [optional] +**type** | **str** | Provider type. | [optional] if omitted the server will use the default value of "OPENAI" +**endpoint** | **str** | Azure AI inference endpoint 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/MetricDefinitionOverride.md b/gooddata-api-client/docs/MetricDefinitionOverride.md new file mode 100644 index 000000000..899acb22c --- /dev/null +++ b/gooddata-api-client/docs/MetricDefinitionOverride.md @@ -0,0 +1,14 @@ +# MetricDefinitionOverride + +(EXPERIMENTAL) Override for a catalog metric definition. + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**definition** | [**InlineMeasureDefinition**](InlineMeasureDefinition.md) | | +**item** | [**AfmObjectIdentifierCore**](AfmObjectIdentifierCore.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/MetricsApi.md b/gooddata-api-client/docs/MetricsApi.md index 045dedafb..18eddb5b3 100644 --- a/gooddata-api-client/docs/MetricsApi.md +++ b/gooddata-api-client/docs/MetricsApi.md @@ -62,7 +62,7 @@ with gooddata_api_client.ApiClient() as api_client: ), ) # JsonApiMetricPostOptionalIdDocument | include = [ - "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", ] # [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", @@ -222,7 +222,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 = "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) include = [ - "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", ] # [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 @@ -318,7 +318,7 @@ with gooddata_api_client.ApiClient() as api_client: object_id = "objectId_example" # str | 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) include = [ - "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", ] # [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 = [ @@ -428,7 +428,7 @@ with gooddata_api_client.ApiClient() as api_client: ) # JsonApiMetricPatchDocument | 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) include = [ - "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", ] # [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 @@ -632,7 +632,7 @@ with gooddata_api_client.ApiClient() as api_client: ) # JsonApiMetricInDocument | 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) include = [ - "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", ] # [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/ModelTestResult.md b/gooddata-api-client/docs/ModelTestResult.md new file mode 100644 index 000000000..58ad0349e --- /dev/null +++ b/gooddata-api-client/docs/ModelTestResult.md @@ -0,0 +1,15 @@ +# ModelTestResult + +Per-model test results. + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**message** | **str** | Message about the model test result. | +**model_id** | **str** | The model ID that was tested. | +**successful** | **bool** | Whether the model test was successful. | +**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/OpenAIProviderConfig.md b/gooddata-api-client/docs/OpenAIProviderConfig.md new file mode 100644 index 000000000..aa6fa09ae --- /dev/null +++ b/gooddata-api-client/docs/OpenAIProviderConfig.md @@ -0,0 +1,16 @@ +# OpenAIProviderConfig + +Configuration for OpenAI provider. + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**auth** | [**OpenAiProviderAuth**](OpenAiProviderAuth.md) | | +**type** | **str** | Provider type. | defaults to "OPENAI" +**base_url** | **str, none_type** | Custom base URL for OpenAI API. | [optional] if omitted the server will use the default value of "https://api.openai.com" +**organization** | **str, none_type** | OpenAI organization ID. | [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/OpenAiApiKeyAuth.md b/gooddata-api-client/docs/OpenAiApiKeyAuth.md new file mode 100644 index 000000000..64cdbd71b --- /dev/null +++ b/gooddata-api-client/docs/OpenAiApiKeyAuth.md @@ -0,0 +1,13 @@ +# OpenAiApiKeyAuth + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**type** | **str** | Authentication type. | defaults to "API_KEY" +**api_key** | **str, none_type** | OpenAI API key. | [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/OpenAiApiKeyAuthAllOf.md b/gooddata-api-client/docs/OpenAiApiKeyAuthAllOf.md new file mode 100644 index 000000000..248605c56 --- /dev/null +++ b/gooddata-api-client/docs/OpenAiApiKeyAuthAllOf.md @@ -0,0 +1,13 @@ +# OpenAiApiKeyAuthAllOf + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**api_key** | **str, none_type** | OpenAI API key. | [optional] +**type** | **str** | Authentication type. | [optional] if omitted the server will use the default value of "API_KEY" +**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/OpenAiProviderAuth.md b/gooddata-api-client/docs/OpenAiProviderAuth.md new file mode 100644 index 000000000..7ac39a634 --- /dev/null +++ b/gooddata-api-client/docs/OpenAiProviderAuth.md @@ -0,0 +1,14 @@ +# OpenAiProviderAuth + +Authentication configuration. + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**api_key** | **str, none_type** | OpenAI API key. | [optional] +**type** | **str** | Authentication type. | [optional] if omitted the server will use the default value of "API_KEY" +**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/Operation.md b/gooddata-api-client/docs/Operation.md index 7ef5c6987..0cee4f156 100644 --- a/gooddata-api-client/docs/Operation.md +++ b/gooddata-api-client/docs/Operation.md @@ -6,7 +6,7 @@ Represents a Long-Running Operation: a process that takes some time to complete. Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **id** | **str** | Id of the operation | -**kind** | **str** | Type of the long-running operation. * `provision-database` — Provisioning of an AI Lake database. * `deprovision-database` — Deprovisioning (deletion) of an AI Lake database. | +**kind** | **str** | Type of the long-running operation. * `provision-database` — Provisioning of an AI Lake database. * `deprovision-database` — Deprovisioning (deletion) of an AI Lake database. * `run-service-command` — Running a command in a particular AI Lake service. | **status** | **str** | | **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/OrganizationDeclarativeAPIsApi.md b/gooddata-api-client/docs/OrganizationDeclarativeAPIsApi.md index 943241de0..48d280bbe 100644 --- a/gooddata-api-client/docs/OrganizationDeclarativeAPIsApi.md +++ b/gooddata-api-client/docs/OrganizationDeclarativeAPIsApi.md @@ -687,6 +687,21 @@ with gooddata_api_client.ApiClient() as api_client: filters=[ FilterDefinition(), ], + measure_definition_overrides=[ + MetricDefinitionOverride( + definition=InlineMeasureDefinition( + inline=InlineMeasureDefinitionInline( + maql="maql_example", + ), + ), + item=AfmObjectIdentifierCore( + identifier=AfmObjectIdentifierCoreIdentifier( + id="sample_item.price", + type="attribute", + ), + ), + ), + ], measures=[ MeasureItem( definition=MeasureDefinition(), @@ -859,6 +874,13 @@ with gooddata_api_client.ApiClient() as api_client: ], analytical_dashboards=[ DeclarativeAnalyticalDashboard( + certification="CERTIFIED", + certification_message="certification_message_example", + certified_at="0480-72-88 80:01", + certified_by=DeclarativeUserIdentifier( + id="employee123", + type="user", + ), content=JsonNode(), created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( @@ -883,14 +905,14 @@ with gooddata_api_client.ApiClient() as api_client: attribute_hierarchies=[ DeclarativeAttributeHierarchy( content=JsonNode(), - created_at="["2023-07-20 12:30"]", + created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( id="employee123", type="user", ), description="Simple number for total goods in current production.", id="hierarchy-1", - modified_at="["2023-07-20 12:30"]", + modified_at="2023-07-20 12:30", modified_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -902,14 +924,14 @@ with gooddata_api_client.ApiClient() as api_client: dashboard_plugins=[ DeclarativeDashboardPlugin( content=JsonNode(), - created_at="["2023-07-20 12:30"]", + created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( id="employee123", type="user", ), description="Three dimensional view of data.", id="dashboard-plugin-1", - modified_at="["2023-07-20 12:30"]", + modified_at="2023-07-20 12:30", modified_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -920,14 +942,14 @@ with gooddata_api_client.ApiClient() as api_client: ], export_definitions=[ DeclarativeExportDefinition( - created_at="["2023-07-20 12:30"]", + created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( id="employee123", type="user", ), description="Simple number for total goods in current production.", id="export-definition-1", - modified_at="["2023-07-20 12:30"]", + modified_at="2023-07-20 12:30", modified_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -972,8 +994,15 @@ with gooddata_api_client.ApiClient() as api_client: ], metrics=[ DeclarativeMetric( + certification="CERTIFIED", + certification_message="certification_message_example", + certified_at="0480-72-88 80:01", + certified_by=DeclarativeUserIdentifier( + id="employee123", + type="user", + ), content=JsonNode(), - created_at="["2023-07-20 12:30"]", + created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -982,7 +1011,7 @@ with gooddata_api_client.ApiClient() as api_client: id="total-sales", is_hidden=False, is_hidden_from_kda=False, - modified_at="["2023-07-20 12:30"]", + modified_at="2023-07-20 12:30", modified_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -993,8 +1022,15 @@ with gooddata_api_client.ApiClient() as api_client: ], visualization_objects=[ DeclarativeVisualizationObject( + certification="CERTIFIED", + certification_message="certification_message_example", + certified_at="0480-72-88 80:01", + certified_by=DeclarativeUserIdentifier( + id="employee123", + type="user", + ), content=JsonNode(), - created_at="["2023-07-20 12:30"]", + created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -1002,7 +1038,7 @@ with gooddata_api_client.ApiClient() as api_client: description="Simple number for total goods in current production.", id="visualization-1", is_hidden=False, - modified_at="["2023-07-20 12:30"]", + modified_at="2023-07-20 12:30", modified_by=DeclarativeUserIdentifier( id="employee123", type="user", diff --git a/gooddata-api-client/docs/OrganizationModelControllerApi.md b/gooddata-api-client/docs/OrganizationModelControllerApi.md index a2abc8a40..ef07ba041 100644 --- a/gooddata-api-client/docs/OrganizationModelControllerApi.md +++ b/gooddata-api-client/docs/OrganizationModelControllerApi.md @@ -12,6 +12,7 @@ Method | HTTP request | Description [**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_llm_providers**](OrganizationModelControllerApi.md#create_entity_llm_providers) | **POST** /api/v1/entities/llmProviders | Post LLM Provider 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 @@ -26,6 +27,7 @@ Method | HTTP request | Description [**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_llm_endpoints**](OrganizationModelControllerApi.md#delete_entity_llm_endpoints) | **DELETE** /api/v1/entities/llmEndpoints/{id} | +[**delete_entity_llm_providers**](OrganizationModelControllerApi.md#delete_entity_llm_providers) | **DELETE** /api/v1/entities/llmProviders/{id} | Delete LLM Provider entity [**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 @@ -42,6 +44,7 @@ Method | HTTP request | Description [**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_llm_providers**](OrganizationModelControllerApi.md#get_all_entities_llm_providers) | **GET** /api/v1/entities/llmProviders | Get all LLM Provider entities [**get_all_entities_notification_channel_identifiers**](OrganizationModelControllerApi.md#get_all_entities_notification_channel_identifiers) | **GET** /api/v1/entities/notificationChannelIdentifiers | [**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 @@ -60,6 +63,7 @@ Method | HTTP request | Description [**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_llm_providers**](OrganizationModelControllerApi.md#get_entity_llm_providers) | **GET** /api/v1/entities/llmProviders/{id} | Get LLM Provider entity [**get_entity_notification_channel_identifiers**](OrganizationModelControllerApi.md#get_entity_notification_channel_identifiers) | **GET** /api/v1/entities/notificationChannelIdentifiers/{id} | [**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 @@ -76,6 +80,7 @@ Method | HTTP request | Description [**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_llm_providers**](OrganizationModelControllerApi.md#patch_entity_llm_providers) | **PATCH** /api/v1/entities/llmProviders/{id} | Patch LLM Provider 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 @@ -90,6 +95,7 @@ Method | HTTP request | Description [**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_llm_providers**](OrganizationModelControllerApi.md#update_entity_llm_providers) | **PUT** /api/v1/entities/llmProviders/{id} | PUT LLM Provider 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 @@ -810,6 +816,91 @@ No authorization required - **Accept**: application/json, 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_providers** +> JsonApiLlmProviderOutDocument create_entity_llm_providers(json_api_llm_provider_in_document) + +Post LLM Provider entities + +LLM Provider - connection configuration for LLM services + +### 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_provider_out_document import JsonApiLlmProviderOutDocument +from gooddata_api_client.model.json_api_llm_provider_in_document import JsonApiLlmProviderInDocument +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_provider_in_document = JsonApiLlmProviderInDocument( + data=JsonApiLlmProviderIn( + attributes=JsonApiLlmProviderInAttributes( + default_model_id="default_model_id_example", + description="description_example", + models=[ + JsonApiLlmProviderInAttributesModelsInner( + family="OPENAI", + id="id_example", + ), + ], + name="name_example", + provider_config=JsonApiLlmProviderInAttributesProviderConfig(None), + ), + id="id1", + type="llmProvider", + ), + ) # JsonApiLlmProviderInDocument | + + # example passing only required values which don't have defaults set + try: + # Post LLM Provider entities + api_response = api_instance.create_entity_llm_providers(json_api_llm_provider_in_document) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling OrganizationModelControllerApi->create_entity_llm_providers: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **json_api_llm_provider_in_document** | [**JsonApiLlmProviderInDocument**](JsonApiLlmProviderInDocument.md)| | + +### Return type + +[**JsonApiLlmProviderOutDocument**](JsonApiLlmProviderOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json, application/vnd.gooddata.api+json + - **Accept**: application/json, application/vnd.gooddata.api+json + + ### HTTP response details | Status code | Description | Response headers | @@ -1901,7 +1992,7 @@ 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 = "title==someString;provider==LLMProviderValue" # 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 = "title==someString;provider==LlmEndpointProviderValue" # 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: @@ -1918,6 +2009,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_llm_providers** +> delete_entity_llm_providers(id) + +Delete LLM Provider entity + +### 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 = "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 LLM Provider entity + api_instance.delete_entity_llm_providers(id) + except gooddata_api_client.ApiException as e: + print("Exception when calling OrganizationModelControllerApi->delete_entity_llm_providers: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Delete LLM Provider entity + api_instance.delete_entity_llm_providers(id, filter=filter) + except gooddata_api_client.ApiException as e: + print("Exception when calling OrganizationModelControllerApi->delete_entity_llm_providers: %s\n" % e) +``` + + ### Parameters Name | Type | Description | Notes @@ -3125,7 +3289,7 @@ 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 = "title==someString;provider==LLMProviderValue" # 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 = "title==someString;provider==LlmEndpointProviderValue" # 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 = [ @@ -3170,6 +3334,84 @@ No authorization required - **Accept**: application/json, 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_providers** +> JsonApiLlmProviderOutList get_all_entities_llm_providers() + +Get all LLM Provider 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_provider_out_list import JsonApiLlmProviderOutList +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 = "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) + 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 Provider entities + api_response = api_instance.get_all_entities_llm_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_llm_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 + +[**JsonApiLlmProviderOutList**](JsonApiLlmProviderOutList.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json, application/vnd.gooddata.api+json + + ### HTTP response details | Status code | Description | Response headers | @@ -4545,7 +4787,7 @@ 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 = "title==someString;provider==LLMProviderValue" # 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 = "title==someString;provider==LlmEndpointProviderValue" # 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: @@ -4587,6 +4829,82 @@ No authorization required - **Accept**: application/json, 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_providers** +> JsonApiLlmProviderOutDocument get_entity_llm_providers(id) + +Get LLM Provider 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_provider_out_document import JsonApiLlmProviderOutDocument +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 = "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 LLM Provider entity + api_response = api_instance.get_entity_llm_providers(id) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling OrganizationModelControllerApi->get_entity_llm_providers: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Get LLM Provider entity + api_response = api_instance.get_entity_llm_providers(id, filter=filter) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling OrganizationModelControllerApi->get_entity_llm_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 + +[**JsonApiLlmProviderOutDocument**](JsonApiLlmProviderOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json, application/vnd.gooddata.api+json + + ### HTTP response details | Status code | Description | Response headers | @@ -5984,7 +6302,7 @@ with gooddata_api_client.ApiClient() as api_client: type="llmEndpoint", ), ) # JsonApiLlmEndpointPatchDocument | - filter = "title==someString;provider==LLMProviderValue" # 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 = "title==someString;provider==LlmEndpointProviderValue" # 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: @@ -6027,6 +6345,102 @@ No authorization required - **Accept**: application/json, 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_providers** +> JsonApiLlmProviderOutDocument patch_entity_llm_providers(id, json_api_llm_provider_patch_document) + +Patch LLM Provider 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_provider_out_document import JsonApiLlmProviderOutDocument +from gooddata_api_client.model.json_api_llm_provider_patch_document import JsonApiLlmProviderPatchDocument +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_provider_patch_document = JsonApiLlmProviderPatchDocument( + data=JsonApiLlmProviderPatch( + attributes=JsonApiLlmProviderPatchAttributes( + default_model_id="default_model_id_example", + description="description_example", + models=[ + JsonApiLlmProviderInAttributesModelsInner( + family="OPENAI", + id="id_example", + ), + ], + name="name_example", + provider_config=JsonApiLlmProviderInAttributesProviderConfig(None), + ), + id="id1", + type="llmProvider", + ), + ) # JsonApiLlmProviderPatchDocument | + 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: + # Patch LLM Provider entity + api_response = api_instance.patch_entity_llm_providers(id, json_api_llm_provider_patch_document) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling OrganizationModelControllerApi->patch_entity_llm_providers: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # Patch LLM Provider entity + api_response = api_instance.patch_entity_llm_providers(id, json_api_llm_provider_patch_document, filter=filter) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling OrganizationModelControllerApi->patch_entity_llm_providers: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **id** | **str**| | + **json_api_llm_provider_patch_document** | [**JsonApiLlmProviderPatchDocument**](JsonApiLlmProviderPatchDocument.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 + +[**JsonApiLlmProviderOutDocument**](JsonApiLlmProviderOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json, application/vnd.gooddata.api+json + - **Accept**: application/json, application/vnd.gooddata.api+json + + ### HTTP response details | Status code | Description | Response headers | @@ -7384,7 +7798,7 @@ with gooddata_api_client.ApiClient() as api_client: type="llmEndpoint", ), ) # JsonApiLlmEndpointInDocument | - filter = "title==someString;provider==LLMProviderValue" # 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 = "title==someString;provider==LlmEndpointProviderValue" # 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: @@ -7427,6 +7841,102 @@ No authorization required - **Accept**: application/json, 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_providers** +> JsonApiLlmProviderOutDocument update_entity_llm_providers(id, json_api_llm_provider_in_document) + +PUT LLM Provider 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_provider_out_document import JsonApiLlmProviderOutDocument +from gooddata_api_client.model.json_api_llm_provider_in_document import JsonApiLlmProviderInDocument +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_provider_in_document = JsonApiLlmProviderInDocument( + data=JsonApiLlmProviderIn( + attributes=JsonApiLlmProviderInAttributes( + default_model_id="default_model_id_example", + description="description_example", + models=[ + JsonApiLlmProviderInAttributesModelsInner( + family="OPENAI", + id="id_example", + ), + ], + name="name_example", + provider_config=JsonApiLlmProviderInAttributesProviderConfig(None), + ), + id="id1", + type="llmProvider", + ), + ) # JsonApiLlmProviderInDocument | + 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: + # PUT LLM Provider entity + api_response = api_instance.update_entity_llm_providers(id, json_api_llm_provider_in_document) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling OrganizationModelControllerApi->update_entity_llm_providers: %s\n" % e) + + # example passing only required values which don't have defaults set + # and optional values + try: + # PUT LLM Provider entity + api_response = api_instance.update_entity_llm_providers(id, json_api_llm_provider_in_document, filter=filter) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling OrganizationModelControllerApi->update_entity_llm_providers: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **id** | **str**| | + **json_api_llm_provider_in_document** | [**JsonApiLlmProviderInDocument**](JsonApiLlmProviderInDocument.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 + +[**JsonApiLlmProviderOutDocument**](JsonApiLlmProviderOutDocument.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json, application/vnd.gooddata.api+json + - **Accept**: application/json, application/vnd.gooddata.api+json + + ### HTTP response details | Status code | Description | Response headers | diff --git a/gooddata-api-client/docs/PatchKnowledgeDocumentRequestDto.md b/gooddata-api-client/docs/PatchKnowledgeDocumentRequestDto.md new file mode 100644 index 000000000..3e39d120e --- /dev/null +++ b/gooddata-api-client/docs/PatchKnowledgeDocumentRequestDto.md @@ -0,0 +1,14 @@ +# PatchKnowledgeDocumentRequestDto + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**is_disabled** | **bool** | | [optional] +**scopes** | **[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/PendingOperation.md b/gooddata-api-client/docs/PendingOperation.md index d025e7e8c..28320905a 100644 --- a/gooddata-api-client/docs/PendingOperation.md +++ b/gooddata-api-client/docs/PendingOperation.md @@ -6,7 +6,7 @@ Operation that is still pending Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **id** | **str** | Id of the operation | -**kind** | **str** | Type of the long-running operation. * `provision-database` — Provisioning of an AI Lake database. * `deprovision-database` — Deprovisioning (deletion) of an AI Lake database. | +**kind** | **str** | Type of the long-running operation. * `provision-database` — Provisioning of an AI Lake database. * `deprovision-database` — Deprovisioning (deletion) of an AI Lake database. * `run-service-command` — Running a command in a particular AI Lake service. | **status** | **str** | | **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/RawExportApi.md b/gooddata-api-client/docs/RawExportApi.md index ef80b5781..96c1b06ad 100644 --- a/gooddata-api-client/docs/RawExportApi.md +++ b/gooddata-api-client/docs/RawExportApi.md @@ -73,6 +73,21 @@ with gooddata_api_client.ApiClient() as api_client: filters=[ FilterDefinition(), ], + measure_definition_overrides=[ + MetricDefinitionOverride( + definition=InlineMeasureDefinition( + inline=InlineMeasureDefinitionInline( + maql="maql_example", + ), + ), + item=AfmObjectIdentifierCore( + identifier=AfmObjectIdentifierCoreIdentifier( + id="sample_item.price", + type="attribute", + ), + ), + ), + ], measures=[ MeasureItem( definition=MeasureDefinition(), diff --git a/gooddata-api-client/docs/RelativeDateFilterRelativeDateFilter.md b/gooddata-api-client/docs/RelativeDateFilterRelativeDateFilter.md index eca210716..91a8d7079 100644 --- a/gooddata-api-client/docs/RelativeDateFilterRelativeDateFilter.md +++ b/gooddata-api-client/docs/RelativeDateFilterRelativeDateFilter.md @@ -10,6 +10,7 @@ Name | Type | Description | Notes **to** | **int** | 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, ...). | **apply_on_result** | **bool** | | [optional] **bounded_filter** | [**BoundedFilter**](BoundedFilter.md) | | [optional] +**empty_value_handling** | **str** | Specifies how rows with empty (null/missing) date values should be handled. INCLUDE includes empty dates in addition to the date range restriction, EXCLUDE removes rows with empty dates (default), ONLY keeps only rows with empty dates. | [optional] if omitted the server will use the default value of "EXCLUDE" **local_identifier** | **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/RunServiceCommandRequest.md b/gooddata-api-client/docs/RunServiceCommandRequest.md new file mode 100644 index 000000000..134111da3 --- /dev/null +++ b/gooddata-api-client/docs/RunServiceCommandRequest.md @@ -0,0 +1,14 @@ +# RunServiceCommandRequest + +Request to run an AI Lake Service Command + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**context** | **{str: (str, none_type)}, none_type** | The context to pass to the command | [optional] +**payload** | [**JsonNode**](JsonNode.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/SearchKnowledgeResponseDto.md b/gooddata-api-client/docs/SearchKnowledgeResponseDto.md new file mode 100644 index 000000000..939d9f028 --- /dev/null +++ b/gooddata-api-client/docs/SearchKnowledgeResponseDto.md @@ -0,0 +1,13 @@ +# SearchKnowledgeResponseDto + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**results** | [**[KnowledgeSearchResultDto]**](KnowledgeSearchResultDto.md) | | +**statistics** | [**SearchStatisticsDto**](SearchStatisticsDto.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/SearchStatisticsDto.md b/gooddata-api-client/docs/SearchStatisticsDto.md new file mode 100644 index 000000000..def7dbf8d --- /dev/null +++ b/gooddata-api-client/docs/SearchStatisticsDto.md @@ -0,0 +1,13 @@ +# SearchStatisticsDto + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**average_similarity_score** | **float** | | +**total_results** | **int** | | +**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/ServiceInfo.md b/gooddata-api-client/docs/ServiceInfo.md new file mode 100644 index 000000000..14500d661 --- /dev/null +++ b/gooddata-api-client/docs/ServiceInfo.md @@ -0,0 +1,14 @@ +# ServiceInfo + +Non-sensitive metadata for an AI Lake pipeline + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**name** | **str** | Human-readable name of the service | +**service_id** | **str** | Internal identifier for the service configuration (UUID) | +**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/SetCertificationRequest.md b/gooddata-api-client/docs/SetCertificationRequest.md new file mode 100644 index 000000000..d88fac78a --- /dev/null +++ b/gooddata-api-client/docs/SetCertificationRequest.md @@ -0,0 +1,16 @@ +# SetCertificationRequest + +Request to set or clear the certification of a workspace entity. + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**id** | **str** | ID of the entity. | +**type** | **str** | Type of the entity. | +**message** | **str, none_type** | Optional message associated with the certification. | [optional] +**status** | **str, none_type** | Certification status of the entity. | [optional] if omitted the server will use the default value of "CERTIFIED" +**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 d1d7e2e81..ad6b146b9 100644 --- a/gooddata-api-client/docs/SmartFunctionsApi.md +++ b/gooddata-api-client/docs/SmartFunctionsApi.md @@ -16,11 +16,15 @@ Method | HTTP request | Description [**created_by**](SmartFunctionsApi.md#created_by) | **GET** /api/v1/actions/workspaces/{workspaceId}/ai/analyticsCatalog/createdBy | Get Analytics Catalog CreatedBy Users [**forecast**](SmartFunctionsApi.md#forecast) | **POST** /api/v1/actions/workspaces/{workspaceId}/execution/functions/forecast/{resultId} | (BETA) Smart functions - Forecast [**forecast_result**](SmartFunctionsApi.md#forecast_result) | **GET** /api/v1/actions/workspaces/{workspaceId}/execution/functions/forecast/result/{resultId} | (BETA) Smart functions - Forecast Result +[**generate_description**](SmartFunctionsApi.md#generate_description) | **POST** /api/v1/actions/workspaces/{workspaceId}/ai/analyticsCatalog/generateDescription | Generate Description for Analytics Object +[**generate_title**](SmartFunctionsApi.md#generate_title) | **POST** /api/v1/actions/workspaces/{workspaceId}/ai/analyticsCatalog/generateTitle | Generate Title for Analytics Object [**get_quality_issues**](SmartFunctionsApi.md#get_quality_issues) | **GET** /api/v1/actions/workspaces/{workspaceId}/ai/issues | Get Quality Issues [**get_quality_issues_calculation_status**](SmartFunctionsApi.md#get_quality_issues_calculation_status) | **GET** /api/v1/actions/workspaces/{workspaceId}/ai/issues/status/{processId} | Get Quality Issues Calculation Status [**memory_created_by_users**](SmartFunctionsApi.md#memory_created_by_users) | **GET** /api/v1/actions/workspaces/{workspaceId}/ai/memory/createdBy | Get AI Memory CreatedBy Users [**resolve_llm_endpoints**](SmartFunctionsApi.md#resolve_llm_endpoints) | **GET** /api/v1/actions/workspaces/{workspaceId}/ai/resolveLlmEndpoints | Get Active LLM Endpoints for this workspace [**tags**](SmartFunctionsApi.md#tags) | **GET** /api/v1/actions/workspaces/{workspaceId}/ai/analyticsCatalog/tags | Get Analytics Catalog Tags +[**test_llm_provider**](SmartFunctionsApi.md#test_llm_provider) | **POST** /api/v1/actions/ai/llmProvider/test | Test LLM Provider +[**test_llm_provider_by_id**](SmartFunctionsApi.md#test_llm_provider_by_id) | **POST** /api/v1/actions/ai/llmProvider/{llmProviderId}/test | Test LLM Provider By Id [**trigger_quality_issues_calculation**](SmartFunctionsApi.md#trigger_quality_issues_calculation) | **POST** /api/v1/actions/workspaces/{workspaceId}/ai/issues/triggerCheck | Trigger Quality Issues Calculation [**validate_llm_endpoint**](SmartFunctionsApi.md#validate_llm_endpoint) | **POST** /api/v1/actions/ai/llmEndpoint/test | Validate LLM Endpoint [**validate_llm_endpoint_by_id**](SmartFunctionsApi.md#validate_llm_endpoint_by_id) | **POST** /api/v1/actions/ai/llmEndpoint/{llmEndpointId}/test | Validate LLM Endpoint By Id @@ -1024,6 +1028,152 @@ No authorization required - **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) + +# **generate_description** +> GenerateDescriptionResponse generate_description(workspace_id, generate_description_request) + +Generate Description for Analytics Object + +Generates a description for the specified analytics object. Returns description and a note with details if generation was not performed. + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import smart_functions_api +from gooddata_api_client.model.generate_description_request import GenerateDescriptionRequest +from gooddata_api_client.model.generate_description_response import GenerateDescriptionResponse +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 + generate_description_request = GenerateDescriptionRequest( + object_id="object_id_example", + object_type="Visualization", + ) # GenerateDescriptionRequest | + + # example passing only required values which don't have defaults set + try: + # Generate Description for Analytics Object + api_response = api_instance.generate_description(workspace_id, generate_description_request) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling SmartFunctionsApi->generate_description: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| Workspace identifier | + **generate_description_request** | [**GenerateDescriptionRequest**](GenerateDescriptionRequest.md)| | + +### Return type + +[**GenerateDescriptionResponse**](GenerateDescriptionResponse.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) + +# **generate_title** +> GenerateTitleResponse generate_title(workspace_id, generate_title_request) + +Generate Title for Analytics Object + +Generates a title for the specified analytics object. Returns title and a note with details if generation was not performed. + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import smart_functions_api +from gooddata_api_client.model.generate_title_request import GenerateTitleRequest +from gooddata_api_client.model.generate_title_response import GenerateTitleResponse +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 + generate_title_request = GenerateTitleRequest( + object_id="object_id_example", + object_type="Visualization", + ) # GenerateTitleRequest | + + # example passing only required values which don't have defaults set + try: + # Generate Title for Analytics Object + api_response = api_instance.generate_title(workspace_id, generate_title_request) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling SmartFunctionsApi->generate_title: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workspace_id** | **str**| Workspace identifier | + **generate_title_request** | [**GenerateTitleRequest**](GenerateTitleRequest.md)| | + +### Return type + +[**GenerateTitleResponse**](GenerateTitleResponse.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: application/json + + ### HTTP response details | Status code | Description | Response headers | @@ -1361,6 +1511,149 @@ No authorization required - **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) + +# **test_llm_provider** +> TestLlmProviderResponse test_llm_provider(test_llm_provider_definition_request) + +Test LLM Provider + +Tests LLM provider connectivity with a full definition. + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import smart_functions_api +from gooddata_api_client.model.test_llm_provider_response import TestLlmProviderResponse +from gooddata_api_client.model.test_llm_provider_definition_request import TestLlmProviderDefinitionRequest +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) + test_llm_provider_definition_request = TestLlmProviderDefinitionRequest( + models=[ + LlmModel( + family="OPENAI", + id="id_example", + ), + ], + provider_config=TestLlmProviderDefinitionRequestProviderConfig(None), + ) # TestLlmProviderDefinitionRequest | + + # example passing only required values which don't have defaults set + try: + # Test LLM Provider + api_response = api_instance.test_llm_provider(test_llm_provider_definition_request) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling SmartFunctionsApi->test_llm_provider: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **test_llm_provider_definition_request** | [**TestLlmProviderDefinitionRequest**](TestLlmProviderDefinitionRequest.md)| | + +### Return type + +[**TestLlmProviderResponse**](TestLlmProviderResponse.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) + +# **test_llm_provider_by_id** +> TestLlmProviderResponse test_llm_provider_by_id(llm_provider_id) + +Test LLM Provider By Id + +Tests an existing LLM provider connectivity by its ID. + +### Example + + +```python +import time +import gooddata_api_client +from gooddata_api_client.api import smart_functions_api +from gooddata_api_client.model.test_llm_provider_response import TestLlmProviderResponse +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) + llm_provider_id = "llmProviderId_example" # str | + + # example passing only required values which don't have defaults set + try: + # Test LLM Provider By Id + api_response = api_instance.test_llm_provider_by_id(llm_provider_id) + pprint(api_response) + except gooddata_api_client.ApiException as e: + print("Exception when calling SmartFunctionsApi->test_llm_provider_by_id: %s\n" % e) +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **llm_provider_id** | **str**| | + +### Return type + +[**TestLlmProviderResponse**](TestLlmProviderResponse.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + + ### HTTP response details | Status code | Description | Response headers | diff --git a/gooddata-api-client/docs/SucceededOperation.md b/gooddata-api-client/docs/SucceededOperation.md index cad6b1b9c..90b88c13c 100644 --- a/gooddata-api-client/docs/SucceededOperation.md +++ b/gooddata-api-client/docs/SucceededOperation.md @@ -6,7 +6,7 @@ Operation that has succeeded Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **id** | **str** | Id of the operation | -**kind** | **str** | Type of the long-running operation. * `provision-database` — Provisioning of an AI Lake database. * `deprovision-database` — Deprovisioning (deletion) of an AI Lake database. | +**kind** | **str** | Type of the long-running operation. * `provision-database` — Provisioning of an AI Lake database. * `deprovision-database` — Deprovisioning (deletion) of an AI Lake database. * `run-service-command` — Running a command in a particular AI Lake service. | **status** | **str** | | **result** | **{str: (bool, date, datetime, dict, float, int, list, str, none_type)}** | Operation-specific result payload, can be missing for operations like delete | [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/TestLlmProviderDefinitionRequest.md b/gooddata-api-client/docs/TestLlmProviderDefinitionRequest.md new file mode 100644 index 000000000..3045f7af8 --- /dev/null +++ b/gooddata-api-client/docs/TestLlmProviderDefinitionRequest.md @@ -0,0 +1,13 @@ +# TestLlmProviderDefinitionRequest + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**provider_config** | [**TestLlmProviderDefinitionRequestProviderConfig**](TestLlmProviderDefinitionRequestProviderConfig.md) | | +**models** | [**[LlmModel]**](LlmModel.md) | Models to test. | [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/TestLlmProviderDefinitionRequestProviderConfig.md b/gooddata-api-client/docs/TestLlmProviderDefinitionRequestProviderConfig.md new file mode 100644 index 000000000..d28dabb8d --- /dev/null +++ b/gooddata-api-client/docs/TestLlmProviderDefinitionRequestProviderConfig.md @@ -0,0 +1,17 @@ +# TestLlmProviderDefinitionRequestProviderConfig + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**base_url** | **str, none_type** | Custom base URL for OpenAI API. | [optional] if omitted the server will use the default value of "https://api.openai.com" +**organization** | **str, none_type** | OpenAI organization ID. | [optional] +**auth** | [**OpenAiProviderAuth**](OpenAiProviderAuth.md) | | [optional] +**region** | **str** | AWS region for Bedrock. | [optional] +**type** | **str** | Provider type. | [optional] if omitted the server will use the default value of "OPENAI" +**endpoint** | **str** | Azure AI inference endpoint 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/TestLlmProviderResponse.md b/gooddata-api-client/docs/TestLlmProviderResponse.md new file mode 100644 index 000000000..c61fc81da --- /dev/null +++ b/gooddata-api-client/docs/TestLlmProviderResponse.md @@ -0,0 +1,14 @@ +# TestLlmProviderResponse + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**model_results** | [**[ModelTestResult]**](ModelTestResult.md) | Per-model test results. | +**provider_message** | **str** | Message about the provider connectivity test. | +**provider_reachable** | **bool** | Whether the LLM provider is reachable. | +**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/UpsertKnowledgeDocumentRequestDto.md b/gooddata-api-client/docs/UpsertKnowledgeDocumentRequestDto.md new file mode 100644 index 000000000..9b3b3d247 --- /dev/null +++ b/gooddata-api-client/docs/UpsertKnowledgeDocumentRequestDto.md @@ -0,0 +1,16 @@ +# UpsertKnowledgeDocumentRequestDto + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**content** | **str** | | +**filename** | **str** | | +**page_boundaries** | **[int]** | | [optional] +**scopes** | **[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/UpsertKnowledgeDocumentResponseDto.md b/gooddata-api-client/docs/UpsertKnowledgeDocumentResponseDto.md new file mode 100644 index 000000000..c9f448fd7 --- /dev/null +++ b/gooddata-api-client/docs/UpsertKnowledgeDocumentResponseDto.md @@ -0,0 +1,15 @@ +# UpsertKnowledgeDocumentResponseDto + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**filename** | **str** | | +**message** | **str** | | +**num_chunks** | **int** | | +**success** | **bool** | | +**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/VisualizationConfig.md b/gooddata-api-client/docs/VisualizationConfig.md new file mode 100644 index 000000000..18e35d64b --- /dev/null +++ b/gooddata-api-client/docs/VisualizationConfig.md @@ -0,0 +1,16 @@ +# VisualizationConfig + +Visualization config for smart-function rendering. + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**anomaly_detection** | [**AnomalyDetectionConfig**](AnomalyDetectionConfig.md) | | [optional] +**clustering** | [**ClusteringConfig**](ClusteringConfig.md) | | [optional] +**forecast** | [**ForecastConfig**](ForecastConfig.md) | | [optional] +**what_if** | [**WhatIfScenarioConfig**](WhatIfScenarioConfig.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/VisualizationObjectApi.md b/gooddata-api-client/docs/VisualizationObjectApi.md index 0568dec14..c18722af1 100644 --- a/gooddata-api-client/docs/VisualizationObjectApi.md +++ b/gooddata-api-client/docs/VisualizationObjectApi.md @@ -57,7 +57,7 @@ with gooddata_api_client.ApiClient() as api_client: ), ) # JsonApiVisualizationObjectPostOptionalIdDocument | include = [ - "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", ] # [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", @@ -217,7 +217,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 = "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) include = [ - "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", ] # [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 @@ -313,7 +313,7 @@ with gooddata_api_client.ApiClient() as api_client: object_id = "objectId_example" # str | 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) include = [ - "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", ] # [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 = [ @@ -418,7 +418,7 @@ with gooddata_api_client.ApiClient() as api_client: ) # JsonApiVisualizationObjectPatchDocument | 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) include = [ - "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", ] # [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 @@ -617,7 +617,7 @@ with gooddata_api_client.ApiClient() as api_client: ) # JsonApiVisualizationObjectInDocument | 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) include = [ - "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", ] # [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/WhatIfMeasureAdjustmentConfig.md b/gooddata-api-client/docs/WhatIfMeasureAdjustmentConfig.md new file mode 100644 index 000000000..9022aa476 --- /dev/null +++ b/gooddata-api-client/docs/WhatIfMeasureAdjustmentConfig.md @@ -0,0 +1,15 @@ +# WhatIfMeasureAdjustmentConfig + +Measure adjustments for this scenario + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**metric_id** | **str** | ID of the metric or fact to adjust | +**metric_type** | **str** | Type: metric or fact | +**scenario_maql** | **str** | Alternative MAQL expression for this scenario | +**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/WhatIfScenarioConfig.md b/gooddata-api-client/docs/WhatIfScenarioConfig.md new file mode 100644 index 000000000..d0dc7963f --- /dev/null +++ b/gooddata-api-client/docs/WhatIfScenarioConfig.md @@ -0,0 +1,14 @@ +# WhatIfScenarioConfig + +What-if scenario configuration. + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**include_baseline** | **bool** | Whether baseline (unmodified) values are included | +**scenarios** | [**[WhatIfScenarioItem]**](WhatIfScenarioItem.md) | Scenarios with alternative measure calculations | +**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/WhatIfScenarioItem.md b/gooddata-api-client/docs/WhatIfScenarioItem.md new file mode 100644 index 000000000..f292bafb7 --- /dev/null +++ b/gooddata-api-client/docs/WhatIfScenarioItem.md @@ -0,0 +1,14 @@ +# WhatIfScenarioItem + +Scenarios with alternative measure calculations + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**adjustments** | [**[WhatIfMeasureAdjustmentConfig]**](WhatIfMeasureAdjustmentConfig.md) | Measure adjustments for this scenario | +**label** | **str** | Human-readable scenario label | +**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 ff12c7c23..e914a559c 100644 --- a/gooddata-api-client/docs/WorkspaceObjectControllerApi.md +++ b/gooddata-api-client/docs/WorkspaceObjectControllerApi.md @@ -182,7 +182,7 @@ with gooddata_api_client.ApiClient() as api_client: ), ) # JsonApiAnalyticalDashboardPostOptionalIdDocument | include = [ - "createdBy,modifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", + "createdBy,modifiedBy,certifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", ] # [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=permissions,origin,accessInfo,all", @@ -488,6 +488,21 @@ with gooddata_api_client.ApiClient() as api_client: filters=[ FilterDefinition(), ], + measure_definition_overrides=[ + MetricDefinitionOverride( + definition=InlineMeasureDefinition( + inline=InlineMeasureDefinitionInline( + maql="maql_example", + ), + ), + item=AfmObjectIdentifierCore( + identifier=AfmObjectIdentifierCoreIdentifier( + id="sample_item.price", + type="attribute", + ), + ), + ), + ], measures=[ MeasureItem( definition=MeasureDefinition(), @@ -1444,7 +1459,7 @@ with gooddata_api_client.ApiClient() as api_client: ), ) # JsonApiMetricPostOptionalIdDocument | include = [ - "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", ] # [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", @@ -1651,7 +1666,7 @@ with gooddata_api_client.ApiClient() as api_client: ), ) # JsonApiVisualizationObjectPostOptionalIdDocument | include = [ - "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", ] # [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", @@ -3323,7 +3338,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 = "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) include = [ - "createdBy,modifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", + "createdBy,modifiedBy,certifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", ] # [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 @@ -4659,7 +4674,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 = "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) include = [ - "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", ] # [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 @@ -4851,7 +4866,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 = "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) include = [ - "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", ] # [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 @@ -5317,7 +5332,7 @@ with gooddata_api_client.ApiClient() as api_client: object_id = "objectId_example" # str | 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) include = [ - "createdBy,modifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", + "createdBy,modifiedBy,certifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", ] # [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 = [ @@ -6537,7 +6552,7 @@ with gooddata_api_client.ApiClient() as api_client: object_id = "objectId_example" # str | 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) include = [ - "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", ] # [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 = [ @@ -6713,7 +6728,7 @@ with gooddata_api_client.ApiClient() as api_client: object_id = "objectId_example" # str | 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) include = [ - "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", ] # [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 = [ @@ -7078,7 +7093,7 @@ with gooddata_api_client.ApiClient() as api_client: ) # JsonApiAnalyticalDashboardPatchDocument | 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) include = [ - "createdBy,modifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", + "createdBy,modifiedBy,certifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", ] # [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 @@ -7485,6 +7500,21 @@ with gooddata_api_client.ApiClient() as api_client: filters=[ FilterDefinition(), ], + measure_definition_overrides=[ + MetricDefinitionOverride( + definition=InlineMeasureDefinition( + inline=InlineMeasureDefinitionInline( + maql="maql_example", + ), + ), + item=AfmObjectIdentifierCore( + identifier=AfmObjectIdentifierCoreIdentifier( + id="sample_item.price", + type="attribute", + ), + ), + ), + ], measures=[ MeasureItem( definition=MeasureDefinition(), @@ -8737,7 +8767,7 @@ with gooddata_api_client.ApiClient() as api_client: ) # JsonApiMetricPatchDocument | 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) include = [ - "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", ] # [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 @@ -8944,7 +8974,7 @@ with gooddata_api_client.ApiClient() as api_client: ) # JsonApiVisualizationObjectPatchDocument | 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) include = [ - "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", ] # [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 @@ -11515,7 +11545,7 @@ with gooddata_api_client.ApiClient() as api_client: ) # JsonApiAnalyticalDashboardInDocument | 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) include = [ - "createdBy,modifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", + "createdBy,modifiedBy,certifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", ] # [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 @@ -11820,6 +11850,21 @@ with gooddata_api_client.ApiClient() as api_client: filters=[ FilterDefinition(), ], + measure_definition_overrides=[ + MetricDefinitionOverride( + definition=InlineMeasureDefinition( + inline=InlineMeasureDefinitionInline( + maql="maql_example", + ), + ), + item=AfmObjectIdentifierCore( + identifier=AfmObjectIdentifierCoreIdentifier( + id="sample_item.price", + type="attribute", + ), + ), + ), + ], measures=[ MeasureItem( definition=MeasureDefinition(), @@ -12781,7 +12826,7 @@ with gooddata_api_client.ApiClient() as api_client: ) # JsonApiMetricInDocument | 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) include = [ - "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", ] # [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 @@ -12988,7 +13033,7 @@ with gooddata_api_client.ApiClient() as api_client: ) # JsonApiVisualizationObjectInDocument | 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) include = [ - "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", ] # [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/WorkspacesDeclarativeAPIsApi.md b/gooddata-api-client/docs/WorkspacesDeclarativeAPIsApi.md index e0a2d41c1..a700e3ff5 100644 --- a/gooddata-api-client/docs/WorkspacesDeclarativeAPIsApi.md +++ b/gooddata-api-client/docs/WorkspacesDeclarativeAPIsApi.md @@ -200,6 +200,13 @@ with gooddata_api_client.ApiClient() as api_client: ], analytical_dashboards=[ DeclarativeAnalyticalDashboard( + certification="CERTIFIED", + certification_message="certification_message_example", + certified_at="0480-72-88 80:01", + certified_by=DeclarativeUserIdentifier( + id="employee123", + type="user", + ), content=JsonNode(), created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( @@ -224,14 +231,14 @@ with gooddata_api_client.ApiClient() as api_client: attribute_hierarchies=[ DeclarativeAttributeHierarchy( content=JsonNode(), - created_at="["2023-07-20 12:30"]", + created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( id="employee123", type="user", ), description="Simple number for total goods in current production.", id="hierarchy-1", - modified_at="["2023-07-20 12:30"]", + modified_at="2023-07-20 12:30", modified_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -243,14 +250,14 @@ with gooddata_api_client.ApiClient() as api_client: dashboard_plugins=[ DeclarativeDashboardPlugin( content=JsonNode(), - created_at="["2023-07-20 12:30"]", + created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( id="employee123", type="user", ), description="Three dimensional view of data.", id="dashboard-plugin-1", - modified_at="["2023-07-20 12:30"]", + modified_at="2023-07-20 12:30", modified_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -261,14 +268,14 @@ with gooddata_api_client.ApiClient() as api_client: ], export_definitions=[ DeclarativeExportDefinition( - created_at="["2023-07-20 12:30"]", + created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( id="employee123", type="user", ), description="Simple number for total goods in current production.", id="export-definition-1", - modified_at="["2023-07-20 12:30"]", + modified_at="2023-07-20 12:30", modified_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -313,8 +320,15 @@ with gooddata_api_client.ApiClient() as api_client: ], metrics=[ DeclarativeMetric( + certification="CERTIFIED", + certification_message="certification_message_example", + certified_at="0480-72-88 80:01", + certified_by=DeclarativeUserIdentifier( + id="employee123", + type="user", + ), content=JsonNode(), - created_at="["2023-07-20 12:30"]", + created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -323,7 +337,7 @@ with gooddata_api_client.ApiClient() as api_client: id="total-sales", is_hidden=False, is_hidden_from_kda=False, - modified_at="["2023-07-20 12:30"]", + modified_at="2023-07-20 12:30", modified_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -334,8 +348,15 @@ with gooddata_api_client.ApiClient() as api_client: ], visualization_objects=[ DeclarativeVisualizationObject( + certification="CERTIFIED", + certification_message="certification_message_example", + certified_at="0480-72-88 80:01", + certified_by=DeclarativeUserIdentifier( + id="employee123", + type="user", + ), content=JsonNode(), - created_at="["2023-07-20 12:30"]", + created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -343,7 +364,7 @@ with gooddata_api_client.ApiClient() as api_client: description="Simple number for total goods in current production.", id="visualization-1", is_hidden=False, - modified_at="["2023-07-20 12:30"]", + modified_at="2023-07-20 12:30", modified_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -772,6 +793,21 @@ with gooddata_api_client.ApiClient() as api_client: filters=[ FilterDefinition(), ], + measure_definition_overrides=[ + MetricDefinitionOverride( + definition=InlineMeasureDefinition( + inline=InlineMeasureDefinitionInline( + maql="maql_example", + ), + ), + item=AfmObjectIdentifierCore( + identifier=AfmObjectIdentifierCoreIdentifier( + id="sample_item.price", + type="attribute", + ), + ), + ), + ], measures=[ MeasureItem( definition=MeasureDefinition(), @@ -944,6 +980,13 @@ with gooddata_api_client.ApiClient() as api_client: ], analytical_dashboards=[ DeclarativeAnalyticalDashboard( + certification="CERTIFIED", + certification_message="certification_message_example", + certified_at="0480-72-88 80:01", + certified_by=DeclarativeUserIdentifier( + id="employee123", + type="user", + ), content=JsonNode(), created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( @@ -968,14 +1011,14 @@ with gooddata_api_client.ApiClient() as api_client: attribute_hierarchies=[ DeclarativeAttributeHierarchy( content=JsonNode(), - created_at="["2023-07-20 12:30"]", + created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( id="employee123", type="user", ), description="Simple number for total goods in current production.", id="hierarchy-1", - modified_at="["2023-07-20 12:30"]", + modified_at="2023-07-20 12:30", modified_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -987,14 +1030,14 @@ with gooddata_api_client.ApiClient() as api_client: dashboard_plugins=[ DeclarativeDashboardPlugin( content=JsonNode(), - created_at="["2023-07-20 12:30"]", + created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( id="employee123", type="user", ), description="Three dimensional view of data.", id="dashboard-plugin-1", - modified_at="["2023-07-20 12:30"]", + modified_at="2023-07-20 12:30", modified_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -1005,14 +1048,14 @@ with gooddata_api_client.ApiClient() as api_client: ], export_definitions=[ DeclarativeExportDefinition( - created_at="["2023-07-20 12:30"]", + created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( id="employee123", type="user", ), description="Simple number for total goods in current production.", id="export-definition-1", - modified_at="["2023-07-20 12:30"]", + modified_at="2023-07-20 12:30", modified_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -1057,8 +1100,15 @@ with gooddata_api_client.ApiClient() as api_client: ], metrics=[ DeclarativeMetric( + certification="CERTIFIED", + certification_message="certification_message_example", + certified_at="0480-72-88 80:01", + certified_by=DeclarativeUserIdentifier( + id="employee123", + type="user", + ), content=JsonNode(), - created_at="["2023-07-20 12:30"]", + created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -1067,7 +1117,7 @@ with gooddata_api_client.ApiClient() as api_client: id="total-sales", is_hidden=False, is_hidden_from_kda=False, - modified_at="["2023-07-20 12:30"]", + modified_at="2023-07-20 12:30", modified_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -1078,8 +1128,15 @@ with gooddata_api_client.ApiClient() as api_client: ], visualization_objects=[ DeclarativeVisualizationObject( + certification="CERTIFIED", + certification_message="certification_message_example", + certified_at="0480-72-88 80:01", + certified_by=DeclarativeUserIdentifier( + id="employee123", + type="user", + ), content=JsonNode(), - created_at="["2023-07-20 12:30"]", + created_at="2023-07-20 12:30", created_by=DeclarativeUserIdentifier( id="employee123", type="user", @@ -1087,7 +1144,7 @@ with gooddata_api_client.ApiClient() as api_client: description="Simple number for total goods in current production.", id="visualization-1", is_hidden=False, - modified_at="["2023-07-20 12:30"]", + modified_at="2023-07-20 12:30", modified_by=DeclarativeUserIdentifier( id="employee123", type="user", 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 a64e922f4..a578be876 100644 --- a/gooddata-api-client/gooddata_api_client/api/actions_api.py +++ b/gooddata-api-client/gooddata_api_client/api/actions_api.py @@ -48,11 +48,14 @@ from gooddata_api_client.model.clustering_result import ClusteringResult from gooddata_api_client.model.column_statistics_request import ColumnStatisticsRequest from gooddata_api_client.model.column_statistics_response import ColumnStatisticsResponse +from gooddata_api_client.model.create_knowledge_document_request_dto import CreateKnowledgeDocumentRequestDto +from gooddata_api_client.model.create_knowledge_document_response_dto import CreateKnowledgeDocumentResponseDto from gooddata_api_client.model.dashboard_permissions import DashboardPermissions from gooddata_api_client.model.dashboard_tabular_export_request import DashboardTabularExportRequest from gooddata_api_client.model.data_source_permission_assignment import DataSourcePermissionAssignment from gooddata_api_client.model.data_source_schemata import DataSourceSchemata from gooddata_api_client.model.declarative_model import DeclarativeModel +from gooddata_api_client.model.delete_knowledge_document_response_dto import DeleteKnowledgeDocumentResponseDto from gooddata_api_client.model.dependent_entities_request import DependentEntitiesRequest from gooddata_api_client.model.dependent_entities_response import DependentEntitiesResponse from gooddata_api_client.model.elements_request import ElementsRequest @@ -62,7 +65,11 @@ from gooddata_api_client.model.export_response import ExportResponse from gooddata_api_client.model.forecast_request import ForecastRequest from gooddata_api_client.model.forecast_result import ForecastResult +from gooddata_api_client.model.generate_description_request import GenerateDescriptionRequest +from gooddata_api_client.model.generate_description_response import GenerateDescriptionResponse from gooddata_api_client.model.generate_ldm_request import GenerateLdmRequest +from gooddata_api_client.model.generate_title_request import GenerateTitleRequest +from gooddata_api_client.model.generate_title_response import GenerateTitleResponse from gooddata_api_client.model.get_image_export202_response_inner import GetImageExport202ResponseInner from gooddata_api_client.model.get_quality_issues_response import GetQualityIssuesResponse from gooddata_api_client.model.hierarchy_object_identification import HierarchyObjectIdentification @@ -71,6 +78,8 @@ from gooddata_api_client.model.key_drivers_request import KeyDriversRequest from gooddata_api_client.model.key_drivers_response import KeyDriversResponse from gooddata_api_client.model.key_drivers_result import KeyDriversResult +from gooddata_api_client.model.knowledge_document_metadata_dto import KnowledgeDocumentMetadataDto +from gooddata_api_client.model.list_knowledge_documents_response_dto import ListKnowledgeDocumentsResponseDto 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.memory_item_created_by_users import MemoryItemCreatedByUsers @@ -80,6 +89,7 @@ from gooddata_api_client.model.outlier_detection_request import OutlierDetectionRequest from gooddata_api_client.model.outlier_detection_response import OutlierDetectionResponse from gooddata_api_client.model.outlier_detection_result import OutlierDetectionResult +from gooddata_api_client.model.patch_knowledge_document_request_dto import PatchKnowledgeDocumentRequestDto from gooddata_api_client.model.platform_usage import PlatformUsage from gooddata_api_client.model.platform_usage_request import PlatformUsageRequest from gooddata_api_client.model.quality_issues_calculation_status_response import QualityIssuesCalculationStatusResponse @@ -92,18 +102,24 @@ from gooddata_api_client.model.scan_result_pdm import ScanResultPdm from gooddata_api_client.model.scan_sql_request import ScanSqlRequest from gooddata_api_client.model.scan_sql_response import ScanSqlResponse +from gooddata_api_client.model.search_knowledge_response_dto import SearchKnowledgeResponseDto from gooddata_api_client.model.search_request import SearchRequest from gooddata_api_client.model.search_result import SearchResult +from gooddata_api_client.model.set_certification_request import SetCertificationRequest from gooddata_api_client.model.slides_export_request import SlidesExportRequest from gooddata_api_client.model.smart_function_response import SmartFunctionResponse from gooddata_api_client.model.switch_identity_provider_request import SwitchIdentityProviderRequest from gooddata_api_client.model.tabular_export_request import TabularExportRequest from gooddata_api_client.model.test_definition_request import TestDefinitionRequest from gooddata_api_client.model.test_destination_request import TestDestinationRequest +from gooddata_api_client.model.test_llm_provider_definition_request import TestLlmProviderDefinitionRequest +from gooddata_api_client.model.test_llm_provider_response import TestLlmProviderResponse from gooddata_api_client.model.test_request import TestRequest from gooddata_api_client.model.test_response import TestResponse from gooddata_api_client.model.trigger_automation_request import TriggerAutomationRequest from gooddata_api_client.model.trigger_quality_issues_calculation_response import TriggerQualityIssuesCalculationResponse +from gooddata_api_client.model.upsert_knowledge_document_request_dto import UpsertKnowledgeDocumentRequestDto +from gooddata_api_client.model.upsert_knowledge_document_response_dto import UpsertKnowledgeDocumentResponseDto from gooddata_api_client.model.validate_llm_endpoint_by_id_request import ValidateLLMEndpointByIdRequest from gooddata_api_client.model.validate_llm_endpoint_request import ValidateLLMEndpointRequest from gooddata_api_client.model.validate_llm_endpoint_response import ValidateLLMEndpointResponse @@ -1528,6 +1544,69 @@ def __init__(self, api_client=None): }, api_client=api_client ) + self.create_document_endpoint = _Endpoint( + settings={ + 'response_type': (CreateKnowledgeDocumentResponseDto,), + 'auth': [], + 'endpoint_path': '/api/v1/actions/workspaces/{workspaceId}/ai/knowledge/documents', + 'operation_id': 'create_document', + 'http_method': 'POST', + 'servers': None, + }, + params_map={ + 'all': [ + 'workspace_id', + 'create_knowledge_document_request_dto', + ], + 'required': [ + 'workspace_id', + 'create_knowledge_document_request_dto', + ], + '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,), + 'create_knowledge_document_request_dto': + (CreateKnowledgeDocumentRequestDto,), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + }, + 'location_map': { + 'workspace_id': 'path', + 'create_knowledge_document_request_dto': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/json' + ], + 'content_type': [ + 'application/json' + ] + }, + api_client=api_client + ) self.create_image_export_endpoint = _Endpoint( settings={ 'response_type': (ExportResponse,), @@ -1929,6 +2008,68 @@ def __init__(self, api_client=None): }, api_client=api_client ) + self.delete_document_endpoint = _Endpoint( + settings={ + 'response_type': (DeleteKnowledgeDocumentResponseDto,), + 'auth': [], + 'endpoint_path': '/api/v1/actions/workspaces/{workspaceId}/ai/knowledge/documents/{filename}', + 'operation_id': 'delete_document', + 'http_method': 'DELETE', + 'servers': None, + }, + params_map={ + 'all': [ + 'workspace_id', + 'filename', + ], + 'required': [ + 'workspace_id', + 'filename', + ], + '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,), + 'filename': + (str,), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + 'filename': 'filename', + }, + 'location_map': { + 'workspace_id': 'path', + 'filename': 'path', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/json' + ], + 'content_type': [], + }, + api_client=api_client + ) self.delete_organization_automations_endpoint = _Endpoint( settings={ 'response_type': None, @@ -2263,6 +2404,69 @@ def __init__(self, api_client=None): }, api_client=api_client ) + self.generate_description_endpoint = _Endpoint( + settings={ + 'response_type': (GenerateDescriptionResponse,), + 'auth': [], + 'endpoint_path': '/api/v1/actions/workspaces/{workspaceId}/ai/analyticsCatalog/generateDescription', + 'operation_id': 'generate_description', + 'http_method': 'POST', + 'servers': None, + }, + params_map={ + 'all': [ + 'workspace_id', + 'generate_description_request', + ], + 'required': [ + 'workspace_id', + 'generate_description_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,), + 'generate_description_request': + (GenerateDescriptionRequest,), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + }, + 'location_map': { + 'workspace_id': 'path', + 'generate_description_request': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/json' + ], + 'content_type': [ + 'application/json' + ] + }, + api_client=api_client + ) self.generate_logical_model_endpoint = _Endpoint( settings={ 'response_type': (DeclarativeModel,), @@ -2375,6 +2579,69 @@ def __init__(self, api_client=None): }, api_client=api_client ) + self.generate_title_endpoint = _Endpoint( + settings={ + 'response_type': (GenerateTitleResponse,), + 'auth': [], + 'endpoint_path': '/api/v1/actions/workspaces/{workspaceId}/ai/analyticsCatalog/generateTitle', + 'operation_id': 'generate_title', + 'http_method': 'POST', + 'servers': None, + }, + params_map={ + 'all': [ + 'workspace_id', + 'generate_title_request', + ], + 'required': [ + 'workspace_id', + 'generate_title_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,), + 'generate_title_request': + (GenerateTitleRequest,), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + }, + 'location_map': { + 'workspace_id': 'path', + 'generate_title_request': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/json' + ], + 'content_type': [ + 'application/json' + ] + }, + api_client=api_client + ) self.get_data_source_schemata_endpoint = _Endpoint( settings={ 'response_type': (DataSourceSchemata,), @@ -2536,68 +2803,74 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.get_exported_file_endpoint = _Endpoint( + self.get_document_endpoint = _Endpoint( settings={ - 'response_type': (file_type,), + 'response_type': (KnowledgeDocumentMetadataDto,), 'auth': [], - 'endpoint_path': '/api/v1/actions/workspaces/{workspaceId}/export/visual/{exportId}', - 'operation_id': 'get_exported_file', + 'endpoint_path': '/api/v1/actions/workspaces/{workspaceId}/ai/knowledge/documents/{filename}', + 'operation_id': 'get_document', 'http_method': 'GET', 'servers': None, }, params_map={ 'all': [ 'workspace_id', - 'export_id', + 'filename', ], 'required': [ 'workspace_id', - 'export_id', + 'filename', ], '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,), - 'export_id': + 'filename': (str,), }, 'attribute_map': { 'workspace_id': 'workspaceId', - 'export_id': 'exportId', + 'filename': 'filename', }, 'location_map': { 'workspace_id': 'path', - 'export_id': 'path', + 'filename': 'path', }, 'collection_format_map': { } }, headers_map={ 'accept': [ - 'application/pdf', - 'application/zip' + 'application/json' ], 'content_type': [], }, api_client=api_client ) - self.get_image_export_endpoint = _Endpoint( + self.get_exported_file_endpoint = _Endpoint( settings={ 'response_type': (file_type,), 'auth': [], - 'endpoint_path': '/api/v1/actions/workspaces/{workspaceId}/export/image/{exportId}', - 'operation_id': 'get_image_export', + 'endpoint_path': '/api/v1/actions/workspaces/{workspaceId}/export/visual/{exportId}', + 'operation_id': 'get_exported_file', 'http_method': 'GET', 'servers': None, }, @@ -2641,18 +2914,19 @@ def __init__(self, api_client=None): }, headers_map={ 'accept': [ - 'image/png' + 'application/pdf', + 'application/zip' ], 'content_type': [], }, api_client=api_client ) - self.get_image_export_metadata_endpoint = _Endpoint( + self.get_image_export_endpoint = _Endpoint( settings={ - 'response_type': None, + 'response_type': (file_type,), 'auth': [], - 'endpoint_path': '/api/v1/actions/workspaces/{workspaceId}/export/image/{exportId}/metadata', - 'operation_id': 'get_image_export_metadata', + 'endpoint_path': '/api/v1/actions/workspaces/{workspaceId}/export/image/{exportId}', + 'operation_id': 'get_image_export', 'http_method': 'GET', 'servers': None, }, @@ -2696,17 +2970,72 @@ def __init__(self, api_client=None): }, headers_map={ 'accept': [ - 'application/json' + 'image/png' ], 'content_type': [], }, api_client=api_client ) - self.get_metadata_endpoint = _Endpoint( + self.get_image_export_metadata_endpoint = _Endpoint( settings={ 'response_type': None, 'auth': [], - 'endpoint_path': '/api/v1/actions/workspaces/{workspaceId}/export/visual/{exportId}/metadata', + 'endpoint_path': '/api/v1/actions/workspaces/{workspaceId}/export/image/{exportId}/metadata', + 'operation_id': 'get_image_export_metadata', + 'http_method': 'GET', + 'servers': None, + }, + params_map={ + 'all': [ + 'workspace_id', + 'export_id', + ], + 'required': [ + 'workspace_id', + 'export_id', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'workspace_id': + (str,), + 'export_id': + (str,), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + 'export_id': 'exportId', + }, + 'location_map': { + 'workspace_id': 'path', + 'export_id': 'path', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/json' + ], + 'content_type': [], + }, + api_client=api_client + ) + self.get_metadata_endpoint = _Endpoint( + settings={ + 'response_type': None, + 'auth': [], + 'endpoint_path': '/api/v1/actions/workspaces/{workspaceId}/export/visual/{exportId}/metadata', 'operation_id': 'get_metadata', 'http_method': 'GET', 'servers': None, @@ -3476,6 +3805,83 @@ def __init__(self, api_client=None): }, api_client=api_client ) + self.list_documents_endpoint = _Endpoint( + settings={ + 'response_type': (ListKnowledgeDocumentsResponseDto,), + 'auth': [], + 'endpoint_path': '/api/v1/actions/workspaces/{workspaceId}/ai/knowledge/documents', + 'operation_id': 'list_documents', + 'http_method': 'GET', + 'servers': None, + }, + params_map={ + 'all': [ + 'workspace_id', + 'scopes', + 'size', + 'page_token', + 'meta_include', + ], + 'required': [ + 'workspace_id', + ], + '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,), + 'scopes': + ([str],), + 'size': + (int,), + 'page_token': + (str,), + 'meta_include': + (str,), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + 'scopes': 'scopes', + 'size': 'size', + 'page_token': 'pageToken', + 'meta_include': 'metaInclude', + }, + 'location_map': { + 'workspace_id': 'path', + 'scopes': 'query', + 'size': 'query', + 'page_token': 'query', + 'meta_include': 'query', + }, + 'collection_format_map': { + 'scopes': 'multi', + } + }, + headers_map={ + 'accept': [ + 'application/json' + ], + 'content_type': [], + }, + api_client=api_client + ) self.list_workspace_user_groups_endpoint = _Endpoint( settings={ 'response_type': (WorkspaceUserGroups,), @@ -4334,6 +4740,75 @@ def __init__(self, api_client=None): }, api_client=api_client ) + self.patch_document_endpoint = _Endpoint( + settings={ + 'response_type': (KnowledgeDocumentMetadataDto,), + 'auth': [], + 'endpoint_path': '/api/v1/actions/workspaces/{workspaceId}/ai/knowledge/documents/{filename}', + 'operation_id': 'patch_document', + 'http_method': 'PATCH', + 'servers': None, + }, + params_map={ + 'all': [ + 'workspace_id', + 'filename', + 'patch_knowledge_document_request_dto', + ], + 'required': [ + 'workspace_id', + 'filename', + 'patch_knowledge_document_request_dto', + ], + '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,), + 'filename': + (str,), + 'patch_knowledge_document_request_dto': + (PatchKnowledgeDocumentRequestDto,), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + 'filename': 'filename', + }, + 'location_map': { + 'workspace_id': 'path', + 'filename': 'path', + 'patch_knowledge_document_request_dto': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/json' + ], + 'content_type': [ + 'application/json' + ] + }, + api_client=api_client + ) self.pause_organization_automations_endpoint = _Endpoint( settings={ 'response_type': None, @@ -5062,75 +5537,101 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.set_translations_endpoint = _Endpoint( + self.search_knowledge_endpoint = _Endpoint( settings={ - 'response_type': None, + 'response_type': (SearchKnowledgeResponseDto,), 'auth': [], - 'endpoint_path': '/api/v1/actions/workspaces/{workspaceId}/translations/set', - 'operation_id': 'set_translations', - 'http_method': 'POST', + 'endpoint_path': '/api/v1/actions/workspaces/{workspaceId}/ai/knowledge/search', + 'operation_id': 'search_knowledge', + 'http_method': 'GET', 'servers': None, }, params_map={ 'all': [ 'workspace_id', - 'xliff', + 'query', + 'limit', + 'min_score', + 'scopes', ], 'required': [ 'workspace_id', - 'xliff', + 'query', ], '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,), - 'xliff': - (Xliff,), + 'query': + (str,), + 'limit': + (int,), + 'min_score': + (float,), + 'scopes': + ([str],), }, 'attribute_map': { 'workspace_id': 'workspaceId', + 'query': 'query', + 'limit': 'limit', + 'min_score': 'minScore', + 'scopes': 'scopes', }, 'location_map': { 'workspace_id': 'path', - 'xliff': 'body', + 'query': 'query', + 'limit': 'query', + 'min_score': 'query', + 'scopes': 'query', }, 'collection_format_map': { + 'scopes': 'multi', } }, headers_map={ - 'accept': [], - 'content_type': [ - 'application/xml' - ] + 'accept': [ + 'application/json' + ], + 'content_type': [], }, api_client=api_client ) - self.switch_active_identity_provider_endpoint = _Endpoint( + self.set_certification_endpoint = _Endpoint( settings={ 'response_type': None, 'auth': [], - 'endpoint_path': '/api/v1/actions/organization/switchActiveIdentityProvider', - 'operation_id': 'switch_active_identity_provider', + 'endpoint_path': '/api/v1/actions/workspaces/{workspaceId}/setCertification', + 'operation_id': 'set_certification', 'http_method': 'POST', 'servers': None, }, params_map={ 'all': [ - 'switch_identity_provider_request', + 'workspace_id', + 'set_certification_request', ], 'required': [ - 'switch_identity_provider_request', + 'workspace_id', + 'set_certification_request', ], 'nullable': [ ], @@ -5145,13 +5646,17 @@ def __init__(self, api_client=None): 'allowed_values': { }, 'openapi_types': { - 'switch_identity_provider_request': - (SwitchIdentityProviderRequest,), + 'workspace_id': + (str,), + 'set_certification_request': + (SetCertificationRequest,), }, 'attribute_map': { + 'workspace_id': 'workspaceId', }, 'location_map': { - 'switch_identity_provider_request': 'body', + 'workspace_id': 'path', + 'set_certification_request': 'body', }, 'collection_format_map': { } @@ -5164,67 +5669,169 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.tags_endpoint = _Endpoint( + self.set_translations_endpoint = _Endpoint( settings={ - 'response_type': (AnalyticsCatalogTags,), + 'response_type': None, 'auth': [], - 'endpoint_path': '/api/v1/actions/workspaces/{workspaceId}/ai/analyticsCatalog/tags', - 'operation_id': 'tags', - 'http_method': 'GET', + 'endpoint_path': '/api/v1/actions/workspaces/{workspaceId}/translations/set', + 'operation_id': 'set_translations', + 'http_method': 'POST', 'servers': None, }, params_map={ 'all': [ 'workspace_id', + 'xliff', ], 'required': [ 'workspace_id', + 'xliff', ], '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,), + 'xliff': + (Xliff,), }, 'attribute_map': { 'workspace_id': 'workspaceId', }, 'location_map': { 'workspace_id': 'path', + 'xliff': 'body', }, 'collection_format_map': { } }, headers_map={ - 'accept': [ - 'application/json' - ], - 'content_type': [], + 'accept': [], + 'content_type': [ + 'application/xml' + ] }, api_client=api_client ) - self.test_data_source_endpoint = _Endpoint( + self.switch_active_identity_provider_endpoint = _Endpoint( settings={ - 'response_type': (TestResponse,), + 'response_type': None, 'auth': [], - 'endpoint_path': '/api/v1/actions/dataSources/{dataSourceId}/test', + 'endpoint_path': '/api/v1/actions/organization/switchActiveIdentityProvider', + 'operation_id': 'switch_active_identity_provider', + 'http_method': 'POST', + 'servers': None, + }, + params_map={ + 'all': [ + 'switch_identity_provider_request', + ], + 'required': [ + 'switch_identity_provider_request', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'switch_identity_provider_request': + (SwitchIdentityProviderRequest,), + }, + 'attribute_map': { + }, + 'location_map': { + 'switch_identity_provider_request': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [], + 'content_type': [ + 'application/json' + ] + }, + api_client=api_client + ) + self.tags_endpoint = _Endpoint( + settings={ + 'response_type': (AnalyticsCatalogTags,), + 'auth': [], + 'endpoint_path': '/api/v1/actions/workspaces/{workspaceId}/ai/analyticsCatalog/tags', + 'operation_id': 'tags', + 'http_method': 'GET', + 'servers': None, + }, + params_map={ + 'all': [ + 'workspace_id', + ], + 'required': [ + 'workspace_id', + ], + '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,), + }, + '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.test_data_source_endpoint = _Endpoint( + settings={ + 'response_type': (TestResponse,), + 'auth': [], + 'endpoint_path': '/api/v1/actions/dataSources/{dataSourceId}/test', 'operation_id': 'test_data_source', 'http_method': 'POST', 'servers': None, @@ -5388,6 +5995,105 @@ def __init__(self, api_client=None): }, api_client=api_client ) + self.test_llm_provider_endpoint = _Endpoint( + settings={ + 'response_type': (TestLlmProviderResponse,), + 'auth': [], + 'endpoint_path': '/api/v1/actions/ai/llmProvider/test', + 'operation_id': 'test_llm_provider', + 'http_method': 'POST', + 'servers': None, + }, + params_map={ + 'all': [ + 'test_llm_provider_definition_request', + ], + 'required': [ + 'test_llm_provider_definition_request', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'test_llm_provider_definition_request': + (TestLlmProviderDefinitionRequest,), + }, + 'attribute_map': { + }, + 'location_map': { + 'test_llm_provider_definition_request': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/json' + ], + 'content_type': [ + 'application/json' + ] + }, + api_client=api_client + ) + self.test_llm_provider_by_id_endpoint = _Endpoint( + settings={ + 'response_type': (TestLlmProviderResponse,), + 'auth': [], + 'endpoint_path': '/api/v1/actions/ai/llmProvider/{llmProviderId}/test', + 'operation_id': 'test_llm_provider_by_id', + 'http_method': 'POST', + 'servers': None, + }, + params_map={ + 'all': [ + 'llm_provider_id', + ], + 'required': [ + 'llm_provider_id', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'llm_provider_id': + (str,), + }, + 'attribute_map': { + 'llm_provider_id': 'llmProviderId', + }, + 'location_map': { + 'llm_provider_id': 'path', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/json' + ], + 'content_type': [], + }, + api_client=api_client + ) self.test_notification_channel_endpoint = _Endpoint( settings={ 'response_type': (TestResponse,), @@ -5945,6 +6651,69 @@ def __init__(self, api_client=None): }, api_client=api_client ) + self.upsert_document_endpoint = _Endpoint( + settings={ + 'response_type': (UpsertKnowledgeDocumentResponseDto,), + 'auth': [], + 'endpoint_path': '/api/v1/actions/workspaces/{workspaceId}/ai/knowledge/documents', + 'operation_id': 'upsert_document', + 'http_method': 'PUT', + 'servers': None, + }, + params_map={ + 'all': [ + 'workspace_id', + 'upsert_knowledge_document_request_dto', + ], + 'required': [ + 'workspace_id', + 'upsert_knowledge_document_request_dto', + ], + '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,), + 'upsert_knowledge_document_request_dto': + (UpsertKnowledgeDocumentRequestDto,), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + }, + 'location_map': { + 'workspace_id': 'path', + 'upsert_knowledge_document_request_dto': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/json' + ], + 'content_type': [ + 'application/json' + ] + }, + api_client=api_client + ) self.validate_llm_endpoint_endpoint = _Endpoint( settings={ 'response_type': (ValidateLLMEndpointResponse,), @@ -8089,24 +8858,23 @@ def create_dashboard_export_request( dashboard_tabular_export_request return self.create_dashboard_export_request_endpoint.call_with_http_info(**kwargs) - def create_image_export( + def create_document( self, workspace_id, - image_export_request, + create_knowledge_document_request_dto, **kwargs ): - """(EXPERIMENTAL) Create image export request # noqa: E501 + """create_document # noqa: E501 - Note: This API is an experimental and is going to change. Please, use it accordingly. An image export job will be created based on the export request and put to queue to be executed. The result of the operation will be an exportResult identifier that will be assembled by the client into a url that can be polled. # 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_image_export(workspace_id, image_export_request, async_req=True) + >>> thread = api.create_document(workspace_id, create_knowledge_document_request_dto, async_req=True) >>> result = thread.get() Args: - workspace_id (str): - image_export_request (ImageExportRequest): + workspace_id (str): Workspace identifier + create_knowledge_document_request_dto (CreateKnowledgeDocumentRequestDto): Keyword Args: _return_http_data_only (bool): response data without head status @@ -8141,7 +8909,7 @@ def create_image_export( async_req (bool): execute request asynchronously Returns: - ExportResponse + CreateKnowledgeDocumentResponseDto If the method is called asynchronously, returns the request thread. """ @@ -8172,17 +8940,104 @@ def create_image_export( kwargs['_request_auths'] = kwargs.get('_request_auths', None) kwargs['workspace_id'] = \ workspace_id - kwargs['image_export_request'] = \ - image_export_request - return self.create_image_export_endpoint.call_with_http_info(**kwargs) + kwargs['create_knowledge_document_request_dto'] = \ + create_knowledge_document_request_dto + return self.create_document_endpoint.call_with_http_info(**kwargs) - def create_pdf_export( + def create_image_export( self, workspace_id, - visual_export_request, + image_export_request, **kwargs ): - """Create visual - pdf export request # noqa: E501 + """(EXPERIMENTAL) Create image export request # noqa: E501 + + Note: This API is an experimental and is going to change. Please, use it accordingly. An image export job will be created based on the export request and put to queue to be executed. The result of the operation will be an exportResult identifier that will be assembled by the client into a url that can be polled. # 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_image_export(workspace_id, image_export_request, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): + image_export_request (ImageExportRequest): + + 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: + ExportResponse + 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['image_export_request'] = \ + image_export_request + return self.create_image_export_endpoint.call_with_http_info(**kwargs) + + def create_pdf_export( + self, + workspace_id, + visual_export_request, + **kwargs + ): + """Create visual - pdf export request # noqa: E501 An visual export job will be created based on the export request and put to queue to be executed. The result of the operation will be an exportResult identifier that will be assembled by the client into a url that can be polled. # noqa: E501 This method makes a synchronous HTTP request by default. To make an @@ -8695,6 +9550,92 @@ def dashboard_permissions( dashboard_id return self.dashboard_permissions_endpoint.call_with_http_info(**kwargs) + def delete_document( + self, + workspace_id, + filename, + **kwargs + ): + """delete_document # 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_document(workspace_id, filename, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): Workspace identifier + filename (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: + DeleteKnowledgeDocumentResponseDto + 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['filename'] = \ + filename + return self.delete_document_endpoint.call_with_http_info(**kwargs) + def delete_organization_automations( self, organization_automation_management_bulk_request, @@ -9132,24 +10073,24 @@ def forecast_result( result_id return self.forecast_result_endpoint.call_with_http_info(**kwargs) - def generate_logical_model( + def generate_description( self, - data_source_id, - generate_ldm_request, + workspace_id, + generate_description_request, **kwargs ): - """Generate logical data model (LDM) from physical data model (PDM) # noqa: E501 + """Generate Description for Analytics Object # noqa: E501 - Generate logical data model (LDM) from physical data model (PDM) stored in data source. # noqa: E501 + Generates a description for the specified analytics object. Returns description and a note with details if generation was not performed. # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.generate_logical_model(data_source_id, generate_ldm_request, async_req=True) + >>> thread = api.generate_description(workspace_id, generate_description_request, async_req=True) >>> result = thread.get() Args: - data_source_id (str): - generate_ldm_request (GenerateLdmRequest): + workspace_id (str): Workspace identifier + generate_description_request (GenerateDescriptionRequest): Keyword Args: _return_http_data_only (bool): response data without head status @@ -9184,7 +10125,7 @@ def generate_logical_model( async_req (bool): execute request asynchronously Returns: - DeclarativeModel + GenerateDescriptionResponse If the method is called asynchronously, returns the request thread. """ @@ -9213,25 +10154,25 @@ def generate_logical_model( '_content_type') kwargs['_host_index'] = kwargs.get('_host_index') kwargs['_request_auths'] = kwargs.get('_request_auths', None) - kwargs['data_source_id'] = \ - data_source_id - kwargs['generate_ldm_request'] = \ - generate_ldm_request - return self.generate_logical_model_endpoint.call_with_http_info(**kwargs) + kwargs['workspace_id'] = \ + workspace_id + kwargs['generate_description_request'] = \ + generate_description_request + return self.generate_description_endpoint.call_with_http_info(**kwargs) - def generate_logical_model_aac( + def generate_logical_model( self, data_source_id, generate_ldm_request, **kwargs ): - """Generate logical data model in AAC format from physical data model (PDM) # noqa: E501 + """Generate logical data model (LDM) from physical data model (PDM) # noqa: E501 - Generate logical data model (LDM) from physical data model (PDM) stored in data source, returning the result in Analytics as Code (AAC) format compatible with the GoodData VSCode extension YAML definitions. # noqa: E501 + Generate logical data model (LDM) from physical data model (PDM) stored in data source. # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.generate_logical_model_aac(data_source_id, generate_ldm_request, async_req=True) + >>> thread = api.generate_logical_model(data_source_id, generate_ldm_request, async_req=True) >>> result = thread.get() Args: @@ -9271,7 +10212,7 @@ def generate_logical_model_aac( async_req (bool): execute request asynchronously Returns: - AacLogicalModel + DeclarativeModel If the method is called asynchronously, returns the request thread. """ @@ -9304,24 +10245,26 @@ def generate_logical_model_aac( data_source_id kwargs['generate_ldm_request'] = \ generate_ldm_request - return self.generate_logical_model_aac_endpoint.call_with_http_info(**kwargs) + return self.generate_logical_model_endpoint.call_with_http_info(**kwargs) - def get_data_source_schemata( + def generate_logical_model_aac( self, data_source_id, + generate_ldm_request, **kwargs ): - """Get a list of schema names of a database # noqa: E501 + """Generate logical data model in AAC format from physical data model (PDM) # noqa: E501 - It scans a database and reads metadata. The result of the request contains a list of schema names of a database. # noqa: E501 + Generate logical data model (LDM) from physical data model (PDM) stored in data source, returning the result in Analytics as Code (AAC) format compatible with the GoodData VSCode extension YAML definitions. # 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_data_source_schemata(data_source_id, async_req=True) + >>> thread = api.generate_logical_model_aac(data_source_id, generate_ldm_request, async_req=True) >>> result = thread.get() Args: - data_source_id (str): Data source id + data_source_id (str): + generate_ldm_request (GenerateLdmRequest): Keyword Args: _return_http_data_only (bool): response data without head status @@ -9356,7 +10299,7 @@ def get_data_source_schemata( async_req (bool): execute request asynchronously Returns: - DataSourceSchemata + AacLogicalModel If the method is called asynchronously, returns the request thread. """ @@ -9387,24 +10330,28 @@ def get_data_source_schemata( kwargs['_request_auths'] = kwargs.get('_request_auths', None) kwargs['data_source_id'] = \ data_source_id - return self.get_data_source_schemata_endpoint.call_with_http_info(**kwargs) + kwargs['generate_ldm_request'] = \ + generate_ldm_request + return self.generate_logical_model_aac_endpoint.call_with_http_info(**kwargs) - def get_dependent_entities_graph( + def generate_title( self, workspace_id, + generate_title_request, **kwargs ): - """Computes the dependent entities graph # noqa: E501 + """Generate Title for Analytics Object # noqa: E501 - Computes the dependent entities graph # noqa: E501 + Generates a title for the specified analytics object. Returns title and a note with details if generation was not performed. # 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_dependent_entities_graph(workspace_id, async_req=True) + >>> thread = api.generate_title(workspace_id, generate_title_request, async_req=True) >>> result = thread.get() Args: - workspace_id (str): + workspace_id (str): Workspace identifier + generate_title_request (GenerateTitleRequest): Keyword Args: _return_http_data_only (bool): response data without head status @@ -9439,7 +10386,7 @@ def get_dependent_entities_graph( async_req (bool): execute request asynchronously Returns: - DependentEntitiesResponse + GenerateTitleResponse If the method is called asynchronously, returns the request thread. """ @@ -9470,26 +10417,26 @@ def get_dependent_entities_graph( kwargs['_request_auths'] = kwargs.get('_request_auths', None) kwargs['workspace_id'] = \ workspace_id - return self.get_dependent_entities_graph_endpoint.call_with_http_info(**kwargs) + kwargs['generate_title_request'] = \ + generate_title_request + return self.generate_title_endpoint.call_with_http_info(**kwargs) - def get_dependent_entities_graph_from_entry_points( + def get_data_source_schemata( self, - workspace_id, - dependent_entities_request, + data_source_id, **kwargs ): - """Computes the dependent entities graph from given entry points # noqa: E501 + """Get a list of schema names of a database # noqa: E501 - Computes the dependent entities graph from given entry points # noqa: E501 + It scans a database and reads metadata. The result of the request contains a list of schema names of a database. # 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_dependent_entities_graph_from_entry_points(workspace_id, dependent_entities_request, async_req=True) + >>> thread = api.get_data_source_schemata(data_source_id, async_req=True) >>> result = thread.get() Args: - workspace_id (str): - dependent_entities_request (DependentEntitiesRequest): + data_source_id (str): Data source id Keyword Args: _return_http_data_only (bool): response data without head status @@ -9524,7 +10471,7 @@ def get_dependent_entities_graph_from_entry_points( async_req (bool): execute request asynchronously Returns: - DependentEntitiesResponse + DataSourceSchemata If the method is called asynchronously, returns the request thread. """ @@ -9553,30 +10500,26 @@ def get_dependent_entities_graph_from_entry_points( '_content_type') kwargs['_host_index'] = kwargs.get('_host_index') kwargs['_request_auths'] = kwargs.get('_request_auths', None) - kwargs['workspace_id'] = \ - workspace_id - kwargs['dependent_entities_request'] = \ - dependent_entities_request - return self.get_dependent_entities_graph_from_entry_points_endpoint.call_with_http_info(**kwargs) + kwargs['data_source_id'] = \ + data_source_id + return self.get_data_source_schemata_endpoint.call_with_http_info(**kwargs) - def get_exported_file( + def get_dependent_entities_graph( self, workspace_id, - export_id, **kwargs ): - """Retrieve exported files # noqa: E501 + """Computes the dependent entities graph # noqa: E501 - Returns 202 until original POST export request is not processed.Returns 200 with exported data once the export is done. # noqa: E501 + Computes the dependent entities graph # 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_exported_file(workspace_id, export_id, async_req=True) + >>> thread = api.get_dependent_entities_graph(workspace_id, async_req=True) >>> result = thread.get() Args: workspace_id (str): - export_id (str): Keyword Args: _return_http_data_only (bool): response data without head status @@ -9611,7 +10554,265 @@ def get_exported_file( async_req (bool): execute request asynchronously Returns: - file_type + DependentEntitiesResponse + 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_dependent_entities_graph_endpoint.call_with_http_info(**kwargs) + + def get_dependent_entities_graph_from_entry_points( + self, + workspace_id, + dependent_entities_request, + **kwargs + ): + """Computes the dependent entities graph from given entry points # noqa: E501 + + Computes the dependent entities graph from given entry points # 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_dependent_entities_graph_from_entry_points(workspace_id, dependent_entities_request, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): + dependent_entities_request (DependentEntitiesRequest): + + 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: + DependentEntitiesResponse + 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['dependent_entities_request'] = \ + dependent_entities_request + return self.get_dependent_entities_graph_from_entry_points_endpoint.call_with_http_info(**kwargs) + + def get_document( + self, + workspace_id, + filename, + **kwargs + ): + """get_document # 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_document(workspace_id, filename, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): Workspace identifier + filename (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: + KnowledgeDocumentMetadataDto + 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['filename'] = \ + filename + return self.get_document_endpoint.call_with_http_info(**kwargs) + + def get_exported_file( + self, + workspace_id, + export_id, + **kwargs + ): + """Retrieve exported files # noqa: E501 + + Returns 202 until original POST export request is not processed.Returns 200 with exported data once the export is done. # 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_exported_file(workspace_id, export_id, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): + export_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: + file_type If the method is called asynchronously, returns the request thread. """ @@ -10934,24 +12135,110 @@ def key_driver_analysis_result( result_id return self.key_driver_analysis_result_endpoint.call_with_http_info(**kwargs) - def list_workspace_user_groups( + def list_documents( self, workspace_id, **kwargs ): - """list_workspace_user_groups # noqa: E501 + """list_documents # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.list_workspace_user_groups(workspace_id, async_req=True) + >>> thread = api.list_documents(workspace_id, async_req=True) >>> result = thread.get() Args: - workspace_id (str): + workspace_id (str): Workspace identifier Keyword Args: - page (int): Zero-based page index (0..N). [optional] if omitted the server will use the default value of 0 + scopes ([str]): [optional] + size (int): [optional] if omitted the server will use the default value of 50 + page_token (str): [optional] + meta_include (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: + ListKnowledgeDocumentsResponseDto + 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.list_documents_endpoint.call_with_http_info(**kwargs) + + def list_workspace_user_groups( + self, + workspace_id, + **kwargs + ): + """list_workspace_user_groups # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.list_workspace_user_groups(workspace_id, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): + + Keyword Args: + 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 name (str): Filter by user name. Note that user name is case insensitive.. [optional] _return_http_data_only (bool): response data without head status @@ -12278,6 +13565,96 @@ def particular_platform_usage( platform_usage_request return self.particular_platform_usage_endpoint.call_with_http_info(**kwargs) + def patch_document( + self, + workspace_id, + filename, + patch_knowledge_document_request_dto, + **kwargs + ): + """patch_document # 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_document(workspace_id, filename, patch_knowledge_document_request_dto, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): Workspace identifier + filename (str): + patch_knowledge_document_request_dto (PatchKnowledgeDocumentRequestDto): + + 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: + KnowledgeDocumentMetadataDto + 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['filename'] = \ + filename + kwargs['patch_knowledge_document_request_dto'] = \ + patch_knowledge_document_request_dto + return self.patch_document_endpoint.call_with_http_info(**kwargs) + def pause_organization_automations( self, organization_automation_management_bulk_request, @@ -13035,18 +14412,368 @@ def retrieve_result( This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.retrieve_result(workspace_id, result_id, async_req=True) + >>> thread = api.retrieve_result(workspace_id, result_id, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): Workspace identifier + result_id (str): Result ID + + Keyword Args: + offset ([int]): Request page with these offsets. Format is offset=1,2,3,... - one offset for each dimensions in ResultSpec from originating AFM.. [optional] if omitted the server will use the default value of [] + limit ([int]): Return only this number of items. Format is limit=1,2,3,... - one limit for each dimensions in ResultSpec from originating AFM.. [optional] if omitted the server will use the default value of [] + excluded_total_dimensions ([str]): Identifiers of the dimensions where grand total data should not be returned for this request. A grand total will not be returned if all of its totalDimensions are in excludedTotalDimensions.. [optional] if omitted the server will use the default value of [] + x_gdc_cancel_token (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: + ExecutionResult + 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['result_id'] = \ + result_id + return self.retrieve_result_endpoint.call_with_http_info(**kwargs) + + def retrieve_translations( + self, + workspace_id, + locale_request, + **kwargs + ): + """Retrieve translations for entities. # noqa: E501 + + 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. # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.retrieve_translations(workspace_id, locale_request, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): + locale_request (LocaleRequest): + + 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: + Xliff + 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['locale_request'] = \ + locale_request + return self.retrieve_translations_endpoint.call_with_http_info(**kwargs) + + def scan_data_source( + self, + data_source_id, + scan_request, + **kwargs + ): + """Scan a database to get a physical data model (PDM) # noqa: E501 + + It scans a database and transforms its metadata to a declarative definition of the physical data model (PDM). The result of the request contains the mentioned physical data model (PDM) of a database within warning, for example, about unsupported columns. # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.scan_data_source(data_source_id, scan_request, async_req=True) + >>> result = thread.get() + + Args: + data_source_id (str): Data source id + scan_request (ScanRequest): + + 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: + ScanResultPdm + 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['data_source_id'] = \ + data_source_id + kwargs['scan_request'] = \ + scan_request + return self.scan_data_source_endpoint.call_with_http_info(**kwargs) + + def scan_sql( + self, + data_source_id, + scan_sql_request, + **kwargs + ): + """Collect metadata about SQL query # noqa: E501 + + It executes SQL query against specified data source and extracts metadata. Metadata consist of column names and column data types. It can optionally provide also preview of data returned by SQL query # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.scan_sql(data_source_id, scan_sql_request, async_req=True) + >>> result = thread.get() + + Args: + data_source_id (str): Data source id + scan_sql_request (ScanSqlRequest): + + 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: + ScanSqlResponse + 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['data_source_id'] = \ + data_source_id + kwargs['scan_sql_request'] = \ + scan_sql_request + return self.scan_sql_endpoint.call_with_http_info(**kwargs) + + def search_knowledge( + self, + workspace_id, + query, + **kwargs + ): + """search_knowledge # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.search_knowledge(workspace_id, query, async_req=True) >>> result = thread.get() Args: workspace_id (str): Workspace identifier - result_id (str): Result ID + query (str): Keyword Args: - offset ([int]): Request page with these offsets. Format is offset=1,2,3,... - one offset for each dimensions in ResultSpec from originating AFM.. [optional] if omitted the server will use the default value of [] - limit ([int]): Return only this number of items. Format is limit=1,2,3,... - one limit for each dimensions in ResultSpec from originating AFM.. [optional] if omitted the server will use the default value of [] - excluded_total_dimensions ([str]): Identifiers of the dimensions where grand total data should not be returned for this request. A grand total will not be returned if all of its totalDimensions are in excludedTotalDimensions.. [optional] if omitted the server will use the default value of [] - x_gdc_cancel_token (str): [optional] + limit (int): [optional] if omitted the server will use the default value of 10 + min_score (float): [optional] if omitted the server will use the default value of 0.0 + scopes ([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 @@ -13079,7 +14806,7 @@ def retrieve_result( async_req (bool): execute request asynchronously Returns: - ExecutionResult + SearchKnowledgeResponseDto If the method is called asynchronously, returns the request thread. """ @@ -13110,28 +14837,28 @@ def retrieve_result( kwargs['_request_auths'] = kwargs.get('_request_auths', None) kwargs['workspace_id'] = \ workspace_id - kwargs['result_id'] = \ - result_id - return self.retrieve_result_endpoint.call_with_http_info(**kwargs) + kwargs['query'] = \ + query + return self.search_knowledge_endpoint.call_with_http_info(**kwargs) - def retrieve_translations( + def set_certification( self, workspace_id, - locale_request, + set_certification_request, **kwargs ): - """Retrieve translations for entities. # noqa: E501 + """Set Certification # noqa: E501 - 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. # noqa: E501 + Set or clear the certification (e.g. CERTIFIED) of a workspace entity. Requires MANAGE permission. # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.retrieve_translations(workspace_id, locale_request, async_req=True) + >>> thread = api.set_certification(workspace_id, set_certification_request, async_req=True) >>> result = thread.get() Args: workspace_id (str): - locale_request (LocaleRequest): + set_certification_request (SetCertificationRequest): Keyword Args: _return_http_data_only (bool): response data without head status @@ -13166,7 +14893,7 @@ def retrieve_translations( async_req (bool): execute request asynchronously Returns: - Xliff + None If the method is called asynchronously, returns the request thread. """ @@ -13197,28 +14924,28 @@ def retrieve_translations( kwargs['_request_auths'] = kwargs.get('_request_auths', None) kwargs['workspace_id'] = \ workspace_id - kwargs['locale_request'] = \ - locale_request - return self.retrieve_translations_endpoint.call_with_http_info(**kwargs) + kwargs['set_certification_request'] = \ + set_certification_request + return self.set_certification_endpoint.call_with_http_info(**kwargs) - def scan_data_source( + def set_translations( self, - data_source_id, - scan_request, + workspace_id, + xliff, **kwargs ): - """Scan a database to get a physical data model (PDM) # noqa: E501 + """Set translations for entities. # noqa: E501 - It scans a database and transforms its metadata to a declarative definition of the physical data model (PDM). The result of the request contains the mentioned physical data model (PDM) of a database within warning, for example, about unsupported columns. # noqa: E501 + Set translation for existing entities in a particular locale. # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.scan_data_source(data_source_id, scan_request, async_req=True) + >>> thread = api.set_translations(workspace_id, xliff, async_req=True) >>> result = thread.get() Args: - data_source_id (str): Data source id - scan_request (ScanRequest): + workspace_id (str): + xliff (Xliff): Keyword Args: _return_http_data_only (bool): response data without head status @@ -13253,7 +14980,7 @@ def scan_data_source( async_req (bool): execute request asynchronously Returns: - ScanResultPdm + None If the method is called asynchronously, returns the request thread. """ @@ -13282,30 +15009,28 @@ def scan_data_source( '_content_type') kwargs['_host_index'] = kwargs.get('_host_index') kwargs['_request_auths'] = kwargs.get('_request_auths', None) - kwargs['data_source_id'] = \ - data_source_id - kwargs['scan_request'] = \ - scan_request - return self.scan_data_source_endpoint.call_with_http_info(**kwargs) + kwargs['workspace_id'] = \ + workspace_id + kwargs['xliff'] = \ + xliff + return self.set_translations_endpoint.call_with_http_info(**kwargs) - def scan_sql( + def switch_active_identity_provider( self, - data_source_id, - scan_sql_request, + switch_identity_provider_request, **kwargs ): - """Collect metadata about SQL query # noqa: E501 + """Switch Active Identity Provider # noqa: E501 - It executes SQL query against specified data source and extracts metadata. Metadata consist of column names and column data types. It can optionally provide also preview of data returned by SQL query # noqa: E501 + Switch the active identity provider for the organization. Requires MANAGE permission on the 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.scan_sql(data_source_id, scan_sql_request, async_req=True) + >>> thread = api.switch_active_identity_provider(switch_identity_provider_request, async_req=True) >>> result = thread.get() Args: - data_source_id (str): Data source id - scan_sql_request (ScanSqlRequest): + switch_identity_provider_request (SwitchIdentityProviderRequest): Keyword Args: _return_http_data_only (bool): response data without head status @@ -13340,7 +15065,7 @@ def scan_sql( async_req (bool): execute request asynchronously Returns: - ScanSqlResponse + None If the method is called asynchronously, returns the request thread. """ @@ -13369,30 +15094,26 @@ def scan_sql( '_content_type') kwargs['_host_index'] = kwargs.get('_host_index') kwargs['_request_auths'] = kwargs.get('_request_auths', None) - kwargs['data_source_id'] = \ - data_source_id - kwargs['scan_sql_request'] = \ - scan_sql_request - return self.scan_sql_endpoint.call_with_http_info(**kwargs) + kwargs['switch_identity_provider_request'] = \ + switch_identity_provider_request + return self.switch_active_identity_provider_endpoint.call_with_http_info(**kwargs) - def set_translations( + def tags( self, workspace_id, - xliff, **kwargs ): - """Set translations for entities. # noqa: E501 + """Get Analytics Catalog Tags # noqa: E501 - Set translation for existing entities in a particular locale. # noqa: E501 + Returns a list of tags for this 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_translations(workspace_id, xliff, async_req=True) + >>> thread = api.tags(workspace_id, async_req=True) >>> result = thread.get() Args: - workspace_id (str): - xliff (Xliff): + workspace_id (str): Workspace identifier Keyword Args: _return_http_data_only (bool): response data without head status @@ -13427,7 +15148,7 @@ def set_translations( async_req (bool): execute request asynchronously Returns: - None + AnalyticsCatalogTags If the method is called asynchronously, returns the request thread. """ @@ -13458,26 +15179,26 @@ def set_translations( kwargs['_request_auths'] = kwargs.get('_request_auths', None) kwargs['workspace_id'] = \ workspace_id - kwargs['xliff'] = \ - xliff - return self.set_translations_endpoint.call_with_http_info(**kwargs) + return self.tags_endpoint.call_with_http_info(**kwargs) - def switch_active_identity_provider( + def test_data_source( self, - switch_identity_provider_request, + data_source_id, + test_request, **kwargs ): - """Switch Active Identity Provider # noqa: E501 + """Test data source connection by data source id # noqa: E501 - Switch the active identity provider for the organization. Requires MANAGE permission on the organization. # noqa: E501 + Test if it is possible to connect to a database using an existing data source definition. # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.switch_active_identity_provider(switch_identity_provider_request, async_req=True) + >>> thread = api.test_data_source(data_source_id, test_request, async_req=True) >>> result = thread.get() Args: - switch_identity_provider_request (SwitchIdentityProviderRequest): + data_source_id (str): Data source id + test_request (TestRequest): Keyword Args: _return_http_data_only (bool): response data without head status @@ -13512,7 +15233,7 @@ def switch_active_identity_provider( async_req (bool): execute request asynchronously Returns: - None + TestResponse If the method is called asynchronously, returns the request thread. """ @@ -13541,26 +15262,28 @@ def switch_active_identity_provider( '_content_type') kwargs['_host_index'] = kwargs.get('_host_index') kwargs['_request_auths'] = kwargs.get('_request_auths', None) - kwargs['switch_identity_provider_request'] = \ - switch_identity_provider_request - return self.switch_active_identity_provider_endpoint.call_with_http_info(**kwargs) + kwargs['data_source_id'] = \ + data_source_id + kwargs['test_request'] = \ + test_request + return self.test_data_source_endpoint.call_with_http_info(**kwargs) - def tags( + def test_data_source_definition( self, - workspace_id, + test_definition_request, **kwargs ): - """Get Analytics Catalog Tags # noqa: E501 + """Test connection by data source definition # noqa: E501 - Returns a list of tags for this workspace # noqa: E501 + Test if it is possible to connect to a database using a connection provided by the data source definition in the request body. # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.tags(workspace_id, async_req=True) + >>> thread = api.test_data_source_definition(test_definition_request, async_req=True) >>> result = thread.get() Args: - workspace_id (str): Workspace identifier + test_definition_request (TestDefinitionRequest): Keyword Args: _return_http_data_only (bool): response data without head status @@ -13595,7 +15318,7 @@ def tags( async_req (bool): execute request asynchronously Returns: - AnalyticsCatalogTags + TestResponse If the method is called asynchronously, returns the request thread. """ @@ -13624,30 +15347,29 @@ def tags( '_content_type') kwargs['_host_index'] = kwargs.get('_host_index') kwargs['_request_auths'] = kwargs.get('_request_auths', None) - kwargs['workspace_id'] = \ - workspace_id - return self.tags_endpoint.call_with_http_info(**kwargs) + kwargs['test_definition_request'] = \ + test_definition_request + return self.test_data_source_definition_endpoint.call_with_http_info(**kwargs) - def test_data_source( + def test_existing_notification_channel( self, - data_source_id, - test_request, + notification_channel_id, **kwargs ): - """Test data source connection by data source id # noqa: E501 + """Test existing notification channel. # noqa: E501 - Test if it is possible to connect to a database using an existing data source definition. # noqa: E501 + Tests the existing notification channel by sending a test notification. # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.test_data_source(data_source_id, test_request, async_req=True) + >>> thread = api.test_existing_notification_channel(notification_channel_id, async_req=True) >>> result = thread.get() Args: - data_source_id (str): Data source id - test_request (TestRequest): + notification_channel_id (str): Keyword Args: + test_destination_request (TestDestinationRequest): [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 @@ -13709,28 +15431,26 @@ def test_data_source( '_content_type') kwargs['_host_index'] = kwargs.get('_host_index') kwargs['_request_auths'] = kwargs.get('_request_auths', None) - kwargs['data_source_id'] = \ - data_source_id - kwargs['test_request'] = \ - test_request - return self.test_data_source_endpoint.call_with_http_info(**kwargs) + kwargs['notification_channel_id'] = \ + notification_channel_id + return self.test_existing_notification_channel_endpoint.call_with_http_info(**kwargs) - def test_data_source_definition( + def test_llm_provider( self, - test_definition_request, + test_llm_provider_definition_request, **kwargs ): - """Test connection by data source definition # noqa: E501 + """Test LLM Provider # noqa: E501 - Test if it is possible to connect to a database using a connection provided by the data source definition in the request body. # noqa: E501 + Tests LLM provider connectivity with a full definition. # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.test_data_source_definition(test_definition_request, async_req=True) + >>> thread = api.test_llm_provider(test_llm_provider_definition_request, async_req=True) >>> result = thread.get() Args: - test_definition_request (TestDefinitionRequest): + test_llm_provider_definition_request (TestLlmProviderDefinitionRequest): Keyword Args: _return_http_data_only (bool): response data without head status @@ -13765,7 +15485,7 @@ def test_data_source_definition( async_req (bool): execute request asynchronously Returns: - TestResponse + TestLlmProviderResponse If the method is called asynchronously, returns the request thread. """ @@ -13794,29 +15514,28 @@ def test_data_source_definition( '_content_type') kwargs['_host_index'] = kwargs.get('_host_index') kwargs['_request_auths'] = kwargs.get('_request_auths', None) - kwargs['test_definition_request'] = \ - test_definition_request - return self.test_data_source_definition_endpoint.call_with_http_info(**kwargs) + kwargs['test_llm_provider_definition_request'] = \ + test_llm_provider_definition_request + return self.test_llm_provider_endpoint.call_with_http_info(**kwargs) - def test_existing_notification_channel( + def test_llm_provider_by_id( self, - notification_channel_id, + llm_provider_id, **kwargs ): - """Test existing notification channel. # noqa: E501 + """Test LLM Provider By Id # noqa: E501 - Tests the existing notification channel by sending a test notification. # noqa: E501 + Tests an existing LLM provider connectivity by its ID. # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True - >>> thread = api.test_existing_notification_channel(notification_channel_id, async_req=True) + >>> thread = api.test_llm_provider_by_id(llm_provider_id, async_req=True) >>> result = thread.get() Args: - notification_channel_id (str): + llm_provider_id (str): Keyword Args: - test_destination_request (TestDestinationRequest): [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 @@ -13849,7 +15568,7 @@ def test_existing_notification_channel( async_req (bool): execute request asynchronously Returns: - TestResponse + TestLlmProviderResponse If the method is called asynchronously, returns the request thread. """ @@ -13878,9 +15597,9 @@ def test_existing_notification_channel( '_content_type') kwargs['_host_index'] = kwargs.get('_host_index') kwargs['_request_auths'] = kwargs.get('_request_auths', None) - kwargs['notification_channel_id'] = \ - notification_channel_id - return self.test_existing_notification_channel_endpoint.call_with_http_info(**kwargs) + kwargs['llm_provider_id'] = \ + llm_provider_id + return self.test_llm_provider_by_id_endpoint.call_with_http_info(**kwargs) def test_notification_channel( self, @@ -14803,6 +16522,92 @@ def unsubscribe_workspace_automations( workspace_id return self.unsubscribe_workspace_automations_endpoint.call_with_http_info(**kwargs) + def upsert_document( + self, + workspace_id, + upsert_knowledge_document_request_dto, + **kwargs + ): + """upsert_document # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.upsert_document(workspace_id, upsert_knowledge_document_request_dto, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): Workspace identifier + upsert_knowledge_document_request_dto (UpsertKnowledgeDocumentRequestDto): + + 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: + UpsertKnowledgeDocumentResponseDto + 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['upsert_knowledge_document_request_dto'] = \ + upsert_knowledge_document_request_dto + return self.upsert_document_endpoint.call_with_http_info(**kwargs) + def validate_llm_endpoint( self, validate_llm_endpoint_request, diff --git a/gooddata-api-client/gooddata_api_client/api/ai_lake_api.py b/gooddata-api-client/gooddata_api_client/api/ai_lake_api.py index 777746df8..ec99b3761 100644 --- a/gooddata-api-client/gooddata_api_client/api/ai_lake_api.py +++ b/gooddata-api-client/gooddata_api_client/api/ai_lake_api.py @@ -24,7 +24,10 @@ ) from gooddata_api_client.model.database_instance import DatabaseInstance from gooddata_api_client.model.get_ai_lake_operation200_response import GetAiLakeOperation200Response +from gooddata_api_client.model.list_database_instances_response import ListDatabaseInstancesResponse +from gooddata_api_client.model.list_services_response import ListServicesResponse from gooddata_api_client.model.provision_database_instance_request import ProvisionDatabaseInstanceRequest +from gooddata_api_client.model.run_service_command_request import RunServiceCommandRequest class AILakeApi(object): @@ -42,7 +45,7 @@ def __init__(self, api_client=None): settings={ 'response_type': ({str: (bool, date, datetime, dict, float, int, list, str, none_type)},), 'auth': [], - 'endpoint_path': '/api/v1/ailake/database/instance/{instanceId}', + 'endpoint_path': '/api/v1/ailake/database/instances/{instanceId}', 'operation_id': 'deprovision_ai_lake_database_instance', 'http_method': 'DELETE', 'servers': None, @@ -96,7 +99,7 @@ def __init__(self, api_client=None): settings={ 'response_type': (DatabaseInstance,), 'auth': [], - 'endpoint_path': '/api/v1/ailake/database/instance/{instanceId}', + 'endpoint_path': '/api/v1/ailake/database/instances/{instanceId}', 'operation_id': 'get_ai_lake_database_instance', 'http_method': 'GET', 'servers': None, @@ -145,7 +148,7 @@ def __init__(self, api_client=None): settings={ 'response_type': (GetAiLakeOperation200Response,), 'auth': [], - 'endpoint_path': '/api/v1/ailake/operation/{operationId}', + 'endpoint_path': '/api/v1/ailake/operations/{operationId}', 'operation_id': 'get_ai_lake_operation', 'http_method': 'GET', 'servers': None, @@ -190,11 +193,135 @@ def __init__(self, api_client=None): }, api_client=api_client ) + self.list_ai_lake_database_instances_endpoint = _Endpoint( + settings={ + 'response_type': (ListDatabaseInstancesResponse,), + 'auth': [], + 'endpoint_path': '/api/v1/ailake/database/instances', + 'operation_id': 'list_ai_lake_database_instances', + 'http_method': 'GET', + 'servers': None, + }, + params_map={ + 'all': [ + 'size', + 'offset', + 'meta_include', + ], + 'required': [], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + 'meta_include', + ] + }, + root_map={ + 'validations': { + ('meta_include',): { + + }, + }, + 'allowed_values': { + }, + 'openapi_types': { + 'size': + (int,), + 'offset': + (int,), + 'meta_include': + ([str],), + }, + 'attribute_map': { + 'size': 'size', + 'offset': 'offset', + 'meta_include': 'metaInclude', + }, + 'location_map': { + 'size': 'query', + 'offset': 'query', + 'meta_include': 'query', + }, + 'collection_format_map': { + 'meta_include': 'multi', + } + }, + headers_map={ + 'accept': [ + 'application/json' + ], + 'content_type': [], + }, + api_client=api_client + ) + self.list_ai_lake_services_endpoint = _Endpoint( + settings={ + 'response_type': (ListServicesResponse,), + 'auth': [], + 'endpoint_path': '/api/v1/ailake/services', + 'operation_id': 'list_ai_lake_services', + 'http_method': 'GET', + 'servers': None, + }, + params_map={ + 'all': [ + 'size', + 'offset', + 'meta_include', + ], + 'required': [], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + 'meta_include', + ] + }, + root_map={ + 'validations': { + ('meta_include',): { + + }, + }, + 'allowed_values': { + }, + 'openapi_types': { + 'size': + (int,), + 'offset': + (int,), + 'meta_include': + ([str],), + }, + 'attribute_map': { + 'size': 'size', + 'offset': 'offset', + 'meta_include': 'metaInclude', + }, + 'location_map': { + 'size': 'query', + 'offset': 'query', + 'meta_include': 'query', + }, + 'collection_format_map': { + 'meta_include': 'multi', + } + }, + headers_map={ + 'accept': [ + 'application/json' + ], + 'content_type': [], + }, + api_client=api_client + ) self.provision_ai_lake_database_instance_endpoint = _Endpoint( settings={ 'response_type': ({str: (bool, date, datetime, dict, float, int, list, str, none_type)},), 'auth': [], - 'endpoint_path': '/api/v1/ailake/database/instance', + 'endpoint_path': '/api/v1/ailake/database/instances', 'operation_id': 'provision_ai_lake_database_instance', 'http_method': 'POST', 'servers': None, @@ -245,6 +372,73 @@ def __init__(self, api_client=None): }, api_client=api_client ) + self.run_ai_lake_service_command_endpoint = _Endpoint( + settings={ + 'response_type': ({str: (bool, date, datetime, dict, float, int, list, str, none_type)},), + 'auth': [], + 'endpoint_path': '/api/v1/ailake/services/{serviceId}/commands/{commandName}/run', + 'operation_id': 'run_ai_lake_service_command', + 'http_method': 'POST', + 'servers': None, + }, + params_map={ + 'all': [ + 'service_id', + 'command_name', + 'run_service_command_request', + 'operation_id', + ], + 'required': [ + 'service_id', + 'command_name', + 'run_service_command_request', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'service_id': + (str,), + 'command_name': + (str,), + 'run_service_command_request': + (RunServiceCommandRequest,), + 'operation_id': + (str,), + }, + 'attribute_map': { + 'service_id': 'serviceId', + 'command_name': 'commandName', + 'operation_id': 'operation-id', + }, + 'location_map': { + 'service_id': 'path', + 'command_name': 'path', + 'run_service_command_request': 'body', + 'operation_id': 'header', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/json' + ], + 'content_type': [ + 'application/json' + ] + }, + api_client=api_client + ) def deprovision_ai_lake_database_instance( self, @@ -496,6 +690,168 @@ def get_ai_lake_operation( operation_id return self.get_ai_lake_operation_endpoint.call_with_http_info(**kwargs) + def list_ai_lake_database_instances( + self, + **kwargs + ): + """(BETA) List AI Lake Database instances # noqa: E501 + + (BETA) Lists database instances in the organization's AI Lake. Supports paging via size and offset query parameters. Use metaInclude=page to get total count. # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.list_ai_lake_database_instances(async_req=True) + >>> result = thread.get() + + + Keyword Args: + size (int): [optional] if omitted the server will use the default value of 50 + offset (int): [optional] if omitted the server will use the default value of 0 + meta_include ([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: + ListDatabaseInstancesResponse + 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.list_ai_lake_database_instances_endpoint.call_with_http_info(**kwargs) + + def list_ai_lake_services( + self, + **kwargs + ): + """(BETA) List AI Lake services # noqa: E501 + + (BETA) Lists services configured for the organization's AI Lake. Returns only non-sensitive fields (id, name). Supports paging via size and offset query parameters. Use metaInclude=page to get total count. # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.list_ai_lake_services(async_req=True) + >>> result = thread.get() + + + Keyword Args: + size (int): [optional] if omitted the server will use the default value of 50 + offset (int): [optional] if omitted the server will use the default value of 0 + meta_include ([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: + ListServicesResponse + 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.list_ai_lake_services_endpoint.call_with_http_info(**kwargs) + def provision_ai_lake_database_instance( self, provision_database_instance_request, @@ -580,3 +936,95 @@ def provision_ai_lake_database_instance( provision_database_instance_request return self.provision_ai_lake_database_instance_endpoint.call_with_http_info(**kwargs) + def run_ai_lake_service_command( + self, + service_id, + command_name, + run_service_command_request, + **kwargs + ): + """(BETA) Run an AI Lake services command # noqa: E501 + + (BETA) Runs a specific AI Lake service command. # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.run_ai_lake_service_command(service_id, command_name, run_service_command_request, async_req=True) + >>> result = thread.get() + + Args: + service_id (str): + command_name (str): + run_service_command_request (RunServiceCommandRequest): + + Keyword Args: + operation_id (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: + {str: (bool, date, datetime, dict, float, int, list, str, none_type)} + 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['service_id'] = \ + service_id + kwargs['command_name'] = \ + command_name + kwargs['run_service_command_request'] = \ + run_service_command_request + return self.run_ai_lake_service_command_endpoint.call_with_http_info(**kwargs) + diff --git a/gooddata-api-client/gooddata_api_client/api/certification_api.py b/gooddata-api-client/gooddata_api_client/api/certification_api.py new file mode 100644 index 000000000..e150d3d01 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/api/certification_api.py @@ -0,0 +1,180 @@ +""" + 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.set_certification_request import SetCertificationRequest + + +class CertificationApi(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.set_certification_endpoint = _Endpoint( + settings={ + 'response_type': None, + 'auth': [], + 'endpoint_path': '/api/v1/actions/workspaces/{workspaceId}/setCertification', + 'operation_id': 'set_certification', + 'http_method': 'POST', + 'servers': None, + }, + params_map={ + 'all': [ + 'workspace_id', + 'set_certification_request', + ], + 'required': [ + 'workspace_id', + 'set_certification_request', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'workspace_id': + (str,), + 'set_certification_request': + (SetCertificationRequest,), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + }, + 'location_map': { + 'workspace_id': 'path', + 'set_certification_request': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [], + 'content_type': [ + 'application/json' + ] + }, + api_client=api_client + ) + + def set_certification( + self, + workspace_id, + set_certification_request, + **kwargs + ): + """Set Certification # noqa: E501 + + Set or clear the certification (e.g. CERTIFIED) of a workspace entity. Requires MANAGE permission. # 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_certification(workspace_id, set_certification_request, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): + set_certification_request (SetCertificationRequest): + + 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['set_certification_request'] = \ + set_certification_request + return self.set_certification_endpoint.call_with_http_info(**kwargs) + diff --git a/gooddata-api-client/gooddata_api_client/api/dashboards_api.py b/gooddata-api-client/gooddata_api_client/api/dashboards_api.py index 6402f33ea..5bd88d55d 100644 --- a/gooddata-api-client/gooddata_api_client/api/dashboards_api.py +++ b/gooddata-api-client/gooddata_api_client/api/dashboards_api.py @@ -90,6 +90,7 @@ def __init__(self, api_client=None): "DASHBOARDPLUGINS": "dashboardPlugins", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", + "CERTIFIEDBY": "certifiedBy", "ALL": "ALL" }, ('meta_include',): { @@ -257,6 +258,7 @@ def __init__(self, api_client=None): "DASHBOARDPLUGINS": "dashboardPlugins", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", + "CERTIFIEDBY": "certifiedBy", "ALL": "ALL" }, ('meta_include',): { @@ -377,6 +379,7 @@ def __init__(self, api_client=None): "DASHBOARDPLUGINS": "dashboardPlugins", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", + "CERTIFIEDBY": "certifiedBy", "ALL": "ALL" }, ('meta_include',): { @@ -478,6 +481,7 @@ def __init__(self, api_client=None): "DASHBOARDPLUGINS": "dashboardPlugins", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", + "CERTIFIEDBY": "certifiedBy", "ALL": "ALL" }, }, @@ -642,6 +646,7 @@ def __init__(self, api_client=None): "DASHBOARDPLUGINS": "dashboardPlugins", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", + "CERTIFIEDBY": "certifiedBy", "ALL": "ALL" }, }, 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 352992ed7..0b67eeb16 100644 --- a/gooddata-api-client/gooddata_api_client/api/entities_api.py +++ b/gooddata-api-client/gooddata_api_client/api/entities_api.py @@ -123,6 +123,10 @@ 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_llm_provider_in_document import JsonApiLlmProviderInDocument +from gooddata_api_client.model.json_api_llm_provider_out_document import JsonApiLlmProviderOutDocument +from gooddata_api_client.model.json_api_llm_provider_out_list import JsonApiLlmProviderOutList +from gooddata_api_client.model.json_api_llm_provider_patch_document import JsonApiLlmProviderPatchDocument from gooddata_api_client.model.json_api_memory_item_in_document import JsonApiMemoryItemInDocument from gooddata_api_client.model.json_api_memory_item_out_document import JsonApiMemoryItemOutDocument from gooddata_api_client.model.json_api_memory_item_out_list import JsonApiMemoryItemOutList @@ -254,6 +258,7 @@ def __init__(self, api_client=None): "DASHBOARDPLUGINS": "dashboardPlugins", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", + "CERTIFIEDBY": "certifiedBy", "ALL": "ALL" }, ('meta_include',): { @@ -1492,6 +1497,58 @@ def __init__(self, api_client=None): }, api_client=api_client ) + self.create_entity_llm_providers_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiLlmProviderOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/llmProviders', + 'operation_id': 'create_entity_llm_providers', + 'http_method': 'POST', + 'servers': None, + }, + params_map={ + 'all': [ + 'json_api_llm_provider_in_document', + ], + 'required': [ + 'json_api_llm_provider_in_document', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'json_api_llm_provider_in_document': + (JsonApiLlmProviderInDocument,), + }, + 'attribute_map': { + }, + 'location_map': { + 'json_api_llm_provider_in_document': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/json', + 'application/vnd.gooddata.api+json' + ], + 'content_type': [ + 'application/json', + 'application/vnd.gooddata.api+json' + ] + }, + api_client=api_client + ) self.create_entity_memory_items_endpoint = _Endpoint( settings={ 'response_type': (JsonApiMemoryItemOutDocument,), @@ -1628,6 +1685,7 @@ def __init__(self, api_client=None): "DATASETS": "datasets", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", + "CERTIFIEDBY": "certifiedBy", "ALL": "ALL" }, ('meta_include',): { @@ -2160,6 +2218,7 @@ def __init__(self, api_client=None): "DATASETS": "datasets", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", + "CERTIFIEDBY": "certifiedBy", "ALL": "ALL" }, ('meta_include',): { @@ -3602,6 +3661,65 @@ def __init__(self, api_client=None): }, api_client=api_client ) + self.delete_entity_llm_providers_endpoint = _Endpoint( + settings={ + 'response_type': None, + 'auth': [], + 'endpoint_path': '/api/v1/entities/llmProviders/{id}', + 'operation_id': 'delete_entity_llm_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_memory_items_endpoint = _Endpoint( settings={ 'response_type': None, @@ -4713,6 +4831,7 @@ def __init__(self, api_client=None): "DASHBOARDPLUGINS": "dashboardPlugins", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", + "CERTIFIEDBY": "certifiedBy", "ALL": "ALL" }, ('meta_include',): { @@ -7127,6 +7246,87 @@ def __init__(self, api_client=None): }, api_client=api_client ) + self.get_all_entities_llm_providers_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiLlmProviderOutList,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/llmProviders', + 'operation_id': 'get_all_entities_llm_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/json', + 'application/vnd.gooddata.api+json' + ], + 'content_type': [], + }, + api_client=api_client + ) self.get_all_entities_memory_items_endpoint = _Endpoint( settings={ 'response_type': (JsonApiMemoryItemOutList,), @@ -7305,6 +7505,7 @@ def __init__(self, api_client=None): "DATASETS": "datasets", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", + "CERTIFIEDBY": "certifiedBy", "ALL": "ALL" }, ('meta_include',): { @@ -8236,6 +8437,7 @@ def __init__(self, api_client=None): "DATASETS": "datasets", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", + "CERTIFIEDBY": "certifiedBy", "ALL": "ALL" }, ('meta_include',): { @@ -8978,6 +9180,7 @@ def __init__(self, api_client=None): "DASHBOARDPLUGINS": "dashboardPlugins", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", + "CERTIFIEDBY": "certifiedBy", "ALL": "ALL" }, ('meta_include',): { @@ -10970,6 +11173,68 @@ def __init__(self, api_client=None): }, api_client=api_client ) + self.get_entity_llm_providers_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiLlmProviderOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/llmProviders/{id}', + 'operation_id': 'get_entity_llm_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/json', + 'application/vnd.gooddata.api+json' + ], + 'content_type': [], + }, + api_client=api_client + ) self.get_entity_memory_items_endpoint = _Endpoint( settings={ 'response_type': (JsonApiMemoryItemOutDocument,), @@ -11116,6 +11381,7 @@ def __init__(self, api_client=None): "DATASETS": "datasets", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", + "CERTIFIEDBY": "certifiedBy", "ALL": "ALL" }, ('meta_include',): { @@ -11944,6 +12210,7 @@ def __init__(self, api_client=None): "DATASETS": "datasets", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", + "CERTIFIEDBY": "certifiedBy", "ALL": "ALL" }, ('meta_include',): { @@ -12469,6 +12736,7 @@ def __init__(self, api_client=None): "DASHBOARDPLUGINS": "dashboardPlugins", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", + "CERTIFIEDBY": "certifiedBy", "ALL": "ALL" }, }, @@ -14145,6 +14413,76 @@ def __init__(self, api_client=None): }, api_client=api_client ) + self.patch_entity_llm_providers_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiLlmProviderOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/llmProviders/{id}', + 'operation_id': 'patch_entity_llm_providers', + 'http_method': 'PATCH', + 'servers': None, + }, + params_map={ + 'all': [ + 'id', + 'json_api_llm_provider_patch_document', + 'filter', + ], + 'required': [ + 'id', + 'json_api_llm_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_llm_provider_patch_document': + (JsonApiLlmProviderPatchDocument,), + 'filter': + (str,), + }, + 'attribute_map': { + 'id': 'id', + 'filter': 'filter', + }, + 'location_map': { + 'id': 'path', + 'json_api_llm_provider_patch_document': 'body', + 'filter': 'query', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/json', + 'application/vnd.gooddata.api+json' + ], + 'content_type': [ + 'application/json', + 'application/vnd.gooddata.api+json' + ] + }, + api_client=api_client + ) self.patch_entity_memory_items_endpoint = _Endpoint( settings={ 'response_type': (JsonApiMemoryItemOutDocument,), @@ -14272,6 +14610,7 @@ def __init__(self, api_client=None): "DATASETS": "datasets", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", + "CERTIFIEDBY": "certifiedBy", "ALL": "ALL" }, }, @@ -14911,6 +15250,7 @@ def __init__(self, api_client=None): "DATASETS": "datasets", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", + "CERTIFIEDBY": "certifiedBy", "ALL": "ALL" }, }, @@ -16945,6 +17285,7 @@ def __init__(self, api_client=None): "DASHBOARDPLUGINS": "dashboardPlugins", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", + "CERTIFIEDBY": "certifiedBy", "ALL": "ALL" }, }, @@ -18286,6 +18627,76 @@ def __init__(self, api_client=None): }, api_client=api_client ) + self.update_entity_llm_providers_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiLlmProviderOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/llmProviders/{id}', + 'operation_id': 'update_entity_llm_providers', + 'http_method': 'PUT', + 'servers': None, + }, + params_map={ + 'all': [ + 'id', + 'json_api_llm_provider_in_document', + 'filter', + ], + 'required': [ + 'id', + 'json_api_llm_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_llm_provider_in_document': + (JsonApiLlmProviderInDocument,), + 'filter': + (str,), + }, + 'attribute_map': { + 'id': 'id', + 'filter': 'filter', + }, + 'location_map': { + 'id': 'path', + 'json_api_llm_provider_in_document': 'body', + 'filter': 'query', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/json', + 'application/vnd.gooddata.api+json' + ], + 'content_type': [ + 'application/json', + 'application/vnd.gooddata.api+json' + ] + }, + api_client=api_client + ) self.update_entity_memory_items_endpoint = _Endpoint( settings={ 'response_type': (JsonApiMemoryItemOutDocument,), @@ -18413,6 +18824,7 @@ def __init__(self, api_client=None): "DATASETS": "datasets", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", + "CERTIFIEDBY": "certifiedBy", "ALL": "ALL" }, }, @@ -19128,6 +19540,7 @@ def __init__(self, api_client=None): "DATASETS": "datasets", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", + "CERTIFIEDBY": "certifiedBy", "ALL": "ALL" }, }, @@ -20655,7 +21068,91 @@ def create_entity_filter_views( async_req (bool): execute request asynchronously Returns: - JsonApiFilterViewOutDocument + 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. """ @@ -20684,27 +21181,26 @@ def create_entity_filter_views( '_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) + 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_identity_providers( + def create_entity_jwks( self, - json_api_identity_provider_in_document, + json_api_jwk_in_document, **kwargs ): - """Post Identity Providers # noqa: E501 + """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_identity_providers(json_api_identity_provider_in_document, async_req=True) + >>> thread = api.create_entity_jwks(json_api_jwk_in_document, async_req=True) >>> result = thread.get() Args: - json_api_identity_provider_in_document (JsonApiIdentityProviderInDocument): + json_api_jwk_in_document (JsonApiJwkInDocument): Keyword Args: _return_http_data_only (bool): response data without head status @@ -20739,7 +21235,7 @@ def create_entity_identity_providers( async_req (bool): execute request asynchronously Returns: - JsonApiIdentityProviderOutDocument + JsonApiJwkOutDocument If the method is called asynchronously, returns the request thread. """ @@ -20768,28 +21264,31 @@ def create_entity_identity_providers( '_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) + 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_jwks( + def create_entity_knowledge_recommendations( self, - json_api_jwk_in_document, + workspace_id, + json_api_knowledge_recommendation_post_optional_id_document, **kwargs ): - """Post Jwks # noqa: E501 + """create_entity_knowledge_recommendations # 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_knowledge_recommendations(workspace_id, json_api_knowledge_recommendation_post_optional_id_document, async_req=True) >>> result = thread.get() Args: - json_api_jwk_in_document (JsonApiJwkInDocument): + workspace_id (str): + json_api_knowledge_recommendation_post_optional_id_document (JsonApiKnowledgeRecommendationPostOptionalIdDocument): 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. _preload_content (bool): if False, the urllib3.HTTPResponse object @@ -20822,7 +21321,7 @@ def create_entity_jwks( async_req (bool): execute request asynchronously Returns: - JsonApiJwkOutDocument + JsonApiKnowledgeRecommendationOutDocument If the method is called asynchronously, returns the request thread. """ @@ -20851,31 +21350,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['workspace_id'] = \ + workspace_id + kwargs['json_api_knowledge_recommendation_post_optional_id_document'] = \ + json_api_knowledge_recommendation_post_optional_id_document + return self.create_entity_knowledge_recommendations_endpoint.call_with_http_info(**kwargs) - def create_entity_knowledge_recommendations( + def create_entity_llm_endpoints( self, - workspace_id, - json_api_knowledge_recommendation_post_optional_id_document, + json_api_llm_endpoint_in_document, **kwargs ): - """create_entity_knowledge_recommendations # noqa: E501 + """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_knowledge_recommendations(workspace_id, json_api_knowledge_recommendation_post_optional_id_document, async_req=True) + >>> thread = api.create_entity_llm_endpoints(json_api_llm_endpoint_in_document, async_req=True) >>> result = thread.get() Args: - workspace_id (str): - json_api_knowledge_recommendation_post_optional_id_document (JsonApiKnowledgeRecommendationPostOptionalIdDocument): + json_api_llm_endpoint_in_document (JsonApiLlmEndpointInDocument): 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. _preload_content (bool): if False, the urllib3.HTTPResponse object @@ -20908,7 +21405,7 @@ def create_entity_knowledge_recommendations( async_req (bool): execute request asynchronously Returns: - JsonApiKnowledgeRecommendationOutDocument + JsonApiLlmEndpointOutDocument If the method is called asynchronously, returns the request thread. """ @@ -20937,27 +21434,26 @@ def create_entity_knowledge_recommendations( '_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_knowledge_recommendation_post_optional_id_document'] = \ - json_api_knowledge_recommendation_post_optional_id_document - return self.create_entity_knowledge_recommendations_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_llm_endpoints( + def create_entity_llm_providers( self, - json_api_llm_endpoint_in_document, + json_api_llm_provider_in_document, **kwargs ): - """Post LLM endpoint entities # noqa: E501 + """Post LLM Provider entities # noqa: E501 + LLM Provider - connection configuration for LLM services # 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) + >>> thread = api.create_entity_llm_providers(json_api_llm_provider_in_document, async_req=True) >>> result = thread.get() Args: - json_api_llm_endpoint_in_document (JsonApiLlmEndpointInDocument): + json_api_llm_provider_in_document (JsonApiLlmProviderInDocument): Keyword Args: _return_http_data_only (bool): response data without head status @@ -20992,7 +21488,7 @@ def create_entity_llm_endpoints( async_req (bool): execute request asynchronously Returns: - JsonApiLlmEndpointOutDocument + JsonApiLlmProviderOutDocument If the method is called asynchronously, returns the request thread. """ @@ -21021,9 +21517,9 @@ def create_entity_llm_endpoints( '_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) + kwargs['json_api_llm_provider_in_document'] = \ + json_api_llm_provider_in_document + return self.create_entity_llm_providers_endpoint.call_with_http_info(**kwargs) def create_entity_memory_items( self, @@ -23166,103 +23662,190 @@ def delete_entity_export_definitions( workspace_id kwargs['object_id'] = \ object_id - return self.delete_entity_export_definitions_endpoint.call_with_http_info(**kwargs) - - def delete_entity_export_templates( - self, - id, - **kwargs - ): - """Delete Export Template 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.delete_entity_export_templates(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_export_templates_endpoint.call_with_http_info(**kwargs) + return self.delete_entity_export_definitions_endpoint.call_with_http_info(**kwargs) + + def delete_entity_export_templates( + self, + id, + **kwargs + ): + """Delete Export Template 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.delete_entity_export_templates(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_export_templates_endpoint.call_with_http_info(**kwargs) + + def delete_entity_filter_contexts( + self, + workspace_id, + object_id, + **kwargs + ): + """Delete a Filter Context # 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_contexts(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_contexts_endpoint.call_with_http_info(**kwargs) - def delete_entity_filter_contexts( + def delete_entity_filter_views( self, workspace_id, object_id, **kwargs ): - """Delete a Filter Context # noqa: E501 + """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_contexts(workspace_id, object_id, async_req=True) + >>> thread = api.delete_entity_filter_views(workspace_id, object_id, async_req=True) >>> result = thread.get() Args: @@ -23336,25 +23919,23 @@ def delete_entity_filter_contexts( workspace_id kwargs['object_id'] = \ object_id - return self.delete_entity_filter_contexts_endpoint.call_with_http_info(**kwargs) + return self.delete_entity_filter_views_endpoint.call_with_http_info(**kwargs) - def delete_entity_filter_views( + def delete_entity_identity_providers( self, - workspace_id, - object_id, + id, **kwargs ): - """Delete Filter view # 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.delete_entity_filter_views(workspace_id, object_id, async_req=True) + >>> thread = api.delete_entity_identity_providers(id, async_req=True) >>> result = thread.get() Args: - workspace_id (str): - object_id (str): + 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] @@ -23419,23 +24000,22 @@ def delete_entity_filter_views( '_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) + kwargs['id'] = \ + id + return self.delete_entity_identity_providers_endpoint.call_with_http_info(**kwargs) - def delete_entity_identity_providers( + def delete_entity_jwks( self, id, **kwargs ): - """Delete Identity Provider # noqa: E501 + """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_identity_providers(id, async_req=True) + >>> thread = api.delete_entity_jwks(id, async_req=True) >>> result = thread.get() Args: @@ -23506,24 +24086,25 @@ def delete_entity_identity_providers( kwargs['_request_auths'] = kwargs.get('_request_auths', None) kwargs['id'] = \ id - return self.delete_entity_identity_providers_endpoint.call_with_http_info(**kwargs) + return self.delete_entity_jwks_endpoint.call_with_http_info(**kwargs) - def delete_entity_jwks( + def delete_entity_knowledge_recommendations( self, - id, + workspace_id, + object_id, **kwargs ): - """Delete Jwk # noqa: E501 + """delete_entity_knowledge_recommendations # 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_knowledge_recommendations(workspace_id, object_id, async_req=True) >>> result = thread.get() Args: - 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] @@ -23588,27 +24169,27 @@ def delete_entity_jwks( '_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) + kwargs['workspace_id'] = \ + workspace_id + kwargs['object_id'] = \ + object_id + return self.delete_entity_knowledge_recommendations_endpoint.call_with_http_info(**kwargs) - def delete_entity_knowledge_recommendations( + def delete_entity_llm_endpoints( self, - workspace_id, - object_id, + id, **kwargs ): - """delete_entity_knowledge_recommendations # noqa: E501 + """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_knowledge_recommendations(workspace_id, object_id, async_req=True) + >>> thread = api.delete_entity_llm_endpoints(id, async_req=True) >>> result = thread.get() Args: - workspace_id (str): - object_id (str): + 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] @@ -23673,23 +24254,21 @@ def delete_entity_knowledge_recommendations( '_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_knowledge_recommendations_endpoint.call_with_http_info(**kwargs) + kwargs['id'] = \ + id + return self.delete_entity_llm_endpoints_endpoint.call_with_http_info(**kwargs) - def delete_entity_llm_endpoints( + def delete_entity_llm_providers( self, id, **kwargs ): - """delete_entity_llm_endpoints # noqa: E501 + """Delete LLM Provider 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.delete_entity_llm_endpoints(id, async_req=True) + >>> thread = api.delete_entity_llm_providers(id, async_req=True) >>> result = thread.get() Args: @@ -23760,7 +24339,7 @@ def delete_entity_llm_endpoints( kwargs['_request_auths'] = kwargs.get('_request_auths', None) kwargs['id'] = \ id - return self.delete_entity_llm_endpoints_endpoint.call_with_http_info(**kwargs) + return self.delete_entity_llm_providers_endpoint.call_with_http_info(**kwargs) def delete_entity_memory_items( self, @@ -27038,32 +27617,116 @@ def get_all_entities_knowledge_recommendations( kwargs['_request_auths'] = kwargs.get('_request_auths', None) kwargs['workspace_id'] = \ workspace_id - return self.get_all_entities_knowledge_recommendations_endpoint.call_with_http_info(**kwargs) + return self.get_all_entities_knowledge_recommendations_endpoint.call_with_http_info(**kwargs) + + def get_all_entities_labels( + self, + workspace_id, + **kwargs + ): + """Get all Labels # 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_labels(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: + 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_labels( + def get_all_entities_llm_endpoints( self, - workspace_id, **kwargs ): - """Get all Labels # noqa: E501 + """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_labels(workspace_id, async_req=True) + >>> thread = api.get_all_entities_llm_endpoints(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. @@ -27097,7 +27760,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. """ @@ -27126,20 +27789,18 @@ 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_llm_endpoints( + def get_all_entities_llm_providers( self, **kwargs ): - """Get all LLM endpoint entities # noqa: E501 + """Get all LLM Provider 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) + >>> thread = api.get_all_entities_llm_providers(async_req=True) >>> result = thread.get() @@ -27181,7 +27842,7 @@ def get_all_entities_llm_endpoints( async_req (bool): execute request asynchronously Returns: - JsonApiLlmEndpointOutList + JsonApiLlmProviderOutList If the method is called asynchronously, returns the request thread. """ @@ -27210,7 +27871,7 @@ def get_all_entities_llm_endpoints( '_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) + return self.get_all_entities_llm_providers_endpoint.call_with_http_info(**kwargs) def get_all_entities_memory_items( self, @@ -31011,6 +31672,89 @@ def get_entity_llm_endpoints( id return self.get_entity_llm_endpoints_endpoint.call_with_http_info(**kwargs) + def get_entity_llm_providers( + self, + id, + **kwargs + ): + """Get LLM Provider 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_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: + JsonApiLlmProviderOutDocument + 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_providers_endpoint.call_with_http_info(**kwargs) + def get_entity_memory_items( self, workspace_id, @@ -34544,6 +35288,93 @@ def patch_entity_llm_endpoints( json_api_llm_endpoint_patch_document return self.patch_entity_llm_endpoints_endpoint.call_with_http_info(**kwargs) + def patch_entity_llm_providers( + self, + id, + json_api_llm_provider_patch_document, + **kwargs + ): + """Patch LLM Provider 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_providers(id, json_api_llm_provider_patch_document, async_req=True) + >>> result = thread.get() + + Args: + id (str): + json_api_llm_provider_patch_document (JsonApiLlmProviderPatchDocument): + + 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: + JsonApiLlmProviderOutDocument + 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_provider_patch_document'] = \ + json_api_llm_provider_patch_document + return self.patch_entity_llm_providers_endpoint.call_with_http_info(**kwargs) + def patch_entity_memory_items( self, workspace_id, @@ -39352,6 +40183,93 @@ def update_entity_llm_endpoints( json_api_llm_endpoint_in_document return self.update_entity_llm_endpoints_endpoint.call_with_http_info(**kwargs) + def update_entity_llm_providers( + self, + id, + json_api_llm_provider_in_document, + **kwargs + ): + """PUT LLM Provider 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_providers(id, json_api_llm_provider_in_document, async_req=True) + >>> result = thread.get() + + Args: + id (str): + json_api_llm_provider_in_document (JsonApiLlmProviderInDocument): + + 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: + JsonApiLlmProviderOutDocument + 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_provider_in_document'] = \ + json_api_llm_provider_in_document + return self.update_entity_llm_providers_endpoint.call_with_http_info(**kwargs) + def update_entity_memory_items( self, workspace_id, diff --git a/gooddata-api-client/gooddata_api_client/api/llm_providers_api.py b/gooddata-api-client/gooddata_api_client/api/llm_providers_api.py new file mode 100644 index 000000000..c2db36e59 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/api/llm_providers_api.py @@ -0,0 +1,941 @@ +""" + 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_provider_in_document import JsonApiLlmProviderInDocument +from gooddata_api_client.model.json_api_llm_provider_out_document import JsonApiLlmProviderOutDocument +from gooddata_api_client.model.json_api_llm_provider_out_list import JsonApiLlmProviderOutList +from gooddata_api_client.model.json_api_llm_provider_patch_document import JsonApiLlmProviderPatchDocument + + +class LLMProvidersApi(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_providers_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiLlmProviderOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/llmProviders', + 'operation_id': 'create_entity_llm_providers', + 'http_method': 'POST', + 'servers': None, + }, + params_map={ + 'all': [ + 'json_api_llm_provider_in_document', + ], + 'required': [ + 'json_api_llm_provider_in_document', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'json_api_llm_provider_in_document': + (JsonApiLlmProviderInDocument,), + }, + 'attribute_map': { + }, + 'location_map': { + 'json_api_llm_provider_in_document': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/json', + 'application/vnd.gooddata.api+json' + ], + 'content_type': [ + 'application/json', + 'application/vnd.gooddata.api+json' + ] + }, + api_client=api_client + ) + self.delete_entity_llm_providers_endpoint = _Endpoint( + settings={ + 'response_type': None, + 'auth': [], + 'endpoint_path': '/api/v1/entities/llmProviders/{id}', + 'operation_id': 'delete_entity_llm_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_llm_providers_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiLlmProviderOutList,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/llmProviders', + 'operation_id': 'get_all_entities_llm_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/json', + 'application/vnd.gooddata.api+json' + ], + 'content_type': [], + }, + api_client=api_client + ) + self.get_entity_llm_providers_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiLlmProviderOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/llmProviders/{id}', + 'operation_id': 'get_entity_llm_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/json', + 'application/vnd.gooddata.api+json' + ], + 'content_type': [], + }, + api_client=api_client + ) + self.patch_entity_llm_providers_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiLlmProviderOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/llmProviders/{id}', + 'operation_id': 'patch_entity_llm_providers', + 'http_method': 'PATCH', + 'servers': None, + }, + params_map={ + 'all': [ + 'id', + 'json_api_llm_provider_patch_document', + 'filter', + ], + 'required': [ + 'id', + 'json_api_llm_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_llm_provider_patch_document': + (JsonApiLlmProviderPatchDocument,), + 'filter': + (str,), + }, + 'attribute_map': { + 'id': 'id', + 'filter': 'filter', + }, + 'location_map': { + 'id': 'path', + 'json_api_llm_provider_patch_document': 'body', + 'filter': 'query', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/json', + 'application/vnd.gooddata.api+json' + ], + 'content_type': [ + 'application/json', + 'application/vnd.gooddata.api+json' + ] + }, + api_client=api_client + ) + self.update_entity_llm_providers_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiLlmProviderOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/llmProviders/{id}', + 'operation_id': 'update_entity_llm_providers', + 'http_method': 'PUT', + 'servers': None, + }, + params_map={ + 'all': [ + 'id', + 'json_api_llm_provider_in_document', + 'filter', + ], + 'required': [ + 'id', + 'json_api_llm_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_llm_provider_in_document': + (JsonApiLlmProviderInDocument,), + 'filter': + (str,), + }, + 'attribute_map': { + 'id': 'id', + 'filter': 'filter', + }, + 'location_map': { + 'id': 'path', + 'json_api_llm_provider_in_document': 'body', + 'filter': 'query', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/json', + 'application/vnd.gooddata.api+json' + ], + 'content_type': [ + 'application/json', + 'application/vnd.gooddata.api+json' + ] + }, + api_client=api_client + ) + + def create_entity_llm_providers( + self, + json_api_llm_provider_in_document, + **kwargs + ): + """Post LLM Provider entities # noqa: E501 + + LLM Provider - connection configuration for LLM services # 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_providers(json_api_llm_provider_in_document, async_req=True) + >>> result = thread.get() + + Args: + json_api_llm_provider_in_document (JsonApiLlmProviderInDocument): + + 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: + JsonApiLlmProviderOutDocument + 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_provider_in_document'] = \ + json_api_llm_provider_in_document + return self.create_entity_llm_providers_endpoint.call_with_http_info(**kwargs) + + def delete_entity_llm_providers( + self, + id, + **kwargs + ): + """Delete LLM Provider 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.delete_entity_llm_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_llm_providers_endpoint.call_with_http_info(**kwargs) + + def get_all_entities_llm_providers( + self, + **kwargs + ): + """Get all LLM Provider 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_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: + JsonApiLlmProviderOutList + 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_providers_endpoint.call_with_http_info(**kwargs) + + def get_entity_llm_providers( + self, + id, + **kwargs + ): + """Get LLM Provider 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_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: + JsonApiLlmProviderOutDocument + 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_providers_endpoint.call_with_http_info(**kwargs) + + def patch_entity_llm_providers( + self, + id, + json_api_llm_provider_patch_document, + **kwargs + ): + """Patch LLM Provider 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_providers(id, json_api_llm_provider_patch_document, async_req=True) + >>> result = thread.get() + + Args: + id (str): + json_api_llm_provider_patch_document (JsonApiLlmProviderPatchDocument): + + 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: + JsonApiLlmProviderOutDocument + 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_provider_patch_document'] = \ + json_api_llm_provider_patch_document + return self.patch_entity_llm_providers_endpoint.call_with_http_info(**kwargs) + + def update_entity_llm_providers( + self, + id, + json_api_llm_provider_in_document, + **kwargs + ): + """PUT LLM Provider 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_providers(id, json_api_llm_provider_in_document, async_req=True) + >>> result = thread.get() + + Args: + id (str): + json_api_llm_provider_in_document (JsonApiLlmProviderInDocument): + + 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: + JsonApiLlmProviderOutDocument + 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_provider_in_document'] = \ + json_api_llm_provider_in_document + return self.update_entity_llm_providers_endpoint.call_with_http_info(**kwargs) + diff --git a/gooddata-api-client/gooddata_api_client/api/metrics_api.py b/gooddata-api-client/gooddata_api_client/api/metrics_api.py index e945b664b..914bce346 100644 --- a/gooddata-api-client/gooddata_api_client/api/metrics_api.py +++ b/gooddata-api-client/gooddata_api_client/api/metrics_api.py @@ -88,6 +88,7 @@ def __init__(self, api_client=None): "DATASETS": "datasets", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", + "CERTIFIEDBY": "certifiedBy", "ALL": "ALL" }, ('meta_include',): { @@ -251,6 +252,7 @@ def __init__(self, api_client=None): "DATASETS": "datasets", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", + "CERTIFIEDBY": "certifiedBy", "ALL": "ALL" }, ('meta_include',): { @@ -367,6 +369,7 @@ def __init__(self, api_client=None): "DATASETS": "datasets", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", + "CERTIFIEDBY": "certifiedBy", "ALL": "ALL" }, ('meta_include',): { @@ -464,6 +467,7 @@ def __init__(self, api_client=None): "DATASETS": "datasets", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", + "CERTIFIEDBY": "certifiedBy", "ALL": "ALL" }, }, @@ -626,6 +630,7 @@ def __init__(self, api_client=None): "DATASETS": "datasets", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", + "CERTIFIEDBY": "certifiedBy", "ALL": "ALL" }, }, 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 86caf1455..fbfbc7396 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 @@ -59,6 +59,10 @@ 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_llm_provider_in_document import JsonApiLlmProviderInDocument +from gooddata_api_client.model.json_api_llm_provider_out_document import JsonApiLlmProviderOutDocument +from gooddata_api_client.model.json_api_llm_provider_out_list import JsonApiLlmProviderOutList +from gooddata_api_client.model.json_api_llm_provider_patch_document import JsonApiLlmProviderPatchDocument from gooddata_api_client.model.json_api_notification_channel_identifier_out_document import JsonApiNotificationChannelIdentifierOutDocument from gooddata_api_client.model.json_api_notification_channel_identifier_out_list import JsonApiNotificationChannelIdentifierOutList from gooddata_api_client.model.json_api_notification_channel_in_document import JsonApiNotificationChannelInDocument @@ -534,6 +538,58 @@ def __init__(self, api_client=None): }, api_client=api_client ) + self.create_entity_llm_providers_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiLlmProviderOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/llmProviders', + 'operation_id': 'create_entity_llm_providers', + 'http_method': 'POST', + 'servers': None, + }, + params_map={ + 'all': [ + 'json_api_llm_provider_in_document', + ], + 'required': [ + 'json_api_llm_provider_in_document', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'json_api_llm_provider_in_document': + (JsonApiLlmProviderInDocument,), + }, + 'attribute_map': { + }, + 'location_map': { + 'json_api_llm_provider_in_document': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/json', + 'application/vnd.gooddata.api+json' + ], + 'content_type': [ + 'application/json', + 'application/vnd.gooddata.api+json' + ] + }, + api_client=api_client + ) self.create_entity_notification_channels_endpoint = _Endpoint( settings={ 'response_type': (JsonApiNotificationChannelOutDocument,), @@ -1376,6 +1432,65 @@ def __init__(self, api_client=None): }, api_client=api_client ) + self.delete_entity_llm_providers_endpoint = _Endpoint( + settings={ + 'response_type': None, + 'auth': [], + 'endpoint_path': '/api/v1/entities/llmProviders/{id}', + 'operation_id': 'delete_entity_llm_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_notification_channels_endpoint = _Endpoint( settings={ 'response_type': None, @@ -2542,6 +2657,87 @@ def __init__(self, api_client=None): }, api_client=api_client ) + self.get_all_entities_llm_providers_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiLlmProviderOutList,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/llmProviders', + 'operation_id': 'get_all_entities_llm_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/json', + 'application/vnd.gooddata.api+json' + ], + 'content_type': [], + }, + api_client=api_client + ) self.get_all_entities_notification_channel_identifiers_endpoint = _Endpoint( settings={ 'response_type': (JsonApiNotificationChannelIdentifierOutList,), @@ -3886,6 +4082,68 @@ def __init__(self, api_client=None): }, api_client=api_client ) + self.get_entity_llm_providers_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiLlmProviderOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/llmProviders/{id}', + 'operation_id': 'get_entity_llm_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/json', + 'application/vnd.gooddata.api+json' + ], + 'content_type': [], + }, + api_client=api_client + ) self.get_entity_notification_channel_identifiers_endpoint = _Endpoint( settings={ 'response_type': (JsonApiNotificationChannelIdentifierOutDocument,), @@ -5000,24 +5258,24 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.patch_entity_notification_channels_endpoint = _Endpoint( + self.patch_entity_llm_providers_endpoint = _Endpoint( settings={ - 'response_type': (JsonApiNotificationChannelOutDocument,), + 'response_type': (JsonApiLlmProviderOutDocument,), 'auth': [], - 'endpoint_path': '/api/v1/entities/notificationChannels/{id}', - 'operation_id': 'patch_entity_notification_channels', + 'endpoint_path': '/api/v1/entities/llmProviders/{id}', + 'operation_id': 'patch_entity_llm_providers', 'http_method': 'PATCH', 'servers': None, }, params_map={ 'all': [ 'id', - 'json_api_notification_channel_patch_document', + 'json_api_llm_provider_patch_document', 'filter', ], 'required': [ 'id', - 'json_api_notification_channel_patch_document', + 'json_api_llm_provider_patch_document', ], 'nullable': [ ], @@ -5041,8 +5299,8 @@ def __init__(self, api_client=None): 'openapi_types': { 'id': (str,), - 'json_api_notification_channel_patch_document': - (JsonApiNotificationChannelPatchDocument,), + 'json_api_llm_provider_patch_document': + (JsonApiLlmProviderPatchDocument,), 'filter': (str,), }, @@ -5052,7 +5310,7 @@ def __init__(self, api_client=None): }, 'location_map': { 'id': 'path', - 'json_api_notification_channel_patch_document': 'body', + 'json_api_llm_provider_patch_document': 'body', 'filter': 'query', }, 'collection_format_map': { @@ -5070,24 +5328,24 @@ def __init__(self, api_client=None): }, api_client=api_client ) - self.patch_entity_organization_settings_endpoint = _Endpoint( + self.patch_entity_notification_channels_endpoint = _Endpoint( settings={ - 'response_type': (JsonApiOrganizationSettingOutDocument,), + 'response_type': (JsonApiNotificationChannelOutDocument,), 'auth': [], - 'endpoint_path': '/api/v1/entities/organizationSettings/{id}', - 'operation_id': 'patch_entity_organization_settings', + 'endpoint_path': '/api/v1/entities/notificationChannels/{id}', + 'operation_id': 'patch_entity_notification_channels', 'http_method': 'PATCH', 'servers': None, }, params_map={ 'all': [ 'id', - 'json_api_organization_setting_patch_document', + 'json_api_notification_channel_patch_document', 'filter', ], 'required': [ 'id', - 'json_api_organization_setting_patch_document', + 'json_api_notification_channel_patch_document', ], 'nullable': [ ], @@ -5111,7 +5369,77 @@ def __init__(self, api_client=None): 'openapi_types': { 'id': (str,), - 'json_api_organization_setting_patch_document': + 'json_api_notification_channel_patch_document': + (JsonApiNotificationChannelPatchDocument,), + 'filter': + (str,), + }, + 'attribute_map': { + 'id': 'id', + 'filter': 'filter', + }, + 'location_map': { + 'id': 'path', + 'json_api_notification_channel_patch_document': 'body', + 'filter': 'query', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/json', + 'application/vnd.gooddata.api+json' + ], + 'content_type': [ + 'application/json', + 'application/vnd.gooddata.api+json' + ] + }, + api_client=api_client + ) + self.patch_entity_organization_settings_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiOrganizationSettingOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/organizationSettings/{id}', + 'operation_id': 'patch_entity_organization_settings', + 'http_method': 'PATCH', + 'servers': None, + }, + params_map={ + 'all': [ + 'id', + 'json_api_organization_setting_patch_document', + 'filter', + ], + 'required': [ + 'id', + 'json_api_organization_setting_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_organization_setting_patch_document': (JsonApiOrganizationSettingPatchDocument,), 'filter': (str,), @@ -6018,6 +6346,76 @@ def __init__(self, api_client=None): }, api_client=api_client ) + self.update_entity_llm_providers_endpoint = _Endpoint( + settings={ + 'response_type': (JsonApiLlmProviderOutDocument,), + 'auth': [], + 'endpoint_path': '/api/v1/entities/llmProviders/{id}', + 'operation_id': 'update_entity_llm_providers', + 'http_method': 'PUT', + 'servers': None, + }, + params_map={ + 'all': [ + 'id', + 'json_api_llm_provider_in_document', + 'filter', + ], + 'required': [ + 'id', + 'json_api_llm_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_llm_provider_in_document': + (JsonApiLlmProviderInDocument,), + 'filter': + (str,), + }, + 'attribute_map': { + 'id': 'id', + 'filter': 'filter', + }, + 'location_map': { + 'id': 'path', + 'json_api_llm_provider_in_document': 'body', + 'filter': 'query', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/json', + 'application/vnd.gooddata.api+json' + ], + 'content_type': [ + 'application/json', + 'application/vnd.gooddata.api+json' + ] + }, + api_client=api_client + ) self.update_entity_notification_channels_endpoint = _Endpoint( settings={ 'response_type': (JsonApiNotificationChannelOutDocument,), @@ -7137,6 +7535,89 @@ def create_entity_llm_endpoints( json_api_llm_endpoint_in_document return self.create_entity_llm_endpoints_endpoint.call_with_http_info(**kwargs) + def create_entity_llm_providers( + self, + json_api_llm_provider_in_document, + **kwargs + ): + """Post LLM Provider entities # noqa: E501 + + LLM Provider - connection configuration for LLM services # 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_providers(json_api_llm_provider_in_document, async_req=True) + >>> result = thread.get() + + Args: + json_api_llm_provider_in_document (JsonApiLlmProviderInDocument): + + 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: + JsonApiLlmProviderOutDocument + 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_provider_in_document'] = \ + json_api_llm_provider_in_document + return self.create_entity_llm_providers_endpoint.call_with_http_info(**kwargs) + def create_entity_notification_channels( self, json_api_notification_channel_post_optional_id_document, @@ -8303,6 +8784,89 @@ def delete_entity_llm_endpoints( id return self.delete_entity_llm_endpoints_endpoint.call_with_http_info(**kwargs) + def delete_entity_llm_providers( + self, + id, + **kwargs + ): + """Delete LLM Provider 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.delete_entity_llm_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_llm_providers_endpoint.call_with_http_info(**kwargs) + def delete_entity_notification_channels( self, id, @@ -9390,7 +9954,90 @@ def get_all_entities_identity_providers( 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) + >>> 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 + ): + """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_jwks(async_req=True) >>> result = thread.get() @@ -9432,7 +10079,7 @@ def get_all_entities_identity_providers( async_req (bool): execute request asynchronously Returns: - JsonApiIdentityProviderOutList + JsonApiJwkOutList If the method is called asynchronously, returns the request thread. """ @@ -9461,19 +10108,18 @@ def get_all_entities_identity_providers( '_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) + return self.get_all_entities_jwks_endpoint.call_with_http_info(**kwargs) - def get_all_entities_jwks( + def get_all_entities_llm_endpoints( self, **kwargs ): - """Get all Jwks # noqa: E501 + """Get all LLM endpoint entities # 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_jwks(async_req=True) + >>> thread = api.get_all_entities_llm_endpoints(async_req=True) >>> result = thread.get() @@ -9515,7 +10161,7 @@ def get_all_entities_jwks( async_req (bool): execute request asynchronously Returns: - JsonApiJwkOutList + JsonApiLlmEndpointOutList If the method is called asynchronously, returns the request thread. """ @@ -9544,18 +10190,18 @@ 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_llm_endpoints_endpoint.call_with_http_info(**kwargs) - def get_all_entities_llm_endpoints( + def get_all_entities_llm_providers( self, **kwargs ): - """Get all LLM endpoint entities # noqa: E501 + """Get all LLM Provider 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) + >>> thread = api.get_all_entities_llm_providers(async_req=True) >>> result = thread.get() @@ -9597,7 +10243,7 @@ def get_all_entities_llm_endpoints( async_req (bool): execute request asynchronously Returns: - JsonApiLlmEndpointOutList + JsonApiLlmProviderOutList If the method is called asynchronously, returns the request thread. """ @@ -9626,7 +10272,7 @@ def get_all_entities_llm_endpoints( '_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) + return self.get_all_entities_llm_providers_endpoint.call_with_http_info(**kwargs) def get_all_entities_notification_channel_identifiers( self, @@ -11127,6 +11773,89 @@ def get_entity_llm_endpoints( id return self.get_entity_llm_endpoints_endpoint.call_with_http_info(**kwargs) + def get_entity_llm_providers( + self, + id, + **kwargs + ): + """Get LLM Provider 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_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: + JsonApiLlmProviderOutDocument + 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_providers_endpoint.call_with_http_info(**kwargs) + def get_entity_notification_channel_identifiers( self, id, @@ -12498,6 +13227,93 @@ def patch_entity_llm_endpoints( json_api_llm_endpoint_patch_document return self.patch_entity_llm_endpoints_endpoint.call_with_http_info(**kwargs) + def patch_entity_llm_providers( + self, + id, + json_api_llm_provider_patch_document, + **kwargs + ): + """Patch LLM Provider 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_providers(id, json_api_llm_provider_patch_document, async_req=True) + >>> result = thread.get() + + Args: + id (str): + json_api_llm_provider_patch_document (JsonApiLlmProviderPatchDocument): + + 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: + JsonApiLlmProviderOutDocument + 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_provider_patch_document'] = \ + json_api_llm_provider_patch_document + return self.patch_entity_llm_providers_endpoint.call_with_http_info(**kwargs) + def patch_entity_notification_channels( self, id, @@ -13725,6 +14541,93 @@ def update_entity_llm_endpoints( json_api_llm_endpoint_in_document return self.update_entity_llm_endpoints_endpoint.call_with_http_info(**kwargs) + def update_entity_llm_providers( + self, + id, + json_api_llm_provider_in_document, + **kwargs + ): + """PUT LLM Provider 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_providers(id, json_api_llm_provider_in_document, async_req=True) + >>> result = thread.get() + + Args: + id (str): + json_api_llm_provider_in_document (JsonApiLlmProviderInDocument): + + 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: + JsonApiLlmProviderOutDocument + 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_provider_in_document'] = \ + json_api_llm_provider_in_document + return self.update_entity_llm_providers_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 10e2689f3..acd5cc343 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 @@ -35,6 +35,10 @@ 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.generate_description_request import GenerateDescriptionRequest +from gooddata_api_client.model.generate_description_response import GenerateDescriptionResponse +from gooddata_api_client.model.generate_title_request import GenerateTitleRequest +from gooddata_api_client.model.generate_title_response import GenerateTitleResponse from gooddata_api_client.model.get_quality_issues_response import GetQualityIssuesResponse from gooddata_api_client.model.memory_item_created_by_users import MemoryItemCreatedByUsers from gooddata_api_client.model.quality_issues_calculation_status_response import QualityIssuesCalculationStatusResponse @@ -42,6 +46,8 @@ 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 +from gooddata_api_client.model.test_llm_provider_definition_request import TestLlmProviderDefinitionRequest +from gooddata_api_client.model.test_llm_provider_response import TestLlmProviderResponse from gooddata_api_client.model.trigger_quality_issues_calculation_response import TriggerQualityIssuesCalculationResponse from gooddata_api_client.model.validate_llm_endpoint_by_id_request import ValidateLLMEndpointByIdRequest from gooddata_api_client.model.validate_llm_endpoint_request import ValidateLLMEndpointRequest @@ -861,6 +867,132 @@ def __init__(self, api_client=None): }, api_client=api_client ) + self.generate_description_endpoint = _Endpoint( + settings={ + 'response_type': (GenerateDescriptionResponse,), + 'auth': [], + 'endpoint_path': '/api/v1/actions/workspaces/{workspaceId}/ai/analyticsCatalog/generateDescription', + 'operation_id': 'generate_description', + 'http_method': 'POST', + 'servers': None, + }, + params_map={ + 'all': [ + 'workspace_id', + 'generate_description_request', + ], + 'required': [ + 'workspace_id', + 'generate_description_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,), + 'generate_description_request': + (GenerateDescriptionRequest,), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + }, + 'location_map': { + 'workspace_id': 'path', + 'generate_description_request': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/json' + ], + 'content_type': [ + 'application/json' + ] + }, + api_client=api_client + ) + self.generate_title_endpoint = _Endpoint( + settings={ + 'response_type': (GenerateTitleResponse,), + 'auth': [], + 'endpoint_path': '/api/v1/actions/workspaces/{workspaceId}/ai/analyticsCatalog/generateTitle', + 'operation_id': 'generate_title', + 'http_method': 'POST', + 'servers': None, + }, + params_map={ + 'all': [ + 'workspace_id', + 'generate_title_request', + ], + 'required': [ + 'workspace_id', + 'generate_title_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,), + 'generate_title_request': + (GenerateTitleRequest,), + }, + 'attribute_map': { + 'workspace_id': 'workspaceId', + }, + 'location_map': { + 'workspace_id': 'path', + 'generate_title_request': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/json' + ], + 'content_type': [ + 'application/json' + ] + }, + api_client=api_client + ) self.get_quality_issues_endpoint = _Endpoint( settings={ 'response_type': (GetQualityIssuesResponse,), @@ -1147,6 +1279,105 @@ def __init__(self, api_client=None): }, api_client=api_client ) + self.test_llm_provider_endpoint = _Endpoint( + settings={ + 'response_type': (TestLlmProviderResponse,), + 'auth': [], + 'endpoint_path': '/api/v1/actions/ai/llmProvider/test', + 'operation_id': 'test_llm_provider', + 'http_method': 'POST', + 'servers': None, + }, + params_map={ + 'all': [ + 'test_llm_provider_definition_request', + ], + 'required': [ + 'test_llm_provider_definition_request', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'test_llm_provider_definition_request': + (TestLlmProviderDefinitionRequest,), + }, + 'attribute_map': { + }, + 'location_map': { + 'test_llm_provider_definition_request': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/json' + ], + 'content_type': [ + 'application/json' + ] + }, + api_client=api_client + ) + self.test_llm_provider_by_id_endpoint = _Endpoint( + settings={ + 'response_type': (TestLlmProviderResponse,), + 'auth': [], + 'endpoint_path': '/api/v1/actions/ai/llmProvider/{llmProviderId}/test', + 'operation_id': 'test_llm_provider_by_id', + 'http_method': 'POST', + 'servers': None, + }, + params_map={ + 'all': [ + 'llm_provider_id', + ], + 'required': [ + 'llm_provider_id', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'llm_provider_id': + (str,), + }, + 'attribute_map': { + 'llm_provider_id': 'llmProviderId', + }, + 'location_map': { + 'llm_provider_id': 'path', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/json' + ], + 'content_type': [], + }, + api_client=api_client + ) self.trigger_quality_issues_calculation_endpoint = _Endpoint( settings={ 'response_type': (TriggerQualityIssuesCalculationResponse,), @@ -2366,6 +2597,180 @@ def forecast_result( result_id return self.forecast_result_endpoint.call_with_http_info(**kwargs) + def generate_description( + self, + workspace_id, + generate_description_request, + **kwargs + ): + """Generate Description for Analytics Object # noqa: E501 + + Generates a description for the specified analytics object. Returns description and a note with details if generation was not performed. # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.generate_description(workspace_id, generate_description_request, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): Workspace identifier + generate_description_request (GenerateDescriptionRequest): + + 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: + GenerateDescriptionResponse + 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['generate_description_request'] = \ + generate_description_request + return self.generate_description_endpoint.call_with_http_info(**kwargs) + + def generate_title( + self, + workspace_id, + generate_title_request, + **kwargs + ): + """Generate Title for Analytics Object # noqa: E501 + + Generates a title for the specified analytics object. Returns title and a note with details if generation was not performed. # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.generate_title(workspace_id, generate_title_request, async_req=True) + >>> result = thread.get() + + Args: + workspace_id (str): Workspace identifier + generate_title_request (GenerateTitleRequest): + + 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: + GenerateTitleResponse + 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['generate_title_request'] = \ + generate_title_request + return self.generate_title_endpoint.call_with_http_info(**kwargs) + def get_quality_issues( self, workspace_id, @@ -2785,6 +3190,172 @@ def tags( workspace_id return self.tags_endpoint.call_with_http_info(**kwargs) + def test_llm_provider( + self, + test_llm_provider_definition_request, + **kwargs + ): + """Test LLM Provider # noqa: E501 + + Tests LLM provider connectivity with a full definition. # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.test_llm_provider(test_llm_provider_definition_request, async_req=True) + >>> result = thread.get() + + Args: + test_llm_provider_definition_request (TestLlmProviderDefinitionRequest): + + 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: + TestLlmProviderResponse + 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['test_llm_provider_definition_request'] = \ + test_llm_provider_definition_request + return self.test_llm_provider_endpoint.call_with_http_info(**kwargs) + + def test_llm_provider_by_id( + self, + llm_provider_id, + **kwargs + ): + """Test LLM Provider By Id # noqa: E501 + + Tests an existing LLM provider connectivity by its ID. # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + + >>> thread = api.test_llm_provider_by_id(llm_provider_id, async_req=True) + >>> result = thread.get() + + Args: + llm_provider_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: + TestLlmProviderResponse + 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['llm_provider_id'] = \ + llm_provider_id + return self.test_llm_provider_by_id_endpoint.call_with_http_info(**kwargs) + def trigger_quality_issues_calculation( self, workspace_id, diff --git a/gooddata-api-client/gooddata_api_client/api/visualization_object_api.py b/gooddata-api-client/gooddata_api_client/api/visualization_object_api.py index 619f56bed..917c6c617 100644 --- a/gooddata-api-client/gooddata_api_client/api/visualization_object_api.py +++ b/gooddata-api-client/gooddata_api_client/api/visualization_object_api.py @@ -88,6 +88,7 @@ def __init__(self, api_client=None): "DATASETS": "datasets", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", + "CERTIFIEDBY": "certifiedBy", "ALL": "ALL" }, ('meta_include',): { @@ -251,6 +252,7 @@ def __init__(self, api_client=None): "DATASETS": "datasets", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", + "CERTIFIEDBY": "certifiedBy", "ALL": "ALL" }, ('meta_include',): { @@ -367,6 +369,7 @@ def __init__(self, api_client=None): "DATASETS": "datasets", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", + "CERTIFIEDBY": "certifiedBy", "ALL": "ALL" }, ('meta_include',): { @@ -464,6 +467,7 @@ def __init__(self, api_client=None): "DATASETS": "datasets", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", + "CERTIFIEDBY": "certifiedBy", "ALL": "ALL" }, }, @@ -626,6 +630,7 @@ def __init__(self, api_client=None): "DATASETS": "datasets", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", + "CERTIFIEDBY": "certifiedBy", "ALL": "ALL" }, }, 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 d007ddc2f..9cfa5864e 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 @@ -175,6 +175,7 @@ def __init__(self, api_client=None): "DASHBOARDPLUGINS": "dashboardPlugins", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", + "CERTIFIEDBY": "certifiedBy", "ALL": "ALL" }, ('meta_include',): { @@ -1058,6 +1059,7 @@ def __init__(self, api_client=None): "DATASETS": "datasets", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", + "CERTIFIEDBY": "certifiedBy", "ALL": "ALL" }, ('meta_include',): { @@ -1247,6 +1249,7 @@ def __init__(self, api_client=None): "DATASETS": "datasets", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", + "CERTIFIEDBY": "certifiedBy", "ALL": "ALL" }, ('meta_include',): { @@ -2654,6 +2657,7 @@ def __init__(self, api_client=None): "DASHBOARDPLUGINS": "dashboardPlugins", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", + "CERTIFIEDBY": "certifiedBy", "ALL": "ALL" }, ('meta_include',): { @@ -4346,6 +4350,7 @@ def __init__(self, api_client=None): "DATASETS": "datasets", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", + "CERTIFIEDBY": "certifiedBy", "ALL": "ALL" }, ('meta_include',): { @@ -4597,6 +4602,7 @@ def __init__(self, api_client=None): "DATASETS": "datasets", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", + "CERTIFIEDBY": "certifiedBy", "ALL": "ALL" }, ('meta_include',): { @@ -5157,6 +5163,7 @@ def __init__(self, api_client=None): "DASHBOARDPLUGINS": "dashboardPlugins", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", + "CERTIFIEDBY": "certifiedBy", "ALL": "ALL" }, ('meta_include',): { @@ -6511,6 +6518,7 @@ def __init__(self, api_client=None): "DATASETS": "datasets", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", + "CERTIFIEDBY": "certifiedBy", "ALL": "ALL" }, ('meta_include',): { @@ -6716,6 +6724,7 @@ def __init__(self, api_client=None): "DATASETS": "datasets", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", + "CERTIFIEDBY": "certifiedBy", "ALL": "ALL" }, ('meta_include',): { @@ -7090,6 +7099,7 @@ def __init__(self, api_client=None): "DASHBOARDPLUGINS": "dashboardPlugins", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", + "CERTIFIEDBY": "certifiedBy", "ALL": "ALL" }, }, @@ -8263,6 +8273,7 @@ def __init__(self, api_client=None): "DATASETS": "datasets", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", + "CERTIFIEDBY": "certifiedBy", "ALL": "ALL" }, }, @@ -8440,6 +8451,7 @@ def __init__(self, api_client=None): "DATASETS": "datasets", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", + "CERTIFIEDBY": "certifiedBy", "ALL": "ALL" }, }, @@ -10391,6 +10403,7 @@ def __init__(self, api_client=None): "DASHBOARDPLUGINS": "dashboardPlugins", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", + "CERTIFIEDBY": "certifiedBy", "ALL": "ALL" }, }, @@ -11229,6 +11242,7 @@ def __init__(self, api_client=None): "DATASETS": "datasets", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", + "CERTIFIEDBY": "certifiedBy", "ALL": "ALL" }, }, @@ -11406,6 +11420,7 @@ def __init__(self, api_client=None): "DATASETS": "datasets", "CREATEDBY": "createdBy", "MODIFIEDBY": "modifiedBy", + "CERTIFIEDBY": "certifiedBy", "ALL": "ALL" }, }, diff --git a/gooddata-api-client/gooddata_api_client/api_client.py b/gooddata-api-client/gooddata_api_client/api_client.py index dbb71b472..15f1703cc 100644 --- a/gooddata-api-client/gooddata_api_client/api_client.py +++ b/gooddata-api-client/gooddata_api_client/api_client.py @@ -287,8 +287,10 @@ def sanitize_for_serialization(cls, obj): return obj.isoformat() elif isinstance(obj, ModelSimple): return cls.sanitize_for_serialization(obj.value) - elif isinstance(obj, (list, tuple)): + elif isinstance(obj, list): return [cls.sanitize_for_serialization(item) for item in obj] + elif isinstance(obj, tuple): + return tuple(cls.sanitize_for_serialization(item) for item in obj) if isinstance(obj, dict): return {key: cls.sanitize_for_serialization(val) for key, val in obj.items()} raise ApiValueError( diff --git a/gooddata-api-client/gooddata_api_client/apis/__init__.py b/gooddata-api-client/gooddata_api_client/apis/__init__.py index be24be63c..ef0cc377b 100644 --- a/gooddata-api-client/gooddata_api_client/apis/__init__.py +++ b/gooddata-api-client/gooddata_api_client/apis/__init__.py @@ -26,6 +26,7 @@ from gooddata_api_client.api.automations_api import AutomationsApi from gooddata_api_client.api.available_drivers_api import AvailableDriversApi from gooddata_api_client.api.csp_directives_api import CSPDirectivesApi +from gooddata_api_client.api.certification_api import CertificationApi from gooddata_api_client.api.computation_api import ComputationApi from gooddata_api_client.api.cookie_security_configuration_api import CookieSecurityConfigurationApi from gooddata_api_client.api.dashboards_api import DashboardsApi @@ -49,6 +50,7 @@ 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.llm_providers_api import LLMProvidersApi from gooddata_api_client.api.labels_api import LabelsApi from gooddata_api_client.api.manage_permissions_api import ManagePermissionsApi from gooddata_api_client.api.metadata_check_api import MetadataCheckApi diff --git a/gooddata-api-client/gooddata_api_client/model/aac_dashboard_with_tabs.py b/gooddata-api-client/gooddata_api_client/model/aac_dashboard_with_tabs.py index d5666c030..9e7c474ef 100644 --- a/gooddata-api-client/gooddata_api_client/model/aac_dashboard_with_tabs.py +++ b/gooddata-api-client/gooddata_api_client/model/aac_dashboard_with_tabs.py @@ -33,12 +33,10 @@ def lazy_import(): from gooddata_api_client.model.aac_dashboard_filter import AacDashboardFilter from gooddata_api_client.model.aac_dashboard_permissions import AacDashboardPermissions - from gooddata_api_client.model.aac_dashboard_plugin_link import AacDashboardPluginLink from gooddata_api_client.model.aac_section import AacSection from gooddata_api_client.model.aac_tab import AacTab globals()['AacDashboardFilter'] = AacDashboardFilter globals()['AacDashboardPermissions'] = AacDashboardPermissions - globals()['AacDashboardPluginLink'] = AacDashboardPluginLink globals()['AacSection'] = AacSection globals()['AacTab'] = AacTab diff --git a/gooddata-api-client/gooddata_api_client/model/aac_dashboard_without_tabs.py b/gooddata-api-client/gooddata_api_client/model/aac_dashboard_without_tabs.py index 6c0556f01..367bd29cb 100644 --- a/gooddata-api-client/gooddata_api_client/model/aac_dashboard_without_tabs.py +++ b/gooddata-api-client/gooddata_api_client/model/aac_dashboard_without_tabs.py @@ -33,12 +33,10 @@ def lazy_import(): from gooddata_api_client.model.aac_dashboard_filter import AacDashboardFilter from gooddata_api_client.model.aac_dashboard_permissions import AacDashboardPermissions - from gooddata_api_client.model.aac_dashboard_plugin_link import AacDashboardPluginLink from gooddata_api_client.model.aac_section import AacSection from gooddata_api_client.model.aac_tab import AacTab globals()['AacDashboardFilter'] = AacDashboardFilter globals()['AacDashboardPermissions'] = AacDashboardPermissions - globals()['AacDashboardPluginLink'] = AacDashboardPluginLink globals()['AacSection'] = AacSection globals()['AacTab'] = AacTab diff --git a/gooddata-api-client/gooddata_api_client/model/absolute_date_filter_absolute_date_filter.py b/gooddata-api-client/gooddata_api_client/model/absolute_date_filter_absolute_date_filter.py index e8c58c77c..44320c1d5 100644 --- a/gooddata-api-client/gooddata_api_client/model/absolute_date_filter_absolute_date_filter.py +++ b/gooddata-api-client/gooddata_api_client/model/absolute_date_filter_absolute_date_filter.py @@ -104,10 +104,10 @@ def openapi_types(): lazy_import() return { 'dataset': (AfmObjectIdentifierDataset,), # noqa: E501 - 'empty_value_handling': (str,), # noqa: E501 '_from': (str,), # noqa: E501 'to': (str,), # noqa: E501 'apply_on_result': (bool,), # noqa: E501 + 'empty_value_handling': (str,), # noqa: E501 'local_identifier': (str,), # noqa: E501 } @@ -118,10 +118,10 @@ def discriminator(): attribute_map = { 'dataset': 'dataset', # noqa: E501 - 'empty_value_handling': 'emptyValueHandling', # noqa: E501 '_from': 'from', # noqa: E501 'to': 'to', # noqa: E501 'apply_on_result': 'applyOnResult', # noqa: E501 + 'empty_value_handling': 'emptyValueHandling', # noqa: E501 'local_identifier': 'localIdentifier', # noqa: E501 } @@ -172,6 +172,7 @@ def _from_openapi_data(cls, dataset, _from, to, *args, **kwargs): # noqa: E501 through its discriminator because we passed in _visited_composed_classes = (Animal,) apply_on_result (bool): [optional] # noqa: E501 + empty_value_handling (str): Specifies how rows with empty (null/missing) date values should be handled. INCLUDE includes empty dates in addition to the date range restriction, EXCLUDE removes rows with empty dates (default), ONLY keeps only rows with empty dates.. [optional] if omitted the server will use the default value of "EXCLUDE" # noqa: E501 local_identifier (str): [optional] # noqa: E501 """ @@ -267,6 +268,7 @@ def __init__(self, dataset, _from, to, *args, **kwargs): # noqa: E501 through its discriminator because we passed in _visited_composed_classes = (Animal,) apply_on_result (bool): [optional] # noqa: E501 + empty_value_handling (str): Specifies how rows with empty (null/missing) date values should be handled. INCLUDE includes empty dates in addition to the date range restriction, EXCLUDE removes rows with empty dates (default), ONLY keeps only rows with empty dates.. [optional] if omitted the server will use the default value of "EXCLUDE" # noqa: E501 local_identifier (str): [optional] # noqa: E501 """ diff --git a/gooddata-api-client/gooddata_api_client/model/afm.py b/gooddata-api-client/gooddata_api_client/model/afm.py index 97eb90fd3..b8a29d7f9 100644 --- a/gooddata-api-client/gooddata_api_client/model/afm.py +++ b/gooddata-api-client/gooddata_api_client/model/afm.py @@ -34,9 +34,11 @@ def lazy_import(): from gooddata_api_client.model.afm_filters_inner import AFMFiltersInner from gooddata_api_client.model.attribute_item import AttributeItem from gooddata_api_client.model.measure_item import MeasureItem + from gooddata_api_client.model.metric_definition_override import MetricDefinitionOverride globals()['AFMFiltersInner'] = AFMFiltersInner globals()['AttributeItem'] = AttributeItem globals()['MeasureItem'] = MeasureItem + globals()['MetricDefinitionOverride'] = MetricDefinitionOverride class AFM(ModelNormal): @@ -96,6 +98,7 @@ def openapi_types(): 'filters': ([AFMFiltersInner],), # noqa: E501 'measures': ([MeasureItem],), # noqa: E501 'aux_measures': ([MeasureItem],), # noqa: E501 + 'measure_definition_overrides': ([MetricDefinitionOverride],), # noqa: E501 } @cached_property @@ -108,6 +111,7 @@ def discriminator(): 'filters': 'filters', # noqa: E501 'measures': 'measures', # noqa: E501 'aux_measures': 'auxMeasures', # noqa: E501 + 'measure_definition_overrides': 'measureDefinitionOverrides', # noqa: E501 } read_only_vars = { @@ -157,6 +161,7 @@ def _from_openapi_data(cls, attributes, filters, measures, *args, **kwargs): # through its discriminator because we passed in _visited_composed_classes = (Animal,) aux_measures ([MeasureItem]): Metrics to be referenced from other AFM objects (e.g. filters) but not included in the result.. [optional] # noqa: E501 + measure_definition_overrides ([MetricDefinitionOverride]): (EXPERIMENTAL) Override definitions of catalog metrics for this request. Allows substituting a catalog metric's MAQL definition without modifying the stored definition.. [optional] # noqa: E501 """ _check_type = kwargs.pop('_check_type', True) @@ -251,6 +256,7 @@ def __init__(self, attributes, filters, measures, *args, **kwargs): # noqa: E50 through its discriminator because we passed in _visited_composed_classes = (Animal,) aux_measures ([MeasureItem]): Metrics to be referenced from other AFM objects (e.g. filters) but not included in the result.. [optional] # noqa: E501 + measure_definition_overrides ([MetricDefinitionOverride]): (EXPERIMENTAL) Override definitions of catalog metrics for this request. Allows substituting a catalog metric's MAQL definition without modifying the stored definition.. [optional] # noqa: E501 """ _check_type = kwargs.pop('_check_type', True) diff --git a/gooddata-api-client/gooddata_api_client/model/afm_filters_inner.py b/gooddata-api-client/gooddata_api_client/model/afm_filters_inner.py index 77add655b..f607f4068 100644 --- a/gooddata-api-client/gooddata_api_client/model/afm_filters_inner.py +++ b/gooddata-api-client/gooddata_api_client/model/afm_filters_inner.py @@ -32,8 +32,8 @@ def lazy_import(): from gooddata_api_client.model.absolute_date_filter_absolute_date_filter import AbsoluteDateFilterAbsoluteDateFilter - from gooddata_api_client.model.all_time_date_filter_all_time_date_filter import AllTimeDateFilterAllTimeDateFilter from gooddata_api_client.model.abstract_measure_value_filter import AbstractMeasureValueFilter + from gooddata_api_client.model.all_time_date_filter_all_time_date_filter import AllTimeDateFilterAllTimeDateFilter from gooddata_api_client.model.comparison_measure_value_filter_comparison_measure_value_filter import ComparisonMeasureValueFilterComparisonMeasureValueFilter from gooddata_api_client.model.compound_measure_value_filter_compound_measure_value_filter import CompoundMeasureValueFilterCompoundMeasureValueFilter from gooddata_api_client.model.filter_definition_for_simple_measure import FilterDefinitionForSimpleMeasure @@ -46,8 +46,8 @@ def lazy_import(): from gooddata_api_client.model.ranking_filter_ranking_filter import RankingFilterRankingFilter from gooddata_api_client.model.relative_date_filter_relative_date_filter import RelativeDateFilterRelativeDateFilter globals()['AbsoluteDateFilterAbsoluteDateFilter'] = AbsoluteDateFilterAbsoluteDateFilter - globals()['AllTimeDateFilterAllTimeDateFilter'] = AllTimeDateFilterAllTimeDateFilter globals()['AbstractMeasureValueFilter'] = AbstractMeasureValueFilter + globals()['AllTimeDateFilterAllTimeDateFilter'] = AllTimeDateFilterAllTimeDateFilter globals()['ComparisonMeasureValueFilterComparisonMeasureValueFilter'] = ComparisonMeasureValueFilterComparisonMeasureValueFilter globals()['CompoundMeasureValueFilterCompoundMeasureValueFilter'] = CompoundMeasureValueFilterCompoundMeasureValueFilter globals()['FilterDefinitionForSimpleMeasure'] = FilterDefinitionForSimpleMeasure @@ -112,8 +112,8 @@ def openapi_types(): 'compound_measure_value_filter': (CompoundMeasureValueFilterCompoundMeasureValueFilter,), # noqa: E501 'ranking_filter': (RankingFilterRankingFilter,), # noqa: E501 'absolute_date_filter': (AbsoluteDateFilterAbsoluteDateFilter,), # noqa: E501 - 'all_time_date_filter': (AllTimeDateFilterAllTimeDateFilter,), # noqa: E501 'relative_date_filter': (RelativeDateFilterRelativeDateFilter,), # noqa: E501 + 'all_time_date_filter': (AllTimeDateFilterAllTimeDateFilter,), # noqa: E501 'negative_attribute_filter': (NegativeAttributeFilterNegativeAttributeFilter,), # noqa: E501 'positive_attribute_filter': (PositiveAttributeFilterPositiveAttributeFilter,), # noqa: E501 'match_attribute_filter': (MatchAttributeFilterMatchAttributeFilter,), # noqa: E501 @@ -131,8 +131,8 @@ def discriminator(): 'compound_measure_value_filter': 'compoundMeasureValueFilter', # noqa: E501 'ranking_filter': 'rankingFilter', # noqa: E501 'absolute_date_filter': 'absoluteDateFilter', # noqa: E501 - 'all_time_date_filter': 'allTimeDateFilter', # noqa: E501 'relative_date_filter': 'relativeDateFilter', # noqa: E501 + 'all_time_date_filter': 'allTimeDateFilter', # noqa: E501 'negative_attribute_filter': 'negativeAttributeFilter', # noqa: E501 'positive_attribute_filter': 'positiveAttributeFilter', # noqa: E501 'match_attribute_filter': 'matchAttributeFilter', # noqa: E501 @@ -184,6 +184,7 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 ranking_filter (RankingFilterRankingFilter): [optional] # noqa: E501 absolute_date_filter (AbsoluteDateFilterAbsoluteDateFilter): [optional] # noqa: E501 relative_date_filter (RelativeDateFilterRelativeDateFilter): [optional] # noqa: E501 + all_time_date_filter (AllTimeDateFilterAllTimeDateFilter): [optional] # noqa: E501 negative_attribute_filter (NegativeAttributeFilterNegativeAttributeFilter): [optional] # noqa: E501 positive_attribute_filter (PositiveAttributeFilterPositiveAttributeFilter): [optional] # noqa: E501 match_attribute_filter (MatchAttributeFilterMatchAttributeFilter): [optional] # noqa: E501 @@ -297,6 +298,7 @@ def __init__(self, *args, **kwargs): # noqa: E501 ranking_filter (RankingFilterRankingFilter): [optional] # noqa: E501 absolute_date_filter (AbsoluteDateFilterAbsoluteDateFilter): [optional] # noqa: E501 relative_date_filter (RelativeDateFilterRelativeDateFilter): [optional] # noqa: E501 + all_time_date_filter (AllTimeDateFilterAllTimeDateFilter): [optional] # noqa: E501 negative_attribute_filter (NegativeAttributeFilterNegativeAttributeFilter): [optional] # noqa: E501 positive_attribute_filter (PositiveAttributeFilterPositiveAttributeFilter): [optional] # noqa: E501 match_attribute_filter (MatchAttributeFilterMatchAttributeFilter): [optional] # noqa: E501 diff --git a/gooddata-api-client/gooddata_api_client/model/all_time_date_filter.py b/gooddata-api-client/gooddata_api_client/model/all_time_date_filter.py index 16c0cf4de..fda9edc8f 100644 --- a/gooddata-api-client/gooddata_api_client/model/all_time_date_filter.py +++ b/gooddata-api-client/gooddata_api_client/model/all_time_date_filter.py @@ -25,15 +25,14 @@ file_type, none_type, validate_get_composed_info, - OpenApiModel, + OpenApiModel ) from gooddata_api_client.exceptions import ApiAttributeError def lazy_import(): from gooddata_api_client.model.all_time_date_filter_all_time_date_filter import AllTimeDateFilterAllTimeDateFilter - - globals()["AllTimeDateFilterAllTimeDateFilter"] = AllTimeDateFilterAllTimeDateFilter + globals()['AllTimeDateFilterAllTimeDateFilter'] = AllTimeDateFilterAllTimeDateFilter class AllTimeDateFilter(ModelNormal): @@ -60,8 +59,11 @@ class AllTimeDateFilter(ModelNormal): as additional properties values. """ - allowed_values = {} - validations = {} + allowed_values = { + } + + validations = { + } @cached_property def additional_properties_type(): @@ -70,7 +72,7 @@ def additional_properties_type(): 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 + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 _nullable = False @@ -86,18 +88,20 @@ def openapi_types(): """ lazy_import() return { - "all_time_date_filter": (AllTimeDateFilterAllTimeDateFilter,), # noqa: E501 + 'all_time_date_filter': (AllTimeDateFilterAllTimeDateFilter,), # noqa: E501 } @cached_property def discriminator(): return None + attribute_map = { - "all_time_date_filter": "allTimeDateFilter", # noqa: E501 + 'all_time_date_filter': 'allTimeDateFilter', # noqa: E501 } - read_only_vars = {} + read_only_vars = { + } _composed_schemas = {} @@ -142,11 +146,11 @@ def _from_openapi_data(cls, all_time_date_filter, *args, **kwargs): # noqa: E50 _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", ()) + _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) @@ -156,8 +160,7 @@ def _from_openapi_data(cls, all_time_date_filter, *args, **kwargs): # noqa: E50 kwargs.update(arg) else: raise ApiTypeError( - "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." - % ( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( args, self.__class__.__name__, ), @@ -174,25 +177,23 @@ def _from_openapi_data(cls, all_time_date_filter, *args, **kwargs): # noqa: E50 self.all_time_date_filter = all_time_date_filter 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 - ): + 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 = { - "_data_store", - "_check_type", - "_spec_property_naming", - "_path_to_item", - "_configuration", - "_visited_composed_classes", - } + 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, all_time_date_filter, *args, **kwargs): # noqa: E501 @@ -234,11 +235,11 @@ def __init__(self, all_time_date_filter, *args, **kwargs): # noqa: E501 _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", ()) + _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: @@ -246,8 +247,7 @@ def __init__(self, all_time_date_filter, *args, **kwargs): # noqa: E501 kwargs.update(arg) else: raise ApiTypeError( - "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." - % ( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( args, self.__class__.__name__, ), @@ -264,18 +264,13 @@ def __init__(self, all_time_date_filter, *args, **kwargs): # noqa: E501 self.all_time_date_filter = all_time_date_filter 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 - ): + 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." - ) - + 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/all_time_date_filter_all_time_date_filter.py b/gooddata-api-client/gooddata_api_client/model/all_time_date_filter_all_time_date_filter.py index 71d4220fc..9b45c7a9c 100644 --- a/gooddata-api-client/gooddata_api_client/model/all_time_date_filter_all_time_date_filter.py +++ b/gooddata-api-client/gooddata_api_client/model/all_time_date_filter_all_time_date_filter.py @@ -25,15 +25,14 @@ file_type, none_type, validate_get_composed_info, - OpenApiModel, + OpenApiModel ) from gooddata_api_client.exceptions import ApiAttributeError def lazy_import(): from gooddata_api_client.model.afm_object_identifier_dataset import AfmObjectIdentifierDataset - - globals()["AfmObjectIdentifierDataset"] = AfmObjectIdentifierDataset + globals()['AfmObjectIdentifierDataset'] = AfmObjectIdentifierDataset class AllTimeDateFilterAllTimeDateFilter(ModelNormal): @@ -61,35 +60,36 @@ class AllTimeDateFilterAllTimeDateFilter(ModelNormal): """ allowed_values = { - ("empty_value_handling",): { - "INCLUDE": "INCLUDE", - "EXCLUDE": "EXCLUDE", - "ONLY": "ONLY", + ('empty_value_handling',): { + 'INCLUDE': "INCLUDE", + 'EXCLUDE': "EXCLUDE", + 'ONLY': "ONLY", }, - ("granularity",): { - "MINUTE": "MINUTE", - "HOUR": "HOUR", - "DAY": "DAY", - "WEEK": "WEEK", - "MONTH": "MONTH", - "QUARTER": "QUARTER", - "YEAR": "YEAR", - "MINUTE_OF_HOUR": "MINUTE_OF_HOUR", - "HOUR_OF_DAY": "HOUR_OF_DAY", - "DAY_OF_WEEK": "DAY_OF_WEEK", - "DAY_OF_MONTH": "DAY_OF_MONTH", - "DAY_OF_QUARTER": "DAY_OF_QUARTER", - "DAY_OF_YEAR": "DAY_OF_YEAR", - "WEEK_OF_YEAR": "WEEK_OF_YEAR", - "MONTH_OF_YEAR": "MONTH_OF_YEAR", - "QUARTER_OF_YEAR": "QUARTER_OF_YEAR", - "FISCAL_MONTH": "FISCAL_MONTH", - "FISCAL_QUARTER": "FISCAL_QUARTER", - "FISCAL_YEAR": "FISCAL_YEAR", + ('granularity',): { + 'MINUTE': "MINUTE", + 'HOUR': "HOUR", + 'DAY': "DAY", + 'WEEK': "WEEK", + 'MONTH': "MONTH", + 'QUARTER': "QUARTER", + 'YEAR': "YEAR", + 'MINUTE_OF_HOUR': "MINUTE_OF_HOUR", + 'HOUR_OF_DAY': "HOUR_OF_DAY", + 'DAY_OF_WEEK': "DAY_OF_WEEK", + 'DAY_OF_MONTH': "DAY_OF_MONTH", + 'DAY_OF_QUARTER': "DAY_OF_QUARTER", + 'DAY_OF_YEAR': "DAY_OF_YEAR", + 'WEEK_OF_YEAR': "WEEK_OF_YEAR", + 'MONTH_OF_YEAR': "MONTH_OF_YEAR", + 'QUARTER_OF_YEAR': "QUARTER_OF_YEAR", + 'FISCAL_MONTH': "FISCAL_MONTH", + 'FISCAL_QUARTER': "FISCAL_QUARTER", + 'FISCAL_YEAR': "FISCAL_YEAR", }, } - validations = {} + validations = { + } @cached_property def additional_properties_type(): @@ -98,7 +98,7 @@ def additional_properties_type(): 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 + return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 _nullable = False @@ -114,26 +114,28 @@ def openapi_types(): """ lazy_import() return { - "dataset": (AfmObjectIdentifierDataset,), # noqa: E501 - "granularity": (str,), # noqa: E501 - "empty_value_handling": (str,), # noqa: E501 - "apply_on_result": (bool,), # noqa: E501 - "local_identifier": (str,), # noqa: E501 + 'dataset': (AfmObjectIdentifierDataset,), # noqa: E501 + 'apply_on_result': (bool,), # noqa: E501 + 'empty_value_handling': (str,), # noqa: E501 + 'granularity': (str,), # noqa: E501 + 'local_identifier': (str,), # noqa: E501 } @cached_property def discriminator(): return None + attribute_map = { - "dataset": "dataset", # noqa: E501 - "granularity": "granularity", # noqa: E501 - "empty_value_handling": "emptyValueHandling", # noqa: E501 - "apply_on_result": "applyOnResult", # noqa: E501 - "local_identifier": "localIdentifier", # noqa: E501 + 'dataset': 'dataset', # noqa: E501 + 'apply_on_result': 'applyOnResult', # noqa: E501 + 'empty_value_handling': 'emptyValueHandling', # noqa: E501 + 'granularity': 'granularity', # noqa: E501 + 'local_identifier': 'localIdentifier', # noqa: E501 } - read_only_vars = {} + read_only_vars = { + } _composed_schemas = {} @@ -165,17 +167,28 @@ def _from_openapi_data(cls, dataset, *args, **kwargs): # noqa: E501 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,) apply_on_result (bool): [optional] # noqa: E501 - empty_value_handling (str): [optional] # noqa: E501 - granularity (str): [optional] # noqa: E501 + empty_value_handling (str): Specifies how rows with empty (null/missing) date values should be handled. INCLUDE means no filtering effect (default), EXCLUDE removes rows with null dates, ONLY keeps only rows with null dates.. [optional] if omitted the server will use the default value of "INCLUDE" # noqa: E501 + granularity (str): Date granularity used to resolve the date attribute label for null value checks. Defaults to DAY if not specified.. [optional] if omitted the server will use the default value of "DAY" # noqa: E501 local_identifier (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", ()) + _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) @@ -185,8 +198,7 @@ def _from_openapi_data(cls, dataset, *args, **kwargs): # noqa: E501 kwargs.update(arg) else: raise ApiTypeError( - "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." - % ( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( args, self.__class__.__name__, ), @@ -203,25 +215,23 @@ def _from_openapi_data(cls, dataset, *args, **kwargs): # noqa: E501 self.dataset = dataset 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 - ): + 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 = { - "_data_store", - "_check_type", - "_spec_property_naming", - "_path_to_item", - "_configuration", - "_visited_composed_classes", - } + 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, dataset, *args, **kwargs): # noqa: E501 @@ -250,17 +260,28 @@ def __init__(self, dataset, *args, **kwargs): # noqa: E501 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,) apply_on_result (bool): [optional] # noqa: E501 - empty_value_handling (str): [optional] # noqa: E501 - granularity (str): [optional] # noqa: E501 + empty_value_handling (str): Specifies how rows with empty (null/missing) date values should be handled. INCLUDE means no filtering effect (default), EXCLUDE removes rows with null dates, ONLY keeps only rows with null dates.. [optional] if omitted the server will use the default value of "INCLUDE" # noqa: E501 + granularity (str): Date granularity used to resolve the date attribute label for null value checks. Defaults to DAY if not specified.. [optional] if omitted the server will use the default value of "DAY" # noqa: E501 local_identifier (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", ()) + _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: @@ -268,8 +289,7 @@ def __init__(self, dataset, *args, **kwargs): # noqa: E501 kwargs.update(arg) else: raise ApiTypeError( - "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." - % ( + "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( args, self.__class__.__name__, ), @@ -286,18 +306,13 @@ def __init__(self, dataset, *args, **kwargs): # noqa: E501 self.dataset = dataset 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 - ): + 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." - ) - + 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/anomaly_detection_config.py b/gooddata-api-client/gooddata_api_client/model/anomaly_detection_config.py new file mode 100644 index 000000000..40d6f718b --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/anomaly_detection_config.py @@ -0,0 +1,275 @@ +""" + 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 AnomalyDetectionConfig(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 = { + ('sensitivity',): { + 'LOW': "LOW", + 'MEDIUM': "MEDIUM", + 'HIGH': "HIGH", + }, + } + + 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 { + 'sensitivity': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'sensitivity': 'sensitivity', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, sensitivity, *args, **kwargs): # noqa: E501 + """AnomalyDetectionConfig - a model defined in OpenAPI + + Args: + sensitivity (str): Outlier sensitivity level. + + 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.sensitivity = sensitivity + 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, sensitivity, *args, **kwargs): # noqa: E501 + """AnomalyDetectionConfig - a model defined in OpenAPI + + Args: + sensitivity (str): Outlier sensitivity level. + + 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.sensitivity = sensitivity + 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_notification.py b/gooddata-api-client/gooddata_api_client/model/automation_notification.py index 461a3f29a..5abe385de 100644 --- a/gooddata-api-client/gooddata_api_client/model/automation_notification.py +++ b/gooddata-api-client/gooddata_api_client/model/automation_notification.py @@ -31,15 +31,11 @@ def lazy_import(): - from gooddata_api_client.model.automation_notification import AutomationNotification from gooddata_api_client.model.automation_notification_all_of import AutomationNotificationAllOf from gooddata_api_client.model.notification_content import NotificationContent - from gooddata_api_client.model.test_notification import TestNotification from gooddata_api_client.model.webhook_message import WebhookMessage - globals()['AutomationNotification'] = AutomationNotification globals()['AutomationNotificationAllOf'] = AutomationNotificationAllOf globals()['NotificationContent'] = NotificationContent - globals()['TestNotification'] = TestNotification globals()['WebhookMessage'] = WebhookMessage @@ -102,10 +98,7 @@ def openapi_types(): @cached_property def discriminator(): - lazy_import() val = { - 'AUTOMATION': AutomationNotification, - 'TEST': TestNotification, } if not val: return None diff --git a/gooddata-api-client/gooddata_api_client/model/aws_bedrock_access_key_auth.py b/gooddata-api-client/gooddata_api_client/model/aws_bedrock_access_key_auth.py new file mode 100644 index 000000000..3277635c8 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/aws_bedrock_access_key_auth.py @@ -0,0 +1,346 @@ +""" + 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.aws_bedrock_access_key_auth_all_of import AwsBedrockAccessKeyAuthAllOf + globals()['AwsBedrockAccessKeyAuthAllOf'] = AwsBedrockAccessKeyAuthAllOf + + +class AwsBedrockAccessKeyAuth(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',): { + 'ACCESS_KEY': "ACCESS_KEY", + }, + } + + validations = { + ('access_key_id',): { + 'max_length': 255, + }, + ('secret_access_key',): { + 'max_length': 10000, + }, + ('session_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 + """ + 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 + 'access_key_id': (str, none_type,), # noqa: E501 + 'secret_access_key': (str, none_type,), # noqa: E501 + 'session_token': (str, none_type,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'type': 'type', # noqa: E501 + 'access_key_id': 'accessKeyId', # noqa: E501 + 'secret_access_key': 'secretAccessKey', # noqa: E501 + 'session_token': 'sessionToken', # noqa: E501 + } + + read_only_vars = { + } + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 + """AwsBedrockAccessKeyAuth - a model defined in OpenAPI + + Keyword Args: + type (str): Authentication type.. defaults to "ACCESS_KEY", must be one of ["ACCESS_KEY", ] # 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,) + access_key_id (str, none_type): AWS Access Key ID.. [optional] # noqa: E501 + secret_access_key (str, none_type): AWS Secret Access Key.. [optional] # noqa: E501 + session_token (str, none_type): AWS Session Token (for temporary credentials).. [optional] # noqa: E501 + """ + + type = kwargs.get('type', "ACCESS_KEY") + _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 + """AwsBedrockAccessKeyAuth - a model defined in OpenAPI + + Keyword Args: + type (str): Authentication type.. defaults to "ACCESS_KEY", must be one of ["ACCESS_KEY", ] # 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,) + access_key_id (str, none_type): AWS Access Key ID.. [optional] # noqa: E501 + secret_access_key (str, none_type): AWS Secret Access Key.. [optional] # noqa: E501 + session_token (str, none_type): AWS Session Token (for temporary credentials).. [optional] # noqa: E501 + """ + + type = kwargs.get('type', "ACCESS_KEY") + _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': [ + AwsBedrockAccessKeyAuthAllOf, + ], + 'oneOf': [ + ], + } diff --git a/gooddata-api-client/gooddata_api_client/model/aws_bedrock_access_key_auth_all_of.py b/gooddata-api-client/gooddata_api_client/model/aws_bedrock_access_key_auth_all_of.py new file mode 100644 index 000000000..606ab6020 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/aws_bedrock_access_key_auth_all_of.py @@ -0,0 +1,288 @@ +""" + 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 AwsBedrockAccessKeyAuthAllOf(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',): { + 'ACCESS_KEY': "ACCESS_KEY", + }, + } + + validations = { + ('access_key_id',): { + 'max_length': 255, + }, + ('secret_access_key',): { + 'max_length': 10000, + }, + ('session_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 { + 'access_key_id': (str, none_type,), # noqa: E501 + 'secret_access_key': (str, none_type,), # noqa: E501 + 'session_token': (str, none_type,), # noqa: E501 + 'type': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'access_key_id': 'accessKeyId', # noqa: E501 + 'secret_access_key': 'secretAccessKey', # noqa: E501 + 'session_token': 'sessionToken', # 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 + """AwsBedrockAccessKeyAuthAllOf - 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,) + access_key_id (str, none_type): AWS Access Key ID.. [optional] # noqa: E501 + secret_access_key (str, none_type): AWS Secret Access Key.. [optional] # noqa: E501 + session_token (str, none_type): AWS Session Token (for temporary credentials).. [optional] # noqa: E501 + type (str): Authentication type.. [optional] if omitted the server will use the default value of "ACCESS_KEY" # 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 + """AwsBedrockAccessKeyAuthAllOf - 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,) + access_key_id (str, none_type): AWS Access Key ID.. [optional] # noqa: E501 + secret_access_key (str, none_type): AWS Secret Access Key.. [optional] # noqa: E501 + session_token (str, none_type): AWS Session Token (for temporary credentials).. [optional] # noqa: E501 + type (str): Authentication type.. [optional] if omitted the server will use the default value of "ACCESS_KEY" # 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/aws_bedrock_provider_config.py b/gooddata-api-client/gooddata_api_client/model/aws_bedrock_provider_config.py new file mode 100644 index 000000000..d005dc3c0 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/aws_bedrock_provider_config.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.bedrock_provider_auth import BedrockProviderAuth + globals()['BedrockProviderAuth'] = BedrockProviderAuth + + +class AwsBedrockProviderConfig(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',): { + 'AWS_BEDROCK': "AWS_BEDROCK", + }, + } + + validations = { + ('region',): { + '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 { + 'auth': (BedrockProviderAuth,), # noqa: E501 + 'region': (str,), # noqa: E501 + 'type': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'auth': 'auth', # noqa: E501 + 'region': 'region', # noqa: E501 + 'type': 'type', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, auth, region, *args, **kwargs): # noqa: E501 + """AwsBedrockProviderConfig - a model defined in OpenAPI + + Args: + auth (BedrockProviderAuth): + region (str): AWS region for Bedrock. + + Keyword Args: + type (str): Provider type.. defaults to "AWS_BEDROCK", must be one of ["AWS_BEDROCK", ] # 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', "AWS_BEDROCK") + _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.auth = auth + self.region = region + 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, auth, region, *args, **kwargs): # noqa: E501 + """AwsBedrockProviderConfig - a model defined in OpenAPI + + Args: + auth (BedrockProviderAuth): + region (str): AWS region for Bedrock. + + Keyword Args: + type (str): Provider type.. defaults to "AWS_BEDROCK", must be one of ["AWS_BEDROCK", ] # 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', "AWS_BEDROCK") + _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.auth = auth + self.region = region + 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/azure_foundry_api_key_auth.py b/gooddata-api-client/gooddata_api_client/model/azure_foundry_api_key_auth.py new file mode 100644 index 000000000..ae15cd641 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/azure_foundry_api_key_auth.py @@ -0,0 +1,332 @@ +""" + 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.azure_foundry_api_key_auth_all_of import AzureFoundryApiKeyAuthAllOf + globals()['AzureFoundryApiKeyAuthAllOf'] = AzureFoundryApiKeyAuthAllOf + + +class AzureFoundryApiKeyAuth(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',): { + 'API_KEY': "API_KEY", + }, + } + + validations = { + ('api_key',): { + '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 { + 'type': (str,), # noqa: E501 + 'api_key': (str, none_type,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'type': 'type', # noqa: E501 + 'api_key': 'apiKey', # noqa: E501 + } + + read_only_vars = { + } + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 + """AzureFoundryApiKeyAuth - a model defined in OpenAPI + + Keyword Args: + type (str): Authentication type.. defaults to "API_KEY", must be one of ["API_KEY", ] # 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,) + api_key (str, none_type): Azure API key.. [optional] # noqa: E501 + """ + + type = kwargs.get('type', "API_KEY") + _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 + """AzureFoundryApiKeyAuth - a model defined in OpenAPI + + Keyword Args: + type (str): Authentication type.. defaults to "API_KEY", must be one of ["API_KEY", ] # 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,) + api_key (str, none_type): Azure API key.. [optional] # noqa: E501 + """ + + type = kwargs.get('type', "API_KEY") + _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': [ + AzureFoundryApiKeyAuthAllOf, + ], + 'oneOf': [ + ], + } diff --git a/gooddata-api-client/gooddata_api_client/model/azure_foundry_api_key_auth_all_of.py b/gooddata-api-client/gooddata_api_client/model/azure_foundry_api_key_auth_all_of.py new file mode 100644 index 000000000..600ea1c53 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/azure_foundry_api_key_auth_all_of.py @@ -0,0 +1,274 @@ +""" + 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 AzureFoundryApiKeyAuthAllOf(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',): { + 'API_KEY': "API_KEY", + }, + } + + validations = { + ('api_key',): { + '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 { + 'api_key': (str, none_type,), # noqa: E501 + 'type': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'api_key': 'apiKey', # 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 + """AzureFoundryApiKeyAuthAllOf - 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,) + api_key (str, none_type): Azure API key.. [optional] # noqa: E501 + type (str): Authentication type.. [optional] if omitted the server will use the default value of "API_KEY" # 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 + """AzureFoundryApiKeyAuthAllOf - 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,) + api_key (str, none_type): Azure API key.. [optional] # noqa: E501 + type (str): Authentication type.. [optional] if omitted the server will use the default value of "API_KEY" # 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/azure_foundry_provider_auth.py b/gooddata-api-client/gooddata_api_client/model/azure_foundry_provider_auth.py new file mode 100644 index 000000000..bfdebba63 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/azure_foundry_provider_auth.py @@ -0,0 +1,330 @@ +""" + 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.azure_foundry_api_key_auth import AzureFoundryApiKeyAuth + globals()['AzureFoundryApiKeyAuth'] = AzureFoundryApiKeyAuth + + +class AzureFoundryProviderAuth(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',): { + 'API_KEY': "API_KEY", + }, + } + + validations = { + ('api_key',): { + '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 { + 'api_key': (str, none_type,), # noqa: E501 + 'type': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'api_key': 'apiKey', # 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 + """AzureFoundryProviderAuth - 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,) + api_key (str, none_type): Azure API key.. [optional] # noqa: E501 + type (str): Authentication type.. [optional] if omitted the server will use the default value of "API_KEY" # 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 + """AzureFoundryProviderAuth - 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,) + api_key (str, none_type): Azure API key.. [optional] # noqa: E501 + type (str): Authentication type.. [optional] if omitted the server will use the default value of "API_KEY" # 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': [ + AzureFoundryApiKeyAuth, + ], + } diff --git a/gooddata-api-client/gooddata_api_client/model/azure_foundry_provider_config.py b/gooddata-api-client/gooddata_api_client/model/azure_foundry_provider_config.py new file mode 100644 index 000000000..aef53e2ec --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/azure_foundry_provider_config.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.azure_foundry_provider_auth import AzureFoundryProviderAuth + globals()['AzureFoundryProviderAuth'] = AzureFoundryProviderAuth + + +class AzureFoundryProviderConfig(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',): { + 'AZURE_FOUNDRY': "AZURE_FOUNDRY", + }, + } + + validations = { + ('endpoint',): { + '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 { + 'auth': (AzureFoundryProviderAuth,), # noqa: E501 + 'endpoint': (str,), # noqa: E501 + 'type': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'auth': 'auth', # noqa: E501 + 'endpoint': 'endpoint', # noqa: E501 + 'type': 'type', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, auth, endpoint, *args, **kwargs): # noqa: E501 + """AzureFoundryProviderConfig - a model defined in OpenAPI + + Args: + auth (AzureFoundryProviderAuth): + endpoint (str): Azure AI inference endpoint URL. + + Keyword Args: + type (str): Provider type.. defaults to "AZURE_FOUNDRY", must be one of ["AZURE_FOUNDRY", ] # 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', "AZURE_FOUNDRY") + _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.auth = auth + self.endpoint = endpoint + 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, auth, endpoint, *args, **kwargs): # noqa: E501 + """AzureFoundryProviderConfig - a model defined in OpenAPI + + Args: + auth (AzureFoundryProviderAuth): + endpoint (str): Azure AI inference endpoint URL. + + Keyword Args: + type (str): Provider type.. defaults to "AZURE_FOUNDRY", must be one of ["AZURE_FOUNDRY", ] # 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', "AZURE_FOUNDRY") + _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.auth = auth + self.endpoint = endpoint + 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/bedrock_provider_auth.py b/gooddata-api-client/gooddata_api_client/model/bedrock_provider_auth.py new file mode 100644 index 000000000..a6fd2dda8 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/bedrock_provider_auth.py @@ -0,0 +1,344 @@ +""" + 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.aws_bedrock_access_key_auth import AwsBedrockAccessKeyAuth + globals()['AwsBedrockAccessKeyAuth'] = AwsBedrockAccessKeyAuth + + +class BedrockProviderAuth(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',): { + 'ACCESS_KEY': "ACCESS_KEY", + }, + } + + validations = { + ('access_key_id',): { + 'max_length': 255, + }, + ('secret_access_key',): { + 'max_length': 10000, + }, + ('session_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 + """ + 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 { + 'access_key_id': (str, none_type,), # noqa: E501 + 'secret_access_key': (str, none_type,), # noqa: E501 + 'session_token': (str, none_type,), # noqa: E501 + 'type': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'access_key_id': 'accessKeyId', # noqa: E501 + 'secret_access_key': 'secretAccessKey', # noqa: E501 + 'session_token': 'sessionToken', # 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 + """BedrockProviderAuth - 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,) + access_key_id (str, none_type): AWS Access Key ID.. [optional] # noqa: E501 + secret_access_key (str, none_type): AWS Secret Access Key.. [optional] # noqa: E501 + session_token (str, none_type): AWS Session Token (for temporary credentials).. [optional] # noqa: E501 + type (str): Authentication type.. [optional] if omitted the server will use the default value of "ACCESS_KEY" # 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 + """BedrockProviderAuth - 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,) + access_key_id (str, none_type): AWS Access Key ID.. [optional] # noqa: E501 + secret_access_key (str, none_type): AWS Secret Access Key.. [optional] # noqa: E501 + session_token (str, none_type): AWS Session Token (for temporary credentials).. [optional] # noqa: E501 + type (str): Authentication type.. [optional] if omitted the server will use the default value of "ACCESS_KEY" # 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': [ + AwsBedrockAccessKeyAuth, + ], + } diff --git a/gooddata-api-client/gooddata_api_client/model/change_analysis_params_filters_inner.py b/gooddata-api-client/gooddata_api_client/model/change_analysis_params_filters_inner.py index ca0be4dab..d9da67d55 100644 --- a/gooddata-api-client/gooddata_api_client/model/change_analysis_params_filters_inner.py +++ b/gooddata-api-client/gooddata_api_client/model/change_analysis_params_filters_inner.py @@ -33,6 +33,7 @@ def lazy_import(): 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.all_time_date_filter_all_time_date_filter import AllTimeDateFilterAllTimeDateFilter from gooddata_api_client.model.comparison_measure_value_filter_comparison_measure_value_filter import ComparisonMeasureValueFilterComparisonMeasureValueFilter from gooddata_api_client.model.compound_measure_value_filter_compound_measure_value_filter import CompoundMeasureValueFilterCompoundMeasureValueFilter from gooddata_api_client.model.filter_definition_for_simple_measure import FilterDefinitionForSimpleMeasure @@ -46,6 +47,7 @@ def lazy_import(): from gooddata_api_client.model.relative_date_filter_relative_date_filter import RelativeDateFilterRelativeDateFilter globals()['AbsoluteDateFilterAbsoluteDateFilter'] = AbsoluteDateFilterAbsoluteDateFilter globals()['AbstractMeasureValueFilter'] = AbstractMeasureValueFilter + globals()['AllTimeDateFilterAllTimeDateFilter'] = AllTimeDateFilterAllTimeDateFilter globals()['ComparisonMeasureValueFilterComparisonMeasureValueFilter'] = ComparisonMeasureValueFilterComparisonMeasureValueFilter globals()['CompoundMeasureValueFilterCompoundMeasureValueFilter'] = CompoundMeasureValueFilterCompoundMeasureValueFilter globals()['FilterDefinitionForSimpleMeasure'] = FilterDefinitionForSimpleMeasure @@ -118,6 +120,7 @@ def openapi_types(): 'ranking_filter': (RankingFilterRankingFilter,), # noqa: E501 'absolute_date_filter': (AbsoluteDateFilterAbsoluteDateFilter,), # noqa: E501 'relative_date_filter': (RelativeDateFilterRelativeDateFilter,), # noqa: E501 + 'all_time_date_filter': (AllTimeDateFilterAllTimeDateFilter,), # noqa: E501 'negative_attribute_filter': (NegativeAttributeFilterNegativeAttributeFilter,), # noqa: E501 'positive_attribute_filter': (PositiveAttributeFilterPositiveAttributeFilter,), # noqa: E501 'match_attribute_filter': (MatchAttributeFilterMatchAttributeFilter,), # noqa: E501 @@ -136,6 +139,7 @@ def discriminator(): 'ranking_filter': 'rankingFilter', # noqa: E501 'absolute_date_filter': 'absoluteDateFilter', # noqa: E501 'relative_date_filter': 'relativeDateFilter', # noqa: E501 + 'all_time_date_filter': 'allTimeDateFilter', # noqa: E501 'negative_attribute_filter': 'negativeAttributeFilter', # noqa: E501 'positive_attribute_filter': 'positiveAttributeFilter', # noqa: E501 'match_attribute_filter': 'matchAttributeFilter', # noqa: E501 @@ -187,6 +191,7 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 ranking_filter (RankingFilterRankingFilter): [optional] # noqa: E501 absolute_date_filter (AbsoluteDateFilterAbsoluteDateFilter): [optional] # noqa: E501 relative_date_filter (RelativeDateFilterRelativeDateFilter): [optional] # noqa: E501 + all_time_date_filter (AllTimeDateFilterAllTimeDateFilter): [optional] # noqa: E501 negative_attribute_filter (NegativeAttributeFilterNegativeAttributeFilter): [optional] # noqa: E501 positive_attribute_filter (PositiveAttributeFilterPositiveAttributeFilter): [optional] # noqa: E501 match_attribute_filter (MatchAttributeFilterMatchAttributeFilter): [optional] # noqa: E501 @@ -300,6 +305,7 @@ def __init__(self, *args, **kwargs): # noqa: E501 ranking_filter (RankingFilterRankingFilter): [optional] # noqa: E501 absolute_date_filter (AbsoluteDateFilterAbsoluteDateFilter): [optional] # noqa: E501 relative_date_filter (RelativeDateFilterRelativeDateFilter): [optional] # noqa: E501 + all_time_date_filter (AllTimeDateFilterAllTimeDateFilter): [optional] # noqa: E501 negative_attribute_filter (NegativeAttributeFilterNegativeAttributeFilter): [optional] # noqa: E501 positive_attribute_filter (PositiveAttributeFilterPositiveAttributeFilter): [optional] # noqa: E501 match_attribute_filter (MatchAttributeFilterMatchAttributeFilter): [optional] # noqa: E501 diff --git a/gooddata-api-client/gooddata_api_client/model/clustering_config.py b/gooddata-api-client/gooddata_api_client/model/clustering_config.py new file mode 100644 index 000000000..f0777d585 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/clustering_config.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 + + + +class ClusteringConfig(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 { + 'number_of_clusters': (int,), # noqa: E501 + 'threshold': (float,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'number_of_clusters': 'numberOfClusters', # noqa: E501 + 'threshold': 'threshold', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, number_of_clusters, threshold, *args, **kwargs): # noqa: E501 + """ClusteringConfig - a model defined in OpenAPI + + Args: + number_of_clusters (int): Number of clusters to create + threshold (float): Clustering algorithm threshold + + 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.number_of_clusters = number_of_clusters + 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, number_of_clusters, threshold, *args, **kwargs): # noqa: E501 + """ClusteringConfig - a model defined in OpenAPI + + Args: + number_of_clusters (int): Number of clusters to create + threshold (float): Clustering algorithm threshold + + 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.number_of_clusters = number_of_clusters + 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/create_knowledge_document_request_dto.py b/gooddata-api-client/gooddata_api_client/model/create_knowledge_document_request_dto.py new file mode 100644 index 000000000..7271da96c --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/create_knowledge_document_request_dto.py @@ -0,0 +1,288 @@ +""" + 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 CreateKnowledgeDocumentRequestDto(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 { + 'content': (str,), # noqa: E501 + 'filename': (str,), # noqa: E501 + 'page_boundaries': ([int],), # noqa: E501 + 'scopes': ([str],), # noqa: E501 + 'title': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'content': 'content', # noqa: E501 + 'filename': 'filename', # noqa: E501 + 'page_boundaries': 'pageBoundaries', # noqa: E501 + 'scopes': 'scopes', # noqa: E501 + 'title': 'title', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, content, filename, *args, **kwargs): # noqa: E501 + """CreateKnowledgeDocumentRequestDto - a model defined in OpenAPI + + Args: + content (str): + filename (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,) + page_boundaries ([int]): [optional] # noqa: E501 + scopes ([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__,) + + self.content = content + self.filename = filename + 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, filename, *args, **kwargs): # noqa: E501 + """CreateKnowledgeDocumentRequestDto - a model defined in OpenAPI + + Args: + content (str): + filename (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,) + page_boundaries ([int]): [optional] # noqa: E501 + scopes ([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__,) + + self.content = content + self.filename = filename + 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/create_knowledge_document_response_dto.py b/gooddata-api-client/gooddata_api_client/model/create_knowledge_document_response_dto.py new file mode 100644 index 000000000..be932eab3 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/create_knowledge_document_response_dto.py @@ -0,0 +1,288 @@ +""" + 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 CreateKnowledgeDocumentResponseDto(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 { + 'filename': (str,), # noqa: E501 + 'message': (str,), # noqa: E501 + 'num_chunks': (int,), # noqa: E501 + 'success': (bool,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'filename': 'filename', # noqa: E501 + 'message': 'message', # noqa: E501 + 'num_chunks': 'numChunks', # noqa: E501 + 'success': 'success', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, filename, message, num_chunks, success, *args, **kwargs): # noqa: E501 + """CreateKnowledgeDocumentResponseDto - a model defined in OpenAPI + + Args: + filename (str): + message (str): + num_chunks (int): + success (bool): + + 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.filename = filename + self.message = message + self.num_chunks = num_chunks + self.success = success + 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, filename, message, num_chunks, success, *args, **kwargs): # noqa: E501 + """CreateKnowledgeDocumentResponseDto - a model defined in OpenAPI + + Args: + filename (str): + message (str): + num_chunks (int): + success (bool): + + 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.filename = filename + self.message = message + self.num_chunks = num_chunks + self.success = success + 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 index ca10ad91e..37cb0b068 100644 --- a/gooddata-api-client/gooddata_api_client/model/created_visualization.py +++ b/gooddata-api-client/gooddata_api_client/model/created_visualization.py @@ -35,10 +35,12 @@ def lazy_import(): from gooddata_api_client.model.dim_attribute import DimAttribute from gooddata_api_client.model.metric import Metric from gooddata_api_client.model.suggestion import Suggestion + from gooddata_api_client.model.visualization_config import VisualizationConfig globals()['CreatedVisualizationFiltersInner'] = CreatedVisualizationFiltersInner globals()['DimAttribute'] = DimAttribute globals()['Metric'] = Metric globals()['Suggestion'] = Suggestion + globals()['VisualizationConfig'] = VisualizationConfig class CreatedVisualization(ModelNormal): @@ -73,6 +75,7 @@ class CreatedVisualization(ModelNormal): 'LINE': "LINE", 'PIE': "PIE", 'COLUMN': "COLUMN", + 'SCATTER': "SCATTER", }, } @@ -109,6 +112,7 @@ def openapi_types(): 'suggestions': ([Suggestion],), # noqa: E501 'title': (str,), # noqa: E501 'visualization_type': (str,), # noqa: E501 + 'config': (VisualizationConfig,), # noqa: E501 'saved_visualization_id': (str,), # noqa: E501 } @@ -125,6 +129,7 @@ def discriminator(): 'suggestions': 'suggestions', # noqa: E501 'title': 'title', # noqa: E501 'visualization_type': 'visualizationType', # noqa: E501 + 'config': 'config', # noqa: E501 'saved_visualization_id': 'savedVisualizationId', # noqa: E501 } @@ -178,6 +183,7 @@ def _from_openapi_data(cls, dimensionality, filters, id, metrics, suggestions, t Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) + config (VisualizationConfig): [optional] # noqa: E501 saved_visualization_id (str): Saved visualization ID.. [optional] # noqa: E501 """ @@ -280,6 +286,7 @@ def __init__(self, dimensionality, filters, id, metrics, suggestions, title, vis Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) + config (VisualizationConfig): [optional] # noqa: E501 saved_visualization_id (str): Saved visualization ID.. [optional] # noqa: E501 """ diff --git a/gooddata-api-client/gooddata_api_client/model/dashboard_date_filter_date_filter.py b/gooddata-api-client/gooddata_api_client/model/dashboard_date_filter_date_filter.py index d3c3f8b0d..9c8cd7287 100644 --- a/gooddata-api-client/gooddata_api_client/model/dashboard_date_filter_date_filter.py +++ b/gooddata-api-client/gooddata_api_client/model/dashboard_date_filter_date_filter.py @@ -96,6 +96,11 @@ class DashboardDateFilterDateFilter(ModelNormal): 'RELATIVE': "relative", 'ABSOLUTE': "absolute", }, + ('empty_value_handling',): { + 'INCLUDE': "INCLUDE", + 'EXCLUDE': "EXCLUDE", + 'ONLY': "ONLY", + }, } validations = { @@ -129,6 +134,7 @@ def openapi_types(): 'attribute': (IdentifierRef,), # noqa: E501 'bounded_filter': (RelativeBoundedDateFilter,), # noqa: E501 'data_set': (IdentifierRef,), # noqa: E501 + 'empty_value_handling': (str,), # noqa: E501 '_from': (AacDashboardFilterFrom,), # noqa: E501 'local_identifier': (str,), # noqa: E501 'to': (AacDashboardFilterFrom,), # noqa: E501 @@ -145,6 +151,7 @@ def discriminator(): 'attribute': 'attribute', # noqa: E501 'bounded_filter': 'boundedFilter', # noqa: E501 'data_set': 'dataSet', # noqa: E501 + 'empty_value_handling': 'emptyValueHandling', # noqa: E501 '_from': 'from', # noqa: E501 'local_identifier': 'localIdentifier', # noqa: E501 'to': 'to', # noqa: E501 @@ -198,6 +205,7 @@ def _from_openapi_data(cls, granularity, type, *args, **kwargs): # noqa: E501 attribute (IdentifierRef): [optional] # noqa: E501 bounded_filter (RelativeBoundedDateFilter): [optional] # noqa: E501 data_set (IdentifierRef): [optional] # noqa: E501 + empty_value_handling (str): [optional] # noqa: E501 _from (AacDashboardFilterFrom): [optional] # noqa: E501 local_identifier (str): [optional] # noqa: E501 to (AacDashboardFilterFrom): [optional] # noqa: E501 @@ -295,6 +303,7 @@ def __init__(self, granularity, type, *args, **kwargs): # noqa: E501 attribute (IdentifierRef): [optional] # noqa: E501 bounded_filter (RelativeBoundedDateFilter): [optional] # noqa: E501 data_set (IdentifierRef): [optional] # noqa: E501 + empty_value_handling (str): [optional] # noqa: E501 _from (AacDashboardFilterFrom): [optional] # noqa: E501 local_identifier (str): [optional] # noqa: E501 to (AacDashboardFilterFrom): [optional] # noqa: E501 diff --git a/gooddata-api-client/gooddata_api_client/model/date_filter.py b/gooddata-api-client/gooddata_api_client/model/date_filter.py index 08ea26a7c..b08077872 100644 --- a/gooddata-api-client/gooddata_api_client/model/date_filter.py +++ b/gooddata-api-client/gooddata_api_client/model/date_filter.py @@ -31,16 +31,16 @@ def lazy_import(): - from gooddata_api_client.model.all_time_date_filter import AllTimeDateFilter - from gooddata_api_client.model.all_time_date_filter_all_time_date_filter import AllTimeDateFilterAllTimeDateFilter 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.all_time_date_filter import AllTimeDateFilter + from gooddata_api_client.model.all_time_date_filter_all_time_date_filter import AllTimeDateFilterAllTimeDateFilter from gooddata_api_client.model.relative_date_filter import RelativeDateFilter from gooddata_api_client.model.relative_date_filter_relative_date_filter import RelativeDateFilterRelativeDateFilter - globals()['AllTimeDateFilter'] = AllTimeDateFilter - globals()['AllTimeDateFilterAllTimeDateFilter'] = AllTimeDateFilterAllTimeDateFilter globals()['AbsoluteDateFilter'] = AbsoluteDateFilter globals()['AbsoluteDateFilterAbsoluteDateFilter'] = AbsoluteDateFilterAbsoluteDateFilter + globals()['AllTimeDateFilter'] = AllTimeDateFilter + globals()['AllTimeDateFilterAllTimeDateFilter'] = AllTimeDateFilterAllTimeDateFilter globals()['RelativeDateFilter'] = RelativeDateFilter globals()['RelativeDateFilterRelativeDateFilter'] = RelativeDateFilterRelativeDateFilter @@ -98,9 +98,9 @@ def openapi_types(): """ lazy_import() return { - 'all_time_date_filter': (AllTimeDateFilterAllTimeDateFilter,), # noqa: E501 'absolute_date_filter': (AbsoluteDateFilterAbsoluteDateFilter,), # noqa: E501 'relative_date_filter': (RelativeDateFilterRelativeDateFilter,), # noqa: E501 + 'all_time_date_filter': (AllTimeDateFilterAllTimeDateFilter,), # noqa: E501 } @cached_property @@ -109,9 +109,9 @@ def discriminator(): attribute_map = { - 'all_time_date_filter': 'allTimeDateFilter', # noqa: E501 'absolute_date_filter': 'absoluteDateFilter', # noqa: E501 'relative_date_filter': 'relativeDateFilter', # noqa: E501 + 'all_time_date_filter': 'allTimeDateFilter', # noqa: E501 } read_only_vars = { @@ -155,6 +155,7 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 _visited_composed_classes = (Animal,) absolute_date_filter (AbsoluteDateFilterAbsoluteDateFilter): [optional] # noqa: E501 relative_date_filter (RelativeDateFilterRelativeDateFilter): [optional] # noqa: E501 + all_time_date_filter (AllTimeDateFilterAllTimeDateFilter): [optional] # noqa: E501 """ _check_type = kwargs.pop('_check_type', True) @@ -260,6 +261,7 @@ def __init__(self, *args, **kwargs): # noqa: E501 _visited_composed_classes = (Animal,) absolute_date_filter (AbsoluteDateFilterAbsoluteDateFilter): [optional] # noqa: E501 relative_date_filter (RelativeDateFilterRelativeDateFilter): [optional] # noqa: E501 + all_time_date_filter (AllTimeDateFilterAllTimeDateFilter): [optional] # noqa: E501 """ _check_type = kwargs.pop('_check_type', True) @@ -331,8 +333,8 @@ def _composed_schemas(): 'allOf': [ ], 'oneOf': [ - AllTimeDateFilter, AbsoluteDateFilter, + AllTimeDateFilter, RelativeDateFilter, ], } diff --git a/gooddata-api-client/gooddata_api_client/model/declarative_analytical_dashboard.py b/gooddata-api-client/gooddata_api_client/model/declarative_analytical_dashboard.py index cfe1618fd..448bf1bc4 100644 --- a/gooddata-api-client/gooddata_api_client/model/declarative_analytical_dashboard.py +++ b/gooddata-api-client/gooddata_api_client/model/declarative_analytical_dashboard.py @@ -64,6 +64,9 @@ class DeclarativeAnalyticalDashboard(ModelNormal): """ allowed_values = { + ('certification',): { + 'CERTIFIED': "CERTIFIED", + }, } validations = { @@ -75,6 +78,11 @@ class DeclarativeAnalyticalDashboard(ModelNormal): ('title',): { 'max_length': 255, }, + ('certified_at',): { + 'regex': { + 'pattern': r'[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}', # noqa: E501 + }, + }, ('created_at',): { 'regex': { 'pattern': r'[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}', # noqa: E501 @@ -121,6 +129,10 @@ def openapi_types(): 'content': (JsonNode,), # noqa: E501 'id': (str,), # noqa: E501 'title': (str,), # noqa: E501 + 'certification': (str,), # noqa: E501 + 'certification_message': (str, none_type,), # noqa: E501 + 'certified_at': (str, none_type,), # noqa: E501 + 'certified_by': (DeclarativeUserIdentifier,), # noqa: E501 'created_at': (str, none_type,), # noqa: E501 'created_by': (DeclarativeUserIdentifier,), # noqa: E501 'description': (str,), # noqa: E501 @@ -140,6 +152,10 @@ def discriminator(): 'content': 'content', # noqa: E501 'id': 'id', # noqa: E501 'title': 'title', # noqa: E501 + 'certification': 'certification', # noqa: E501 + 'certification_message': 'certificationMessage', # noqa: E501 + 'certified_at': 'certifiedAt', # noqa: E501 + 'certified_by': 'certifiedBy', # noqa: E501 'created_at': 'createdAt', # noqa: E501 'created_by': 'createdBy', # noqa: E501 'description': 'description', # noqa: E501 @@ -196,6 +212,10 @@ def _from_openapi_data(cls, content, id, title, *args, **kwargs): # noqa: E501 Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) + certification (str): Certification status of the entity.. [optional] if omitted the server will use the default value of "CERTIFIED" # noqa: E501 + certification_message (str, none_type): Optional message associated with the certification.. [optional] # noqa: E501 + certified_at (str, none_type): Time when the certification was set.. [optional] # noqa: E501 + certified_by (DeclarativeUserIdentifier): [optional] # noqa: E501 created_at (str, none_type): Time of the entity creation.. [optional] # noqa: E501 created_by (DeclarativeUserIdentifier): [optional] # noqa: E501 description (str): Analytical dashboard description.. [optional] # noqa: E501 @@ -297,6 +317,10 @@ def __init__(self, content, id, title, *args, **kwargs): # noqa: E501 Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) + certification (str): Certification status of the entity.. [optional] if omitted the server will use the default value of "CERTIFIED" # noqa: E501 + certification_message (str, none_type): Optional message associated with the certification.. [optional] # noqa: E501 + certified_at (str, none_type): Time when the certification was set.. [optional] # noqa: E501 + certified_by (DeclarativeUserIdentifier): [optional] # noqa: E501 created_at (str, none_type): Time of the entity creation.. [optional] # noqa: E501 created_by (DeclarativeUserIdentifier): [optional] # noqa: E501 description (str): Analytical dashboard description.. [optional] # noqa: E501 diff --git a/gooddata-api-client/gooddata_api_client/model/declarative_metric.py b/gooddata-api-client/gooddata_api_client/model/declarative_metric.py index dbc189a91..943f806a2 100644 --- a/gooddata-api-client/gooddata_api_client/model/declarative_metric.py +++ b/gooddata-api-client/gooddata_api_client/model/declarative_metric.py @@ -62,6 +62,9 @@ class DeclarativeMetric(ModelNormal): """ allowed_values = { + ('certification',): { + 'CERTIFIED': "CERTIFIED", + }, } validations = { @@ -73,6 +76,11 @@ class DeclarativeMetric(ModelNormal): ('title',): { 'max_length': 255, }, + ('certified_at',): { + 'regex': { + 'pattern': r'[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}', # noqa: E501 + }, + }, ('created_at',): { 'regex': { 'pattern': r'[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}', # noqa: E501 @@ -116,6 +124,10 @@ def openapi_types(): 'content': (JsonNode,), # noqa: E501 'id': (str,), # noqa: E501 'title': (str,), # noqa: E501 + 'certification': (str,), # noqa: E501 + 'certification_message': (str, none_type,), # noqa: E501 + 'certified_at': (str, none_type,), # noqa: E501 + 'certified_by': (DeclarativeUserIdentifier,), # noqa: E501 'created_at': (str, none_type,), # noqa: E501 'created_by': (DeclarativeUserIdentifier,), # noqa: E501 'description': (str,), # noqa: E501 @@ -135,6 +147,10 @@ def discriminator(): 'content': 'content', # noqa: E501 'id': 'id', # noqa: E501 'title': 'title', # noqa: E501 + 'certification': 'certification', # noqa: E501 + 'certification_message': 'certificationMessage', # noqa: E501 + 'certified_at': 'certifiedAt', # noqa: E501 + 'certified_by': 'certifiedBy', # noqa: E501 'created_at': 'createdAt', # noqa: E501 'created_by': 'createdBy', # noqa: E501 'description': 'description', # noqa: E501 @@ -191,6 +207,10 @@ def _from_openapi_data(cls, content, id, title, *args, **kwargs): # noqa: E501 Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) + certification (str): Certification status of the entity.. [optional] if omitted the server will use the default value of "CERTIFIED" # noqa: E501 + certification_message (str, none_type): Optional message associated with the certification.. [optional] # noqa: E501 + certified_at (str, none_type): Time when the certification was set.. [optional] # noqa: E501 + certified_by (DeclarativeUserIdentifier): [optional] # noqa: E501 created_at (str, none_type): Time of the entity creation.. [optional] # noqa: E501 created_by (DeclarativeUserIdentifier): [optional] # noqa: E501 description (str): Metric description.. [optional] # noqa: E501 @@ -292,6 +312,10 @@ def __init__(self, content, id, title, *args, **kwargs): # noqa: E501 Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) + certification (str): Certification status of the entity.. [optional] if omitted the server will use the default value of "CERTIFIED" # noqa: E501 + certification_message (str, none_type): Optional message associated with the certification.. [optional] # noqa: E501 + certified_at (str, none_type): Time when the certification was set.. [optional] # noqa: E501 + certified_by (DeclarativeUserIdentifier): [optional] # noqa: E501 created_at (str, none_type): Time of the entity creation.. [optional] # noqa: E501 created_by (DeclarativeUserIdentifier): [optional] # noqa: E501 description (str): Metric description.. [optional] # noqa: E501 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 index e17135a3d..0d4905d4d 100644 --- 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 @@ -78,6 +78,10 @@ class DeclarativeNotificationChannelDestination(ModelComposed): } validations = { + ('has_secret_key',): { + }, + ('has_token',): { + }, ('secret_key',): { 'max_length': 10000, }, 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 618aafc61..68d5cc622 100644 --- a/gooddata-api-client/gooddata_api_client/model/declarative_setting.py +++ b/gooddata-api-client/gooddata_api_client/model/declarative_setting.py @@ -65,6 +65,7 @@ class DeclarativeSetting(ModelNormal): 'ACTIVE_THEME': "ACTIVE_THEME", 'ACTIVE_COLOR_PALETTE': "ACTIVE_COLOR_PALETTE", 'ACTIVE_LLM_ENDPOINT': "ACTIVE_LLM_ENDPOINT", + 'ACTIVE_LLM_PROVIDER': "ACTIVE_LLM_PROVIDER", 'ACTIVE_CALENDARS': "ACTIVE_CALENDARS", 'WHITE_LABELING': "WHITE_LABELING", 'LOCALE': "LOCALE", @@ -108,6 +109,7 @@ class DeclarativeSetting(ModelNormal): 'EXPORT_CSV_CUSTOM_DELIMITER': "EXPORT_CSV_CUSTOM_DELIMITER", 'ENABLE_QUERY_TAGS': "ENABLE_QUERY_TAGS", 'RESTRICT_BASE_UI': "RESTRICT_BASE_UI", + 'CERTIFY_PARENT_OBJECTS': "CERTIFY_PARENT_OBJECTS", }, } 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 ac9f1cd2e..eb8a42df5 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 @@ -68,6 +68,8 @@ class DeclarativeSingleWorkspacePermission(ModelNormal): 'EXPORT_PDF': "EXPORT_PDF", 'CREATE_AUTOMATION': "CREATE_AUTOMATION", 'USE_AI_ASSISTANT': "USE_AI_ASSISTANT", + 'WRITE_KNOWLEDGE_DOCUMENTS': "WRITE_KNOWLEDGE_DOCUMENTS", + 'READ_KNOWLEDGE_DOCUMENTS': "READ_KNOWLEDGE_DOCUMENTS", 'CREATE_FILTER_VIEW': "CREATE_FILTER_VIEW", 'VIEW': "VIEW", }, diff --git a/gooddata-api-client/gooddata_api_client/model/declarative_visualization_object.py b/gooddata-api-client/gooddata_api_client/model/declarative_visualization_object.py index bf0537806..0bfbaf70c 100644 --- a/gooddata-api-client/gooddata_api_client/model/declarative_visualization_object.py +++ b/gooddata-api-client/gooddata_api_client/model/declarative_visualization_object.py @@ -62,6 +62,9 @@ class DeclarativeVisualizationObject(ModelNormal): """ allowed_values = { + ('certification',): { + 'CERTIFIED': "CERTIFIED", + }, } validations = { @@ -73,6 +76,11 @@ class DeclarativeVisualizationObject(ModelNormal): ('title',): { 'max_length': 255, }, + ('certified_at',): { + 'regex': { + 'pattern': r'[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}', # noqa: E501 + }, + }, ('created_at',): { 'regex': { 'pattern': r'[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}', # noqa: E501 @@ -116,6 +124,10 @@ def openapi_types(): 'content': (JsonNode,), # noqa: E501 'id': (str,), # noqa: E501 'title': (str,), # noqa: E501 + 'certification': (str,), # noqa: E501 + 'certification_message': (str, none_type,), # noqa: E501 + 'certified_at': (str, none_type,), # noqa: E501 + 'certified_by': (DeclarativeUserIdentifier,), # noqa: E501 'created_at': (str, none_type,), # noqa: E501 'created_by': (DeclarativeUserIdentifier,), # noqa: E501 'description': (str,), # noqa: E501 @@ -134,6 +146,10 @@ def discriminator(): 'content': 'content', # noqa: E501 'id': 'id', # noqa: E501 'title': 'title', # noqa: E501 + 'certification': 'certification', # noqa: E501 + 'certification_message': 'certificationMessage', # noqa: E501 + 'certified_at': 'certifiedAt', # noqa: E501 + 'certified_by': 'certifiedBy', # noqa: E501 'created_at': 'createdAt', # noqa: E501 'created_by': 'createdBy', # noqa: E501 'description': 'description', # noqa: E501 @@ -189,6 +205,10 @@ def _from_openapi_data(cls, content, id, title, *args, **kwargs): # noqa: E501 Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) + certification (str): Certification status of the entity.. [optional] if omitted the server will use the default value of "CERTIFIED" # noqa: E501 + certification_message (str, none_type): Optional message associated with the certification.. [optional] # noqa: E501 + certified_at (str, none_type): Time when the certification was set.. [optional] # noqa: E501 + certified_by (DeclarativeUserIdentifier): [optional] # noqa: E501 created_at (str, none_type): Time of the entity creation.. [optional] # noqa: E501 created_by (DeclarativeUserIdentifier): [optional] # noqa: E501 description (str): Visualization object description.. [optional] # noqa: E501 @@ -289,6 +309,10 @@ def __init__(self, content, id, title, *args, **kwargs): # noqa: E501 Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) + certification (str): Certification status of the entity.. [optional] if omitted the server will use the default value of "CERTIFIED" # noqa: E501 + certification_message (str, none_type): Optional message associated with the certification.. [optional] # noqa: E501 + certified_at (str, none_type): Time when the certification was set.. [optional] # noqa: E501 + certified_by (DeclarativeUserIdentifier): [optional] # noqa: E501 created_at (str, none_type): Time of the entity creation.. [optional] # noqa: E501 created_by (DeclarativeUserIdentifier): [optional] # noqa: E501 description (str): Visualization object description.. [optional] # noqa: E501 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 854309a92..cecaa382e 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 @@ -68,6 +68,8 @@ class DeclarativeWorkspaceHierarchyPermission(ModelNormal): 'EXPORT_PDF': "EXPORT_PDF", 'CREATE_AUTOMATION': "CREATE_AUTOMATION", 'USE_AI_ASSISTANT': "USE_AI_ASSISTANT", + 'WRITE_KNOWLEDGE_DOCUMENTS': "WRITE_KNOWLEDGE_DOCUMENTS", + 'READ_KNOWLEDGE_DOCUMENTS': "READ_KNOWLEDGE_DOCUMENTS", 'CREATE_FILTER_VIEW': "CREATE_FILTER_VIEW", 'VIEW': "VIEW", }, diff --git a/gooddata-api-client/gooddata_api_client/model/delete_knowledge_document_response_dto.py b/gooddata-api-client/gooddata_api_client/model/delete_knowledge_document_response_dto.py new file mode 100644 index 000000000..6508e4243 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/delete_knowledge_document_response_dto.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 + + + +class DeleteKnowledgeDocumentResponseDto(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 { + 'message': (str,), # noqa: E501 + 'success': (bool,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'message': 'message', # noqa: E501 + 'success': 'success', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, message, success, *args, **kwargs): # noqa: E501 + """DeleteKnowledgeDocumentResponseDto - a model defined in OpenAPI + + Args: + message (str): + success (bool): + + 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.message = message + self.success = success + 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, message, success, *args, **kwargs): # noqa: E501 + """DeleteKnowledgeDocumentResponseDto - a model defined in OpenAPI + + Args: + message (str): + success (bool): + + 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.message = message + self.success = success + 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/dependent_entities_request.py b/gooddata-api-client/gooddata_api_client/model/dependent_entities_request.py index 38c1583db..dd438de8d 100644 --- a/gooddata-api-client/gooddata_api_client/model/dependent_entities_request.py +++ b/gooddata-api-client/gooddata_api_client/model/dependent_entities_request.py @@ -60,6 +60,10 @@ class DependentEntitiesRequest(ModelNormal): """ allowed_values = { + ('relation',): { + 'DEPENDENTS': "DEPENDENTS", + 'DEPENDENCIES': "DEPENDENCIES", + }, } validations = { @@ -89,6 +93,7 @@ def openapi_types(): lazy_import() return { 'identifiers': ([EntityIdentifier],), # noqa: E501 + 'relation': (str,), # noqa: E501 } @cached_property @@ -98,6 +103,7 @@ def discriminator(): attribute_map = { 'identifiers': 'identifiers', # noqa: E501 + 'relation': 'relation', # noqa: E501 } read_only_vars = { @@ -144,6 +150,7 @@ def _from_openapi_data(cls, identifiers, *args, **kwargs): # noqa: E501 Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) + relation (str): Entity relation for graph traversal from the entry points. DEPENDENTS returns entities that depend on the entry points. DEPENDENCIES returns entities that the entry points depend on.. [optional] if omitted the server will use the default value of "DEPENDENTS" # noqa: E501 """ _check_type = kwargs.pop('_check_type', True) @@ -233,6 +240,7 @@ def __init__(self, identifiers, *args, **kwargs): # noqa: E501 Animal class but this time we won't travel through its discriminator because we passed in _visited_composed_classes = (Animal,) + relation (str): Entity relation for graph traversal from the entry points. DEPENDENTS returns entities that depend on the entry points. DEPENDENCIES returns entities that the entry points depend on.. [optional] if omitted the server will use the default value of "DEPENDENTS" # noqa: E501 """ _check_type = kwargs.pop('_check_type', True) diff --git a/gooddata-api-client/gooddata_api_client/model/failed_operation.py b/gooddata-api-client/gooddata_api_client/model/failed_operation.py index 5592073f4..08cd7970c 100644 --- a/gooddata-api-client/gooddata_api_client/model/failed_operation.py +++ b/gooddata-api-client/gooddata_api_client/model/failed_operation.py @@ -31,18 +31,12 @@ def lazy_import(): - from gooddata_api_client.model.failed_operation import FailedOperation from gooddata_api_client.model.failed_operation_all_of import FailedOperationAllOf from gooddata_api_client.model.operation import Operation from gooddata_api_client.model.operation_error import OperationError - from gooddata_api_client.model.pending_operation import PendingOperation - from gooddata_api_client.model.succeeded_operation import SucceededOperation - globals()['FailedOperation'] = FailedOperation globals()['FailedOperationAllOf'] = FailedOperationAllOf globals()['Operation'] = Operation globals()['OperationError'] = OperationError - globals()['PendingOperation'] = PendingOperation - globals()['SucceededOperation'] = SucceededOperation class FailedOperation(ModelComposed): @@ -73,6 +67,7 @@ class FailedOperation(ModelComposed): ('kind',): { 'PROVISION-DATABASE': "provision-database", 'DEPROVISION-DATABASE': "deprovision-database", + 'RUN-SERVICE-COMMAND': "run-service-command", }, } @@ -110,11 +105,7 @@ def openapi_types(): @cached_property def discriminator(): - lazy_import() val = { - 'failed': FailedOperation, - 'pending': PendingOperation, - 'succeeded': SucceededOperation, } if not val: return None @@ -138,7 +129,7 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 Keyword Args: error (OperationError): id (str): Id of the operation - kind (str): Type of the long-running operation. * `provision-database` — Provisioning of an AI Lake database. * `deprovision-database` — Deprovisioning (deletion) of an AI Lake database. + kind (str): Type of the long-running operation. * `provision-database` — Provisioning of an AI Lake database. * `deprovision-database` — Deprovisioning (deletion) of an AI Lake database. * `run-service-command` — Running a command in a particular AI Lake service. status (str): _check_type (bool): if True, values for parameters in openapi_types will be type checked and a TypeError will be @@ -245,7 +236,7 @@ def __init__(self, *args, **kwargs): # noqa: E501 Keyword Args: error (OperationError): id (str): Id of the operation - kind (str): Type of the long-running operation. * `provision-database` — Provisioning of an AI Lake database. * `deprovision-database` — Deprovisioning (deletion) of an AI Lake database. + kind (str): Type of the long-running operation. * `provision-database` — Provisioning of an AI Lake database. * `deprovision-database` — Deprovisioning (deletion) of an AI Lake database. * `run-service-command` — Running a command in a particular AI Lake service. status (str): _check_type (bool): if True, values for parameters in openapi_types will be type checked and a TypeError will be diff --git a/gooddata-api-client/gooddata_api_client/model/filter_definition.py b/gooddata-api-client/gooddata_api_client/model/filter_definition.py index 7a7d2d65a..9ee434e47 100644 --- a/gooddata-api-client/gooddata_api_client/model/filter_definition.py +++ b/gooddata-api-client/gooddata_api_client/model/filter_definition.py @@ -31,10 +31,10 @@ def lazy_import(): - from gooddata_api_client.model.all_time_date_filter import AllTimeDateFilter - from gooddata_api_client.model.all_time_date_filter_all_time_date_filter import AllTimeDateFilterAllTimeDateFilter 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.all_time_date_filter import AllTimeDateFilter + from gooddata_api_client.model.all_time_date_filter_all_time_date_filter import AllTimeDateFilterAllTimeDateFilter 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.compound_measure_value_filter import CompoundMeasureValueFilter @@ -53,10 +53,10 @@ def lazy_import(): from gooddata_api_client.model.ranking_filter_ranking_filter import RankingFilterRankingFilter from gooddata_api_client.model.relative_date_filter import RelativeDateFilter from gooddata_api_client.model.relative_date_filter_relative_date_filter import RelativeDateFilterRelativeDateFilter - globals()['AllTimeDateFilter'] = AllTimeDateFilter - globals()['AllTimeDateFilterAllTimeDateFilter'] = AllTimeDateFilterAllTimeDateFilter globals()['AbsoluteDateFilter'] = AbsoluteDateFilter globals()['AbsoluteDateFilterAbsoluteDateFilter'] = AbsoluteDateFilterAbsoluteDateFilter + globals()['AllTimeDateFilter'] = AllTimeDateFilter + globals()['AllTimeDateFilterAllTimeDateFilter'] = AllTimeDateFilterAllTimeDateFilter globals()['ComparisonMeasureValueFilter'] = ComparisonMeasureValueFilter globals()['ComparisonMeasureValueFilterComparisonMeasureValueFilter'] = ComparisonMeasureValueFilterComparisonMeasureValueFilter globals()['CompoundMeasureValueFilter'] = CompoundMeasureValueFilter @@ -136,8 +136,8 @@ def openapi_types(): 'range_measure_value_filter': (RangeMeasureValueFilterRangeMeasureValueFilter,), # noqa: E501 'compound_measure_value_filter': (CompoundMeasureValueFilterCompoundMeasureValueFilter,), # noqa: E501 'absolute_date_filter': (AbsoluteDateFilterAbsoluteDateFilter,), # noqa: E501 - 'all_time_date_filter': (AllTimeDateFilterAllTimeDateFilter,), # noqa: E501 'relative_date_filter': (RelativeDateFilterRelativeDateFilter,), # noqa: E501 + 'all_time_date_filter': (AllTimeDateFilterAllTimeDateFilter,), # noqa: E501 'negative_attribute_filter': (NegativeAttributeFilterNegativeAttributeFilter,), # noqa: E501 'positive_attribute_filter': (PositiveAttributeFilterPositiveAttributeFilter,), # noqa: E501 'match_attribute_filter': (MatchAttributeFilterMatchAttributeFilter,), # noqa: E501 @@ -155,8 +155,8 @@ def discriminator(): 'range_measure_value_filter': 'rangeMeasureValueFilter', # noqa: E501 'compound_measure_value_filter': 'compoundMeasureValueFilter', # noqa: E501 'absolute_date_filter': 'absoluteDateFilter', # noqa: E501 - 'all_time_date_filter': 'allTimeDateFilter', # noqa: E501 'relative_date_filter': 'relativeDateFilter', # noqa: E501 + 'all_time_date_filter': 'allTimeDateFilter', # noqa: E501 'negative_attribute_filter': 'negativeAttributeFilter', # noqa: E501 'positive_attribute_filter': 'positiveAttributeFilter', # noqa: E501 'match_attribute_filter': 'matchAttributeFilter', # noqa: E501 @@ -208,6 +208,7 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 compound_measure_value_filter (CompoundMeasureValueFilterCompoundMeasureValueFilter): [optional] # noqa: E501 absolute_date_filter (AbsoluteDateFilterAbsoluteDateFilter): [optional] # noqa: E501 relative_date_filter (RelativeDateFilterRelativeDateFilter): [optional] # noqa: E501 + all_time_date_filter (AllTimeDateFilterAllTimeDateFilter): [optional] # noqa: E501 negative_attribute_filter (NegativeAttributeFilterNegativeAttributeFilter): [optional] # noqa: E501 positive_attribute_filter (PositiveAttributeFilterPositiveAttributeFilter): [optional] # noqa: E501 match_attribute_filter (MatchAttributeFilterMatchAttributeFilter): [optional] # noqa: E501 @@ -321,6 +322,7 @@ def __init__(self, *args, **kwargs): # noqa: E501 compound_measure_value_filter (CompoundMeasureValueFilterCompoundMeasureValueFilter): [optional] # noqa: E501 absolute_date_filter (AbsoluteDateFilterAbsoluteDateFilter): [optional] # noqa: E501 relative_date_filter (RelativeDateFilterRelativeDateFilter): [optional] # noqa: E501 + all_time_date_filter (AllTimeDateFilterAllTimeDateFilter): [optional] # noqa: E501 negative_attribute_filter (NegativeAttributeFilterNegativeAttributeFilter): [optional] # noqa: E501 positive_attribute_filter (PositiveAttributeFilterPositiveAttributeFilter): [optional] # noqa: E501 match_attribute_filter (MatchAttributeFilterMatchAttributeFilter): [optional] # noqa: E501 @@ -395,8 +397,8 @@ def _composed_schemas(): 'allOf': [ ], 'oneOf': [ - AllTimeDateFilter, AbsoluteDateFilter, + AllTimeDateFilter, ComparisonMeasureValueFilter, CompoundMeasureValueFilter, InlineFilterDefinition, diff --git a/gooddata-api-client/gooddata_api_client/model/filter_definition_for_simple_measure.py b/gooddata-api-client/gooddata_api_client/model/filter_definition_for_simple_measure.py index 51b82755d..a19bd8c5a 100644 --- a/gooddata-api-client/gooddata_api_client/model/filter_definition_for_simple_measure.py +++ b/gooddata-api-client/gooddata_api_client/model/filter_definition_for_simple_measure.py @@ -32,6 +32,7 @@ def lazy_import(): from gooddata_api_client.model.absolute_date_filter_absolute_date_filter import AbsoluteDateFilterAbsoluteDateFilter + from gooddata_api_client.model.all_time_date_filter_all_time_date_filter import AllTimeDateFilterAllTimeDateFilter from gooddata_api_client.model.attribute_filter import AttributeFilter from gooddata_api_client.model.date_filter import DateFilter from gooddata_api_client.model.match_attribute_filter_match_attribute_filter import MatchAttributeFilterMatchAttributeFilter @@ -39,6 +40,7 @@ def lazy_import(): from gooddata_api_client.model.positive_attribute_filter_positive_attribute_filter import PositiveAttributeFilterPositiveAttributeFilter from gooddata_api_client.model.relative_date_filter_relative_date_filter import RelativeDateFilterRelativeDateFilter globals()['AbsoluteDateFilterAbsoluteDateFilter'] = AbsoluteDateFilterAbsoluteDateFilter + globals()['AllTimeDateFilterAllTimeDateFilter'] = AllTimeDateFilterAllTimeDateFilter globals()['AttributeFilter'] = AttributeFilter globals()['DateFilter'] = DateFilter globals()['MatchAttributeFilterMatchAttributeFilter'] = MatchAttributeFilterMatchAttributeFilter @@ -102,6 +104,7 @@ def openapi_types(): return { 'absolute_date_filter': (AbsoluteDateFilterAbsoluteDateFilter,), # noqa: E501 'relative_date_filter': (RelativeDateFilterRelativeDateFilter,), # noqa: E501 + 'all_time_date_filter': (AllTimeDateFilterAllTimeDateFilter,), # noqa: E501 'negative_attribute_filter': (NegativeAttributeFilterNegativeAttributeFilter,), # noqa: E501 'positive_attribute_filter': (PositiveAttributeFilterPositiveAttributeFilter,), # noqa: E501 'match_attribute_filter': (MatchAttributeFilterMatchAttributeFilter,), # noqa: E501 @@ -115,6 +118,7 @@ def discriminator(): attribute_map = { 'absolute_date_filter': 'absoluteDateFilter', # noqa: E501 'relative_date_filter': 'relativeDateFilter', # noqa: E501 + 'all_time_date_filter': 'allTimeDateFilter', # noqa: E501 'negative_attribute_filter': 'negativeAttributeFilter', # noqa: E501 'positive_attribute_filter': 'positiveAttributeFilter', # noqa: E501 'match_attribute_filter': 'matchAttributeFilter', # noqa: E501 @@ -161,6 +165,7 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 _visited_composed_classes = (Animal,) absolute_date_filter (AbsoluteDateFilterAbsoluteDateFilter): [optional] # noqa: E501 relative_date_filter (RelativeDateFilterRelativeDateFilter): [optional] # noqa: E501 + all_time_date_filter (AllTimeDateFilterAllTimeDateFilter): [optional] # noqa: E501 negative_attribute_filter (NegativeAttributeFilterNegativeAttributeFilter): [optional] # noqa: E501 positive_attribute_filter (PositiveAttributeFilterPositiveAttributeFilter): [optional] # noqa: E501 match_attribute_filter (MatchAttributeFilterMatchAttributeFilter): [optional] # noqa: E501 @@ -269,6 +274,7 @@ def __init__(self, *args, **kwargs): # noqa: E501 _visited_composed_classes = (Animal,) absolute_date_filter (AbsoluteDateFilterAbsoluteDateFilter): [optional] # noqa: E501 relative_date_filter (RelativeDateFilterRelativeDateFilter): [optional] # noqa: E501 + all_time_date_filter (AllTimeDateFilterAllTimeDateFilter): [optional] # noqa: E501 negative_attribute_filter (NegativeAttributeFilterNegativeAttributeFilter): [optional] # noqa: E501 positive_attribute_filter (PositiveAttributeFilterPositiveAttributeFilter): [optional] # noqa: E501 match_attribute_filter (MatchAttributeFilterMatchAttributeFilter): [optional] # noqa: E501 diff --git a/gooddata-api-client/gooddata_api_client/model/forecast_config.py b/gooddata-api-client/gooddata_api_client/model/forecast_config.py new file mode 100644 index 000000000..eeabd896f --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/forecast_config.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 ForecastConfig(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 { + 'confidence_level': (float,), # noqa: E501 + 'forecast_period': (int,), # noqa: E501 + 'seasonal': (bool,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'confidence_level': 'confidenceLevel', # noqa: E501 + 'forecast_period': 'forecastPeriod', # noqa: E501 + 'seasonal': 'seasonal', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, confidence_level, forecast_period, seasonal, *args, **kwargs): # noqa: E501 + """ForecastConfig - a model defined in OpenAPI + + Args: + confidence_level (float): Confidence interval boundary value. + forecast_period (int): Number of future periods that should be forecasted + seasonal (bool): Whether the input data is seasonal + + 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.confidence_level = confidence_level + self.forecast_period = forecast_period + self.seasonal = seasonal + 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, confidence_level, forecast_period, seasonal, *args, **kwargs): # noqa: E501 + """ForecastConfig - a model defined in OpenAPI + + Args: + confidence_level (float): Confidence interval boundary value. + forecast_period (int): Number of future periods that should be forecasted + seasonal (bool): Whether the input data is seasonal + + 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.confidence_level = confidence_level + self.forecast_period = forecast_period + self.seasonal = seasonal + 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/generate_description_request.py b/gooddata-api-client/gooddata_api_client/model/generate_description_request.py new file mode 100644 index 000000000..7c8d5ff40 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/generate_description_request.py @@ -0,0 +1,283 @@ +""" + 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 GenerateDescriptionRequest(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 = { + ('object_type',): { + 'VISUALIZATION': "Visualization", + 'DASHBOARD': "Dashboard", + 'METRIC': "Metric", + 'FACT': "Fact", + 'ATTRIBUTE': "Attribute", + }, + } + + 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 { + 'object_id': (str,), # noqa: E501 + 'object_type': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'object_id': 'objectId', # noqa: E501 + 'object_type': 'objectType', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, object_id, object_type, *args, **kwargs): # noqa: E501 + """GenerateDescriptionRequest - a model defined in OpenAPI + + Args: + object_id (str): Identifier of the object to describe + object_type (str): Type of the object to describe. One of: visualization, dashboard, metric, fact, attribute + + 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.object_id = object_id + self.object_type = object_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, object_id, object_type, *args, **kwargs): # noqa: E501 + """GenerateDescriptionRequest - a model defined in OpenAPI + + Args: + object_id (str): Identifier of the object to describe + object_type (str): Type of the object to describe. One of: visualization, dashboard, metric, fact, attribute + + 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.object_id = object_id + self.object_type = object_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/generate_description_response.py b/gooddata-api-client/gooddata_api_client/model/generate_description_response.py new file mode 100644 index 000000000..2fd35a957 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/generate_description_response.py @@ -0,0 +1,268 @@ +""" + 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 GenerateDescriptionResponse(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 { + 'description': (str,), # noqa: E501 + 'note': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'description': 'description', # noqa: E501 + 'note': 'note', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 + """GenerateDescriptionResponse - 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,) + description (str): Generated description of the requested object. [optional] # noqa: E501 + note (str): Additional note with details in case generation was not performed. [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 + """GenerateDescriptionResponse - 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,) + description (str): Generated description of the requested object. [optional] # noqa: E501 + note (str): Additional note with details in case generation was not performed. [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/generate_title_request.py b/gooddata-api-client/gooddata_api_client/model/generate_title_request.py new file mode 100644 index 000000000..26ca56867 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/generate_title_request.py @@ -0,0 +1,283 @@ +""" + 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 GenerateTitleRequest(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 = { + ('object_type',): { + 'VISUALIZATION': "Visualization", + 'DASHBOARD': "Dashboard", + 'METRIC': "Metric", + 'FACT': "Fact", + 'ATTRIBUTE': "Attribute", + }, + } + + 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 { + 'object_id': (str,), # noqa: E501 + 'object_type': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'object_id': 'objectId', # noqa: E501 + 'object_type': 'objectType', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, object_id, object_type, *args, **kwargs): # noqa: E501 + """GenerateTitleRequest - a model defined in OpenAPI + + Args: + object_id (str): Identifier of the object to title + object_type (str): Type of the object to title. Matches chat-search object types. + + 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.object_id = object_id + self.object_type = object_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, object_id, object_type, *args, **kwargs): # noqa: E501 + """GenerateTitleRequest - a model defined in OpenAPI + + Args: + object_id (str): Identifier of the object to title + object_type (str): Type of the object to title. Matches chat-search object types. + + 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.object_id = object_id + self.object_type = object_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/generate_title_response.py b/gooddata-api-client/gooddata_api_client/model/generate_title_response.py new file mode 100644 index 000000000..d0e07e4f3 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/generate_title_response.py @@ -0,0 +1,268 @@ +""" + 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 GenerateTitleResponse(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 { + 'note': (str,), # noqa: E501 + 'title': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'note': 'note', # 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 + """GenerateTitleResponse - 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,) + note (str): Additional note with details in case generation was not performed. [optional] # noqa: E501 + title (str): Generated title of the requested object. [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 + """GenerateTitleResponse - 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,) + note (str): Additional note with details in case generation was not performed. [optional] # noqa: E501 + title (str): Generated title of the requested object. [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/get_ai_lake_operation200_response.py b/gooddata-api-client/gooddata_api_client/model/get_ai_lake_operation200_response.py index dafad0e18..33f767cba 100644 --- a/gooddata-api-client/gooddata_api_client/model/get_ai_lake_operation200_response.py +++ b/gooddata-api-client/gooddata_api_client/model/get_ai_lake_operation200_response.py @@ -69,6 +69,7 @@ class GetAiLakeOperation200Response(ModelComposed): ('kind',): { 'PROVISION-DATABASE': "provision-database", 'DEPROVISION-DATABASE': "deprovision-database", + 'RUN-SERVICE-COMMAND': "run-service-command", }, } @@ -170,7 +171,7 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 _visited_composed_classes = (Animal,) result ({str: (bool, date, datetime, dict, float, int, list, str, none_type)}): Operation-specific result payload, can be missing for operations like delete. [optional] # noqa: E501 id (str): Id of the operation. [optional] # noqa: E501 - kind (str): Type of the long-running operation. * `provision-database` — Provisioning of an AI Lake database. * `deprovision-database` — Deprovisioning (deletion) of an AI Lake database. . [optional] # noqa: E501 + kind (str): Type of the long-running operation. * `provision-database` — Provisioning of an AI Lake database. * `deprovision-database` — Deprovisioning (deletion) of an AI Lake database. * `run-service-command` — Running a command in a particular AI Lake service. . [optional] # noqa: E501 error (OperationError): [optional] # noqa: E501 """ @@ -278,7 +279,7 @@ def __init__(self, *args, **kwargs): # noqa: E501 _visited_composed_classes = (Animal,) result ({str: (bool, date, datetime, dict, float, int, list, str, none_type)}): Operation-specific result payload, can be missing for operations like delete. [optional] # noqa: E501 id (str): Id of the operation. [optional] # noqa: E501 - kind (str): Type of the long-running operation. * `provision-database` — Provisioning of an AI Lake database. * `deprovision-database` — Deprovisioning (deletion) of an AI Lake database. . [optional] # noqa: E501 + kind (str): Type of the long-running operation. * `provision-database` — Provisioning of an AI Lake database. * `deprovision-database` — Deprovisioning (deletion) of an AI Lake database. * `run-service-command` — Running a command in a particular AI Lake service. . [optional] # noqa: E501 error (OperationError): [optional] # noqa: E501 """ diff --git a/gooddata-api-client/gooddata_api_client/model/get_quality_issues_response.py b/gooddata-api-client/gooddata_api_client/model/get_quality_issues_response.py index 7bc13619b..e719a597a 100644 --- a/gooddata-api-client/gooddata_api_client/model/get_quality_issues_response.py +++ b/gooddata-api-client/gooddata_api_client/model/get_quality_issues_response.py @@ -65,6 +65,7 @@ class GetQualityIssuesResponse(ModelNormal): 'SYNCING': "SYNCING", 'COMPLETED': "COMPLETED", 'FAILED': "FAILED", + 'CANCELLED': "CANCELLED", 'NOT_FOUND': "NOT_FOUND", 'DISABLED': "DISABLED", }, diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_analytical_dashboard_out_attributes.py b/gooddata-api-client/gooddata_api_client/model/json_api_analytical_dashboard_out_attributes.py index 55ee43194..4c7c9dd92 100644 --- a/gooddata-api-client/gooddata_api_client/model/json_api_analytical_dashboard_out_attributes.py +++ b/gooddata-api-client/gooddata_api_client/model/json_api_analytical_dashboard_out_attributes.py @@ -56,9 +56,17 @@ class JsonApiAnalyticalDashboardOutAttributes(ModelNormal): """ allowed_values = { + ('certification',): { + 'CERTIFIED': "CERTIFIED", + }, } validations = { + ('certified_at',): { + 'regex': { + 'pattern': r'[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}', # noqa: E501 + }, + }, ('created_at',): { 'regex': { 'pattern': r'[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}', # noqa: E501 @@ -103,6 +111,9 @@ def openapi_types(): return { 'content': ({str: (bool, date, datetime, dict, float, int, list, str, none_type)},), # noqa: E501 'are_relations_valid': (bool,), # noqa: E501 + 'certification': (str,), # noqa: E501 + 'certification_message': (str, none_type,), # noqa: E501 + 'certified_at': (datetime, none_type,), # noqa: E501 'created_at': (datetime, none_type,), # noqa: E501 'description': (str,), # noqa: E501 'modified_at': (datetime, none_type,), # noqa: E501 @@ -119,6 +130,9 @@ def discriminator(): attribute_map = { 'content': 'content', # noqa: E501 'are_relations_valid': 'areRelationsValid', # noqa: E501 + 'certification': 'certification', # noqa: E501 + 'certification_message': 'certificationMessage', # noqa: E501 + 'certified_at': 'certifiedAt', # noqa: E501 'created_at': 'createdAt', # noqa: E501 'description': 'description', # noqa: E501 'modified_at': 'modifiedAt', # noqa: E501 @@ -172,6 +186,9 @@ def _from_openapi_data(cls, content, *args, **kwargs): # noqa: E501 through its discriminator because we passed in _visited_composed_classes = (Animal,) are_relations_valid (bool): [optional] # noqa: E501 + certification (str): Certification status of the entity.. [optional] if omitted the server will use the default value of "CERTIFIED" # noqa: E501 + certification_message (str, none_type): Optional message associated with the certification.. [optional] # noqa: E501 + certified_at (datetime, none_type): Time when the certification was set.. [optional] # noqa: E501 created_at (datetime, none_type): Time of the entity creation.. [optional] # noqa: E501 description (str): [optional] # noqa: E501 modified_at (datetime, none_type): Time of the last entity modification.. [optional] # noqa: E501 @@ -268,6 +285,9 @@ def __init__(self, content, *args, **kwargs): # noqa: E501 through its discriminator because we passed in _visited_composed_classes = (Animal,) are_relations_valid (bool): [optional] # noqa: E501 + certification (str): Certification status of the entity.. [optional] if omitted the server will use the default value of "CERTIFIED" # noqa: E501 + certification_message (str, none_type): Optional message associated with the certification.. [optional] # noqa: E501 + certified_at (datetime, none_type): Time when the certification was set.. [optional] # noqa: E501 created_at (datetime, none_type): Time of the entity creation.. [optional] # noqa: E501 description (str): [optional] # noqa: E501 modified_at (datetime, none_type): Time of the last entity modification.. [optional] # noqa: E501 diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_analytical_dashboard_out_relationships.py b/gooddata-api-client/gooddata_api_client/model/json_api_analytical_dashboard_out_relationships.py index 46dd683d0..4b4bb95da 100644 --- a/gooddata-api-client/gooddata_api_client/model/json_api_analytical_dashboard_out_relationships.py +++ b/gooddata-api-client/gooddata_api_client/model/json_api_analytical_dashboard_out_relationships.py @@ -32,7 +32,7 @@ def lazy_import(): from gooddata_api_client.model.json_api_analytical_dashboard_out_relationships_analytical_dashboards import JsonApiAnalyticalDashboardOutRelationshipsAnalyticalDashboards - from gooddata_api_client.model.json_api_analytical_dashboard_out_relationships_created_by import JsonApiAnalyticalDashboardOutRelationshipsCreatedBy + from gooddata_api_client.model.json_api_analytical_dashboard_out_relationships_certified_by import JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy from gooddata_api_client.model.json_api_analytical_dashboard_out_relationships_dashboard_plugins import JsonApiAnalyticalDashboardOutRelationshipsDashboardPlugins from gooddata_api_client.model.json_api_analytical_dashboard_out_relationships_datasets import JsonApiAnalyticalDashboardOutRelationshipsDatasets from gooddata_api_client.model.json_api_analytical_dashboard_out_relationships_filter_contexts import JsonApiAnalyticalDashboardOutRelationshipsFilterContexts @@ -40,7 +40,7 @@ def lazy_import(): from gooddata_api_client.model.json_api_analytical_dashboard_out_relationships_metrics import JsonApiAnalyticalDashboardOutRelationshipsMetrics from gooddata_api_client.model.json_api_analytical_dashboard_out_relationships_visualization_objects import JsonApiAnalyticalDashboardOutRelationshipsVisualizationObjects globals()['JsonApiAnalyticalDashboardOutRelationshipsAnalyticalDashboards'] = JsonApiAnalyticalDashboardOutRelationshipsAnalyticalDashboards - globals()['JsonApiAnalyticalDashboardOutRelationshipsCreatedBy'] = JsonApiAnalyticalDashboardOutRelationshipsCreatedBy + globals()['JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy'] = JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy globals()['JsonApiAnalyticalDashboardOutRelationshipsDashboardPlugins'] = JsonApiAnalyticalDashboardOutRelationshipsDashboardPlugins globals()['JsonApiAnalyticalDashboardOutRelationshipsDatasets'] = JsonApiAnalyticalDashboardOutRelationshipsDatasets globals()['JsonApiAnalyticalDashboardOutRelationshipsFilterContexts'] = JsonApiAnalyticalDashboardOutRelationshipsFilterContexts @@ -103,13 +103,14 @@ def openapi_types(): lazy_import() return { 'analytical_dashboards': (JsonApiAnalyticalDashboardOutRelationshipsAnalyticalDashboards,), # noqa: E501 - 'created_by': (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy,), # noqa: E501 + 'certified_by': (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy,), # noqa: E501 + 'created_by': (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy,), # noqa: E501 'dashboard_plugins': (JsonApiAnalyticalDashboardOutRelationshipsDashboardPlugins,), # noqa: E501 'datasets': (JsonApiAnalyticalDashboardOutRelationshipsDatasets,), # noqa: E501 'filter_contexts': (JsonApiAnalyticalDashboardOutRelationshipsFilterContexts,), # noqa: E501 'labels': (JsonApiAnalyticalDashboardOutRelationshipsLabels,), # noqa: E501 'metrics': (JsonApiAnalyticalDashboardOutRelationshipsMetrics,), # noqa: E501 - 'modified_by': (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy,), # noqa: E501 + 'modified_by': (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy,), # noqa: E501 'visualization_objects': (JsonApiAnalyticalDashboardOutRelationshipsVisualizationObjects,), # noqa: E501 } @@ -120,6 +121,7 @@ def discriminator(): attribute_map = { 'analytical_dashboards': 'analyticalDashboards', # noqa: E501 + 'certified_by': 'certifiedBy', # noqa: E501 'created_by': 'createdBy', # noqa: E501 'dashboard_plugins': 'dashboardPlugins', # noqa: E501 'datasets': 'datasets', # noqa: E501 @@ -172,13 +174,14 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 through its discriminator because we passed in _visited_composed_classes = (Animal,) analytical_dashboards (JsonApiAnalyticalDashboardOutRelationshipsAnalyticalDashboards): [optional] # noqa: E501 - created_by (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy): [optional] # noqa: E501 + certified_by (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy): [optional] # noqa: E501 + created_by (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy): [optional] # noqa: E501 dashboard_plugins (JsonApiAnalyticalDashboardOutRelationshipsDashboardPlugins): [optional] # noqa: E501 datasets (JsonApiAnalyticalDashboardOutRelationshipsDatasets): [optional] # noqa: E501 filter_contexts (JsonApiAnalyticalDashboardOutRelationshipsFilterContexts): [optional] # noqa: E501 labels (JsonApiAnalyticalDashboardOutRelationshipsLabels): [optional] # noqa: E501 metrics (JsonApiAnalyticalDashboardOutRelationshipsMetrics): [optional] # noqa: E501 - modified_by (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy): [optional] # noqa: E501 + modified_by (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy): [optional] # noqa: E501 visualization_objects (JsonApiAnalyticalDashboardOutRelationshipsVisualizationObjects): [optional] # noqa: E501 """ @@ -266,13 +269,14 @@ def __init__(self, *args, **kwargs): # noqa: E501 through its discriminator because we passed in _visited_composed_classes = (Animal,) analytical_dashboards (JsonApiAnalyticalDashboardOutRelationshipsAnalyticalDashboards): [optional] # noqa: E501 - created_by (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy): [optional] # noqa: E501 + certified_by (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy): [optional] # noqa: E501 + created_by (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy): [optional] # noqa: E501 dashboard_plugins (JsonApiAnalyticalDashboardOutRelationshipsDashboardPlugins): [optional] # noqa: E501 datasets (JsonApiAnalyticalDashboardOutRelationshipsDatasets): [optional] # noqa: E501 filter_contexts (JsonApiAnalyticalDashboardOutRelationshipsFilterContexts): [optional] # noqa: E501 labels (JsonApiAnalyticalDashboardOutRelationshipsLabels): [optional] # noqa: E501 metrics (JsonApiAnalyticalDashboardOutRelationshipsMetrics): [optional] # noqa: E501 - modified_by (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy): [optional] # noqa: E501 + modified_by (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy): [optional] # noqa: E501 visualization_objects (JsonApiAnalyticalDashboardOutRelationshipsVisualizationObjects): [optional] # noqa: E501 """ diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_analytical_dashboard_out_relationships_created_by.py b/gooddata-api-client/gooddata_api_client/model/json_api_analytical_dashboard_out_relationships_certified_by.py similarity index 97% rename from gooddata-api-client/gooddata_api_client/model/json_api_analytical_dashboard_out_relationships_created_by.py rename to gooddata-api-client/gooddata_api_client/model/json_api_analytical_dashboard_out_relationships_certified_by.py index 3eb449668..72712b03a 100644 --- a/gooddata-api-client/gooddata_api_client/model/json_api_analytical_dashboard_out_relationships_created_by.py +++ b/gooddata-api-client/gooddata_api_client/model/json_api_analytical_dashboard_out_relationships_certified_by.py @@ -35,7 +35,7 @@ def lazy_import(): globals()['JsonApiUserIdentifierToOneLinkage'] = JsonApiUserIdentifierToOneLinkage -class JsonApiAnalyticalDashboardOutRelationshipsCreatedBy(ModelNormal): +class JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy(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 - """JsonApiAnalyticalDashboardOutRelationshipsCreatedBy - a model defined in OpenAPI + """JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy - a model defined in OpenAPI Args: data (JsonApiUserIdentifierToOneLinkage): @@ -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 - """JsonApiAnalyticalDashboardOutRelationshipsCreatedBy - a model defined in OpenAPI + """JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy - a model defined in OpenAPI Args: data (JsonApiUserIdentifierToOneLinkage): diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_attribute_hierarchy_out_relationships.py b/gooddata-api-client/gooddata_api_client/model/json_api_attribute_hierarchy_out_relationships.py index 098b15b1b..889684cec 100644 --- a/gooddata-api-client/gooddata_api_client/model/json_api_attribute_hierarchy_out_relationships.py +++ b/gooddata-api-client/gooddata_api_client/model/json_api_attribute_hierarchy_out_relationships.py @@ -31,9 +31,9 @@ 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_analytical_dashboard_out_relationships_certified_by import JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy from gooddata_api_client.model.json_api_attribute_hierarchy_out_relationships_attributes import JsonApiAttributeHierarchyOutRelationshipsAttributes - globals()['JsonApiAnalyticalDashboardOutRelationshipsCreatedBy'] = JsonApiAnalyticalDashboardOutRelationshipsCreatedBy + globals()['JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy'] = JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy globals()['JsonApiAttributeHierarchyOutRelationshipsAttributes'] = JsonApiAttributeHierarchyOutRelationshipsAttributes @@ -91,8 +91,8 @@ def openapi_types(): lazy_import() return { 'attributes': (JsonApiAttributeHierarchyOutRelationshipsAttributes,), # noqa: E501 - 'created_by': (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy,), # noqa: E501 - 'modified_by': (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy,), # noqa: E501 + 'created_by': (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy,), # noqa: E501 + 'modified_by': (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy,), # noqa: E501 } @cached_property @@ -148,8 +148,8 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 through its discriminator because we passed in _visited_composed_classes = (Animal,) attributes (JsonApiAttributeHierarchyOutRelationshipsAttributes): [optional] # noqa: E501 - created_by (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy): [optional] # noqa: E501 - modified_by (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy): [optional] # noqa: E501 + created_by (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy): [optional] # noqa: E501 + modified_by (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy): [optional] # noqa: E501 """ _check_type = kwargs.pop('_check_type', True) @@ -236,8 +236,8 @@ def __init__(self, *args, **kwargs): # noqa: E501 through its discriminator because we passed in _visited_composed_classes = (Animal,) attributes (JsonApiAttributeHierarchyOutRelationshipsAttributes): [optional] # noqa: E501 - created_by (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy): [optional] # noqa: E501 - modified_by (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy): [optional] # noqa: E501 + created_by (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy): [optional] # noqa: E501 + modified_by (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy): [optional] # noqa: E501 """ _check_type = kwargs.pop('_check_type', True) 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 3cb64f625..4b5ad53cf 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 @@ -31,13 +31,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_analytical_dashboard_out_relationships_certified_by import JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy 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_out_relationships_automation_results import JsonApiAutomationOutRelationshipsAutomationResults - globals()['JsonApiAnalyticalDashboardOutRelationshipsCreatedBy'] = JsonApiAnalyticalDashboardOutRelationshipsCreatedBy + globals()['JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy'] = JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy globals()['JsonApiAutomationInRelationshipsAnalyticalDashboard'] = JsonApiAutomationInRelationshipsAnalyticalDashboard globals()['JsonApiAutomationInRelationshipsExportDefinitions'] = JsonApiAutomationInRelationshipsExportDefinitions globals()['JsonApiAutomationInRelationshipsNotificationChannel'] = JsonApiAutomationInRelationshipsNotificationChannel @@ -100,9 +100,9 @@ def openapi_types(): return { 'analytical_dashboard': (JsonApiAutomationInRelationshipsAnalyticalDashboard,), # noqa: E501 'automation_results': (JsonApiAutomationOutRelationshipsAutomationResults,), # noqa: E501 - 'created_by': (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy,), # noqa: E501 + 'created_by': (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy,), # noqa: E501 'export_definitions': (JsonApiAutomationInRelationshipsExportDefinitions,), # noqa: E501 - 'modified_by': (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy,), # noqa: E501 + 'modified_by': (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy,), # noqa: E501 'notification_channel': (JsonApiAutomationInRelationshipsNotificationChannel,), # noqa: E501 'recipients': (JsonApiAutomationInRelationshipsRecipients,), # noqa: E501 } @@ -165,9 +165,9 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 _visited_composed_classes = (Animal,) analytical_dashboard (JsonApiAutomationInRelationshipsAnalyticalDashboard): [optional] # noqa: E501 automation_results (JsonApiAutomationOutRelationshipsAutomationResults): [optional] # noqa: E501 - created_by (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy): [optional] # noqa: E501 + created_by (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy): [optional] # noqa: E501 export_definitions (JsonApiAutomationInRelationshipsExportDefinitions): [optional] # noqa: E501 - modified_by (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy): [optional] # noqa: E501 + modified_by (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy): [optional] # noqa: E501 notification_channel (JsonApiAutomationInRelationshipsNotificationChannel): [optional] # noqa: E501 recipients (JsonApiAutomationInRelationshipsRecipients): [optional] # noqa: E501 """ @@ -257,9 +257,9 @@ def __init__(self, *args, **kwargs): # noqa: E501 _visited_composed_classes = (Animal,) analytical_dashboard (JsonApiAutomationInRelationshipsAnalyticalDashboard): [optional] # noqa: E501 automation_results (JsonApiAutomationOutRelationshipsAutomationResults): [optional] # noqa: E501 - created_by (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy): [optional] # noqa: E501 + created_by (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy): [optional] # noqa: E501 export_definitions (JsonApiAutomationInRelationshipsExportDefinitions): [optional] # noqa: E501 - modified_by (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy): [optional] # noqa: E501 + modified_by (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy): [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_dashboard_plugin_out_relationships.py b/gooddata-api-client/gooddata_api_client/model/json_api_dashboard_plugin_out_relationships.py index 7552a6b35..bf516e528 100644 --- a/gooddata-api-client/gooddata_api_client/model/json_api_dashboard_plugin_out_relationships.py +++ b/gooddata-api-client/gooddata_api_client/model/json_api_dashboard_plugin_out_relationships.py @@ -31,8 +31,8 @@ def lazy_import(): - from gooddata_api_client.model.json_api_analytical_dashboard_out_relationships_created_by import JsonApiAnalyticalDashboardOutRelationshipsCreatedBy - globals()['JsonApiAnalyticalDashboardOutRelationshipsCreatedBy'] = JsonApiAnalyticalDashboardOutRelationshipsCreatedBy + from gooddata_api_client.model.json_api_analytical_dashboard_out_relationships_certified_by import JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy + globals()['JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy'] = JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy class JsonApiDashboardPluginOutRelationships(ModelNormal): @@ -88,8 +88,8 @@ def openapi_types(): """ lazy_import() return { - 'created_by': (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy,), # noqa: E501 - 'modified_by': (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy,), # noqa: E501 + 'created_by': (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy,), # noqa: E501 + 'modified_by': (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy,), # noqa: E501 } @cached_property @@ -143,8 +143,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,) - created_by (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy): [optional] # noqa: E501 - modified_by (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy): [optional] # noqa: E501 + created_by (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy): [optional] # noqa: E501 + modified_by (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy): [optional] # noqa: E501 """ _check_type = kwargs.pop('_check_type', True) @@ -230,8 +230,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,) - created_by (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy): [optional] # noqa: E501 - modified_by (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy): [optional] # noqa: E501 + created_by (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy): [optional] # noqa: E501 + modified_by (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy): [optional] # noqa: E501 """ _check_type = kwargs.pop('_check_type', True) 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 45d3e3952..99082e024 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 @@ -31,11 +31,11 @@ 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_analytical_dashboard_out_relationships_certified_by import JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy from gooddata_api_client.model.json_api_automation_in_relationships_analytical_dashboard import JsonApiAutomationInRelationshipsAnalyticalDashboard from gooddata_api_client.model.json_api_automation_result_out_relationships_automation import JsonApiAutomationResultOutRelationshipsAutomation from gooddata_api_client.model.json_api_export_definition_in_relationships_visualization_object import JsonApiExportDefinitionInRelationshipsVisualizationObject - globals()['JsonApiAnalyticalDashboardOutRelationshipsCreatedBy'] = JsonApiAnalyticalDashboardOutRelationshipsCreatedBy + globals()['JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy'] = JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy globals()['JsonApiAutomationInRelationshipsAnalyticalDashboard'] = JsonApiAutomationInRelationshipsAnalyticalDashboard globals()['JsonApiAutomationResultOutRelationshipsAutomation'] = JsonApiAutomationResultOutRelationshipsAutomation globals()['JsonApiExportDefinitionInRelationshipsVisualizationObject'] = JsonApiExportDefinitionInRelationshipsVisualizationObject @@ -96,8 +96,8 @@ def openapi_types(): return { 'analytical_dashboard': (JsonApiAutomationInRelationshipsAnalyticalDashboard,), # noqa: E501 'automation': (JsonApiAutomationResultOutRelationshipsAutomation,), # noqa: E501 - 'created_by': (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy,), # noqa: E501 - 'modified_by': (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy,), # noqa: E501 + 'created_by': (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy,), # noqa: E501 + 'modified_by': (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy,), # noqa: E501 'visualization_object': (JsonApiExportDefinitionInRelationshipsVisualizationObject,), # noqa: E501 } @@ -157,8 +157,8 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 _visited_composed_classes = (Animal,) analytical_dashboard (JsonApiAutomationInRelationshipsAnalyticalDashboard): [optional] # noqa: E501 automation (JsonApiAutomationResultOutRelationshipsAutomation): [optional] # noqa: E501 - created_by (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy): [optional] # noqa: E501 - modified_by (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy): [optional] # noqa: E501 + created_by (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy): [optional] # noqa: E501 + modified_by (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy): [optional] # noqa: E501 visualization_object (JsonApiExportDefinitionInRelationshipsVisualizationObject): [optional] # noqa: E501 """ @@ -247,8 +247,8 @@ def __init__(self, *args, **kwargs): # noqa: E501 _visited_composed_classes = (Animal,) analytical_dashboard (JsonApiAutomationInRelationshipsAnalyticalDashboard): [optional] # noqa: E501 automation (JsonApiAutomationResultOutRelationshipsAutomation): [optional] # noqa: E501 - created_by (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy): [optional] # noqa: E501 - modified_by (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy): [optional] # noqa: E501 + created_by (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy): [optional] # noqa: E501 + modified_by (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy): [optional] # noqa: E501 visualization_object (JsonApiExportDefinitionInRelationshipsVisualizationObject): [optional] # noqa: E501 """ diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_jwk_in_attributes_content.py b/gooddata-api-client/gooddata_api_client/model/json_api_jwk_in_attributes_content.py index 3554ced2b..2bef1e6a6 100644 --- a/gooddata-api-client/gooddata_api_client/model/json_api_jwk_in_attributes_content.py +++ b/gooddata-api-client/gooddata_api_client/model/json_api_jwk_in_attributes_content.py @@ -74,6 +74,12 @@ class JsonApiJwkInAttributesContent(ModelComposed): } validations = { + ('kid',): { + 'max_length': 255, + 'regex': { + 'pattern': r'^[^.]', # noqa: E501 + }, + }, } @cached_property diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_llm_provider_in.py b/gooddata-api-client/gooddata_api_client/model/json_api_llm_provider_in.py new file mode 100644 index 000000000..7e7e92d29 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_llm_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_llm_provider_in_attributes import JsonApiLlmProviderInAttributes + globals()['JsonApiLlmProviderInAttributes'] = JsonApiLlmProviderInAttributes + + +class JsonApiLlmProviderIn(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',): { + 'LLMPROVIDER': "llmProvider", + }, + } + + 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': (JsonApiLlmProviderInAttributes,), # 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 + """JsonApiLlmProviderIn - a model defined in OpenAPI + + Args: + attributes (JsonApiLlmProviderInAttributes): + id (str): API identifier of an object + + Keyword Args: + type (str): Object type. defaults to "llmProvider", must be one of ["llmProvider", ] # 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', "llmProvider") + _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 + """JsonApiLlmProviderIn - a model defined in OpenAPI + + Args: + attributes (JsonApiLlmProviderInAttributes): + id (str): API identifier of an object + + Keyword Args: + type (str): Object type. defaults to "llmProvider", must be one of ["llmProvider", ] # 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', "llmProvider") + _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_provider_in_attributes.py b/gooddata-api-client/gooddata_api_client/model/json_api_llm_provider_in_attributes.py new file mode 100644 index 000000000..3425ffeda --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_llm_provider_in_attributes.py @@ -0,0 +1,305 @@ +""" + 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_provider_in_attributes_models_inner import JsonApiLlmProviderInAttributesModelsInner + from gooddata_api_client.model.json_api_llm_provider_in_attributes_provider_config import JsonApiLlmProviderInAttributesProviderConfig + globals()['JsonApiLlmProviderInAttributesModelsInner'] = JsonApiLlmProviderInAttributesModelsInner + globals()['JsonApiLlmProviderInAttributesProviderConfig'] = JsonApiLlmProviderInAttributesProviderConfig + + +class JsonApiLlmProviderInAttributes(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 = { + ('default_model_id',): { + 'max_length': 255, + }, + ('description',): { + 'max_length': 10000, + }, + ('name',): { + '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 { + 'models': ([JsonApiLlmProviderInAttributesModelsInner], none_type,), # noqa: E501 + 'provider_config': (JsonApiLlmProviderInAttributesProviderConfig,), # noqa: E501 + 'default_model_id': (str, none_type,), # noqa: E501 + 'description': (str, none_type,), # noqa: E501 + 'name': (str, none_type,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'models': 'models', # noqa: E501 + 'provider_config': 'providerConfig', # noqa: E501 + 'default_model_id': 'defaultModelId', # noqa: E501 + 'description': 'description', # noqa: E501 + 'name': 'name', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, models, provider_config, *args, **kwargs): # noqa: E501 + """JsonApiLlmProviderInAttributes - a model defined in OpenAPI + + Args: + models ([JsonApiLlmProviderInAttributesModelsInner], none_type): List of LLM models available for this provider. + provider_config (JsonApiLlmProviderInAttributesProviderConfig): + + 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,) + default_model_id (str, none_type): ID of the default model to use from the models list.. [optional] # noqa: E501 + description (str, none_type): Description of the LLM Provider.. [optional] # noqa: E501 + name (str, none_type): [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.models = models + self.provider_config = provider_config + 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, models, provider_config, *args, **kwargs): # noqa: E501 + """JsonApiLlmProviderInAttributes - a model defined in OpenAPI + + Args: + models ([JsonApiLlmProviderInAttributesModelsInner], none_type): List of LLM models available for this provider. + provider_config (JsonApiLlmProviderInAttributesProviderConfig): + + 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,) + default_model_id (str, none_type): ID of the default model to use from the models list.. [optional] # noqa: E501 + description (str, none_type): Description of the LLM Provider.. [optional] # noqa: E501 + name (str, none_type): [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.models = models + self.provider_config = provider_config + 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_provider_in_attributes_models_inner.py b/gooddata-api-client/gooddata_api_client/model/json_api_llm_provider_in_attributes_models_inner.py new file mode 100644 index 000000000..0ff9244c7 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_llm_provider_in_attributes_models_inner.py @@ -0,0 +1,288 @@ +""" + 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 JsonApiLlmProviderInAttributesModelsInner(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 = { + ('family',): { + 'OPENAI': "OPENAI", + 'ANTHROPIC': "ANTHROPIC", + 'META': "META", + 'MISTRAL': "MISTRAL", + 'AMAZON': "AMAZON", + 'GOOGLE': "GOOGLE", + 'COHERE': "COHERE", + }, + } + + validations = { + ('id',): { + '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 { + 'family': (str,), # noqa: E501 + 'id': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'family': 'family', # noqa: E501 + 'id': 'id', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, family, id, *args, **kwargs): # noqa: E501 + """JsonApiLlmProviderInAttributesModelsInner - a model defined in OpenAPI + + Args: + family (str): Family of LLM models. + id (str): Unique identifier of the model (e.g., gpt-5.3, claude-4.6). + + 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.family = family + self.id = 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, family, id, *args, **kwargs): # noqa: E501 + """JsonApiLlmProviderInAttributesModelsInner - a model defined in OpenAPI + + Args: + family (str): Family of LLM models. + id (str): Unique identifier of the model (e.g., gpt-5.3, claude-4.6). + + 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.family = family + self.id = 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/json_api_llm_provider_in_attributes_provider_config.py b/gooddata-api-client/gooddata_api_client/model/json_api_llm_provider_in_attributes_provider_config.py new file mode 100644 index 000000000..949c97b2a --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_llm_provider_in_attributes_provider_config.py @@ -0,0 +1,363 @@ +""" + 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.aws_bedrock_provider_config import AwsBedrockProviderConfig + from gooddata_api_client.model.azure_foundry_provider_config import AzureFoundryProviderConfig + from gooddata_api_client.model.open_ai_provider_auth import OpenAiProviderAuth + from gooddata_api_client.model.open_ai_provider_config import OpenAIProviderConfig + globals()['AwsBedrockProviderConfig'] = AwsBedrockProviderConfig + globals()['AzureFoundryProviderConfig'] = AzureFoundryProviderConfig + globals()['OpenAIProviderConfig'] = OpenAIProviderConfig + globals()['OpenAiProviderAuth'] = OpenAiProviderAuth + + +class JsonApiLlmProviderInAttributesProviderConfig(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',): { + 'OPENAI': "OPENAI", + }, + } + + validations = { + ('base_url',): { + 'max_length': 255, + }, + ('organization',): { + 'max_length': 255, + }, + ('region',): { + 'max_length': 255, + }, + ('endpoint',): { + '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 { + 'base_url': (str, none_type,), # noqa: E501 + 'organization': (str, none_type,), # noqa: E501 + 'auth': (OpenAiProviderAuth,), # noqa: E501 + 'region': (str,), # noqa: E501 + 'type': (str,), # noqa: E501 + 'endpoint': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'base_url': 'baseUrl', # noqa: E501 + 'organization': 'organization', # noqa: E501 + 'auth': 'auth', # noqa: E501 + 'region': 'region', # noqa: E501 + 'type': 'type', # noqa: E501 + 'endpoint': 'endpoint', # noqa: E501 + } + + read_only_vars = { + } + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 + """JsonApiLlmProviderInAttributesProviderConfig - 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 base URL for OpenAI API.. [optional] if omitted the server will use the default value of "https://api.openai.com" # noqa: E501 + organization (str, none_type): OpenAI organization ID.. [optional] # noqa: E501 + auth (OpenAiProviderAuth): [optional] # noqa: E501 + region (str): AWS region for Bedrock.. [optional] # noqa: E501 + type (str): Provider type.. [optional] if omitted the server will use the default value of "OPENAI" # noqa: E501 + endpoint (str): Azure AI inference endpoint URL.. [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 + """JsonApiLlmProviderInAttributesProviderConfig - 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 base URL for OpenAI API.. [optional] if omitted the server will use the default value of "https://api.openai.com" # noqa: E501 + organization (str, none_type): OpenAI organization ID.. [optional] # noqa: E501 + auth (OpenAiProviderAuth): [optional] # noqa: E501 + region (str): AWS region for Bedrock.. [optional] # noqa: E501 + type (str): Provider type.. [optional] if omitted the server will use the default value of "OPENAI" # noqa: E501 + endpoint (str): Azure AI inference endpoint URL.. [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': [ + AwsBedrockProviderConfig, + AzureFoundryProviderConfig, + OpenAIProviderConfig, + ], + } diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_llm_provider_in_document.py b/gooddata-api-client/gooddata_api_client/model/json_api_llm_provider_in_document.py new file mode 100644 index 000000000..57d628b66 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_llm_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_llm_provider_in import JsonApiLlmProviderIn + globals()['JsonApiLlmProviderIn'] = JsonApiLlmProviderIn + + +class JsonApiLlmProviderInDocument(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': (JsonApiLlmProviderIn,), # 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 + """JsonApiLlmProviderInDocument - a model defined in OpenAPI + + Args: + data (JsonApiLlmProviderIn): + + 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 + """JsonApiLlmProviderInDocument - a model defined in OpenAPI + + Args: + data (JsonApiLlmProviderIn): + + 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_provider_out.py b/gooddata-api-client/gooddata_api_client/model/json_api_llm_provider_out.py new file mode 100644 index 000000000..c90290459 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_llm_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_llm_provider_in_attributes import JsonApiLlmProviderInAttributes + globals()['JsonApiLlmProviderInAttributes'] = JsonApiLlmProviderInAttributes + + +class JsonApiLlmProviderOut(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',): { + 'LLMPROVIDER': "llmProvider", + }, + } + + 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': (JsonApiLlmProviderInAttributes,), # 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 + """JsonApiLlmProviderOut - a model defined in OpenAPI + + Args: + attributes (JsonApiLlmProviderInAttributes): + id (str): API identifier of an object + + Keyword Args: + type (str): Object type. defaults to "llmProvider", must be one of ["llmProvider", ] # 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', "llmProvider") + _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 + """JsonApiLlmProviderOut - a model defined in OpenAPI + + Args: + attributes (JsonApiLlmProviderInAttributes): + id (str): API identifier of an object + + Keyword Args: + type (str): Object type. defaults to "llmProvider", must be one of ["llmProvider", ] # 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', "llmProvider") + _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_provider_out_document.py b/gooddata-api-client/gooddata_api_client/model/json_api_llm_provider_out_document.py new file mode 100644 index 000000000..557cb946a --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_llm_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_llm_provider_out import JsonApiLlmProviderOut + from gooddata_api_client.model.object_links import ObjectLinks + globals()['JsonApiLlmProviderOut'] = JsonApiLlmProviderOut + globals()['ObjectLinks'] = ObjectLinks + + +class JsonApiLlmProviderOutDocument(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': (JsonApiLlmProviderOut,), # 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 + """JsonApiLlmProviderOutDocument - a model defined in OpenAPI + + Args: + data (JsonApiLlmProviderOut): + + 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 + """JsonApiLlmProviderOutDocument - a model defined in OpenAPI + + Args: + data (JsonApiLlmProviderOut): + + 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_provider_out_list.py b/gooddata-api-client/gooddata_api_client/model/json_api_llm_provider_out_list.py new file mode 100644 index 000000000..ba45baf9f --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_llm_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_aggregated_fact_out_list_meta import JsonApiAggregatedFactOutListMeta + from gooddata_api_client.model.json_api_llm_provider_out_with_links import JsonApiLlmProviderOutWithLinks + from gooddata_api_client.model.list_links import ListLinks + globals()['JsonApiAggregatedFactOutListMeta'] = JsonApiAggregatedFactOutListMeta + globals()['JsonApiLlmProviderOutWithLinks'] = JsonApiLlmProviderOutWithLinks + globals()['ListLinks'] = ListLinks + + +class JsonApiLlmProviderOutList(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': ([JsonApiLlmProviderOutWithLinks],), # noqa: E501 + 'links': (ListLinks,), # noqa: E501 + 'meta': (JsonApiAggregatedFactOutListMeta,), # 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 + """JsonApiLlmProviderOutList - a model defined in OpenAPI + + Args: + data ([JsonApiLlmProviderOutWithLinks]): + + 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 (JsonApiAggregatedFactOutListMeta): [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 + """JsonApiLlmProviderOutList - a model defined in OpenAPI + + Args: + data ([JsonApiLlmProviderOutWithLinks]): + + 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 (JsonApiAggregatedFactOutListMeta): [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_provider_out_with_links.py b/gooddata-api-client/gooddata_api_client/model/json_api_llm_provider_out_with_links.py new file mode 100644 index 000000000..04eaadf61 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_llm_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_llm_provider_in_attributes import JsonApiLlmProviderInAttributes + from gooddata_api_client.model.json_api_llm_provider_out import JsonApiLlmProviderOut + from gooddata_api_client.model.object_links import ObjectLinks + from gooddata_api_client.model.object_links_container import ObjectLinksContainer + globals()['JsonApiLlmProviderInAttributes'] = JsonApiLlmProviderInAttributes + globals()['JsonApiLlmProviderOut'] = JsonApiLlmProviderOut + globals()['ObjectLinks'] = ObjectLinks + globals()['ObjectLinksContainer'] = ObjectLinksContainer + + +class JsonApiLlmProviderOutWithLinks(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',): { + 'LLMPROVIDER': "llmProvider", + }, + } + + 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': (JsonApiLlmProviderInAttributes,), # 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 + """JsonApiLlmProviderOutWithLinks - a model defined in OpenAPI + + Keyword Args: + attributes (JsonApiLlmProviderInAttributes): + id (str): API identifier of an object + type (str): Object type. defaults to "llmProvider", must be one of ["llmProvider", ] # 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', "llmProvider") + _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 + """JsonApiLlmProviderOutWithLinks - a model defined in OpenAPI + + Keyword Args: + attributes (JsonApiLlmProviderInAttributes): + id (str): API identifier of an object + type (str): Object type. defaults to "llmProvider", must be one of ["llmProvider", ] # 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', "llmProvider") + _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': [ + JsonApiLlmProviderOut, + ObjectLinksContainer, + ], + 'oneOf': [ + ], + } diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_llm_provider_patch.py b/gooddata-api-client/gooddata_api_client/model/json_api_llm_provider_patch.py new file mode 100644 index 000000000..d594e2772 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_llm_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_llm_provider_patch_attributes import JsonApiLlmProviderPatchAttributes + globals()['JsonApiLlmProviderPatchAttributes'] = JsonApiLlmProviderPatchAttributes + + +class JsonApiLlmProviderPatch(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',): { + 'LLMPROVIDER': "llmProvider", + }, + } + + 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': (JsonApiLlmProviderPatchAttributes,), # 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 + """JsonApiLlmProviderPatch - a model defined in OpenAPI + + Args: + attributes (JsonApiLlmProviderPatchAttributes): + id (str): API identifier of an object + + Keyword Args: + type (str): Object type. defaults to "llmProvider", must be one of ["llmProvider", ] # 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', "llmProvider") + _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 + """JsonApiLlmProviderPatch - a model defined in OpenAPI + + Args: + attributes (JsonApiLlmProviderPatchAttributes): + id (str): API identifier of an object + + Keyword Args: + type (str): Object type. defaults to "llmProvider", must be one of ["llmProvider", ] # 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', "llmProvider") + _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_provider_patch_attributes.py b/gooddata-api-client/gooddata_api_client/model/json_api_llm_provider_patch_attributes.py new file mode 100644 index 000000000..64f5ee3fc --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_llm_provider_patch_attributes.py @@ -0,0 +1,297 @@ +""" + 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_provider_in_attributes_models_inner import JsonApiLlmProviderInAttributesModelsInner + from gooddata_api_client.model.json_api_llm_provider_in_attributes_provider_config import JsonApiLlmProviderInAttributesProviderConfig + globals()['JsonApiLlmProviderInAttributesModelsInner'] = JsonApiLlmProviderInAttributesModelsInner + globals()['JsonApiLlmProviderInAttributesProviderConfig'] = JsonApiLlmProviderInAttributesProviderConfig + + +class JsonApiLlmProviderPatchAttributes(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 = { + ('default_model_id',): { + 'max_length': 255, + }, + ('description',): { + 'max_length': 10000, + }, + ('name',): { + '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 { + 'default_model_id': (str, none_type,), # noqa: E501 + 'description': (str, none_type,), # noqa: E501 + 'models': ([JsonApiLlmProviderInAttributesModelsInner], none_type,), # noqa: E501 + 'name': (str, none_type,), # noqa: E501 + 'provider_config': (JsonApiLlmProviderInAttributesProviderConfig,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'default_model_id': 'defaultModelId', # noqa: E501 + 'description': 'description', # noqa: E501 + 'models': 'models', # noqa: E501 + 'name': 'name', # noqa: E501 + 'provider_config': 'providerConfig', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 + """JsonApiLlmProviderPatchAttributes - 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,) + default_model_id (str, none_type): ID of the default model to use from the models list.. [optional] # noqa: E501 + description (str, none_type): Description of the LLM Provider.. [optional] # noqa: E501 + models ([JsonApiLlmProviderInAttributesModelsInner], none_type): List of LLM models available for this provider.. [optional] # noqa: E501 + name (str, none_type): [optional] # noqa: E501 + provider_config (JsonApiLlmProviderInAttributesProviderConfig): [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 + """JsonApiLlmProviderPatchAttributes - 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,) + default_model_id (str, none_type): ID of the default model to use from the models list.. [optional] # noqa: E501 + description (str, none_type): Description of the LLM Provider.. [optional] # noqa: E501 + models ([JsonApiLlmProviderInAttributesModelsInner], none_type): List of LLM models available for this provider.. [optional] # noqa: E501 + name (str, none_type): [optional] # noqa: E501 + provider_config (JsonApiLlmProviderInAttributesProviderConfig): [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_provider_patch_document.py b/gooddata-api-client/gooddata_api_client/model/json_api_llm_provider_patch_document.py new file mode 100644 index 000000000..8664449b7 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/json_api_llm_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_llm_provider_patch import JsonApiLlmProviderPatch + globals()['JsonApiLlmProviderPatch'] = JsonApiLlmProviderPatch + + +class JsonApiLlmProviderPatchDocument(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': (JsonApiLlmProviderPatch,), # 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 + """JsonApiLlmProviderPatchDocument - a model defined in OpenAPI + + Args: + data (JsonApiLlmProviderPatch): + + 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 + """JsonApiLlmProviderPatchDocument - a model defined in OpenAPI + + Args: + data (JsonApiLlmProviderPatch): + + 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_metric_out_attributes.py b/gooddata-api-client/gooddata_api_client/model/json_api_metric_out_attributes.py index 83d497548..50a691dde 100644 --- a/gooddata-api-client/gooddata_api_client/model/json_api_metric_out_attributes.py +++ b/gooddata-api-client/gooddata_api_client/model/json_api_metric_out_attributes.py @@ -60,9 +60,17 @@ class JsonApiMetricOutAttributes(ModelNormal): """ allowed_values = { + ('certification',): { + 'CERTIFIED': "CERTIFIED", + }, } validations = { + ('certified_at',): { + 'regex': { + 'pattern': r'[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}', # noqa: E501 + }, + }, ('created_at',): { 'regex': { 'pattern': r'[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}', # noqa: E501 @@ -106,6 +114,9 @@ def openapi_types(): return { 'content': (JsonApiMetricInAttributesContent,), # noqa: E501 'are_relations_valid': (bool,), # noqa: E501 + 'certification': (str,), # noqa: E501 + 'certification_message': (str, none_type,), # noqa: E501 + 'certified_at': (datetime, none_type,), # noqa: E501 'created_at': (datetime, none_type,), # noqa: E501 'description': (str,), # noqa: E501 'is_hidden': (bool,), # noqa: E501 @@ -123,6 +134,9 @@ def discriminator(): attribute_map = { 'content': 'content', # noqa: E501 'are_relations_valid': 'areRelationsValid', # noqa: E501 + 'certification': 'certification', # noqa: E501 + 'certification_message': 'certificationMessage', # noqa: E501 + 'certified_at': 'certifiedAt', # noqa: E501 'created_at': 'createdAt', # noqa: E501 'description': 'description', # noqa: E501 'is_hidden': 'isHidden', # noqa: E501 @@ -177,6 +191,9 @@ def _from_openapi_data(cls, content, *args, **kwargs): # noqa: E501 through its discriminator because we passed in _visited_composed_classes = (Animal,) are_relations_valid (bool): [optional] # noqa: E501 + certification (str): Certification status of the entity.. [optional] if omitted the server will use the default value of "CERTIFIED" # noqa: E501 + certification_message (str, none_type): Optional message associated with the certification.. [optional] # noqa: E501 + certified_at (datetime, none_type): Time when the certification was set.. [optional] # noqa: E501 created_at (datetime, none_type): Time of the entity creation.. [optional] # noqa: E501 description (str): [optional] # noqa: E501 is_hidden (bool): [optional] # noqa: E501 @@ -274,6 +291,9 @@ def __init__(self, content, *args, **kwargs): # noqa: E501 through its discriminator because we passed in _visited_composed_classes = (Animal,) are_relations_valid (bool): [optional] # noqa: E501 + certification (str): Certification status of the entity.. [optional] if omitted the server will use the default value of "CERTIFIED" # noqa: E501 + certification_message (str, none_type): Optional message associated with the certification.. [optional] # noqa: E501 + certified_at (datetime, none_type): Time when the certification was set.. [optional] # noqa: E501 created_at (datetime, none_type): Time of the entity creation.. [optional] # noqa: E501 description (str): [optional] # noqa: E501 is_hidden (bool): [optional] # noqa: E501 diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_metric_out_relationships.py b/gooddata-api-client/gooddata_api_client/model/json_api_metric_out_relationships.py index 5c3ebc5c8..8dd8af9f1 100644 --- a/gooddata-api-client/gooddata_api_client/model/json_api_metric_out_relationships.py +++ b/gooddata-api-client/gooddata_api_client/model/json_api_metric_out_relationships.py @@ -31,13 +31,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_analytical_dashboard_out_relationships_certified_by import JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy from gooddata_api_client.model.json_api_analytical_dashboard_out_relationships_datasets import JsonApiAnalyticalDashboardOutRelationshipsDatasets from gooddata_api_client.model.json_api_analytical_dashboard_out_relationships_labels import JsonApiAnalyticalDashboardOutRelationshipsLabels 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 - globals()['JsonApiAnalyticalDashboardOutRelationshipsCreatedBy'] = JsonApiAnalyticalDashboardOutRelationshipsCreatedBy + globals()['JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy'] = JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy globals()['JsonApiAnalyticalDashboardOutRelationshipsDatasets'] = JsonApiAnalyticalDashboardOutRelationshipsDatasets globals()['JsonApiAnalyticalDashboardOutRelationshipsLabels'] = JsonApiAnalyticalDashboardOutRelationshipsLabels globals()['JsonApiAnalyticalDashboardOutRelationshipsMetrics'] = JsonApiAnalyticalDashboardOutRelationshipsMetrics @@ -99,12 +99,13 @@ def openapi_types(): lazy_import() return { 'attributes': (JsonApiAttributeHierarchyOutRelationshipsAttributes,), # noqa: E501 - 'created_by': (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy,), # noqa: E501 + 'certified_by': (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy,), # noqa: E501 + 'created_by': (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy,), # noqa: E501 'datasets': (JsonApiAnalyticalDashboardOutRelationshipsDatasets,), # noqa: E501 'facts': (JsonApiDatasetOutRelationshipsFacts,), # noqa: E501 'labels': (JsonApiAnalyticalDashboardOutRelationshipsLabels,), # noqa: E501 'metrics': (JsonApiAnalyticalDashboardOutRelationshipsMetrics,), # noqa: E501 - 'modified_by': (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy,), # noqa: E501 + 'modified_by': (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy,), # noqa: E501 } @cached_property @@ -114,6 +115,7 @@ def discriminator(): attribute_map = { 'attributes': 'attributes', # noqa: E501 + 'certified_by': 'certifiedBy', # noqa: E501 'created_by': 'createdBy', # noqa: E501 'datasets': 'datasets', # noqa: E501 'facts': 'facts', # noqa: E501 @@ -164,12 +166,13 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 through its discriminator because we passed in _visited_composed_classes = (Animal,) attributes (JsonApiAttributeHierarchyOutRelationshipsAttributes): [optional] # noqa: E501 - created_by (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy): [optional] # noqa: E501 + certified_by (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy): [optional] # noqa: E501 + created_by (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy): [optional] # noqa: E501 datasets (JsonApiAnalyticalDashboardOutRelationshipsDatasets): [optional] # noqa: E501 facts (JsonApiDatasetOutRelationshipsFacts): [optional] # noqa: E501 labels (JsonApiAnalyticalDashboardOutRelationshipsLabels): [optional] # noqa: E501 metrics (JsonApiAnalyticalDashboardOutRelationshipsMetrics): [optional] # noqa: E501 - modified_by (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy): [optional] # noqa: E501 + modified_by (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy): [optional] # noqa: E501 """ _check_type = kwargs.pop('_check_type', True) @@ -256,12 +259,13 @@ def __init__(self, *args, **kwargs): # noqa: E501 through its discriminator because we passed in _visited_composed_classes = (Animal,) attributes (JsonApiAttributeHierarchyOutRelationshipsAttributes): [optional] # noqa: E501 - created_by (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy): [optional] # noqa: E501 + certified_by (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy): [optional] # noqa: E501 + created_by (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy): [optional] # noqa: E501 datasets (JsonApiAnalyticalDashboardOutRelationshipsDatasets): [optional] # noqa: E501 facts (JsonApiDatasetOutRelationshipsFacts): [optional] # noqa: E501 labels (JsonApiAnalyticalDashboardOutRelationshipsLabels): [optional] # noqa: E501 metrics (JsonApiAnalyticalDashboardOutRelationshipsMetrics): [optional] # noqa: E501 - modified_by (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy): [optional] # noqa: E501 + modified_by (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy): [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 index 7fae26b1e..7bc9e12b4 100644 --- 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 @@ -78,6 +78,10 @@ class JsonApiNotificationChannelInAttributesDestination(ModelComposed): } validations = { + ('has_secret_key',): { + }, + ('has_token',): { + }, ('secret_key',): { 'max_length': 10000, }, 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 03253faf1..d431d8652 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 @@ -61,6 +61,7 @@ class JsonApiOrganizationSettingInAttributes(ModelNormal): 'ACTIVE_THEME': "ACTIVE_THEME", 'ACTIVE_COLOR_PALETTE': "ACTIVE_COLOR_PALETTE", 'ACTIVE_LLM_ENDPOINT': "ACTIVE_LLM_ENDPOINT", + 'ACTIVE_LLM_PROVIDER': "ACTIVE_LLM_PROVIDER", 'ACTIVE_CALENDARS': "ACTIVE_CALENDARS", 'WHITE_LABELING': "WHITE_LABELING", 'LOCALE': "LOCALE", @@ -104,6 +105,7 @@ class JsonApiOrganizationSettingInAttributes(ModelNormal): 'EXPORT_CSV_CUSTOM_DELIMITER': "EXPORT_CSV_CUSTOM_DELIMITER", 'ENABLE_QUERY_TAGS': "ENABLE_QUERY_TAGS", 'RESTRICT_BASE_UI': "RESTRICT_BASE_UI", + 'CERTIFY_PARENT_OBJECTS': "CERTIFY_PARENT_OBJECTS", }, } diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_visualization_object_out_attributes.py b/gooddata-api-client/gooddata_api_client/model/json_api_visualization_object_out_attributes.py index e0953d58e..56cc4b6a4 100644 --- a/gooddata-api-client/gooddata_api_client/model/json_api_visualization_object_out_attributes.py +++ b/gooddata-api-client/gooddata_api_client/model/json_api_visualization_object_out_attributes.py @@ -56,9 +56,17 @@ class JsonApiVisualizationObjectOutAttributes(ModelNormal): """ allowed_values = { + ('certification',): { + 'CERTIFIED': "CERTIFIED", + }, } validations = { + ('certified_at',): { + 'regex': { + 'pattern': r'[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}', # noqa: E501 + }, + }, ('created_at',): { 'regex': { 'pattern': r'[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}', # noqa: E501 @@ -100,6 +108,9 @@ def openapi_types(): return { 'content': ({str: (bool, date, datetime, dict, float, int, list, str, none_type)},), # noqa: E501 'are_relations_valid': (bool,), # noqa: E501 + 'certification': (str,), # noqa: E501 + 'certification_message': (str, none_type,), # noqa: E501 + 'certified_at': (datetime, none_type,), # noqa: E501 'created_at': (datetime, none_type,), # noqa: E501 'description': (str,), # noqa: E501 'is_hidden': (bool,), # noqa: E501 @@ -116,6 +127,9 @@ def discriminator(): attribute_map = { 'content': 'content', # noqa: E501 'are_relations_valid': 'areRelationsValid', # noqa: E501 + 'certification': 'certification', # noqa: E501 + 'certification_message': 'certificationMessage', # noqa: E501 + 'certified_at': 'certifiedAt', # noqa: E501 'created_at': 'createdAt', # noqa: E501 'description': 'description', # noqa: E501 'is_hidden': 'isHidden', # noqa: E501 @@ -169,6 +183,9 @@ def _from_openapi_data(cls, content, *args, **kwargs): # noqa: E501 through its discriminator because we passed in _visited_composed_classes = (Animal,) are_relations_valid (bool): [optional] # noqa: E501 + certification (str): Certification status of the entity.. [optional] if omitted the server will use the default value of "CERTIFIED" # noqa: E501 + certification_message (str, none_type): Optional message associated with the certification.. [optional] # noqa: E501 + certified_at (datetime, none_type): Time when the certification was set.. [optional] # noqa: E501 created_at (datetime, none_type): Time of the entity creation.. [optional] # noqa: E501 description (str): [optional] # noqa: E501 is_hidden (bool): [optional] # noqa: E501 @@ -265,6 +282,9 @@ def __init__(self, content, *args, **kwargs): # noqa: E501 through its discriminator because we passed in _visited_composed_classes = (Animal,) are_relations_valid (bool): [optional] # noqa: E501 + certification (str): Certification status of the entity.. [optional] if omitted the server will use the default value of "CERTIFIED" # noqa: E501 + certification_message (str, none_type): Optional message associated with the certification.. [optional] # noqa: E501 + certified_at (datetime, none_type): Time when the certification was set.. [optional] # noqa: E501 created_at (datetime, none_type): Time of the entity creation.. [optional] # noqa: E501 description (str): [optional] # noqa: E501 is_hidden (bool): [optional] # noqa: E501 diff --git a/gooddata-api-client/gooddata_api_client/model/json_api_workspace_automation_out_relationships.py b/gooddata-api-client/gooddata_api_client/model/json_api_workspace_automation_out_relationships.py index 1608b606e..6860275f8 100644 --- a/gooddata-api-client/gooddata_api_client/model/json_api_workspace_automation_out_relationships.py +++ b/gooddata-api-client/gooddata_api_client/model/json_api_workspace_automation_out_relationships.py @@ -31,14 +31,14 @@ 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_analytical_dashboard_out_relationships_certified_by import JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy 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_out_relationships_automation_results import JsonApiAutomationOutRelationshipsAutomationResults from gooddata_api_client.model.json_api_workspace_automation_out_relationships_workspace import JsonApiWorkspaceAutomationOutRelationshipsWorkspace - globals()['JsonApiAnalyticalDashboardOutRelationshipsCreatedBy'] = JsonApiAnalyticalDashboardOutRelationshipsCreatedBy + globals()['JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy'] = JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy globals()['JsonApiAutomationInRelationshipsAnalyticalDashboard'] = JsonApiAutomationInRelationshipsAnalyticalDashboard globals()['JsonApiAutomationInRelationshipsExportDefinitions'] = JsonApiAutomationInRelationshipsExportDefinitions globals()['JsonApiAutomationInRelationshipsNotificationChannel'] = JsonApiAutomationInRelationshipsNotificationChannel @@ -102,9 +102,9 @@ def openapi_types(): return { 'analytical_dashboard': (JsonApiAutomationInRelationshipsAnalyticalDashboard,), # noqa: E501 'automation_results': (JsonApiAutomationOutRelationshipsAutomationResults,), # noqa: E501 - 'created_by': (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy,), # noqa: E501 + 'created_by': (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy,), # noqa: E501 'export_definitions': (JsonApiAutomationInRelationshipsExportDefinitions,), # noqa: E501 - 'modified_by': (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy,), # noqa: E501 + 'modified_by': (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy,), # noqa: E501 'notification_channel': (JsonApiAutomationInRelationshipsNotificationChannel,), # noqa: E501 'recipients': (JsonApiAutomationInRelationshipsRecipients,), # noqa: E501 'workspace': (JsonApiWorkspaceAutomationOutRelationshipsWorkspace,), # noqa: E501 @@ -169,9 +169,9 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 _visited_composed_classes = (Animal,) analytical_dashboard (JsonApiAutomationInRelationshipsAnalyticalDashboard): [optional] # noqa: E501 automation_results (JsonApiAutomationOutRelationshipsAutomationResults): [optional] # noqa: E501 - created_by (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy): [optional] # noqa: E501 + created_by (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy): [optional] # noqa: E501 export_definitions (JsonApiAutomationInRelationshipsExportDefinitions): [optional] # noqa: E501 - modified_by (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy): [optional] # noqa: E501 + modified_by (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy): [optional] # noqa: E501 notification_channel (JsonApiAutomationInRelationshipsNotificationChannel): [optional] # noqa: E501 recipients (JsonApiAutomationInRelationshipsRecipients): [optional] # noqa: E501 workspace (JsonApiWorkspaceAutomationOutRelationshipsWorkspace): [optional] # noqa: E501 @@ -262,9 +262,9 @@ def __init__(self, *args, **kwargs): # noqa: E501 _visited_composed_classes = (Animal,) analytical_dashboard (JsonApiAutomationInRelationshipsAnalyticalDashboard): [optional] # noqa: E501 automation_results (JsonApiAutomationOutRelationshipsAutomationResults): [optional] # noqa: E501 - created_by (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy): [optional] # noqa: E501 + created_by (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy): [optional] # noqa: E501 export_definitions (JsonApiAutomationInRelationshipsExportDefinitions): [optional] # noqa: E501 - modified_by (JsonApiAnalyticalDashboardOutRelationshipsCreatedBy): [optional] # noqa: E501 + modified_by (JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy): [optional] # noqa: E501 notification_channel (JsonApiAutomationInRelationshipsNotificationChannel): [optional] # noqa: E501 recipients (JsonApiAutomationInRelationshipsRecipients): [optional] # noqa: E501 workspace (JsonApiWorkspaceAutomationOutRelationshipsWorkspace): [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 5771a0633..f729ee064 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 @@ -72,6 +72,8 @@ class JsonApiWorkspaceOutMeta(ModelNormal): 'EXPORT_PDF': "EXPORT_PDF", 'CREATE_AUTOMATION': "CREATE_AUTOMATION", 'USE_AI_ASSISTANT': "USE_AI_ASSISTANT", + 'WRITE_KNOWLEDGE_DOCUMENTS': "WRITE_KNOWLEDGE_DOCUMENTS", + 'READ_KNOWLEDGE_DOCUMENTS': "READ_KNOWLEDGE_DOCUMENTS", 'CREATE_FILTER_VIEW': "CREATE_FILTER_VIEW", 'VIEW': "VIEW", }, diff --git a/gooddata-api-client/gooddata_api_client/model/knowledge_document_metadata_dto.py b/gooddata-api-client/gooddata_api_client/model/knowledge_document_metadata_dto.py new file mode 100644 index 000000000..0b6ad1732 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/knowledge_document_metadata_dto.py @@ -0,0 +1,318 @@ +""" + 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 KnowledgeDocumentMetadataDto(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 { + 'created_at': (str,), # noqa: E501 + 'created_by': (str,), # noqa: E501 + 'filename': (str,), # noqa: E501 + 'num_chunks': (int,), # noqa: E501 + 'scopes': ([str],), # noqa: E501 + 'updated_at': (str,), # noqa: E501 + 'updated_by': (str,), # noqa: E501 + 'is_disabled': (bool,), # noqa: E501 + 'title': (str,), # noqa: E501 + 'workspace_id': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'created_at': 'createdAt', # noqa: E501 + 'created_by': 'createdBy', # noqa: E501 + 'filename': 'filename', # noqa: E501 + 'num_chunks': 'numChunks', # noqa: E501 + 'scopes': 'scopes', # noqa: E501 + 'updated_at': 'updatedAt', # noqa: E501 + 'updated_by': 'updatedBy', # noqa: E501 + 'is_disabled': 'isDisabled', # noqa: E501 + 'title': 'title', # noqa: E501 + 'workspace_id': 'workspaceId', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, created_at, created_by, filename, num_chunks, scopes, updated_at, updated_by, *args, **kwargs): # noqa: E501 + """KnowledgeDocumentMetadataDto - a model defined in OpenAPI + + Args: + created_at (str): + created_by (str): + filename (str): + num_chunks (int): + scopes ([str]): + updated_at (str): + updated_by (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,) + is_disabled (bool): [optional] # noqa: E501 + title (str): [optional] # noqa: E501 + workspace_id (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.created_at = created_at + self.created_by = created_by + self.filename = filename + self.num_chunks = num_chunks + self.scopes = scopes + self.updated_at = updated_at + self.updated_by = updated_by + 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, created_at, created_by, filename, num_chunks, scopes, updated_at, updated_by, *args, **kwargs): # noqa: E501 + """KnowledgeDocumentMetadataDto - a model defined in OpenAPI + + Args: + created_at (str): + created_by (str): + filename (str): + num_chunks (int): + scopes ([str]): + updated_at (str): + updated_by (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,) + is_disabled (bool): [optional] # noqa: E501 + title (str): [optional] # noqa: E501 + workspace_id (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.created_at = created_at + self.created_by = created_by + self.filename = filename + self.num_chunks = num_chunks + self.scopes = scopes + self.updated_at = updated_at + self.updated_by = updated_by + 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/knowledge_search_result_dto.py b/gooddata-api-client/gooddata_api_client/model/knowledge_search_result_dto.py new file mode 100644 index 000000000..de120c6cd --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/knowledge_search_result_dto.py @@ -0,0 +1,314 @@ +""" + 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 KnowledgeSearchResultDto(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 { + 'chunk_index': (int,), # noqa: E501 + 'content': (str,), # noqa: E501 + 'filename': (str,), # noqa: E501 + 'page_numbers': ([int],), # noqa: E501 + 'scopes': ([str],), # noqa: E501 + 'score': (float,), # noqa: E501 + 'total_chunks': (int,), # noqa: E501 + 'title': (str,), # noqa: E501 + 'workspace_id': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'chunk_index': 'chunkIndex', # noqa: E501 + 'content': 'content', # noqa: E501 + 'filename': 'filename', # noqa: E501 + 'page_numbers': 'pageNumbers', # noqa: E501 + 'scopes': 'scopes', # noqa: E501 + 'score': 'score', # noqa: E501 + 'total_chunks': 'totalChunks', # noqa: E501 + 'title': 'title', # noqa: E501 + 'workspace_id': 'workspaceId', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, chunk_index, content, filename, page_numbers, scopes, score, total_chunks, *args, **kwargs): # noqa: E501 + """KnowledgeSearchResultDto - a model defined in OpenAPI + + Args: + chunk_index (int): + content (str): + filename (str): + page_numbers ([int]): + scopes ([str]): + score (float): + total_chunks (int): + + 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,) + title (str): [optional] # noqa: E501 + workspace_id (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.chunk_index = chunk_index + self.content = content + self.filename = filename + self.page_numbers = page_numbers + self.scopes = scopes + self.score = score + self.total_chunks = total_chunks + 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, chunk_index, content, filename, page_numbers, scopes, score, total_chunks, *args, **kwargs): # noqa: E501 + """KnowledgeSearchResultDto - a model defined in OpenAPI + + Args: + chunk_index (int): + content (str): + filename (str): + page_numbers ([int]): + scopes ([str]): + score (float): + total_chunks (int): + + 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,) + title (str): [optional] # noqa: E501 + workspace_id (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.chunk_index = chunk_index + self.content = content + self.filename = filename + self.page_numbers = page_numbers + self.scopes = scopes + self.score = score + self.total_chunks = total_chunks + 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/list_database_instances_response.py b/gooddata-api-client/gooddata_api_client/model/list_database_instances_response.py new file mode 100644 index 000000000..acdeea1cb --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/list_database_instances_response.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 + + +def lazy_import(): + from gooddata_api_client.model.database_instance import DatabaseInstance + globals()['DatabaseInstance'] = DatabaseInstance + + +class ListDatabaseInstancesResponse(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 { + 'databases': ([DatabaseInstance],), # noqa: E501 + 'total_count': (int,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'databases': 'databases', # noqa: E501 + 'total_count': 'totalCount', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, databases, *args, **kwargs): # noqa: E501 + """ListDatabaseInstancesResponse - a model defined in OpenAPI + + Args: + databases ([DatabaseInstance]): List of database instances + + 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,) + total_count (int): Total count of items (only set when metaInclude=page). [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.databases = databases + 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, databases, *args, **kwargs): # noqa: E501 + """ListDatabaseInstancesResponse - a model defined in OpenAPI + + Args: + databases ([DatabaseInstance]): List of database instances + + 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,) + total_count (int): Total count of items (only set when metaInclude=page). [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.databases = databases + 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/list_knowledge_documents_response_dto.py b/gooddata-api-client/gooddata_api_client/model/list_knowledge_documents_response_dto.py new file mode 100644 index 000000000..9826850d1 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/list_knowledge_documents_response_dto.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 + + +def lazy_import(): + from gooddata_api_client.model.knowledge_document_metadata_dto import KnowledgeDocumentMetadataDto + globals()['KnowledgeDocumentMetadataDto'] = KnowledgeDocumentMetadataDto + + +class ListKnowledgeDocumentsResponseDto(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 { + 'documents': ([KnowledgeDocumentMetadataDto],), # noqa: E501 + 'next_page_token': (str,), # noqa: E501 + 'total_count': (int,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'documents': 'documents', # noqa: E501 + 'next_page_token': 'nextPageToken', # noqa: E501 + 'total_count': 'totalCount', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, documents, *args, **kwargs): # noqa: E501 + """ListKnowledgeDocumentsResponseDto - a model defined in OpenAPI + + Args: + documents ([KnowledgeDocumentMetadataDto]): + + 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,) + next_page_token (str): [optional] # noqa: E501 + total_count (int): [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.documents = documents + 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, documents, *args, **kwargs): # noqa: E501 + """ListKnowledgeDocumentsResponseDto - a model defined in OpenAPI + + Args: + documents ([KnowledgeDocumentMetadataDto]): + + 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,) + next_page_token (str): [optional] # noqa: E501 + total_count (int): [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.documents = documents + 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/list_services_response.py b/gooddata-api-client/gooddata_api_client/model/list_services_response.py new file mode 100644 index 000000000..e19237665 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/list_services_response.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 + + +def lazy_import(): + from gooddata_api_client.model.service_info import ServiceInfo + globals()['ServiceInfo'] = ServiceInfo + + +class ListServicesResponse(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 { + 'services': ([ServiceInfo],), # noqa: E501 + 'total_count': (int,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'services': 'services', # noqa: E501 + 'total_count': 'totalCount', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, services, *args, **kwargs): # noqa: E501 + """ListServicesResponse - a model defined in OpenAPI + + Args: + services ([ServiceInfo]): List of services + + 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,) + total_count (int): Total count of items (only set when metaInclude=page). [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.services = services + 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, services, *args, **kwargs): # noqa: E501 + """ListServicesResponse - a model defined in OpenAPI + + Args: + services ([ServiceInfo]): List of services + + 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,) + total_count (int): Total count of items (only set when metaInclude=page). [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.services = services + 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/llm_model.py b/gooddata-api-client/gooddata_api_client/model/llm_model.py new file mode 100644 index 000000000..575dd8d68 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/llm_model.py @@ -0,0 +1,288 @@ +""" + 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 LlmModel(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 = { + ('family',): { + 'OPENAI': "OPENAI", + 'ANTHROPIC': "ANTHROPIC", + 'META': "META", + 'MISTRAL': "MISTRAL", + 'AMAZON': "AMAZON", + 'GOOGLE': "GOOGLE", + 'COHERE': "COHERE", + }, + } + + validations = { + ('id',): { + '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 { + 'family': (str,), # noqa: E501 + 'id': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'family': 'family', # noqa: E501 + 'id': 'id', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, family, id, *args, **kwargs): # noqa: E501 + """LlmModel - a model defined in OpenAPI + + Args: + family (str): Family of LLM models. + id (str): Unique identifier of the model (e.g., gpt-5.3, claude-4.6). + + 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.family = family + self.id = 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, family, id, *args, **kwargs): # noqa: E501 + """LlmModel - a model defined in OpenAPI + + Args: + family (str): Family of LLM models. + id (str): Unique identifier of the model (e.g., gpt-5.3, claude-4.6). + + 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.family = family + self.id = 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/llm_provider_auth.py b/gooddata-api-client/gooddata_api_client/model/llm_provider_auth.py new file mode 100644 index 000000000..a25d2c414 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/llm_provider_auth.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 LlmProviderAuth(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 { + 'type': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'type': 'type', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, type, *args, **kwargs): # noqa: E501 + """LlmProviderAuth - a model defined in OpenAPI + + Args: + type (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,) + """ + + _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.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, type, *args, **kwargs): # noqa: E501 + """LlmProviderAuth - a model defined in OpenAPI + + Args: + type (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,) + """ + + _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.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/llm_provider_config.py b/gooddata-api-client/gooddata_api_client/model/llm_provider_config.py new file mode 100644 index 000000000..e18d277f1 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/llm_provider_config.py @@ -0,0 +1,363 @@ +""" + 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.aws_bedrock_provider_config import AwsBedrockProviderConfig + from gooddata_api_client.model.azure_foundry_provider_config import AzureFoundryProviderConfig + from gooddata_api_client.model.open_ai_provider_auth import OpenAiProviderAuth + from gooddata_api_client.model.open_ai_provider_config import OpenAIProviderConfig + globals()['AwsBedrockProviderConfig'] = AwsBedrockProviderConfig + globals()['AzureFoundryProviderConfig'] = AzureFoundryProviderConfig + globals()['OpenAIProviderConfig'] = OpenAIProviderConfig + globals()['OpenAiProviderAuth'] = OpenAiProviderAuth + + +class LlmProviderConfig(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',): { + 'OPENAI': "OPENAI", + }, + } + + validations = { + ('base_url',): { + 'max_length': 255, + }, + ('organization',): { + 'max_length': 255, + }, + ('region',): { + 'max_length': 255, + }, + ('endpoint',): { + '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 { + 'base_url': (str, none_type,), # noqa: E501 + 'organization': (str, none_type,), # noqa: E501 + 'auth': (OpenAiProviderAuth,), # noqa: E501 + 'region': (str,), # noqa: E501 + 'type': (str,), # noqa: E501 + 'endpoint': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'base_url': 'baseUrl', # noqa: E501 + 'organization': 'organization', # noqa: E501 + 'auth': 'auth', # noqa: E501 + 'region': 'region', # noqa: E501 + 'type': 'type', # noqa: E501 + 'endpoint': 'endpoint', # noqa: E501 + } + + read_only_vars = { + } + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 + """LlmProviderConfig - 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 base URL for OpenAI API.. [optional] if omitted the server will use the default value of "https://api.openai.com" # noqa: E501 + organization (str, none_type): OpenAI organization ID.. [optional] # noqa: E501 + auth (OpenAiProviderAuth): [optional] # noqa: E501 + region (str): AWS region for Bedrock.. [optional] # noqa: E501 + type (str): Provider type.. [optional] if omitted the server will use the default value of "OPENAI" # noqa: E501 + endpoint (str): Azure AI inference endpoint URL.. [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 + """LlmProviderConfig - 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 base URL for OpenAI API.. [optional] if omitted the server will use the default value of "https://api.openai.com" # noqa: E501 + organization (str, none_type): OpenAI organization ID.. [optional] # noqa: E501 + auth (OpenAiProviderAuth): [optional] # noqa: E501 + region (str): AWS region for Bedrock.. [optional] # noqa: E501 + type (str): Provider type.. [optional] if omitted the server will use the default value of "OPENAI" # noqa: E501 + endpoint (str): Azure AI inference endpoint URL.. [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': [ + AwsBedrockProviderConfig, + AzureFoundryProviderConfig, + OpenAIProviderConfig, + ], + } diff --git a/gooddata-api-client/gooddata_api_client/model/metric_definition_override.py b/gooddata-api-client/gooddata_api_client/model/metric_definition_override.py new file mode 100644 index 000000000..22a0ccbae --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/metric_definition_override.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 + + +def lazy_import(): + from gooddata_api_client.model.afm_object_identifier_core import AfmObjectIdentifierCore + from gooddata_api_client.model.inline_measure_definition import InlineMeasureDefinition + globals()['AfmObjectIdentifierCore'] = AfmObjectIdentifierCore + globals()['InlineMeasureDefinition'] = InlineMeasureDefinition + + +class MetricDefinitionOverride(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 { + 'definition': (InlineMeasureDefinition,), # noqa: E501 + 'item': (AfmObjectIdentifierCore,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'definition': 'definition', # noqa: E501 + 'item': 'item', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, definition, item, *args, **kwargs): # noqa: E501 + """MetricDefinitionOverride - a model defined in OpenAPI + + Args: + definition (InlineMeasureDefinition): + item (AfmObjectIdentifierCore): + + 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.definition = definition + self.item = item + 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, definition, item, *args, **kwargs): # noqa: E501 + """MetricDefinitionOverride - a model defined in OpenAPI + + Args: + definition (InlineMeasureDefinition): + item (AfmObjectIdentifierCore): + + 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.definition = definition + self.item = item + 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/model_test_result.py b/gooddata-api-client/gooddata_api_client/model/model_test_result.py new file mode 100644 index 000000000..608c9a56c --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/model_test_result.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 ModelTestResult(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 { + 'message': (str,), # noqa: E501 + 'model_id': (str,), # noqa: E501 + 'successful': (bool,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'message': 'message', # noqa: E501 + 'model_id': 'modelId', # noqa: E501 + 'successful': 'successful', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, message, model_id, successful, *args, **kwargs): # noqa: E501 + """ModelTestResult - a model defined in OpenAPI + + Args: + message (str): Message about the model test result. + model_id (str): The model ID that was tested. + successful (bool): Whether the model test was successful. + + 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.message = message + self.model_id = model_id + self.successful = successful + 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, message, model_id, successful, *args, **kwargs): # noqa: E501 + """ModelTestResult - a model defined in OpenAPI + + Args: + message (str): Message about the model test result. + model_id (str): The model ID that was tested. + successful (bool): Whether the model test was successful. + + 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.message = message + self.model_id = model_id + self.successful = successful + 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 index 86ee1ed6b..29f5583e9 100644 --- a/gooddata-api-client/gooddata_api_client/model/notification_channel_destination.py +++ b/gooddata-api-client/gooddata_api_client/model/notification_channel_destination.py @@ -75,6 +75,10 @@ class NotificationChannelDestination(ModelComposed): } validations = { + ('has_secret_key',): { + }, + ('has_token',): { + }, ('secret_key',): { 'max_length': 10000, }, diff --git a/gooddata-api-client/gooddata_api_client/model/notification_content.py b/gooddata-api-client/gooddata_api_client/model/notification_content.py index acf1a390d..db3a871b8 100644 --- a/gooddata-api-client/gooddata_api_client/model/notification_content.py +++ b/gooddata-api-client/gooddata_api_client/model/notification_content.py @@ -98,9 +98,7 @@ def discriminator(): lazy_import() val = { 'AUTOMATION': AutomationNotification, - 'AutomationNotification': AutomationNotification, 'TEST': TestNotification, - 'TestNotification': TestNotification, } if not val: return None diff --git a/gooddata-api-client/gooddata_api_client/model/open_ai_api_key_auth.py b/gooddata-api-client/gooddata_api_client/model/open_ai_api_key_auth.py new file mode 100644 index 000000000..9f57d5014 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/open_ai_api_key_auth.py @@ -0,0 +1,332 @@ +""" + 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.open_ai_api_key_auth_all_of import OpenAiApiKeyAuthAllOf + globals()['OpenAiApiKeyAuthAllOf'] = OpenAiApiKeyAuthAllOf + + +class OpenAiApiKeyAuth(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',): { + 'API_KEY': "API_KEY", + }, + } + + validations = { + ('api_key',): { + '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 { + 'type': (str,), # noqa: E501 + 'api_key': (str, none_type,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'type': 'type', # noqa: E501 + 'api_key': 'apiKey', # noqa: E501 + } + + read_only_vars = { + } + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 + """OpenAiApiKeyAuth - a model defined in OpenAPI + + Keyword Args: + type (str): Authentication type.. defaults to "API_KEY", must be one of ["API_KEY", ] # 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,) + api_key (str, none_type): OpenAI API key.. [optional] # noqa: E501 + """ + + type = kwargs.get('type', "API_KEY") + _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 + """OpenAiApiKeyAuth - a model defined in OpenAPI + + Keyword Args: + type (str): Authentication type.. defaults to "API_KEY", must be one of ["API_KEY", ] # 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,) + api_key (str, none_type): OpenAI API key.. [optional] # noqa: E501 + """ + + type = kwargs.get('type', "API_KEY") + _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': [ + OpenAiApiKeyAuthAllOf, + ], + 'oneOf': [ + ], + } diff --git a/gooddata-api-client/gooddata_api_client/model/open_ai_api_key_auth_all_of.py b/gooddata-api-client/gooddata_api_client/model/open_ai_api_key_auth_all_of.py new file mode 100644 index 000000000..60cef866a --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/open_ai_api_key_auth_all_of.py @@ -0,0 +1,274 @@ +""" + 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 OpenAiApiKeyAuthAllOf(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',): { + 'API_KEY': "API_KEY", + }, + } + + validations = { + ('api_key',): { + '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 { + 'api_key': (str, none_type,), # noqa: E501 + 'type': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'api_key': 'apiKey', # 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 + """OpenAiApiKeyAuthAllOf - 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,) + api_key (str, none_type): OpenAI API key.. [optional] # noqa: E501 + type (str): Authentication type.. [optional] if omitted the server will use the default value of "API_KEY" # 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 + """OpenAiApiKeyAuthAllOf - 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,) + api_key (str, none_type): OpenAI API key.. [optional] # noqa: E501 + type (str): Authentication type.. [optional] if omitted the server will use the default value of "API_KEY" # 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/open_ai_provider_auth.py b/gooddata-api-client/gooddata_api_client/model/open_ai_provider_auth.py new file mode 100644 index 000000000..ad3876a86 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/open_ai_provider_auth.py @@ -0,0 +1,330 @@ +""" + 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.open_ai_api_key_auth import OpenAiApiKeyAuth + globals()['OpenAiApiKeyAuth'] = OpenAiApiKeyAuth + + +class OpenAiProviderAuth(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',): { + 'API_KEY': "API_KEY", + }, + } + + validations = { + ('api_key',): { + '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 { + 'api_key': (str, none_type,), # noqa: E501 + 'type': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'api_key': 'apiKey', # 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 + """OpenAiProviderAuth - 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,) + api_key (str, none_type): OpenAI API key.. [optional] # noqa: E501 + type (str): Authentication type.. [optional] if omitted the server will use the default value of "API_KEY" # 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 + """OpenAiProviderAuth - 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,) + api_key (str, none_type): OpenAI API key.. [optional] # noqa: E501 + type (str): Authentication type.. [optional] if omitted the server will use the default value of "API_KEY" # 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': [ + OpenAiApiKeyAuth, + ], + } diff --git a/gooddata-api-client/gooddata_api_client/model/open_ai_provider_config.py b/gooddata-api-client/gooddata_api_client/model/open_ai_provider_config.py new file mode 100644 index 000000000..a1532e10d --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/open_ai_provider_config.py @@ -0,0 +1,301 @@ +""" + 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.open_ai_provider_auth import OpenAiProviderAuth + globals()['OpenAiProviderAuth'] = OpenAiProviderAuth + + +class OpenAIProviderConfig(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',): { + 'OPENAI': "OPENAI", + }, + } + + validations = { + ('base_url',): { + 'max_length': 255, + }, + ('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 + """ + 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 { + 'auth': (OpenAiProviderAuth,), # noqa: E501 + 'type': (str,), # noqa: E501 + 'base_url': (str, none_type,), # noqa: E501 + 'organization': (str, none_type,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'auth': 'auth', # noqa: E501 + 'type': 'type', # noqa: E501 + 'base_url': 'baseUrl', # noqa: E501 + 'organization': 'organization', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, auth, *args, **kwargs): # noqa: E501 + """OpenAIProviderConfig - a model defined in OpenAPI + + Args: + auth (OpenAiProviderAuth): + + Keyword Args: + type (str): Provider type.. 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 base URL for OpenAI API.. [optional] if omitted the server will use the default value of "https://api.openai.com" # noqa: E501 + organization (str, none_type): OpenAI organization ID.. [optional] # noqa: E501 + """ + + type = kwargs.get('type', "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.auth = auth + 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, auth, *args, **kwargs): # noqa: E501 + """OpenAIProviderConfig - a model defined in OpenAPI + + Args: + auth (OpenAiProviderAuth): + + Keyword Args: + type (str): Provider type.. 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 base URL for OpenAI API.. [optional] if omitted the server will use the default value of "https://api.openai.com" # noqa: E501 + organization (str, none_type): OpenAI organization ID.. [optional] # noqa: E501 + """ + + type = kwargs.get('type', "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.auth = auth + 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/operation.py b/gooddata-api-client/gooddata_api_client/model/operation.py index 830b9e34d..55389ecca 100644 --- a/gooddata-api-client/gooddata_api_client/model/operation.py +++ b/gooddata-api-client/gooddata_api_client/model/operation.py @@ -67,6 +67,7 @@ class Operation(ModelNormal): ('kind',): { 'PROVISION-DATABASE': "provision-database", 'DEPROVISION-DATABASE': "deprovision-database", + 'RUN-SERVICE-COMMAND': "run-service-command", }, } @@ -105,9 +106,6 @@ def openapi_types(): def discriminator(): lazy_import() val = { - 'FailedOperation': FailedOperation, - 'PendingOperation': PendingOperation, - 'SucceededOperation': SucceededOperation, 'failed': FailedOperation, 'pending': PendingOperation, 'succeeded': SucceededOperation, @@ -134,7 +132,7 @@ def _from_openapi_data(cls, id, kind, status, *args, **kwargs): # noqa: E501 Args: id (str): Id of the operation - kind (str): Type of the long-running operation. * `provision-database` — Provisioning of an AI Lake database. * `deprovision-database` — Deprovisioning (deletion) of an AI Lake database. + kind (str): Type of the long-running operation. * `provision-database` — Provisioning of an AI Lake database. * `deprovision-database` — Deprovisioning (deletion) of an AI Lake database. * `run-service-command` — Running a command in a particular AI Lake service. status (str): Keyword Args: @@ -227,7 +225,7 @@ def __init__(self, id, kind, status, *args, **kwargs): # noqa: E501 Args: id (str): Id of the operation - kind (str): Type of the long-running operation. * `provision-database` — Provisioning of an AI Lake database. * `deprovision-database` — Deprovisioning (deletion) of an AI Lake database. + kind (str): Type of the long-running operation. * `provision-database` — Provisioning of an AI Lake database. * `deprovision-database` — Deprovisioning (deletion) of an AI Lake database. * `run-service-command` — Running a command in a particular AI Lake service. status (str): Keyword Args: diff --git a/gooddata-api-client/gooddata_api_client/model/patch_knowledge_document_request_dto.py b/gooddata-api-client/gooddata_api_client/model/patch_knowledge_document_request_dto.py new file mode 100644 index 000000000..509be98a5 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/patch_knowledge_document_request_dto.py @@ -0,0 +1,272 @@ +""" + 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 PatchKnowledgeDocumentRequestDto(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 { + 'is_disabled': (bool,), # noqa: E501 + 'scopes': ([str],), # noqa: E501 + 'title': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'is_disabled': 'isDisabled', # noqa: E501 + 'scopes': 'scopes', # 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 + """PatchKnowledgeDocumentRequestDto - 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,) + is_disabled (bool): [optional] # noqa: E501 + scopes ([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 + """PatchKnowledgeDocumentRequestDto - 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,) + is_disabled (bool): [optional] # noqa: E501 + scopes ([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/pending_operation.py b/gooddata-api-client/gooddata_api_client/model/pending_operation.py index 189db9c32..0c9454a91 100644 --- a/gooddata-api-client/gooddata_api_client/model/pending_operation.py +++ b/gooddata-api-client/gooddata_api_client/model/pending_operation.py @@ -31,14 +31,8 @@ def lazy_import(): - from gooddata_api_client.model.failed_operation import FailedOperation from gooddata_api_client.model.operation import Operation - from gooddata_api_client.model.pending_operation import PendingOperation - from gooddata_api_client.model.succeeded_operation import SucceededOperation - globals()['FailedOperation'] = FailedOperation globals()['Operation'] = Operation - globals()['PendingOperation'] = PendingOperation - globals()['SucceededOperation'] = SucceededOperation class PendingOperation(ModelComposed): @@ -69,6 +63,7 @@ class PendingOperation(ModelComposed): ('kind',): { 'PROVISION-DATABASE': "provision-database", 'DEPROVISION-DATABASE': "deprovision-database", + 'RUN-SERVICE-COMMAND': "run-service-command", }, } @@ -105,11 +100,7 @@ def openapi_types(): @cached_property def discriminator(): - lazy_import() val = { - 'failed': FailedOperation, - 'pending': PendingOperation, - 'succeeded': SucceededOperation, } if not val: return None @@ -131,7 +122,7 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 Keyword Args: id (str): Id of the operation - kind (str): Type of the long-running operation. * `provision-database` — Provisioning of an AI Lake database. * `deprovision-database` — Deprovisioning (deletion) of an AI Lake database. + kind (str): Type of the long-running operation. * `provision-database` — Provisioning of an AI Lake database. * `deprovision-database` — Deprovisioning (deletion) of an AI Lake database. * `run-service-command` — Running a command in a particular AI Lake service. status (str): _check_type (bool): if True, values for parameters in openapi_types will be type checked and a TypeError will be @@ -237,7 +228,7 @@ def __init__(self, *args, **kwargs): # noqa: E501 Keyword Args: id (str): Id of the operation - kind (str): Type of the long-running operation. * `provision-database` — Provisioning of an AI Lake database. * `deprovision-database` — Deprovisioning (deletion) of an AI Lake database. + kind (str): Type of the long-running operation. * `provision-database` — Provisioning of an AI Lake database. * `deprovision-database` — Deprovisioning (deletion) of an AI Lake database. * `run-service-command` — Running a command in a particular AI Lake service. status (str): _check_type (bool): if True, values for parameters in openapi_types will be type checked and a TypeError will be diff --git a/gooddata-api-client/gooddata_api_client/model/quality_issues_calculation_status_response.py b/gooddata-api-client/gooddata_api_client/model/quality_issues_calculation_status_response.py index 753a6878a..ff2013a7e 100644 --- a/gooddata-api-client/gooddata_api_client/model/quality_issues_calculation_status_response.py +++ b/gooddata-api-client/gooddata_api_client/model/quality_issues_calculation_status_response.py @@ -65,6 +65,7 @@ class QualityIssuesCalculationStatusResponse(ModelNormal): 'SYNCING': "SYNCING", 'COMPLETED': "COMPLETED", 'FAILED': "FAILED", + 'CANCELLED': "CANCELLED", 'NOT_FOUND': "NOT_FOUND", 'DISABLED': "DISABLED", }, diff --git a/gooddata-api-client/gooddata_api_client/model/relative_date_filter_relative_date_filter.py b/gooddata-api-client/gooddata_api_client/model/relative_date_filter_relative_date_filter.py index 0ea3b7dd3..821f386e6 100644 --- a/gooddata-api-client/gooddata_api_client/model/relative_date_filter_relative_date_filter.py +++ b/gooddata-api-client/gooddata_api_client/model/relative_date_filter_relative_date_filter.py @@ -62,11 +62,6 @@ class RelativeDateFilterRelativeDateFilter(ModelNormal): """ allowed_values = { - ('empty_value_handling',): { - 'INCLUDE': "INCLUDE", - 'EXCLUDE': "EXCLUDE", - 'ONLY': "ONLY", - }, ('granularity',): { 'MINUTE': "MINUTE", 'HOUR': "HOUR", @@ -88,6 +83,11 @@ class RelativeDateFilterRelativeDateFilter(ModelNormal): 'FISCAL_QUARTER': "FISCAL_QUARTER", 'FISCAL_YEAR': "FISCAL_YEAR", }, + ('empty_value_handling',): { + 'INCLUDE': "INCLUDE", + 'EXCLUDE': "EXCLUDE", + 'ONLY': "ONLY", + }, } validations = { @@ -120,9 +120,9 @@ def openapi_types(): '_from': (int,), # noqa: E501 'granularity': (str,), # noqa: E501 'to': (int,), # noqa: E501 - 'empty_value_handling': (str,), # noqa: E501 'apply_on_result': (bool,), # noqa: E501 'bounded_filter': (BoundedFilter,), # noqa: E501 + 'empty_value_handling': (str,), # noqa: E501 'local_identifier': (str,), # noqa: E501 } @@ -136,9 +136,9 @@ def discriminator(): '_from': 'from', # noqa: E501 'granularity': 'granularity', # noqa: E501 'to': 'to', # noqa: E501 - 'empty_value_handling': 'emptyValueHandling', # noqa: E501 'apply_on_result': 'applyOnResult', # noqa: E501 'bounded_filter': 'boundedFilter', # noqa: E501 + 'empty_value_handling': 'emptyValueHandling', # noqa: E501 'local_identifier': 'localIdentifier', # noqa: E501 } @@ -191,6 +191,7 @@ def _from_openapi_data(cls, dataset, _from, granularity, to, *args, **kwargs): _visited_composed_classes = (Animal,) apply_on_result (bool): [optional] # noqa: E501 bounded_filter (BoundedFilter): [optional] # noqa: E501 + empty_value_handling (str): Specifies how rows with empty (null/missing) date values should be handled. INCLUDE includes empty dates in addition to the date range restriction, EXCLUDE removes rows with empty dates (default), ONLY keeps only rows with empty dates.. [optional] if omitted the server will use the default value of "EXCLUDE" # noqa: E501 local_identifier (str): [optional] # noqa: E501 """ @@ -289,6 +290,7 @@ def __init__(self, dataset, _from, granularity, to, *args, **kwargs): # noqa: E _visited_composed_classes = (Animal,) apply_on_result (bool): [optional] # noqa: E501 bounded_filter (BoundedFilter): [optional] # noqa: E501 + empty_value_handling (str): Specifies how rows with empty (null/missing) date values should be handled. INCLUDE includes empty dates in addition to the date range restriction, EXCLUDE removes rows with empty dates (default), ONLY keeps only rows with empty dates.. [optional] if omitted the server will use the default value of "EXCLUDE" # noqa: E501 local_identifier (str): [optional] # noqa: E501 """ 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 adc933b6f..a5b88bc0a 100644 --- a/gooddata-api-client/gooddata_api_client/model/resolved_setting.py +++ b/gooddata-api-client/gooddata_api_client/model/resolved_setting.py @@ -65,6 +65,7 @@ class ResolvedSetting(ModelNormal): 'ACTIVE_THEME': "ACTIVE_THEME", 'ACTIVE_COLOR_PALETTE': "ACTIVE_COLOR_PALETTE", 'ACTIVE_LLM_ENDPOINT': "ACTIVE_LLM_ENDPOINT", + 'ACTIVE_LLM_PROVIDER': "ACTIVE_LLM_PROVIDER", 'ACTIVE_CALENDARS': "ACTIVE_CALENDARS", 'WHITE_LABELING': "WHITE_LABELING", 'LOCALE': "LOCALE", @@ -108,6 +109,7 @@ class ResolvedSetting(ModelNormal): 'EXPORT_CSV_CUSTOM_DELIMITER': "EXPORT_CSV_CUSTOM_DELIMITER", 'ENABLE_QUERY_TAGS': "ENABLE_QUERY_TAGS", 'RESTRICT_BASE_UI': "RESTRICT_BASE_UI", + 'CERTIFY_PARENT_OBJECTS': "CERTIFY_PARENT_OBJECTS", }, } diff --git a/gooddata-api-client/gooddata_api_client/model/rsa_specification.py b/gooddata-api-client/gooddata_api_client/model/rsa_specification.py index 26adabffc..e34913213 100644 --- a/gooddata-api-client/gooddata_api_client/model/rsa_specification.py +++ b/gooddata-api-client/gooddata_api_client/model/rsa_specification.py @@ -70,6 +70,12 @@ class RsaSpecification(ModelNormal): } validations = { + ('kid',): { + 'max_length': 255, + 'regex': { + 'pattern': r'^[^.]', # noqa: E501 + }, + }, } @cached_property diff --git a/gooddata-api-client/gooddata_api_client/model/run_service_command_request.py b/gooddata-api-client/gooddata_api_client/model/run_service_command_request.py new file mode 100644 index 000000000..eab5f6050 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/run_service_command_request.py @@ -0,0 +1,274 @@ +""" + 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_node import JsonNode + globals()['JsonNode'] = JsonNode + + +class RunServiceCommandRequest(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 { + 'context': ({str: (str, none_type)}, none_type,), # noqa: E501 + 'payload': (JsonNode,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'context': 'context', # noqa: E501 + 'payload': 'payload', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 + """RunServiceCommandRequest - 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,) + context ({str: (str, none_type)}, none_type): The context to pass to the command. [optional] # noqa: E501 + payload (JsonNode): [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 + """RunServiceCommandRequest - 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,) + context ({str: (str, none_type)}, none_type): The context to pass to the command. [optional] # noqa: E501 + payload (JsonNode): [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/search_knowledge_response_dto.py b/gooddata-api-client/gooddata_api_client/model/search_knowledge_response_dto.py new file mode 100644 index 000000000..30ca7572a --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/search_knowledge_response_dto.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 + + +def lazy_import(): + from gooddata_api_client.model.knowledge_search_result_dto import KnowledgeSearchResultDto + from gooddata_api_client.model.search_statistics_dto import SearchStatisticsDto + globals()['KnowledgeSearchResultDto'] = KnowledgeSearchResultDto + globals()['SearchStatisticsDto'] = SearchStatisticsDto + + +class SearchKnowledgeResponseDto(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 { + 'results': ([KnowledgeSearchResultDto],), # noqa: E501 + 'statistics': (SearchStatisticsDto,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'results': 'results', # noqa: E501 + 'statistics': 'statistics', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, results, statistics, *args, **kwargs): # noqa: E501 + """SearchKnowledgeResponseDto - a model defined in OpenAPI + + Args: + results ([KnowledgeSearchResultDto]): + statistics (SearchStatisticsDto): + + 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.results = results + self.statistics = statistics + 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, results, statistics, *args, **kwargs): # noqa: E501 + """SearchKnowledgeResponseDto - a model defined in OpenAPI + + Args: + results ([KnowledgeSearchResultDto]): + statistics (SearchStatisticsDto): + + 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.results = results + self.statistics = statistics + 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_statistics_dto.py b/gooddata-api-client/gooddata_api_client/model/search_statistics_dto.py new file mode 100644 index 000000000..4a36c3d12 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/search_statistics_dto.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 + + + +class SearchStatisticsDto(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 { + 'average_similarity_score': (float,), # noqa: E501 + 'total_results': (int,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'average_similarity_score': 'averageSimilarityScore', # noqa: E501 + 'total_results': 'totalResults', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, average_similarity_score, total_results, *args, **kwargs): # noqa: E501 + """SearchStatisticsDto - a model defined in OpenAPI + + Args: + average_similarity_score (float): + total_results (int): + + 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.average_similarity_score = average_similarity_score + self.total_results = total_results + 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, average_similarity_score, total_results, *args, **kwargs): # noqa: E501 + """SearchStatisticsDto - a model defined in OpenAPI + + Args: + average_similarity_score (float): + total_results (int): + + 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.average_similarity_score = average_similarity_score + self.total_results = total_results + 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/service_info.py b/gooddata-api-client/gooddata_api_client/model/service_info.py new file mode 100644 index 000000000..c53f58fc6 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/service_info.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 + + + +class ServiceInfo(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 { + 'name': (str,), # noqa: E501 + 'service_id': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'name': 'name', # noqa: E501 + 'service_id': 'serviceId', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, name, service_id, *args, **kwargs): # noqa: E501 + """ServiceInfo - a model defined in OpenAPI + + Args: + name (str): Human-readable name of the service + service_id (str): Internal identifier for the service configuration (UUID) + + 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.name = name + self.service_id = service_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, name, service_id, *args, **kwargs): # noqa: E501 + """ServiceInfo - a model defined in OpenAPI + + Args: + name (str): Human-readable name of the service + service_id (str): Internal identifier for the service configuration (UUID) + + 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.name = name + self.service_id = service_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/set_certification_request.py b/gooddata-api-client/gooddata_api_client/model/set_certification_request.py new file mode 100644 index 000000000..2d9637ae2 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/set_certification_request.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 SetCertificationRequest(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", + 'VISUALIZATIONOBJECT': "visualizationObject", + 'ANALYTICALDASHBOARD': "analyticalDashboard", + }, + ('status',): { + 'None': None, + 'CERTIFIED': "CERTIFIED", + }, + } + + 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 + 'message': (str, none_type,), # noqa: E501 + 'status': (str, none_type,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'id': 'id', # noqa: E501 + 'type': 'type', # noqa: E501 + 'message': 'message', # noqa: E501 + 'status': 'status', # 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 + """SetCertificationRequest - a model defined in OpenAPI + + Args: + id (str): ID of the entity. + type (str): Type of the entity. + + 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,) + message (str, none_type): Optional message associated with the certification.. [optional] # noqa: E501 + status (str, none_type): Certification status of the entity.. [optional] if omitted the server will use the default value of "CERTIFIED" # 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 + """SetCertificationRequest - a model defined in OpenAPI + + Args: + id (str): ID of the entity. + type (str): Type of the entity. + + 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,) + message (str, none_type): Optional message associated with the certification.. [optional] # noqa: E501 + status (str, none_type): Certification status of the entity.. [optional] if omitted the server will use the default value of "CERTIFIED" # 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/succeeded_operation.py b/gooddata-api-client/gooddata_api_client/model/succeeded_operation.py index cfcef8971..a78b6a3cb 100644 --- a/gooddata-api-client/gooddata_api_client/model/succeeded_operation.py +++ b/gooddata-api-client/gooddata_api_client/model/succeeded_operation.py @@ -31,15 +31,9 @@ def lazy_import(): - from gooddata_api_client.model.failed_operation import FailedOperation from gooddata_api_client.model.operation import Operation - from gooddata_api_client.model.pending_operation import PendingOperation - from gooddata_api_client.model.succeeded_operation import SucceededOperation from gooddata_api_client.model.succeeded_operation_all_of import SucceededOperationAllOf - globals()['FailedOperation'] = FailedOperation globals()['Operation'] = Operation - globals()['PendingOperation'] = PendingOperation - globals()['SucceededOperation'] = SucceededOperation globals()['SucceededOperationAllOf'] = SucceededOperationAllOf @@ -71,6 +65,7 @@ class SucceededOperation(ModelComposed): ('kind',): { 'PROVISION-DATABASE': "provision-database", 'DEPROVISION-DATABASE': "deprovision-database", + 'RUN-SERVICE-COMMAND': "run-service-command", }, } @@ -108,11 +103,7 @@ def openapi_types(): @cached_property def discriminator(): - lazy_import() val = { - 'failed': FailedOperation, - 'pending': PendingOperation, - 'succeeded': SucceededOperation, } if not val: return None @@ -135,7 +126,7 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 Keyword Args: id (str): Id of the operation - kind (str): Type of the long-running operation. * `provision-database` — Provisioning of an AI Lake database. * `deprovision-database` — Deprovisioning (deletion) of an AI Lake database. + kind (str): Type of the long-running operation. * `provision-database` — Provisioning of an AI Lake database. * `deprovision-database` — Deprovisioning (deletion) of an AI Lake database. * `run-service-command` — Running a command in a particular AI Lake service. status (str): _check_type (bool): if True, values for parameters in openapi_types will be type checked and a TypeError will be @@ -242,7 +233,7 @@ def __init__(self, *args, **kwargs): # noqa: E501 Keyword Args: id (str): Id of the operation - kind (str): Type of the long-running operation. * `provision-database` — Provisioning of an AI Lake database. * `deprovision-database` — Deprovisioning (deletion) of an AI Lake database. + kind (str): Type of the long-running operation. * `provision-database` — Provisioning of an AI Lake database. * `deprovision-database` — Deprovisioning (deletion) of an AI Lake database. * `run-service-command` — Running a command in a particular AI Lake service. status (str): _check_type (bool): if True, values for parameters in openapi_types will be type checked and a TypeError will be diff --git a/gooddata-api-client/gooddata_api_client/model/test_llm_provider_definition_request.py b/gooddata-api-client/gooddata_api_client/model/test_llm_provider_definition_request.py new file mode 100644 index 000000000..d1ebb7f5f --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/test_llm_provider_definition_request.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.llm_model import LlmModel + from gooddata_api_client.model.test_llm_provider_definition_request_provider_config import TestLlmProviderDefinitionRequestProviderConfig + globals()['LlmModel'] = LlmModel + globals()['TestLlmProviderDefinitionRequestProviderConfig'] = TestLlmProviderDefinitionRequestProviderConfig + + +class TestLlmProviderDefinitionRequest(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 { + 'provider_config': (TestLlmProviderDefinitionRequestProviderConfig,), # noqa: E501 + 'models': ([LlmModel],), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'provider_config': 'providerConfig', # noqa: E501 + 'models': 'models', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, provider_config, *args, **kwargs): # noqa: E501 + """TestLlmProviderDefinitionRequest - a model defined in OpenAPI + + Args: + provider_config (TestLlmProviderDefinitionRequestProviderConfig): + + 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,) + models ([LlmModel]): Models to test.. [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.provider_config = provider_config + 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, provider_config, *args, **kwargs): # noqa: E501 + """TestLlmProviderDefinitionRequest - a model defined in OpenAPI + + Args: + provider_config (TestLlmProviderDefinitionRequestProviderConfig): + + 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,) + models ([LlmModel]): Models to test.. [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.provider_config = provider_config + 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/test_llm_provider_definition_request_provider_config.py b/gooddata-api-client/gooddata_api_client/model/test_llm_provider_definition_request_provider_config.py new file mode 100644 index 000000000..e93080b2c --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/test_llm_provider_definition_request_provider_config.py @@ -0,0 +1,363 @@ +""" + 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.aws_bedrock_provider_config import AwsBedrockProviderConfig + from gooddata_api_client.model.azure_foundry_provider_config import AzureFoundryProviderConfig + from gooddata_api_client.model.open_ai_provider_auth import OpenAiProviderAuth + from gooddata_api_client.model.open_ai_provider_config import OpenAIProviderConfig + globals()['AwsBedrockProviderConfig'] = AwsBedrockProviderConfig + globals()['AzureFoundryProviderConfig'] = AzureFoundryProviderConfig + globals()['OpenAIProviderConfig'] = OpenAIProviderConfig + globals()['OpenAiProviderAuth'] = OpenAiProviderAuth + + +class TestLlmProviderDefinitionRequestProviderConfig(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',): { + 'OPENAI': "OPENAI", + }, + } + + validations = { + ('base_url',): { + 'max_length': 255, + }, + ('organization',): { + 'max_length': 255, + }, + ('region',): { + 'max_length': 255, + }, + ('endpoint',): { + '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 { + 'base_url': (str, none_type,), # noqa: E501 + 'organization': (str, none_type,), # noqa: E501 + 'auth': (OpenAiProviderAuth,), # noqa: E501 + 'region': (str,), # noqa: E501 + 'type': (str,), # noqa: E501 + 'endpoint': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'base_url': 'baseUrl', # noqa: E501 + 'organization': 'organization', # noqa: E501 + 'auth': 'auth', # noqa: E501 + 'region': 'region', # noqa: E501 + 'type': 'type', # noqa: E501 + 'endpoint': 'endpoint', # noqa: E501 + } + + read_only_vars = { + } + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 + """TestLlmProviderDefinitionRequestProviderConfig - 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 base URL for OpenAI API.. [optional] if omitted the server will use the default value of "https://api.openai.com" # noqa: E501 + organization (str, none_type): OpenAI organization ID.. [optional] # noqa: E501 + auth (OpenAiProviderAuth): [optional] # noqa: E501 + region (str): AWS region for Bedrock.. [optional] # noqa: E501 + type (str): Provider type.. [optional] if omitted the server will use the default value of "OPENAI" # noqa: E501 + endpoint (str): Azure AI inference endpoint URL.. [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 + """TestLlmProviderDefinitionRequestProviderConfig - 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 base URL for OpenAI API.. [optional] if omitted the server will use the default value of "https://api.openai.com" # noqa: E501 + organization (str, none_type): OpenAI organization ID.. [optional] # noqa: E501 + auth (OpenAiProviderAuth): [optional] # noqa: E501 + region (str): AWS region for Bedrock.. [optional] # noqa: E501 + type (str): Provider type.. [optional] if omitted the server will use the default value of "OPENAI" # noqa: E501 + endpoint (str): Azure AI inference endpoint URL.. [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': [ + AwsBedrockProviderConfig, + AzureFoundryProviderConfig, + OpenAIProviderConfig, + ], + } diff --git a/gooddata-api-client/gooddata_api_client/model/test_llm_provider_response.py b/gooddata-api-client/gooddata_api_client/model/test_llm_provider_response.py new file mode 100644 index 000000000..88f1c262a --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/test_llm_provider_response.py @@ -0,0 +1,288 @@ +""" + 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.model_test_result import ModelTestResult + globals()['ModelTestResult'] = ModelTestResult + + +class TestLlmProviderResponse(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 { + 'model_results': ([ModelTestResult],), # noqa: E501 + 'provider_message': (str,), # noqa: E501 + 'provider_reachable': (bool,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'model_results': 'modelResults', # noqa: E501 + 'provider_message': 'providerMessage', # noqa: E501 + 'provider_reachable': 'providerReachable', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, model_results, provider_message, provider_reachable, *args, **kwargs): # noqa: E501 + """TestLlmProviderResponse - a model defined in OpenAPI + + Args: + model_results ([ModelTestResult]): Per-model test results. + provider_message (str): Message about the provider connectivity test. + provider_reachable (bool): Whether the LLM provider is reachable. + + 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.model_results = model_results + self.provider_message = provider_message + self.provider_reachable = provider_reachable + 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, model_results, provider_message, provider_reachable, *args, **kwargs): # noqa: E501 + """TestLlmProviderResponse - a model defined in OpenAPI + + Args: + model_results ([ModelTestResult]): Per-model test results. + provider_message (str): Message about the provider connectivity test. + provider_reachable (bool): Whether the LLM provider is reachable. + + 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.model_results = model_results + self.provider_message = provider_message + self.provider_reachable = provider_reachable + 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/test_notification.py b/gooddata-api-client/gooddata_api_client/model/test_notification.py index f96bb0540..c4155c21a 100644 --- a/gooddata-api-client/gooddata_api_client/model/test_notification.py +++ b/gooddata-api-client/gooddata_api_client/model/test_notification.py @@ -31,13 +31,9 @@ def lazy_import(): - from gooddata_api_client.model.automation_notification import AutomationNotification from gooddata_api_client.model.notification_content import NotificationContent - from gooddata_api_client.model.test_notification import TestNotification from gooddata_api_client.model.test_notification_all_of import TestNotificationAllOf - globals()['AutomationNotification'] = AutomationNotification globals()['NotificationContent'] = NotificationContent - globals()['TestNotification'] = TestNotification globals()['TestNotificationAllOf'] = TestNotificationAllOf @@ -100,10 +96,7 @@ def openapi_types(): @cached_property def discriminator(): - lazy_import() val = { - 'AUTOMATION': AutomationNotification, - 'TEST': TestNotification, } if not val: return None diff --git a/gooddata-api-client/gooddata_api_client/model/trigger_quality_issues_calculation_response.py b/gooddata-api-client/gooddata_api_client/model/trigger_quality_issues_calculation_response.py index 5a20d5906..8551cf53a 100644 --- a/gooddata-api-client/gooddata_api_client/model/trigger_quality_issues_calculation_response.py +++ b/gooddata-api-client/gooddata_api_client/model/trigger_quality_issues_calculation_response.py @@ -60,6 +60,7 @@ class TriggerQualityIssuesCalculationResponse(ModelNormal): 'RUNNING': "RUNNING", 'COMPLETED': "COMPLETED", 'FAILED': "FAILED", + 'CANCELLED': "CANCELLED", 'DISABLED': "DISABLED", }, } diff --git a/gooddata-api-client/gooddata_api_client/model/upsert_knowledge_document_request_dto.py b/gooddata-api-client/gooddata_api_client/model/upsert_knowledge_document_request_dto.py new file mode 100644 index 000000000..1795c08e6 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/upsert_knowledge_document_request_dto.py @@ -0,0 +1,288 @@ +""" + 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 UpsertKnowledgeDocumentRequestDto(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 { + 'content': (str,), # noqa: E501 + 'filename': (str,), # noqa: E501 + 'page_boundaries': ([int],), # noqa: E501 + 'scopes': ([str],), # noqa: E501 + 'title': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'content': 'content', # noqa: E501 + 'filename': 'filename', # noqa: E501 + 'page_boundaries': 'pageBoundaries', # noqa: E501 + 'scopes': 'scopes', # noqa: E501 + 'title': 'title', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, content, filename, *args, **kwargs): # noqa: E501 + """UpsertKnowledgeDocumentRequestDto - a model defined in OpenAPI + + Args: + content (str): + filename (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,) + page_boundaries ([int]): [optional] # noqa: E501 + scopes ([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__,) + + self.content = content + self.filename = filename + 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, filename, *args, **kwargs): # noqa: E501 + """UpsertKnowledgeDocumentRequestDto - a model defined in OpenAPI + + Args: + content (str): + filename (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,) + page_boundaries ([int]): [optional] # noqa: E501 + scopes ([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__,) + + self.content = content + self.filename = filename + 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/upsert_knowledge_document_response_dto.py b/gooddata-api-client/gooddata_api_client/model/upsert_knowledge_document_response_dto.py new file mode 100644 index 000000000..19e0fb39c --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/upsert_knowledge_document_response_dto.py @@ -0,0 +1,288 @@ +""" + 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 UpsertKnowledgeDocumentResponseDto(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 { + 'filename': (str,), # noqa: E501 + 'message': (str,), # noqa: E501 + 'num_chunks': (int,), # noqa: E501 + 'success': (bool,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'filename': 'filename', # noqa: E501 + 'message': 'message', # noqa: E501 + 'num_chunks': 'numChunks', # noqa: E501 + 'success': 'success', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, filename, message, num_chunks, success, *args, **kwargs): # noqa: E501 + """UpsertKnowledgeDocumentResponseDto - a model defined in OpenAPI + + Args: + filename (str): + message (str): + num_chunks (int): + success (bool): + + 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.filename = filename + self.message = message + self.num_chunks = num_chunks + self.success = success + 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, filename, message, num_chunks, success, *args, **kwargs): # noqa: E501 + """UpsertKnowledgeDocumentResponseDto - a model defined in OpenAPI + + Args: + filename (str): + message (str): + num_chunks (int): + success (bool): + + 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.filename = filename + self.message = message + self.num_chunks = num_chunks + self.success = success + 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 3f48d6fa5..ca54223c6 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 @@ -64,6 +64,8 @@ class UserManagementWorkspacePermissionAssignment(ModelNormal): 'EXPORT_PDF': "EXPORT_PDF", 'CREATE_AUTOMATION': "CREATE_AUTOMATION", 'USE_AI_ASSISTANT': "USE_AI_ASSISTANT", + 'WRITE_KNOWLEDGE_DOCUMENTS': "WRITE_KNOWLEDGE_DOCUMENTS", + 'READ_KNOWLEDGE_DOCUMENTS': "READ_KNOWLEDGE_DOCUMENTS", 'CREATE_FILTER_VIEW': "CREATE_FILTER_VIEW", 'VIEW': "VIEW", }, @@ -75,6 +77,8 @@ class UserManagementWorkspacePermissionAssignment(ModelNormal): 'EXPORT_PDF': "EXPORT_PDF", 'CREATE_AUTOMATION': "CREATE_AUTOMATION", 'USE_AI_ASSISTANT': "USE_AI_ASSISTANT", + 'WRITE_KNOWLEDGE_DOCUMENTS': "WRITE_KNOWLEDGE_DOCUMENTS", + 'READ_KNOWLEDGE_DOCUMENTS': "READ_KNOWLEDGE_DOCUMENTS", 'CREATE_FILTER_VIEW': "CREATE_FILTER_VIEW", 'VIEW': "VIEW", }, diff --git a/gooddata-api-client/gooddata_api_client/model/visualization_config.py b/gooddata-api-client/gooddata_api_client/model/visualization_config.py new file mode 100644 index 000000000..56afa4fe1 --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/visualization_config.py @@ -0,0 +1,288 @@ +""" + 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.anomaly_detection_config import AnomalyDetectionConfig + from gooddata_api_client.model.clustering_config import ClusteringConfig + from gooddata_api_client.model.forecast_config import ForecastConfig + from gooddata_api_client.model.what_if_scenario_config import WhatIfScenarioConfig + globals()['AnomalyDetectionConfig'] = AnomalyDetectionConfig + globals()['ClusteringConfig'] = ClusteringConfig + globals()['ForecastConfig'] = ForecastConfig + globals()['WhatIfScenarioConfig'] = WhatIfScenarioConfig + + +class VisualizationConfig(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 { + 'anomaly_detection': (AnomalyDetectionConfig,), # noqa: E501 + 'clustering': (ClusteringConfig,), # noqa: E501 + 'forecast': (ForecastConfig,), # noqa: E501 + 'what_if': (WhatIfScenarioConfig,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'anomaly_detection': 'anomalyDetection', # noqa: E501 + 'clustering': 'clustering', # noqa: E501 + 'forecast': 'forecast', # noqa: E501 + 'what_if': 'whatIf', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 + """VisualizationConfig - 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,) + anomaly_detection (AnomalyDetectionConfig): [optional] # noqa: E501 + clustering (ClusteringConfig): [optional] # noqa: E501 + forecast (ForecastConfig): [optional] # noqa: E501 + what_if (WhatIfScenarioConfig): [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 + """VisualizationConfig - 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,) + anomaly_detection (AnomalyDetectionConfig): [optional] # noqa: E501 + clustering (ClusteringConfig): [optional] # noqa: E501 + forecast (ForecastConfig): [optional] # noqa: E501 + what_if (WhatIfScenarioConfig): [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/webhook.py b/gooddata-api-client/gooddata_api_client/model/webhook.py index f0471f2ff..50ba1edf1 100644 --- a/gooddata-api-client/gooddata_api_client/model/webhook.py +++ b/gooddata-api-client/gooddata_api_client/model/webhook.py @@ -66,6 +66,10 @@ class Webhook(ModelComposed): } validations = { + ('has_secret_key',): { + }, + ('has_token',): { + }, ('secret_key',): { 'max_length': 10000, }, diff --git a/gooddata-api-client/gooddata_api_client/model/webhook_all_of.py b/gooddata-api-client/gooddata_api_client/model/webhook_all_of.py index a2e0b1ab7..20a568dcd 100644 --- a/gooddata-api-client/gooddata_api_client/model/webhook_all_of.py +++ b/gooddata-api-client/gooddata_api_client/model/webhook_all_of.py @@ -62,6 +62,10 @@ class WebhookAllOf(ModelNormal): } validations = { + ('has_secret_key',): { + }, + ('has_token',): { + }, ('secret_key',): { 'max_length': 10000, }, diff --git a/gooddata-api-client/gooddata_api_client/model/what_if_measure_adjustment_config.py b/gooddata-api-client/gooddata_api_client/model/what_if_measure_adjustment_config.py new file mode 100644 index 000000000..71ab7791e --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/what_if_measure_adjustment_config.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 WhatIfMeasureAdjustmentConfig(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 { + 'metric_id': (str,), # noqa: E501 + 'metric_type': (str,), # noqa: E501 + 'scenario_maql': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'metric_id': 'metricId', # noqa: E501 + 'metric_type': 'metricType', # noqa: E501 + 'scenario_maql': 'scenarioMaql', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, metric_id, metric_type, scenario_maql, *args, **kwargs): # noqa: E501 + """WhatIfMeasureAdjustmentConfig - a model defined in OpenAPI + + Args: + metric_id (str): ID of the metric or fact to adjust + metric_type (str): Type: metric or fact + scenario_maql (str): Alternative MAQL expression for this scenario + + 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.metric_id = metric_id + self.metric_type = metric_type + self.scenario_maql = scenario_maql + 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, metric_id, metric_type, scenario_maql, *args, **kwargs): # noqa: E501 + """WhatIfMeasureAdjustmentConfig - a model defined in OpenAPI + + Args: + metric_id (str): ID of the metric or fact to adjust + metric_type (str): Type: metric or fact + scenario_maql (str): Alternative MAQL expression for this scenario + + 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.metric_id = metric_id + self.metric_type = metric_type + self.scenario_maql = scenario_maql + 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/what_if_scenario_config.py b/gooddata-api-client/gooddata_api_client/model/what_if_scenario_config.py new file mode 100644 index 000000000..c1d64c60d --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/what_if_scenario_config.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.what_if_scenario_item import WhatIfScenarioItem + globals()['WhatIfScenarioItem'] = WhatIfScenarioItem + + +class WhatIfScenarioConfig(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 { + 'include_baseline': (bool,), # noqa: E501 + 'scenarios': ([WhatIfScenarioItem],), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'include_baseline': 'includeBaseline', # noqa: E501 + 'scenarios': 'scenarios', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, include_baseline, scenarios, *args, **kwargs): # noqa: E501 + """WhatIfScenarioConfig - a model defined in OpenAPI + + Args: + include_baseline (bool): Whether baseline (unmodified) values are included + scenarios ([WhatIfScenarioItem]): Scenarios with alternative measure calculations + + 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.include_baseline = include_baseline + self.scenarios = scenarios + 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, include_baseline, scenarios, *args, **kwargs): # noqa: E501 + """WhatIfScenarioConfig - a model defined in OpenAPI + + Args: + include_baseline (bool): Whether baseline (unmodified) values are included + scenarios ([WhatIfScenarioItem]): Scenarios with alternative measure calculations + + 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.include_baseline = include_baseline + self.scenarios = scenarios + 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/what_if_scenario_item.py b/gooddata-api-client/gooddata_api_client/model/what_if_scenario_item.py new file mode 100644 index 000000000..41160fcfa --- /dev/null +++ b/gooddata-api-client/gooddata_api_client/model/what_if_scenario_item.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.what_if_measure_adjustment_config import WhatIfMeasureAdjustmentConfig + globals()['WhatIfMeasureAdjustmentConfig'] = WhatIfMeasureAdjustmentConfig + + +class WhatIfScenarioItem(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 { + 'adjustments': ([WhatIfMeasureAdjustmentConfig],), # noqa: E501 + 'label': (str,), # noqa: E501 + } + + @cached_property + def discriminator(): + return None + + + attribute_map = { + 'adjustments': 'adjustments', # noqa: E501 + 'label': 'label', # noqa: E501 + } + + read_only_vars = { + } + + _composed_schemas = {} + + @classmethod + @convert_js_args_to_python_args + def _from_openapi_data(cls, adjustments, label, *args, **kwargs): # noqa: E501 + """WhatIfScenarioItem - a model defined in OpenAPI + + Args: + adjustments ([WhatIfMeasureAdjustmentConfig]): Measure adjustments for this scenario + label (str): Human-readable scenario label + + 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.adjustments = adjustments + self.label = label + 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, adjustments, label, *args, **kwargs): # noqa: E501 + """WhatIfScenarioItem - a model defined in OpenAPI + + Args: + adjustments ([WhatIfMeasureAdjustmentConfig]): Measure adjustments for this scenario + label (str): Human-readable scenario label + + 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.adjustments = adjustments + self.label = label + 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/workspace_permission_assignment.py b/gooddata-api-client/gooddata_api_client/model/workspace_permission_assignment.py index 6b463d1af..e92fb6422 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 @@ -68,6 +68,8 @@ class WorkspacePermissionAssignment(ModelNormal): 'EXPORT_PDF': "EXPORT_PDF", 'CREATE_AUTOMATION': "CREATE_AUTOMATION", 'USE_AI_ASSISTANT': "USE_AI_ASSISTANT", + 'WRITE_KNOWLEDGE_DOCUMENTS': "WRITE_KNOWLEDGE_DOCUMENTS", + 'READ_KNOWLEDGE_DOCUMENTS': "READ_KNOWLEDGE_DOCUMENTS", 'CREATE_FILTER_VIEW': "CREATE_FILTER_VIEW", 'VIEW': "VIEW", }, @@ -79,6 +81,8 @@ class WorkspacePermissionAssignment(ModelNormal): 'EXPORT_PDF': "EXPORT_PDF", 'CREATE_AUTOMATION': "CREATE_AUTOMATION", 'USE_AI_ASSISTANT': "USE_AI_ASSISTANT", + 'WRITE_KNOWLEDGE_DOCUMENTS': "WRITE_KNOWLEDGE_DOCUMENTS", + 'READ_KNOWLEDGE_DOCUMENTS': "READ_KNOWLEDGE_DOCUMENTS", 'CREATE_FILTER_VIEW': "CREATE_FILTER_VIEW", 'VIEW': "VIEW", }, diff --git a/gooddata-api-client/gooddata_api_client/model_utils.py b/gooddata-api-client/gooddata_api_client/model_utils.py index bc91bd70e..78d2b33f0 100644 --- a/gooddata-api-client/gooddata_api_client/model_utils.py +++ b/gooddata-api-client/gooddata_api_client/model_utils.py @@ -204,7 +204,7 @@ def __deepcopy__(self, memo): if self.get("_spec_property_naming", False): new_inst = cls._new_from_openapi_data() else: - new_inst = cls.__new__(cls) + new_inst = cls.__new__(cls, **self.__dict__) for k, v in self.__dict__.items(): setattr(new_inst, k, deepcopy(v, memo)) diff --git a/gooddata-api-client/gooddata_api_client/models/__init__.py b/gooddata-api-client/gooddata_api_client/models/__init__.py index 6182a310b..29f009645 100644 --- a/gooddata-api-client/gooddata_api_client/models/__init__.py +++ b/gooddata-api-client/gooddata_api_client/models/__init__.py @@ -4,7 +4,7 @@ # if you have many models here with many references from one model to another this may # raise a RecursionError # to avoid this, import only the models that you directly need like: -# from from gooddata_api_client.model.pet import Pet +# from gooddata_api_client.model.pet import Pet # or import this package, but before doing it, use: # import sys # sys.setrecursionlimit(n) @@ -59,8 +59,6 @@ from gooddata_api_client.model.aac_workspace_data_filter import AacWorkspaceDataFilter 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.all_time_date_filter import AllTimeDateFilter -from gooddata_api_client.model.all_time_date_filter_all_time_date_filter import AllTimeDateFilterAllTimeDateFilter 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.ad_hoc_automation import AdHocAutomation @@ -88,11 +86,14 @@ from gooddata_api_client.model.alert_condition_operand import AlertConditionOperand from gooddata_api_client.model.alert_description import AlertDescription from gooddata_api_client.model.alert_evaluation_row import AlertEvaluationRow +from gooddata_api_client.model.all_time_date_filter import AllTimeDateFilter +from gooddata_api_client.model.all_time_date_filter_all_time_date_filter import AllTimeDateFilterAllTimeDateFilter from gooddata_api_client.model.allowed_relationship_type import AllowedRelationshipType from gooddata_api_client.model.analytics_catalog_created_by import AnalyticsCatalogCreatedBy from gooddata_api_client.model.analytics_catalog_tags import AnalyticsCatalogTags from gooddata_api_client.model.analytics_catalog_user import AnalyticsCatalogUser from gooddata_api_client.model.anomaly_detection import AnomalyDetection +from gooddata_api_client.model.anomaly_detection_config import AnomalyDetectionConfig 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.anomaly_detection_wrapper import AnomalyDetectionWrapper @@ -134,6 +135,14 @@ from gooddata_api_client.model.automation_tabular_export import AutomationTabularExport from gooddata_api_client.model.automation_visual_export import AutomationVisualExport from gooddata_api_client.model.available_assignees import AvailableAssignees +from gooddata_api_client.model.aws_bedrock_access_key_auth import AwsBedrockAccessKeyAuth +from gooddata_api_client.model.aws_bedrock_access_key_auth_all_of import AwsBedrockAccessKeyAuthAllOf +from gooddata_api_client.model.aws_bedrock_provider_config import AwsBedrockProviderConfig +from gooddata_api_client.model.azure_foundry_api_key_auth import AzureFoundryApiKeyAuth +from gooddata_api_client.model.azure_foundry_api_key_auth_all_of import AzureFoundryApiKeyAuthAllOf +from gooddata_api_client.model.azure_foundry_provider_auth import AzureFoundryProviderAuth +from gooddata_api_client.model.azure_foundry_provider_config import AzureFoundryProviderConfig +from gooddata_api_client.model.bedrock_provider_auth import BedrockProviderAuth from gooddata_api_client.model.bounded_filter import BoundedFilter from gooddata_api_client.model.change_analysis_params import ChangeAnalysisParams from gooddata_api_client.model.change_analysis_params_filters_inner import ChangeAnalysisParamsFiltersInner @@ -146,6 +155,7 @@ from gooddata_api_client.model.chat_request import ChatRequest from gooddata_api_client.model.chat_result import ChatResult from gooddata_api_client.model.chat_usage_response import ChatUsageResponse +from gooddata_api_client.model.clustering_config import ClusteringConfig 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 @@ -166,6 +176,8 @@ from gooddata_api_client.model.compound_measure_value_filter_compound_measure_value_filter import CompoundMeasureValueFilterCompoundMeasureValueFilter from gooddata_api_client.model.content_slide_template import ContentSlideTemplate from gooddata_api_client.model.cover_slide_template import CoverSlideTemplate +from gooddata_api_client.model.create_knowledge_document_request_dto import CreateKnowledgeDocumentRequestDto +from gooddata_api_client.model.create_knowledge_document_response_dto import CreateKnowledgeDocumentResponseDto from gooddata_api_client.model.created_visualization import CreatedVisualization from gooddata_api_client.model.created_visualization_filters_inner import CreatedVisualizationFiltersInner from gooddata_api_client.model.created_visualizations import CreatedVisualizations @@ -289,6 +301,7 @@ 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.delete_knowledge_document_response_dto import DeleteKnowledgeDocumentResponseDto 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 @@ -330,13 +343,18 @@ from gooddata_api_client.model.filter_by import FilterBy from gooddata_api_client.model.filter_definition import FilterDefinition from gooddata_api_client.model.filter_definition_for_simple_measure import FilterDefinitionForSimpleMeasure +from gooddata_api_client.model.forecast_config import ForecastConfig 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 +from gooddata_api_client.model.generate_description_request import GenerateDescriptionRequest +from gooddata_api_client.model.generate_description_response import GenerateDescriptionResponse from gooddata_api_client.model.generate_ldm_request import GenerateLdmRequest +from gooddata_api_client.model.generate_title_request import GenerateTitleRequest +from gooddata_api_client.model.generate_title_response import GenerateTitleResponse from gooddata_api_client.model.geo_area_config import GeoAreaConfig from gooddata_api_client.model.geo_collection_identifier import GeoCollectionIdentifier from gooddata_api_client.model.get_ai_lake_operation200_response import GetAiLakeOperation200Response @@ -388,7 +406,7 @@ from gooddata_api_client.model.json_api_analytical_dashboard_out_meta_access_info import JsonApiAnalyticalDashboardOutMetaAccessInfo from gooddata_api_client.model.json_api_analytical_dashboard_out_relationships import JsonApiAnalyticalDashboardOutRelationships from gooddata_api_client.model.json_api_analytical_dashboard_out_relationships_analytical_dashboards import JsonApiAnalyticalDashboardOutRelationshipsAnalyticalDashboards -from gooddata_api_client.model.json_api_analytical_dashboard_out_relationships_created_by import JsonApiAnalyticalDashboardOutRelationshipsCreatedBy +from gooddata_api_client.model.json_api_analytical_dashboard_out_relationships_certified_by import JsonApiAnalyticalDashboardOutRelationshipsCertifiedBy from gooddata_api_client.model.json_api_analytical_dashboard_out_relationships_dashboard_plugins import JsonApiAnalyticalDashboardOutRelationshipsDashboardPlugins from gooddata_api_client.model.json_api_analytical_dashboard_out_relationships_datasets import JsonApiAnalyticalDashboardOutRelationshipsDatasets from gooddata_api_client.model.json_api_analytical_dashboard_out_relationships_filter_contexts import JsonApiAnalyticalDashboardOutRelationshipsFilterContexts @@ -722,6 +740,18 @@ 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_llm_provider_in import JsonApiLlmProviderIn +from gooddata_api_client.model.json_api_llm_provider_in_attributes import JsonApiLlmProviderInAttributes +from gooddata_api_client.model.json_api_llm_provider_in_attributes_models_inner import JsonApiLlmProviderInAttributesModelsInner +from gooddata_api_client.model.json_api_llm_provider_in_attributes_provider_config import JsonApiLlmProviderInAttributesProviderConfig +from gooddata_api_client.model.json_api_llm_provider_in_document import JsonApiLlmProviderInDocument +from gooddata_api_client.model.json_api_llm_provider_out import JsonApiLlmProviderOut +from gooddata_api_client.model.json_api_llm_provider_out_document import JsonApiLlmProviderOutDocument +from gooddata_api_client.model.json_api_llm_provider_out_list import JsonApiLlmProviderOutList +from gooddata_api_client.model.json_api_llm_provider_out_with_links import JsonApiLlmProviderOutWithLinks +from gooddata_api_client.model.json_api_llm_provider_patch import JsonApiLlmProviderPatch +from gooddata_api_client.model.json_api_llm_provider_patch_attributes import JsonApiLlmProviderPatchAttributes +from gooddata_api_client.model.json_api_llm_provider_patch_document import JsonApiLlmProviderPatchDocument from gooddata_api_client.model.json_api_memory_item_in import JsonApiMemoryItemIn from gooddata_api_client.model.json_api_memory_item_in_attributes import JsonApiMemoryItemInAttributes from gooddata_api_client.model.json_api_memory_item_in_document import JsonApiMemoryItemInDocument @@ -943,9 +973,17 @@ from gooddata_api_client.model.key_drivers_request import KeyDriversRequest from gooddata_api_client.model.key_drivers_response import KeyDriversResponse from gooddata_api_client.model.key_drivers_result import KeyDriversResult +from gooddata_api_client.model.knowledge_document_metadata_dto import KnowledgeDocumentMetadataDto +from gooddata_api_client.model.knowledge_search_result_dto import KnowledgeSearchResultDto from gooddata_api_client.model.label_identifier import LabelIdentifier +from gooddata_api_client.model.list_database_instances_response import ListDatabaseInstancesResponse +from gooddata_api_client.model.list_knowledge_documents_response_dto import ListKnowledgeDocumentsResponseDto 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.list_services_response import ListServicesResponse +from gooddata_api_client.model.llm_model import LlmModel +from gooddata_api_client.model.llm_provider_auth import LlmProviderAuth +from gooddata_api_client.model.llm_provider_config import LlmProviderConfig 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 @@ -963,8 +1001,10 @@ from gooddata_api_client.model.memory_item_created_by_users import MemoryItemCreatedByUsers from gooddata_api_client.model.memory_item_user import MemoryItemUser from gooddata_api_client.model.metric import Metric +from gooddata_api_client.model.metric_definition_override import MetricDefinitionOverride from gooddata_api_client.model.metric_record import MetricRecord from gooddata_api_client.model.metric_value_change import MetricValueChange +from gooddata_api_client.model.model_test_result import ModelTestResult 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 @@ -979,6 +1019,10 @@ from gooddata_api_client.model.notifications_meta_total import NotificationsMetaTotal from gooddata_api_client.model.object_links import ObjectLinks from gooddata_api_client.model.object_links_container import ObjectLinksContainer +from gooddata_api_client.model.open_ai_provider_config import OpenAIProviderConfig +from gooddata_api_client.model.open_ai_api_key_auth import OpenAiApiKeyAuth +from gooddata_api_client.model.open_ai_api_key_auth_all_of import OpenAiApiKeyAuthAllOf +from gooddata_api_client.model.open_ai_provider_auth import OpenAiProviderAuth from gooddata_api_client.model.operation import Operation from gooddata_api_client.model.operation_error import OperationError from gooddata_api_client.model.organization_automation_identifier import OrganizationAutomationIdentifier @@ -991,6 +1035,7 @@ from gooddata_api_client.model.page_metadata import PageMetadata from gooddata_api_client.model.paging import Paging from gooddata_api_client.model.parameter import Parameter +from gooddata_api_client.model.patch_knowledge_document_request_dto import PatchKnowledgeDocumentRequestDto from gooddata_api_client.model.pdf_table_style import PdfTableStyle from gooddata_api_client.model.pdf_table_style_property import PdfTableStyleProperty from gooddata_api_client.model.pdm_ldm_request import PdmLdmRequest @@ -1049,17 +1094,22 @@ 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.run_service_command_request import RunServiceCommandRequest from gooddata_api_client.model.running_section import RunningSection from gooddata_api_client.model.saved_visualization import SavedVisualization 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 from gooddata_api_client.model.scan_sql_response import ScanSqlResponse +from gooddata_api_client.model.search_knowledge_response_dto import SearchKnowledgeResponseDto from gooddata_api_client.model.search_relationship_object import SearchRelationshipObject from gooddata_api_client.model.search_request import SearchRequest from gooddata_api_client.model.search_result import SearchResult from gooddata_api_client.model.search_result_object import SearchResultObject +from gooddata_api_client.model.search_statistics_dto import SearchStatisticsDto from gooddata_api_client.model.section_slide_template import SectionSlideTemplate +from gooddata_api_client.model.service_info import ServiceInfo +from gooddata_api_client.model.set_certification_request import SetCertificationRequest from gooddata_api_client.model.settings import Settings from gooddata_api_client.model.simple_measure_definition import SimpleMeasureDefinition from gooddata_api_client.model.simple_measure_definition_measure import SimpleMeasureDefinitionMeasure @@ -1089,6 +1139,9 @@ from gooddata_api_client.model.tabular_export_request import TabularExportRequest from gooddata_api_client.model.test_definition_request import TestDefinitionRequest from gooddata_api_client.model.test_destination_request import TestDestinationRequest +from gooddata_api_client.model.test_llm_provider_definition_request import TestLlmProviderDefinitionRequest +from gooddata_api_client.model.test_llm_provider_definition_request_provider_config import TestLlmProviderDefinitionRequestProviderConfig +from gooddata_api_client.model.test_llm_provider_response import TestLlmProviderResponse from gooddata_api_client.model.test_notification import TestNotification from gooddata_api_client.model.test_notification_all_of import TestNotificationAllOf from gooddata_api_client.model.test_query_duration import TestQueryDuration @@ -1101,6 +1154,8 @@ from gooddata_api_client.model.total_result_header import TotalResultHeader from gooddata_api_client.model.trigger_automation_request import TriggerAutomationRequest from gooddata_api_client.model.trigger_quality_issues_calculation_response import TriggerQualityIssuesCalculationResponse +from gooddata_api_client.model.upsert_knowledge_document_request_dto import UpsertKnowledgeDocumentRequestDto +from gooddata_api_client.model.upsert_knowledge_document_response_dto import UpsertKnowledgeDocumentResponseDto 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 @@ -1123,12 +1178,16 @@ from gooddata_api_client.model.value import Value from gooddata_api_client.model.visible_filter import VisibleFilter from gooddata_api_client.model.visual_export_request import VisualExportRequest +from gooddata_api_client.model.visualization_config import VisualizationConfig from gooddata_api_client.model.webhook import Webhook from gooddata_api_client.model.webhook_all_of import WebhookAllOf from gooddata_api_client.model.webhook_automation_info import WebhookAutomationInfo from gooddata_api_client.model.webhook_message import WebhookMessage from gooddata_api_client.model.webhook_message_data import WebhookMessageData from gooddata_api_client.model.webhook_recipient import WebhookRecipient +from gooddata_api_client.model.what_if_measure_adjustment_config import WhatIfMeasureAdjustmentConfig +from gooddata_api_client.model.what_if_scenario_config import WhatIfScenarioConfig +from gooddata_api_client.model.what_if_scenario_item import WhatIfScenarioItem from gooddata_api_client.model.widget_slides_template import WidgetSlidesTemplate from gooddata_api_client.model.workspace_automation_identifier import WorkspaceAutomationIdentifier from gooddata_api_client.model.workspace_automation_management_bulk_request import WorkspaceAutomationManagementBulkRequest diff --git a/packages/gooddata-fdw/tests/execute/fixtures/execute_compute_table_all_columns.yaml b/packages/gooddata-fdw/tests/execute/fixtures/execute_compute_table_all_columns.yaml index 4ab4c8d7a..21e95062c 100644 --- a/packages/gooddata-fdw/tests/execute/fixtures/execute_compute_table_all_columns.yaml +++ b/packages/gooddata-fdw/tests/execute/fixtures/execute_compute_table_all_columns.yaml @@ -103,7 +103,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - 15359989-8ad2-4797-872d-0c75e9d2fc54 + - 75ebf79c-8b57-413e-8905-8f87c275d7c7 X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -155,10 +155,10 @@ interactions: name: Revenue localIdentifier: dim_1 links: - executionResult: e318af2d275ae11561a9ab4c66bac635449f57cf:9b16b2d4f10df23824722646ce1af02eb946c80c6d65fb454e6082eba84bcf47 + executionResult: d60b337013fca31600abb3d636b0552824481d3d:3b1a7fd80969c75386d4191687e7aac6411e48e74da9eaa0c44699c8b65e5771 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/e318af2d275ae11561a9ab4c66bac635449f57cf%3A9b16b2d4f10df23824722646ce1af02eb946c80c6d65fb454e6082eba84bcf47?offset=0%2C0&limit=512%2C256 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/d60b337013fca31600abb3d636b0552824481d3d%3A3b1a7fd80969c75386d4191687e7aac6411e48e74da9eaa0c44699c8b65e5771?offset=0%2C0&limit=512%2C256 body: null headers: Accept: diff --git a/packages/gooddata-fdw/tests/execute/fixtures/execute_compute_table_metrics_only.yaml b/packages/gooddata-fdw/tests/execute/fixtures/execute_compute_table_metrics_only.yaml index a3140bd69..200c1a247 100644 --- a/packages/gooddata-fdw/tests/execute/fixtures/execute_compute_table_metrics_only.yaml +++ b/packages/gooddata-fdw/tests/execute/fixtures/execute_compute_table_metrics_only.yaml @@ -89,7 +89,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - f191b3ad-a319-479c-8e29-02cca428b1b5 + - 89bdbce1-989f-4d02-a05b-c4651acb16f1 X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -109,10 +109,10 @@ interactions: name: Revenue localIdentifier: dim_0 links: - executionResult: d9d11f7d9e8253a0c876b653d8cdd13837d4d7e3:f88453cd7ca8a9b78b512af78d0d58514f1c4d378dbb3ec42641642e1d30b7d7 + executionResult: 0f6e8c819d2076d126957770f4de7c7cfdbe94f2:b9fb86afba4a0826554e9283de0216a56182a625b327e2f2086007c84261356b - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/d9d11f7d9e8253a0c876b653d8cdd13837d4d7e3%3Af88453cd7ca8a9b78b512af78d0d58514f1c4d378dbb3ec42641642e1d30b7d7?offset=0&limit=256 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/0f6e8c819d2076d126957770f4de7c7cfdbe94f2%3Ab9fb86afba4a0826554e9283de0216a56182a625b327e2f2086007c84261356b?offset=0&limit=256 body: null headers: Accept: diff --git a/packages/gooddata-fdw/tests/execute/fixtures/execute_compute_table_with_reduced_granularity.yaml b/packages/gooddata-fdw/tests/execute/fixtures/execute_compute_table_with_reduced_granularity.yaml index f30881863..360f0f705 100644 --- a/packages/gooddata-fdw/tests/execute/fixtures/execute_compute_table_with_reduced_granularity.yaml +++ b/packages/gooddata-fdw/tests/execute/fixtures/execute_compute_table_with_reduced_granularity.yaml @@ -78,7 +78,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - 5bc1e217-8ae2-447d-bd49-d272c789a346 + - 3faa3be7-abe9-4ea1-970b-9e4ea6761c55 X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -111,10 +111,10 @@ interactions: name: Revenue localIdentifier: dim_1 links: - executionResult: 17828286356601efacb6b95fa54c984dc65d83ed:1a99055686e8543963519414ed3103816d7b01d6916f6883767a9642304fcaa7 + executionResult: 8fc634415680e148db8133f5bcd7246f5e0a3c66:660c43f4d90efd070912c98150124c6fdf8549fed14b6eb512a830ff17d7f8b3 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/17828286356601efacb6b95fa54c984dc65d83ed%3A1a99055686e8543963519414ed3103816d7b01d6916f6883767a9642304fcaa7?offset=0%2C0&limit=512%2C256 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/8fc634415680e148db8133f5bcd7246f5e0a3c66%3A660c43f4d90efd070912c98150124c6fdf8549fed14b6eb512a830ff17d7f8b3?offset=0%2C0&limit=512%2C256 body: null headers: Accept: diff --git a/packages/gooddata-fdw/tests/execute/fixtures/execute_insight_all_columns.yaml b/packages/gooddata-fdw/tests/execute/fixtures/execute_insight_all_columns.yaml index 339c5935b..4382e5bf1 100644 --- a/packages/gooddata-fdw/tests/execute/fixtures/execute_insight_all_columns.yaml +++ b/packages/gooddata-fdw/tests/execute/fixtures/execute_insight_all_columns.yaml @@ -22,7 +22,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '5006' + - '5096' Content-Type: - application/json DATE: &id001 @@ -141,7 +141,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: revenue_and_quantity_by_product_and_category meta: origin: @@ -181,6 +181,7 @@ interactions: - Order lines sourceColumn: quantity sourceColumnDataType: NUMERIC + isNullable: true id: quantity links: self: http://localhost:3000/api/v1/entities/workspaces/demo/facts/quantity @@ -192,7 +193,7 @@ interactions: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: revenue links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue @@ -204,6 +205,7 @@ interactions: - Order lines sourceColumn: price sourceColumnDataType: NUMERIC + isNullable: true id: price links: self: http://localhost:3000/api/v1/entities/workspaces/demo/facts/price @@ -217,6 +219,7 @@ interactions: sourceColumn: product_name sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: product_name links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/product_name @@ -235,6 +238,7 @@ interactions: sourceColumn: customer_name sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: customer_name links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/customer_name @@ -245,7 +249,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, ALL OTHER) - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: percent_revenue_in_category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue_in_category @@ -259,6 +263,7 @@ interactions: sourceColumn: category sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: products.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/products.category @@ -370,7 +375,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - b8262e8d-176e-48a3-8bd5-70dd69162f12 + - 9773d1f6-996c-41d2-bf00-605307ab0284 X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -422,10 +427,10 @@ interactions: name: Revenue localIdentifier: dim_1 links: - executionResult: 45de8ca1701935fef0b7b962236aa2b30a2f29a7:edd8e464e013b84e886575575e2cefc8c34af5a2aa2c0d98222150b19405fcfb + executionResult: b83f490bb62cdbf7c4775031d6be518ec4b6c922:87b0990eecc60e2913654ddb0e0bab5a51cfc352ae558cbc0e55a0f98fdb2e37 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/45de8ca1701935fef0b7b962236aa2b30a2f29a7%3Aedd8e464e013b84e886575575e2cefc8c34af5a2aa2c0d98222150b19405fcfb?offset=0%2C0&limit=512%2C256 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/b83f490bb62cdbf7c4775031d6be518ec4b6c922%3A87b0990eecc60e2913654ddb0e0bab5a51cfc352ae558cbc0e55a0f98fdb2e37?offset=0%2C0&limit=512%2C256 body: null headers: Accept: diff --git a/packages/gooddata-fdw/tests/execute/fixtures/execute_insight_some_columns.yaml b/packages/gooddata-fdw/tests/execute/fixtures/execute_insight_some_columns.yaml index ab8cb6dc2..d357e032e 100644 --- a/packages/gooddata-fdw/tests/execute/fixtures/execute_insight_some_columns.yaml +++ b/packages/gooddata-fdw/tests/execute/fixtures/execute_insight_some_columns.yaml @@ -22,7 +22,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '5006' + - '5096' Content-Type: - application/json DATE: &id001 @@ -141,7 +141,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: revenue_and_quantity_by_product_and_category meta: origin: @@ -181,6 +181,7 @@ interactions: - Order lines sourceColumn: quantity sourceColumnDataType: NUMERIC + isNullable: true id: quantity links: self: http://localhost:3000/api/v1/entities/workspaces/demo/facts/quantity @@ -192,7 +193,7 @@ interactions: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: revenue links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue @@ -204,6 +205,7 @@ interactions: - Order lines sourceColumn: price sourceColumnDataType: NUMERIC + isNullable: true id: price links: self: http://localhost:3000/api/v1/entities/workspaces/demo/facts/price @@ -217,6 +219,7 @@ interactions: sourceColumn: product_name sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: product_name links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/product_name @@ -235,6 +238,7 @@ interactions: sourceColumn: customer_name sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: customer_name links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/customer_name @@ -245,7 +249,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, ALL OTHER) - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: percent_revenue_in_category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue_in_category @@ -259,6 +263,7 @@ interactions: sourceColumn: category sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: products.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/products.category @@ -370,7 +375,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - 90bb0a95-a1ef-497f-97c7-933c6eb74b74 + - 66d702d3-4533-4a10-91db-ea0e4c97625c X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -422,10 +427,10 @@ interactions: name: Revenue localIdentifier: dim_1 links: - executionResult: 45de8ca1701935fef0b7b962236aa2b30a2f29a7:edd8e464e013b84e886575575e2cefc8c34af5a2aa2c0d98222150b19405fcfb + executionResult: b83f490bb62cdbf7c4775031d6be518ec4b6c922:87b0990eecc60e2913654ddb0e0bab5a51cfc352ae558cbc0e55a0f98fdb2e37 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/45de8ca1701935fef0b7b962236aa2b30a2f29a7%3Aedd8e464e013b84e886575575e2cefc8c34af5a2aa2c0d98222150b19405fcfb?offset=0%2C0&limit=512%2C256 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/b83f490bb62cdbf7c4775031d6be518ec4b6c922%3A87b0990eecc60e2913654ddb0e0bab5a51cfc352ae558cbc0e55a0f98fdb2e37?offset=0%2C0&limit=512%2C256 body: null headers: Accept: diff --git a/packages/gooddata-fdw/tests/import_foreign_schema/fixtures/import_compute_without_restrictions.yaml b/packages/gooddata-fdw/tests/import_foreign_schema/fixtures/import_compute_without_restrictions.yaml index 1977358a1..c64380d32 100644 --- a/packages/gooddata-fdw/tests/import_foreign_schema/fixtures/import_compute_without_restrictions.yaml +++ b/packages/gooddata-fdw/tests/import_foreign_schema/fixtures/import_compute_without_restrictions.yaml @@ -22,7 +22,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '20149' + - '20717' Content-Type: - application/json DATE: &id001 @@ -53,6 +53,7 @@ interactions: areRelationsValid: true sourceColumn: campaign_channel_id sourceColumnDataType: STRING + isNullable: false id: campaign_channel_id links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/campaign_channel_id @@ -78,6 +79,7 @@ interactions: areRelationsValid: true sourceColumn: category sourceColumnDataType: STRING + isNullable: true id: campaign_channels.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/campaign_channels.category @@ -103,6 +105,7 @@ interactions: areRelationsValid: true sourceColumn: campaign_id sourceColumnDataType: INT + isNullable: false id: campaign_id links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/campaign_id @@ -128,6 +131,7 @@ interactions: areRelationsValid: true sourceColumn: campaign_name sourceColumnDataType: STRING + isNullable: true id: campaign_name links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/campaign_name @@ -153,6 +157,7 @@ interactions: areRelationsValid: true sourceColumn: customer_id sourceColumnDataType: INT + isNullable: false id: customer_id links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/customer_id @@ -178,6 +183,7 @@ interactions: areRelationsValid: true sourceColumn: customer_name sourceColumnDataType: STRING + isNullable: true id: customer_name links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/customer_name @@ -323,6 +329,7 @@ interactions: areRelationsValid: true sourceColumn: order_id sourceColumnDataType: STRING + isNullable: true id: order_id links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/order_id @@ -348,6 +355,7 @@ interactions: areRelationsValid: true sourceColumn: order_line_id sourceColumnDataType: STRING + isNullable: false id: order_line_id links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/order_line_id @@ -373,6 +381,7 @@ interactions: areRelationsValid: true sourceColumn: order_status sourceColumnDataType: STRING + isNullable: true id: order_status links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/order_status @@ -398,6 +407,7 @@ interactions: areRelationsValid: true sourceColumn: product_id sourceColumnDataType: INT + isNullable: false id: product_id links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/product_id @@ -423,6 +433,7 @@ interactions: areRelationsValid: true sourceColumn: product_name sourceColumnDataType: STRING + isNullable: true id: product_name links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/product_name @@ -448,6 +459,7 @@ interactions: areRelationsValid: true sourceColumn: category sourceColumnDataType: STRING + isNullable: true id: products.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/products.category @@ -473,6 +485,7 @@ interactions: areRelationsValid: true sourceColumn: region sourceColumnDataType: STRING + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/region @@ -498,6 +511,7 @@ interactions: areRelationsValid: true sourceColumn: state sourceColumnDataType: STRING + isNullable: true id: state links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/state @@ -529,6 +543,7 @@ interactions: areRelationsValid: true sourceColumn: type sourceColumnDataType: STRING + isNullable: true id: type links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/type @@ -556,6 +571,7 @@ interactions: sourceColumn: product_name sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: product_name links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/product_name @@ -569,6 +585,7 @@ interactions: sourceColumn: order_status sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: order_status links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/order_status @@ -583,57 +600,57 @@ interactions: type: attribute referenceProperties: - identifier: - id: customers + id: campaigns type: dataset multivalue: false sources: - - column: customer_id + - column: campaign_id dataType: INT target: - id: customer_id + id: campaign_id type: attribute isNullable: null nullValue: null sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: products type: dataset multivalue: false sources: - - column: campaign_id + - column: product_id dataType: INT target: - id: campaign_id + id: product_id type: attribute isNullable: null nullValue: null sourceColumns: null sourceColumnDataTypes: null - identifier: - id: date + id: customers type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: customer_id + dataType: INT target: - id: date - type: date + id: customer_id + type: attribute isNullable: null nullValue: null sourceColumns: null sourceColumnDataTypes: null - identifier: - id: products + id: date type: dataset multivalue: false sources: - - column: product_id - dataType: INT + - column: date + dataType: DATE target: - id: product_id - type: attribute + id: date + type: date isNullable: null nullValue: null sourceColumns: null @@ -643,10 +660,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 @@ -672,6 +689,7 @@ interactions: sourceColumn: campaign_name sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: campaign_name links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/campaign_name @@ -739,6 +757,7 @@ interactions: sourceColumn: campaign_channel_id sourceColumnDataType: STRING valueType: TEXT + isNullable: false id: campaign_channel_id links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/campaign_channel_id @@ -780,6 +799,7 @@ interactions: sourceColumn: order_id sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: order_id links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/order_id @@ -793,6 +813,7 @@ interactions: sourceColumn: customer_name sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: customer_name links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/customer_name @@ -806,6 +827,7 @@ interactions: sourceColumn: type sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: type links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/type @@ -836,6 +858,7 @@ interactions: sourceColumn: region sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/region @@ -849,6 +872,7 @@ interactions: sourceColumn: category sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: products.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/products.category @@ -873,6 +897,7 @@ interactions: sourceColumn: geo__state__location sourceColumnDataType: STRING valueType: GEO + isNullable: true id: geo__state__location links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/geo__state__location @@ -886,6 +911,7 @@ interactions: sourceColumn: product_id sourceColumnDataType: INT valueType: TEXT + isNullable: false id: product_id links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/product_id @@ -899,6 +925,7 @@ interactions: sourceColumn: order_line_id sourceColumnDataType: STRING valueType: TEXT + isNullable: false id: order_line_id links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/order_line_id @@ -939,6 +966,7 @@ interactions: sourceColumn: category sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: campaign_channels.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/campaign_channels.category @@ -952,6 +980,7 @@ interactions: sourceColumn: customer_id sourceColumnDataType: INT valueType: TEXT + isNullable: false id: customer_id links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/customer_id @@ -976,6 +1005,7 @@ interactions: sourceColumn: state sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: state links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/state @@ -989,6 +1019,7 @@ interactions: sourceColumn: campaign_id sourceColumnDataType: INT valueType: TEXT + isNullable: false id: campaign_id links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/campaign_id @@ -1017,7 +1048,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '13574' + - '13921' Content-Type: - application/json DATE: *id001 @@ -1231,57 +1262,57 @@ interactions: type: attribute referenceProperties: - identifier: - id: customers + id: campaigns type: dataset multivalue: false sources: - - column: customer_id + - column: campaign_id dataType: INT target: - id: customer_id + id: campaign_id type: attribute isNullable: null nullValue: null sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: products type: dataset multivalue: false sources: - - column: campaign_id + - column: product_id dataType: INT target: - id: campaign_id + id: product_id type: attribute isNullable: null nullValue: null sourceColumns: null sourceColumnDataTypes: null - identifier: - id: date + id: customers type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: customer_id + dataType: INT target: - id: date - type: date + id: customer_id + type: attribute isNullable: null nullValue: null sourceColumns: null sourceColumnDataTypes: null - identifier: - id: products + id: date type: dataset multivalue: false sources: - - column: product_id - dataType: INT + - column: date + dataType: DATE target: - id: product_id - type: attribute + id: date + type: date isNullable: null nullValue: null sourceColumns: null @@ -1292,10 +1323,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 @@ -1370,6 +1401,7 @@ interactions: - Products sourceColumn: product_id sourceColumnDataType: INT + isNullable: false id: product_id links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/product_id @@ -1381,6 +1413,7 @@ interactions: - Campaign channels sourceColumn: budget sourceColumnDataType: NUMERIC + isNullable: true id: budget links: self: http://localhost:3000/api/v1/entities/workspaces/demo/facts/budget @@ -1402,6 +1435,7 @@ interactions: - Products sourceColumn: product_name sourceColumnDataType: STRING + isNullable: true id: product_name links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/product_name @@ -1423,6 +1457,7 @@ interactions: - Products sourceColumn: category sourceColumnDataType: STRING + isNullable: true id: products.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/products.category @@ -1444,6 +1479,7 @@ interactions: - Campaign channels sourceColumn: category sourceColumnDataType: STRING + isNullable: true id: campaign_channels.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/campaign_channels.category @@ -1455,6 +1491,7 @@ interactions: - Customers sourceColumn: state sourceColumnDataType: STRING + isNullable: true id: state links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/state @@ -1476,6 +1513,7 @@ interactions: - Order lines sourceColumn: order_id sourceColumnDataType: STRING + isNullable: true id: order_id links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/order_id @@ -1487,6 +1525,7 @@ interactions: - Campaigns sourceColumn: campaign_name sourceColumnDataType: STRING + isNullable: true id: campaign_name links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/campaign_name @@ -1498,6 +1537,7 @@ interactions: - Order lines sourceColumn: price sourceColumnDataType: NUMERIC + isNullable: true id: price links: self: http://localhost:3000/api/v1/entities/workspaces/demo/facts/price @@ -1530,6 +1570,7 @@ interactions: - Customers sourceColumn: region sourceColumnDataType: STRING + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/region @@ -1541,6 +1582,7 @@ interactions: - Campaign channels sourceColumn: campaign_channel_id sourceColumnDataType: STRING + isNullable: false id: campaign_channel_id links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/campaign_channel_id @@ -1552,6 +1594,7 @@ interactions: - Customers sourceColumn: customer_id sourceColumnDataType: INT + isNullable: false id: customer_id links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/customer_id @@ -1563,6 +1606,7 @@ interactions: - Order lines sourceColumn: quantity sourceColumnDataType: NUMERIC + isNullable: true id: quantity links: self: http://localhost:3000/api/v1/entities/workspaces/demo/facts/quantity @@ -1574,6 +1618,7 @@ interactions: - Campaigns sourceColumn: campaign_id sourceColumnDataType: INT + isNullable: false id: campaign_id links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/campaign_id @@ -1585,6 +1630,7 @@ interactions: - Campaign channels sourceColumn: type sourceColumnDataType: STRING + isNullable: true id: type links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/type @@ -1596,6 +1642,7 @@ interactions: - Campaign channels sourceColumn: spend sourceColumnDataType: NUMERIC + isNullable: true id: spend links: self: http://localhost:3000/api/v1/entities/workspaces/demo/facts/spend @@ -1607,6 +1654,7 @@ interactions: - Order lines sourceColumn: order_status sourceColumnDataType: STRING + isNullable: true id: order_status links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/order_status @@ -1618,6 +1666,7 @@ interactions: - Customers sourceColumn: customer_name sourceColumnDataType: STRING + isNullable: true id: customer_name links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/customer_name @@ -1629,6 +1678,7 @@ interactions: - Order lines sourceColumn: order_line_id sourceColumnDataType: STRING + isNullable: false id: order_line_id links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/order_line_id @@ -1685,7 +1735,7 @@ interactions: content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: amount_of_active_customers links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/amount_of_active_customers @@ -1700,7 +1750,7 @@ interactions: content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: amount_of_orders links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/amount_of_orders @@ -1716,7 +1766,7 @@ interactions: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT {metric/revenue} BY {attribute/customer_id}) > 10000 ' - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: amount_of_top_customers links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/amount_of_top_customers @@ -1733,7 +1783,7 @@ interactions: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: amount_of_valid_orders links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/amount_of_valid_orders @@ -1748,7 +1798,7 @@ interactions: content: format: $#,##0 maql: SELECT SUM({fact/spend}) - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: campaign_spend links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/campaign_spend @@ -1763,7 +1813,7 @@ interactions: content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: order_amount links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/order_amount @@ -1778,7 +1828,7 @@ interactions: content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: percent_revenue links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue @@ -1794,7 +1844,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: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: percent_revenue_from_top_10_customers links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue_from_top_10_customers @@ -1810,7 +1860,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: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: percent_revenue_from_top_10_percent_customers links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue_from_top_10_percent_customers @@ -1826,7 +1876,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: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: percent_revenue_from_top_10_percent_products links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue_from_top_10_percent_products @@ -1842,7 +1892,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: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: percent_revenue_from_top_10_products links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue_from_top_10_products @@ -1858,7 +1908,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, ALL OTHER) - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: percent_revenue_in_category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue_in_category @@ -1874,7 +1924,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL {attribute/product_id}) - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: percent_revenue_per_product links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue_per_product @@ -1891,7 +1941,7 @@ interactions: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: revenue links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue @@ -1907,7 +1957,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Clothing") - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: revenue-clothing links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue-clothing @@ -1923,7 +1973,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ( "Electronics") - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: revenue-electronic links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue-electronic @@ -1939,7 +1989,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Home") - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: revenue-home links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue-home @@ -1955,7 +2005,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Outdoor") - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: revenue-outdoor links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue-outdoor @@ -1970,7 +2020,7 @@ interactions: content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: revenue_per_customer links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue_per_customer @@ -1985,7 +2035,7 @@ interactions: content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: revenue_per_dollar_spent links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue_per_dollar_spent @@ -2000,7 +2050,7 @@ interactions: content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: revenue_top_10 links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue_top_10 @@ -2015,7 +2065,7 @@ interactions: content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: revenue_top_10_percent links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue_top_10_percent @@ -2030,7 +2080,7 @@ interactions: content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: total_revenue links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/total_revenue @@ -2045,7 +2095,7 @@ interactions: content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: total_revenue-no_filters links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/total_revenue-no_filters diff --git a/packages/gooddata-fdw/tests/import_foreign_schema/fixtures/import_insights_without_restrictions.yaml b/packages/gooddata-fdw/tests/import_foreign_schema/fixtures/import_insights_without_restrictions.yaml index 276cbd117..ed8ef08c4 100644 --- a/packages/gooddata-fdw/tests/import_foreign_schema/fixtures/import_insights_without_restrictions.yaml +++ b/packages/gooddata-fdw/tests/import_foreign_schema/fixtures/import_insights_without_restrictions.yaml @@ -22,7 +22,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '20149' + - '20717' Content-Type: - application/json DATE: &id001 @@ -53,6 +53,7 @@ interactions: areRelationsValid: true sourceColumn: campaign_channel_id sourceColumnDataType: STRING + isNullable: false id: campaign_channel_id links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/campaign_channel_id @@ -78,6 +79,7 @@ interactions: areRelationsValid: true sourceColumn: category sourceColumnDataType: STRING + isNullable: true id: campaign_channels.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/campaign_channels.category @@ -103,6 +105,7 @@ interactions: areRelationsValid: true sourceColumn: campaign_id sourceColumnDataType: INT + isNullable: false id: campaign_id links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/campaign_id @@ -128,6 +131,7 @@ interactions: areRelationsValid: true sourceColumn: campaign_name sourceColumnDataType: STRING + isNullable: true id: campaign_name links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/campaign_name @@ -153,6 +157,7 @@ interactions: areRelationsValid: true sourceColumn: customer_id sourceColumnDataType: INT + isNullable: false id: customer_id links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/customer_id @@ -178,6 +183,7 @@ interactions: areRelationsValid: true sourceColumn: customer_name sourceColumnDataType: STRING + isNullable: true id: customer_name links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/customer_name @@ -323,6 +329,7 @@ interactions: areRelationsValid: true sourceColumn: order_id sourceColumnDataType: STRING + isNullable: true id: order_id links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/order_id @@ -348,6 +355,7 @@ interactions: areRelationsValid: true sourceColumn: order_line_id sourceColumnDataType: STRING + isNullable: false id: order_line_id links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/order_line_id @@ -373,6 +381,7 @@ interactions: areRelationsValid: true sourceColumn: order_status sourceColumnDataType: STRING + isNullable: true id: order_status links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/order_status @@ -398,6 +407,7 @@ interactions: areRelationsValid: true sourceColumn: product_id sourceColumnDataType: INT + isNullable: false id: product_id links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/product_id @@ -423,6 +433,7 @@ interactions: areRelationsValid: true sourceColumn: product_name sourceColumnDataType: STRING + isNullable: true id: product_name links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/product_name @@ -448,6 +459,7 @@ interactions: areRelationsValid: true sourceColumn: category sourceColumnDataType: STRING + isNullable: true id: products.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/products.category @@ -473,6 +485,7 @@ interactions: areRelationsValid: true sourceColumn: region sourceColumnDataType: STRING + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/region @@ -498,6 +511,7 @@ interactions: areRelationsValid: true sourceColumn: state sourceColumnDataType: STRING + isNullable: true id: state links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/state @@ -529,6 +543,7 @@ interactions: areRelationsValid: true sourceColumn: type sourceColumnDataType: STRING + isNullable: true id: type links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/type @@ -556,6 +571,7 @@ interactions: sourceColumn: product_name sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: product_name links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/product_name @@ -569,6 +585,7 @@ interactions: sourceColumn: order_status sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: order_status links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/order_status @@ -583,57 +600,57 @@ interactions: type: attribute referenceProperties: - identifier: - id: customers + id: campaigns type: dataset multivalue: false sources: - - column: customer_id + - column: campaign_id dataType: INT target: - id: customer_id + id: campaign_id type: attribute isNullable: null nullValue: null sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: products type: dataset multivalue: false sources: - - column: campaign_id + - column: product_id dataType: INT target: - id: campaign_id + id: product_id type: attribute isNullable: null nullValue: null sourceColumns: null sourceColumnDataTypes: null - identifier: - id: date + id: customers type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: customer_id + dataType: INT target: - id: date - type: date + id: customer_id + type: attribute isNullable: null nullValue: null sourceColumns: null sourceColumnDataTypes: null - identifier: - id: products + id: date type: dataset multivalue: false sources: - - column: product_id - dataType: INT + - column: date + dataType: DATE target: - id: product_id - type: attribute + id: date + type: date isNullable: null nullValue: null sourceColumns: null @@ -643,10 +660,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 @@ -672,6 +689,7 @@ interactions: sourceColumn: campaign_name sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: campaign_name links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/campaign_name @@ -739,6 +757,7 @@ interactions: sourceColumn: campaign_channel_id sourceColumnDataType: STRING valueType: TEXT + isNullable: false id: campaign_channel_id links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/campaign_channel_id @@ -780,6 +799,7 @@ interactions: sourceColumn: order_id sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: order_id links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/order_id @@ -793,6 +813,7 @@ interactions: sourceColumn: customer_name sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: customer_name links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/customer_name @@ -806,6 +827,7 @@ interactions: sourceColumn: type sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: type links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/type @@ -836,6 +858,7 @@ interactions: sourceColumn: region sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/region @@ -849,6 +872,7 @@ interactions: sourceColumn: category sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: products.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/products.category @@ -873,6 +897,7 @@ interactions: sourceColumn: geo__state__location sourceColumnDataType: STRING valueType: GEO + isNullable: true id: geo__state__location links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/geo__state__location @@ -886,6 +911,7 @@ interactions: sourceColumn: product_id sourceColumnDataType: INT valueType: TEXT + isNullable: false id: product_id links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/product_id @@ -899,6 +925,7 @@ interactions: sourceColumn: order_line_id sourceColumnDataType: STRING valueType: TEXT + isNullable: false id: order_line_id links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/order_line_id @@ -939,6 +966,7 @@ interactions: sourceColumn: category sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: campaign_channels.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/campaign_channels.category @@ -952,6 +980,7 @@ interactions: sourceColumn: customer_id sourceColumnDataType: INT valueType: TEXT + isNullable: false id: customer_id links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/customer_id @@ -976,6 +1005,7 @@ interactions: sourceColumn: state sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: state links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/state @@ -989,6 +1019,7 @@ interactions: sourceColumn: campaign_id sourceColumnDataType: INT valueType: TEXT + isNullable: false id: campaign_id links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/campaign_id @@ -1017,7 +1048,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '13574' + - '13921' Content-Type: - application/json DATE: *id001 @@ -1231,57 +1262,57 @@ interactions: type: attribute referenceProperties: - identifier: - id: customers + id: campaigns type: dataset multivalue: false sources: - - column: customer_id + - column: campaign_id dataType: INT target: - id: customer_id + id: campaign_id type: attribute isNullable: null nullValue: null sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: products type: dataset multivalue: false sources: - - column: campaign_id + - column: product_id dataType: INT target: - id: campaign_id + id: product_id type: attribute isNullable: null nullValue: null sourceColumns: null sourceColumnDataTypes: null - identifier: - id: date + id: customers type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: customer_id + dataType: INT target: - id: date - type: date + id: customer_id + type: attribute isNullable: null nullValue: null sourceColumns: null sourceColumnDataTypes: null - identifier: - id: products + id: date type: dataset multivalue: false sources: - - column: product_id - dataType: INT + - column: date + dataType: DATE target: - id: product_id - type: attribute + id: date + type: date isNullable: null nullValue: null sourceColumns: null @@ -1292,10 +1323,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 @@ -1370,6 +1401,7 @@ interactions: - Products sourceColumn: product_id sourceColumnDataType: INT + isNullable: false id: product_id links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/product_id @@ -1381,6 +1413,7 @@ interactions: - Campaign channels sourceColumn: budget sourceColumnDataType: NUMERIC + isNullable: true id: budget links: self: http://localhost:3000/api/v1/entities/workspaces/demo/facts/budget @@ -1402,6 +1435,7 @@ interactions: - Products sourceColumn: product_name sourceColumnDataType: STRING + isNullable: true id: product_name links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/product_name @@ -1423,6 +1457,7 @@ interactions: - Products sourceColumn: category sourceColumnDataType: STRING + isNullable: true id: products.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/products.category @@ -1444,6 +1479,7 @@ interactions: - Campaign channels sourceColumn: category sourceColumnDataType: STRING + isNullable: true id: campaign_channels.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/campaign_channels.category @@ -1455,6 +1491,7 @@ interactions: - Customers sourceColumn: state sourceColumnDataType: STRING + isNullable: true id: state links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/state @@ -1476,6 +1513,7 @@ interactions: - Order lines sourceColumn: order_id sourceColumnDataType: STRING + isNullable: true id: order_id links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/order_id @@ -1487,6 +1525,7 @@ interactions: - Campaigns sourceColumn: campaign_name sourceColumnDataType: STRING + isNullable: true id: campaign_name links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/campaign_name @@ -1498,6 +1537,7 @@ interactions: - Order lines sourceColumn: price sourceColumnDataType: NUMERIC + isNullable: true id: price links: self: http://localhost:3000/api/v1/entities/workspaces/demo/facts/price @@ -1530,6 +1570,7 @@ interactions: - Customers sourceColumn: region sourceColumnDataType: STRING + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/region @@ -1541,6 +1582,7 @@ interactions: - Campaign channels sourceColumn: campaign_channel_id sourceColumnDataType: STRING + isNullable: false id: campaign_channel_id links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/campaign_channel_id @@ -1552,6 +1594,7 @@ interactions: - Customers sourceColumn: customer_id sourceColumnDataType: INT + isNullable: false id: customer_id links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/customer_id @@ -1563,6 +1606,7 @@ interactions: - Order lines sourceColumn: quantity sourceColumnDataType: NUMERIC + isNullable: true id: quantity links: self: http://localhost:3000/api/v1/entities/workspaces/demo/facts/quantity @@ -1574,6 +1618,7 @@ interactions: - Campaigns sourceColumn: campaign_id sourceColumnDataType: INT + isNullable: false id: campaign_id links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/campaign_id @@ -1585,6 +1630,7 @@ interactions: - Campaign channels sourceColumn: type sourceColumnDataType: STRING + isNullable: true id: type links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/type @@ -1596,6 +1642,7 @@ interactions: - Campaign channels sourceColumn: spend sourceColumnDataType: NUMERIC + isNullable: true id: spend links: self: http://localhost:3000/api/v1/entities/workspaces/demo/facts/spend @@ -1607,6 +1654,7 @@ interactions: - Order lines sourceColumn: order_status sourceColumnDataType: STRING + isNullable: true id: order_status links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/order_status @@ -1618,6 +1666,7 @@ interactions: - Customers sourceColumn: customer_name sourceColumnDataType: STRING + isNullable: true id: customer_name links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/customer_name @@ -1629,6 +1678,7 @@ interactions: - Order lines sourceColumn: order_line_id sourceColumnDataType: STRING + isNullable: false id: order_line_id links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/order_line_id @@ -1685,7 +1735,7 @@ interactions: content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: amount_of_active_customers links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/amount_of_active_customers @@ -1700,7 +1750,7 @@ interactions: content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: amount_of_orders links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/amount_of_orders @@ -1716,7 +1766,7 @@ interactions: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT {metric/revenue} BY {attribute/customer_id}) > 10000 ' - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: amount_of_top_customers links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/amount_of_top_customers @@ -1733,7 +1783,7 @@ interactions: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: amount_of_valid_orders links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/amount_of_valid_orders @@ -1748,7 +1798,7 @@ interactions: content: format: $#,##0 maql: SELECT SUM({fact/spend}) - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: campaign_spend links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/campaign_spend @@ -1763,7 +1813,7 @@ interactions: content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: order_amount links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/order_amount @@ -1778,7 +1828,7 @@ interactions: content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: percent_revenue links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue @@ -1794,7 +1844,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: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: percent_revenue_from_top_10_customers links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue_from_top_10_customers @@ -1810,7 +1860,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: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: percent_revenue_from_top_10_percent_customers links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue_from_top_10_percent_customers @@ -1826,7 +1876,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: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: percent_revenue_from_top_10_percent_products links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue_from_top_10_percent_products @@ -1842,7 +1892,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: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: percent_revenue_from_top_10_products links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue_from_top_10_products @@ -1858,7 +1908,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, ALL OTHER) - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: percent_revenue_in_category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue_in_category @@ -1874,7 +1924,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL {attribute/product_id}) - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: percent_revenue_per_product links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue_per_product @@ -1891,7 +1941,7 @@ interactions: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: revenue links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue @@ -1907,7 +1957,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Clothing") - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: revenue-clothing links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue-clothing @@ -1923,7 +1973,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ( "Electronics") - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: revenue-electronic links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue-electronic @@ -1939,7 +1989,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Home") - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: revenue-home links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue-home @@ -1955,7 +2005,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Outdoor") - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: revenue-outdoor links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue-outdoor @@ -1970,7 +2020,7 @@ interactions: content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: revenue_per_customer links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue_per_customer @@ -1985,7 +2035,7 @@ interactions: content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: revenue_per_dollar_spent links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue_per_dollar_spent @@ -2000,7 +2050,7 @@ interactions: content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: revenue_top_10 links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue_top_10 @@ -2015,7 +2065,7 @@ interactions: content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: revenue_top_10_percent links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue_top_10_percent @@ -2030,7 +2080,7 @@ interactions: content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: total_revenue links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/total_revenue @@ -2045,7 +2095,7 @@ interactions: content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: total_revenue-no_filters links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/total_revenue-no_filters @@ -2078,7 +2128,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '33000' + - '33181' Content-Type: - application/json DATE: *id001 @@ -2161,7 +2211,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: campaign_spend links: self: http://localhost:3000/api/v1/entities/workspaces/demo/visualizationObjects/campaign_spend @@ -2232,9 +2282,9 @@ interactions: identifier: id: date type: dataset - from: -11 + from: -12 granularity: GDC.time.month - to: 0 + to: -1 properties: controls: colorMapping: @@ -2260,7 +2310,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: customers_trend links: self: http://localhost:3000/api/v1/entities/workspaces/demo/visualizationObjects/customers_trend @@ -2364,7 +2414,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: percent_revenue_per_product_by_customer_and_category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/visualizationObjects/percent_revenue_per_product_by_customer_and_category @@ -2448,7 +2498,7 @@ interactions: stackMeasuresToPercent: true version: '2' visualizationUrl: local:area - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: percentage_of_customers_by_region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/visualizationObjects/percentage_of_customers_by_region @@ -2530,7 +2580,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: product_breakdown links: self: http://localhost:3000/api/v1/entities/workspaces/demo/visualizationObjects/product_breakdown @@ -2604,7 +2654,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:donut - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: product_categories_pie_chart links: self: http://localhost:3000/api/v1/entities/workspaces/demo/visualizationObjects/product_categories_pie_chart @@ -2700,7 +2750,7 @@ interactions: visible: false version: '2' visualizationUrl: local:column - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: product_revenue_comparison-over_previous_period links: self: http://localhost:3000/api/v1/entities/workspaces/demo/visualizationObjects/product_revenue_comparison-over_previous_period @@ -2786,7 +2836,7 @@ interactions: enabled: true version: '2' visualizationUrl: local:scatter - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: product_saleability links: self: http://localhost:3000/api/v1/entities/workspaces/demo/visualizationObjects/product_saleability @@ -2906,7 +2956,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: revenue_and_quantity_by_product_and_category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/visualizationObjects/revenue_and_quantity_by_product_and_category @@ -2993,7 +3043,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:line - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: revenue_by_category_trend links: self: http://localhost:3000/api/v1/entities/workspaces/demo/visualizationObjects/revenue_by_category_trend @@ -3057,7 +3107,7 @@ interactions: properties: {} version: '2' visualizationUrl: local:bar - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: revenue_by_product links: self: http://localhost:3000/api/v1/entities/workspaces/demo/visualizationObjects/revenue_by_product @@ -3132,7 +3182,7 @@ interactions: min: '0' version: '2' visualizationUrl: local:scatter - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: revenue_per_usd_vs_spend_by_campaign links: self: http://localhost:3000/api/v1/entities/workspaces/demo/visualizationObjects/revenue_per_usd_vs_spend_by_campaign @@ -3221,7 +3271,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: revenue_trend links: self: http://localhost:3000/api/v1/entities/workspaces/demo/visualizationObjects/revenue_trend @@ -3303,7 +3353,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: top_10_customers links: self: http://localhost:3000/api/v1/entities/workspaces/demo/visualizationObjects/top_10_customers @@ -3381,7 +3431,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: top_10_products links: self: http://localhost:3000/api/v1/entities/workspaces/demo/visualizationObjects/top_10_products @@ -3411,7 +3461,7 @@ interactions: content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: amount_of_orders links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/amount_of_orders @@ -3423,7 +3473,7 @@ interactions: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: revenue links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue @@ -3435,6 +3485,7 @@ interactions: - Order lines sourceColumn: price sourceColumnDataType: NUMERIC + isNullable: true id: price links: self: http://localhost:3000/api/v1/entities/workspaces/demo/facts/price @@ -3448,6 +3499,7 @@ interactions: sourceColumn: product_name sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: product_name links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/product_name @@ -3471,6 +3523,7 @@ interactions: sourceColumn: campaign_name sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: campaign_name links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/campaign_name @@ -3481,7 +3534,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, ALL OTHER) - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: percent_revenue_in_category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue_in_category @@ -3491,7 +3544,7 @@ interactions: content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: revenue_per_customer links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue_per_customer @@ -3501,7 +3554,7 @@ interactions: content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: revenue_top_10 links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue_top_10 @@ -3523,7 +3576,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL {attribute/product_id}) - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: percent_revenue_per_product links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue_per_product @@ -3535,6 +3588,7 @@ interactions: - Order lines sourceColumn: quantity sourceColumnDataType: NUMERIC + isNullable: true id: quantity links: self: http://localhost:3000/api/v1/entities/workspaces/demo/facts/quantity @@ -3563,6 +3617,7 @@ interactions: sourceColumn: category sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: campaign_channels.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/campaign_channels.category @@ -3576,6 +3631,7 @@ interactions: sourceColumn: customer_name sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: customer_name links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/customer_name @@ -3589,6 +3645,7 @@ interactions: sourceColumn: type sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: type links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/type @@ -3602,6 +3659,7 @@ interactions: sourceColumn: region sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/region @@ -3615,6 +3673,7 @@ interactions: sourceColumn: state sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: state links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/state @@ -3624,7 +3683,7 @@ interactions: content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: amount_of_active_customers links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/amount_of_active_customers @@ -3638,6 +3697,7 @@ interactions: sourceColumn: category sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: products.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/products.category @@ -3647,7 +3707,7 @@ interactions: content: format: $#,##0 maql: SELECT SUM({fact/spend}) - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: campaign_spend links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/campaign_spend @@ -3657,7 +3717,7 @@ interactions: content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: revenue_per_dollar_spent links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue_per_dollar_spent diff --git a/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_bytes_limits_failure.yaml b/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_bytes_limits_failure.yaml index 93b15c384..8813fb8e8 100644 --- a/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_bytes_limits_failure.yaml +++ b/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_bytes_limits_failure.yaml @@ -90,7 +90,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - 30a3cfc0-9dfc-4d06-92f5-bf61a6502fc3 + - 6690b141-0765-4d58-bcf0-8b9ad41dd709 X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -153,10 +153,10 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: 4c9a39e6a0b20cc55fb0811a27939b92fc5d49a4:bd02ea7028b8356e32e979c26f5ab0852511226ff47e4c9b3a6ba79c9678f704 + executionResult: 4d70b2f5dc82de826023bd64a95a9b6cece1fc90:727263b01ce1783fb5c523537135e11e675307f8552f0094ccebb2e30d794188 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/4c9a39e6a0b20cc55fb0811a27939b92fc5d49a4%3Abd02ea7028b8356e32e979c26f5ab0852511226ff47e4c9b3a6ba79c9678f704/metadata + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/4d70b2f5dc82de826023bd64a95a9b6cece1fc90%3A727263b01ce1783fb5c523537135e11e675307f8552f0094ccebb2e30d794188/metadata body: null headers: Accept: @@ -175,7 +175,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '2168' + - '2200' Content-Type: - application/json DATE: *id001 @@ -238,6 +238,7 @@ interactions: computeRatio: false filters: [] auxMeasures: [] + measureDefinitionOverrides: [] executionResponse: dimensions: - headers: @@ -295,7 +296,7 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: 4c9a39e6a0b20cc55fb0811a27939b92fc5d49a4:bd02ea7028b8356e32e979c26f5ab0852511226ff47e4c9b3a6ba79c9678f704 + executionResult: 4d70b2f5dc82de826023bd64a95a9b6cece1fc90:727263b01ce1783fb5c523537135e11e675307f8552f0094ccebb2e30d794188 resultSpec: dimensions: - localIdentifier: dim_0 @@ -312,7 +313,7 @@ interactions: resultSize: 4625 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/4c9a39e6a0b20cc55fb0811a27939b92fc5d49a4%3Abd02ea7028b8356e32e979c26f5ab0852511226ff47e4c9b3a6ba79c9678f704?offset=0%2C0&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/4d70b2f5dc82de826023bd64a95a9b6cece1fc90%3A727263b01ce1783fb5c523537135e11e675307f8552f0094ccebb2e30d794188?offset=0%2C0&limit=100%2C100 body: null headers: Accept: diff --git a/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_dimensions_limits_failure.yaml b/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_dimensions_limits_failure.yaml index 71c874f81..e4cdc8a8f 100644 --- a/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_dimensions_limits_failure.yaml +++ b/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_dimensions_limits_failure.yaml @@ -90,7 +90,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - d05a2dc5-6b85-4b52-a729-5d238cf64a4a + - bfe7b4db-22ff-43c8-b410-9fb379db63bd X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -153,10 +153,10 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: 4c9a39e6a0b20cc55fb0811a27939b92fc5d49a4:bd02ea7028b8356e32e979c26f5ab0852511226ff47e4c9b3a6ba79c9678f704 + executionResult: 4d70b2f5dc82de826023bd64a95a9b6cece1fc90:727263b01ce1783fb5c523537135e11e675307f8552f0094ccebb2e30d794188 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/4c9a39e6a0b20cc55fb0811a27939b92fc5d49a4%3Abd02ea7028b8356e32e979c26f5ab0852511226ff47e4c9b3a6ba79c9678f704/metadata + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/4d70b2f5dc82de826023bd64a95a9b6cece1fc90%3A727263b01ce1783fb5c523537135e11e675307f8552f0094ccebb2e30d794188/metadata body: null headers: Accept: @@ -175,7 +175,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '2168' + - '2200' Content-Type: - application/json DATE: *id001 @@ -238,6 +238,7 @@ interactions: computeRatio: false filters: [] auxMeasures: [] + measureDefinitionOverrides: [] executionResponse: dimensions: - headers: @@ -295,7 +296,7 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: 4c9a39e6a0b20cc55fb0811a27939b92fc5d49a4:bd02ea7028b8356e32e979c26f5ab0852511226ff47e4c9b3a6ba79c9678f704 + executionResult: 4d70b2f5dc82de826023bd64a95a9b6cece1fc90:727263b01ce1783fb5c523537135e11e675307f8552f0094ccebb2e30d794188 resultSpec: dimensions: - localIdentifier: dim_0 @@ -312,7 +313,7 @@ interactions: resultSize: 4625 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/4c9a39e6a0b20cc55fb0811a27939b92fc5d49a4%3Abd02ea7028b8356e32e979c26f5ab0852511226ff47e4c9b3a6ba79c9678f704?offset=0%2C0&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/4d70b2f5dc82de826023bd64a95a9b6cece1fc90%3A727263b01ce1783fb5c523537135e11e675307f8552f0094ccebb2e30d794188?offset=0%2C0&limit=100%2C100 body: null headers: Accept: diff --git a/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_one_dim1.yaml b/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_one_dim1.yaml index f472f3fff..16fbc0e20 100644 --- a/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_one_dim1.yaml +++ b/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_one_dim1.yaml @@ -88,7 +88,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - 492f44fb-c16d-4651-a4ac-740cf50d4381 + - 3f8fe115-98ee-4631-acbf-1c9db9f90101 X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -149,10 +149,10 @@ interactions: name: Order Amount localIdentifier: dim_0 links: - executionResult: fa5118aa2f0231bdb90faef2f85324136f7f2668:65555fc3e5e1bf7cb93b737444f27c83816d76322eee4cbb9e230fa941c041f5 + executionResult: b0e84dd140b6265a314bb63b5600a6112e7384bf:eea1279f0cabd5c4b86e25cf171a14cbc24832cd798b605bd6bd105e55743bd3 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/fa5118aa2f0231bdb90faef2f85324136f7f2668%3A65555fc3e5e1bf7cb93b737444f27c83816d76322eee4cbb9e230fa941c041f5/metadata + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/b0e84dd140b6265a314bb63b5600a6112e7384bf%3Aeea1279f0cabd5c4b86e25cf171a14cbc24832cd798b605bd6bd105e55743bd3/metadata body: null headers: Accept: @@ -171,7 +171,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '2067' + - '2099' Content-Type: - application/json DATE: *id001 @@ -234,6 +234,7 @@ interactions: computeRatio: false filters: [] auxMeasures: [] + measureDefinitionOverrides: [] executionResponse: dimensions: - headers: @@ -289,7 +290,7 @@ interactions: name: Order Amount localIdentifier: dim_0 links: - executionResult: fa5118aa2f0231bdb90faef2f85324136f7f2668:65555fc3e5e1bf7cb93b737444f27c83816d76322eee4cbb9e230fa941c041f5 + executionResult: b0e84dd140b6265a314bb63b5600a6112e7384bf:eea1279f0cabd5c4b86e25cf171a14cbc24832cd798b605bd6bd105e55743bd3 resultSpec: dimensions: - localIdentifier: dim_0 @@ -303,7 +304,7 @@ interactions: resultSize: 2913 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/fa5118aa2f0231bdb90faef2f85324136f7f2668%3A65555fc3e5e1bf7cb93b737444f27c83816d76322eee4cbb9e230fa941c041f5?offset=0&limit=500 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/b0e84dd140b6265a314bb63b5600a6112e7384bf%3Aeea1279f0cabd5c4b86e25cf171a14cbc24832cd798b605bd6bd105e55743bd3?offset=0&limit=500 body: null headers: Accept: @@ -4730,7 +4731,7 @@ interactions: dataSourceMessages: [] - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/fa5118aa2f0231bdb90faef2f85324136f7f2668%3A65555fc3e5e1bf7cb93b737444f27c83816d76322eee4cbb9e230fa941c041f5/metadata + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/b0e84dd140b6265a314bb63b5600a6112e7384bf%3Aeea1279f0cabd5c4b86e25cf171a14cbc24832cd798b605bd6bd105e55743bd3/metadata body: null headers: Accept: @@ -4749,7 +4750,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '2067' + - '2099' Content-Type: - application/json DATE: *id001 @@ -4812,6 +4813,7 @@ interactions: computeRatio: false filters: [] auxMeasures: [] + measureDefinitionOverrides: [] executionResponse: dimensions: - headers: @@ -4867,7 +4869,7 @@ interactions: name: Order Amount localIdentifier: dim_0 links: - executionResult: fa5118aa2f0231bdb90faef2f85324136f7f2668:65555fc3e5e1bf7cb93b737444f27c83816d76322eee4cbb9e230fa941c041f5 + executionResult: b0e84dd140b6265a314bb63b5600a6112e7384bf:eea1279f0cabd5c4b86e25cf171a14cbc24832cd798b605bd6bd105e55743bd3 resultSpec: dimensions: - localIdentifier: dim_0 @@ -4881,7 +4883,7 @@ interactions: resultSize: 2913 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/fa5118aa2f0231bdb90faef2f85324136f7f2668%3A65555fc3e5e1bf7cb93b737444f27c83816d76322eee4cbb9e230fa941c041f5?offset=0&limit=500 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/b0e84dd140b6265a314bb63b5600a6112e7384bf%3Aeea1279f0cabd5c4b86e25cf171a14cbc24832cd798b605bd6bd105e55743bd3?offset=0&limit=500 body: null headers: Accept: diff --git a/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_one_dim2.yaml b/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_one_dim2.yaml index 03be8fada..ded33907a 100644 --- a/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_one_dim2.yaml +++ b/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_one_dim2.yaml @@ -90,7 +90,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - 5b614cfa-183b-40be-8c1a-deef2e710287 + - 6242ae60-4690-4043-8b6d-d83c74848669 X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -153,10 +153,10 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: 028f5f65942a4cdb073d95b2bf2a0e086b66cfb7:292e01f621a0ab94aa160c32b62f14051a7d047b6e4aec5e83c9a26118823148 + executionResult: ae0fc31feddaa602e7933b502c0d55072af0ef29:91a4d8ef1b7237a17610d817f46db301d7c3767dace3e99bf412ecdcce93ae09 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/028f5f65942a4cdb073d95b2bf2a0e086b66cfb7%3A292e01f621a0ab94aa160c32b62f14051a7d047b6e4aec5e83c9a26118823148/metadata + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/ae0fc31feddaa602e7933b502c0d55072af0ef29%3A91a4d8ef1b7237a17610d817f46db301d7c3767dace3e99bf412ecdcce93ae09/metadata body: null headers: Accept: @@ -175,7 +175,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '2170' + - '2202' Content-Type: - application/json DATE: *id001 @@ -238,6 +238,7 @@ interactions: computeRatio: false filters: [] auxMeasures: [] + measureDefinitionOverrides: [] executionResponse: dimensions: - headers: [] @@ -295,7 +296,7 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: 028f5f65942a4cdb073d95b2bf2a0e086b66cfb7:292e01f621a0ab94aa160c32b62f14051a7d047b6e4aec5e83c9a26118823148 + executionResult: ae0fc31feddaa602e7933b502c0d55072af0ef29:91a4d8ef1b7237a17610d817f46db301d7c3767dace3e99bf412ecdcce93ae09 resultSpec: dimensions: - localIdentifier: dim_0 @@ -312,7 +313,7 @@ interactions: resultSize: 2913 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/028f5f65942a4cdb073d95b2bf2a0e086b66cfb7%3A292e01f621a0ab94aa160c32b62f14051a7d047b6e4aec5e83c9a26118823148?offset=0%2C0&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/ae0fc31feddaa602e7933b502c0d55072af0ef29%3A91a4d8ef1b7237a17610d817f46db301d7c3767dace3e99bf412ecdcce93ae09?offset=0%2C0&limit=100%2C100 body: null headers: Accept: @@ -1575,7 +1576,7 @@ interactions: dataSourceMessages: [] - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/028f5f65942a4cdb073d95b2bf2a0e086b66cfb7%3A292e01f621a0ab94aa160c32b62f14051a7d047b6e4aec5e83c9a26118823148?offset=0%2C100&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/ae0fc31feddaa602e7933b502c0d55072af0ef29%3A91a4d8ef1b7237a17610d817f46db301d7c3767dace3e99bf412ecdcce93ae09?offset=0%2C100&limit=100%2C100 body: null headers: Accept: @@ -2838,7 +2839,7 @@ interactions: dataSourceMessages: [] - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/028f5f65942a4cdb073d95b2bf2a0e086b66cfb7%3A292e01f621a0ab94aa160c32b62f14051a7d047b6e4aec5e83c9a26118823148?offset=0%2C200&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/ae0fc31feddaa602e7933b502c0d55072af0ef29%3A91a4d8ef1b7237a17610d817f46db301d7c3767dace3e99bf412ecdcce93ae09?offset=0%2C200&limit=100%2C100 body: null headers: Accept: @@ -4101,7 +4102,7 @@ interactions: dataSourceMessages: [] - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/028f5f65942a4cdb073d95b2bf2a0e086b66cfb7%3A292e01f621a0ab94aa160c32b62f14051a7d047b6e4aec5e83c9a26118823148?offset=0%2C300&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/ae0fc31feddaa602e7933b502c0d55072af0ef29%3A91a4d8ef1b7237a17610d817f46db301d7c3767dace3e99bf412ecdcce93ae09?offset=0%2C300&limit=100%2C100 body: null headers: Accept: @@ -4932,7 +4933,7 @@ interactions: dataSourceMessages: [] - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/028f5f65942a4cdb073d95b2bf2a0e086b66cfb7%3A292e01f621a0ab94aa160c32b62f14051a7d047b6e4aec5e83c9a26118823148/metadata + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/ae0fc31feddaa602e7933b502c0d55072af0ef29%3A91a4d8ef1b7237a17610d817f46db301d7c3767dace3e99bf412ecdcce93ae09/metadata body: null headers: Accept: @@ -4951,7 +4952,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '2170' + - '2202' Content-Type: - application/json DATE: *id001 @@ -5014,6 +5015,7 @@ interactions: computeRatio: false filters: [] auxMeasures: [] + measureDefinitionOverrides: [] executionResponse: dimensions: - headers: [] @@ -5071,7 +5073,7 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: 028f5f65942a4cdb073d95b2bf2a0e086b66cfb7:292e01f621a0ab94aa160c32b62f14051a7d047b6e4aec5e83c9a26118823148 + executionResult: ae0fc31feddaa602e7933b502c0d55072af0ef29:91a4d8ef1b7237a17610d817f46db301d7c3767dace3e99bf412ecdcce93ae09 resultSpec: dimensions: - localIdentifier: dim_0 @@ -5088,7 +5090,7 @@ interactions: resultSize: 2913 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/028f5f65942a4cdb073d95b2bf2a0e086b66cfb7%3A292e01f621a0ab94aa160c32b62f14051a7d047b6e4aec5e83c9a26118823148?offset=0%2C0&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/ae0fc31feddaa602e7933b502c0d55072af0ef29%3A91a4d8ef1b7237a17610d817f46db301d7c3767dace3e99bf412ecdcce93ae09?offset=0%2C0&limit=100%2C100 body: null headers: Accept: @@ -6351,7 +6353,7 @@ interactions: dataSourceMessages: [] - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/028f5f65942a4cdb073d95b2bf2a0e086b66cfb7%3A292e01f621a0ab94aa160c32b62f14051a7d047b6e4aec5e83c9a26118823148?offset=0%2C100&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/ae0fc31feddaa602e7933b502c0d55072af0ef29%3A91a4d8ef1b7237a17610d817f46db301d7c3767dace3e99bf412ecdcce93ae09?offset=0%2C100&limit=100%2C100 body: null headers: Accept: @@ -7614,7 +7616,7 @@ interactions: dataSourceMessages: [] - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/028f5f65942a4cdb073d95b2bf2a0e086b66cfb7%3A292e01f621a0ab94aa160c32b62f14051a7d047b6e4aec5e83c9a26118823148?offset=0%2C200&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/ae0fc31feddaa602e7933b502c0d55072af0ef29%3A91a4d8ef1b7237a17610d817f46db301d7c3767dace3e99bf412ecdcce93ae09?offset=0%2C200&limit=100%2C100 body: null headers: Accept: @@ -8877,7 +8879,7 @@ interactions: dataSourceMessages: [] - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/028f5f65942a4cdb073d95b2bf2a0e086b66cfb7%3A292e01f621a0ab94aa160c32b62f14051a7d047b6e4aec5e83c9a26118823148?offset=0%2C300&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/ae0fc31feddaa602e7933b502c0d55072af0ef29%3A91a4d8ef1b7237a17610d817f46db301d7c3767dace3e99bf412ecdcce93ae09?offset=0%2C300&limit=100%2C100 body: null headers: Accept: diff --git a/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_totals1.yaml b/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_totals1.yaml index 601a95588..3f131ccb0 100644 --- a/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_totals1.yaml +++ b/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_totals1.yaml @@ -109,7 +109,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - 458a6aa5-da04-4bf5-b52c-076a00a99175 + - 7cd21243-8142-4a2a-a3c1-b275fad3aa2a X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -172,10 +172,10 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: 87ed376c4cf5d084ae8f5b011043d737f6df4198:0b8b269f9cf196ccfbcd7750b484e0fe705400afbf81d696bd06b4d137e5c86f + executionResult: deeb8e99f85a5b336773174ee39c10412c67ba31:bf35ea462f194cd6365f2b0c30420d46ce89103703613f5d19f66702047f3eab - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/87ed376c4cf5d084ae8f5b011043d737f6df4198%3A0b8b269f9cf196ccfbcd7750b484e0fe705400afbf81d696bd06b4d137e5c86f/metadata + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/deeb8e99f85a5b336773174ee39c10412c67ba31%3Abf35ea462f194cd6365f2b0c30420d46ce89103703613f5d19f66702047f3eab/metadata body: null headers: Accept: @@ -194,7 +194,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '2528' + - '2560' Content-Type: - application/json DATE: *id001 @@ -257,6 +257,7 @@ interactions: computeRatio: false filters: [] auxMeasures: [] + measureDefinitionOverrides: [] executionResponse: dimensions: - headers: @@ -314,7 +315,7 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: 87ed376c4cf5d084ae8f5b011043d737f6df4198:0b8b269f9cf196ccfbcd7750b484e0fe705400afbf81d696bd06b4d137e5c86f + executionResult: deeb8e99f85a5b336773174ee39c10412c67ba31:bf35ea462f194cd6365f2b0c30420d46ce89103703613f5d19f66702047f3eab resultSpec: dimensions: - localIdentifier: dim_0 @@ -349,7 +350,7 @@ interactions: resultSize: 4794 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/87ed376c4cf5d084ae8f5b011043d737f6df4198%3A0b8b269f9cf196ccfbcd7750b484e0fe705400afbf81d696bd06b4d137e5c86f?offset=0%2C0&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/deeb8e99f85a5b336773174ee39c10412c67ba31%3Abf35ea462f194cd6365f2b0c30420d46ce89103703613f5d19f66702047f3eab?offset=0%2C0&limit=100%2C100 body: null headers: Accept: @@ -1778,7 +1779,7 @@ interactions: dataSourceMessages: [] - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/87ed376c4cf5d084ae8f5b011043d737f6df4198%3A0b8b269f9cf196ccfbcd7750b484e0fe705400afbf81d696bd06b4d137e5c86f/metadata + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/deeb8e99f85a5b336773174ee39c10412c67ba31%3Abf35ea462f194cd6365f2b0c30420d46ce89103703613f5d19f66702047f3eab/metadata body: null headers: Accept: @@ -1797,7 +1798,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '2528' + - '2560' Content-Type: - application/json DATE: *id001 @@ -1860,6 +1861,7 @@ interactions: computeRatio: false filters: [] auxMeasures: [] + measureDefinitionOverrides: [] executionResponse: dimensions: - headers: @@ -1917,7 +1919,7 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: 87ed376c4cf5d084ae8f5b011043d737f6df4198:0b8b269f9cf196ccfbcd7750b484e0fe705400afbf81d696bd06b4d137e5c86f + executionResult: deeb8e99f85a5b336773174ee39c10412c67ba31:bf35ea462f194cd6365f2b0c30420d46ce89103703613f5d19f66702047f3eab resultSpec: dimensions: - localIdentifier: dim_0 @@ -1952,7 +1954,7 @@ interactions: resultSize: 4794 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/87ed376c4cf5d084ae8f5b011043d737f6df4198%3A0b8b269f9cf196ccfbcd7750b484e0fe705400afbf81d696bd06b4d137e5c86f?offset=0%2C0&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/deeb8e99f85a5b336773174ee39c10412c67ba31%3Abf35ea462f194cd6365f2b0c30420d46ce89103703613f5d19f66702047f3eab?offset=0%2C0&limit=100%2C100 body: null headers: Accept: diff --git a/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_totals2.yaml b/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_totals2.yaml index 1595141ae..1991a16c1 100644 --- a/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_totals2.yaml +++ b/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_totals2.yaml @@ -107,7 +107,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - 2fc2438d-35c9-49b6-ba76-7ffe61263994 + - b360039b-d18e-493a-813f-54554b305928 X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -170,10 +170,10 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: c18b40c9abb62da31243b7aab85433901c4165a9:ecd6bd8dfd66e0ecdb2dcf93fe2d9e31f16fb6b5b70c208a30c86711e5d3c991 + executionResult: fcc025cee3f6a3055ec68950c4d2e86df0eef669:1b87704d500353651747722261fd400cfebdaba0aba827056ea202458f6e5dcf - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/c18b40c9abb62da31243b7aab85433901c4165a9%3Aecd6bd8dfd66e0ecdb2dcf93fe2d9e31f16fb6b5b70c208a30c86711e5d3c991/metadata + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/fcc025cee3f6a3055ec68950c4d2e86df0eef669%3A1b87704d500353651747722261fd400cfebdaba0aba827056ea202458f6e5dcf/metadata body: null headers: Accept: @@ -192,7 +192,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '2511' + - '2543' Content-Type: - application/json DATE: *id001 @@ -255,6 +255,7 @@ interactions: computeRatio: false filters: [] auxMeasures: [] + measureDefinitionOverrides: [] executionResponse: dimensions: - headers: @@ -312,7 +313,7 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: c18b40c9abb62da31243b7aab85433901c4165a9:ecd6bd8dfd66e0ecdb2dcf93fe2d9e31f16fb6b5b70c208a30c86711e5d3c991 + executionResult: fcc025cee3f6a3055ec68950c4d2e86df0eef669:1b87704d500353651747722261fd400cfebdaba0aba827056ea202458f6e5dcf resultSpec: dimensions: - localIdentifier: dim_0 @@ -345,7 +346,7 @@ interactions: resultSize: 15444 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/c18b40c9abb62da31243b7aab85433901c4165a9%3Aecd6bd8dfd66e0ecdb2dcf93fe2d9e31f16fb6b5b70c208a30c86711e5d3c991?offset=0%2C0&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/fcc025cee3f6a3055ec68950c4d2e86df0eef669%3A1b87704d500353651747722261fd400cfebdaba0aba827056ea202458f6e5dcf?offset=0%2C0&limit=100%2C100 body: null headers: Accept: @@ -2829,7 +2830,7 @@ interactions: dataSourceMessages: [] - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/c18b40c9abb62da31243b7aab85433901c4165a9%3Aecd6bd8dfd66e0ecdb2dcf93fe2d9e31f16fb6b5b70c208a30c86711e5d3c991/metadata + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/fcc025cee3f6a3055ec68950c4d2e86df0eef669%3A1b87704d500353651747722261fd400cfebdaba0aba827056ea202458f6e5dcf/metadata body: null headers: Accept: @@ -2848,7 +2849,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '2511' + - '2543' Content-Type: - application/json DATE: *id001 @@ -2911,6 +2912,7 @@ interactions: computeRatio: false filters: [] auxMeasures: [] + measureDefinitionOverrides: [] executionResponse: dimensions: - headers: @@ -2968,7 +2970,7 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: c18b40c9abb62da31243b7aab85433901c4165a9:ecd6bd8dfd66e0ecdb2dcf93fe2d9e31f16fb6b5b70c208a30c86711e5d3c991 + executionResult: fcc025cee3f6a3055ec68950c4d2e86df0eef669:1b87704d500353651747722261fd400cfebdaba0aba827056ea202458f6e5dcf resultSpec: dimensions: - localIdentifier: dim_0 @@ -3001,7 +3003,7 @@ interactions: resultSize: 15444 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/c18b40c9abb62da31243b7aab85433901c4165a9%3Aecd6bd8dfd66e0ecdb2dcf93fe2d9e31f16fb6b5b70c208a30c86711e5d3c991?offset=0%2C0&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/fcc025cee3f6a3055ec68950c4d2e86df0eef669%3A1b87704d500353651747722261fd400cfebdaba0aba827056ea202458f6e5dcf?offset=0%2C0&limit=100%2C100 body: null headers: Accept: diff --git a/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_totals3.yaml b/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_totals3.yaml index bfc9b33c4..b9604c1e1 100644 --- a/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_totals3.yaml +++ b/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_totals3.yaml @@ -109,7 +109,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - bc138165-401b-4c3a-88e1-18a65fea17da + - 06939ee4-fcd5-4916-9e45-6300a875aaa5 X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -172,10 +172,10 @@ interactions: valueType: TEXT localIdentifier: dim_1 links: - executionResult: 62317b4a7548b9d9612a417c8c4d55759209a7b0:42c6a82c7df327261a906b878f233b00fa2632af6c69b1772817d625dfdaa93c + executionResult: dad7aacf6991cfb72e16325c54dd456e5e8501fb:feada44cb6bf18355e52dab6fb6aa4edd1c414165ab7d913afc1a205fec871b2 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/62317b4a7548b9d9612a417c8c4d55759209a7b0%3A42c6a82c7df327261a906b878f233b00fa2632af6c69b1772817d625dfdaa93c/metadata + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/dad7aacf6991cfb72e16325c54dd456e5e8501fb%3Afeada44cb6bf18355e52dab6fb6aa4edd1c414165ab7d913afc1a205fec871b2/metadata body: null headers: Accept: @@ -194,7 +194,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '2528' + - '2560' Content-Type: - application/json DATE: *id001 @@ -257,6 +257,7 @@ interactions: computeRatio: false filters: [] auxMeasures: [] + measureDefinitionOverrides: [] executionResponse: dimensions: - headers: @@ -314,7 +315,7 @@ interactions: valueType: TEXT localIdentifier: dim_1 links: - executionResult: 62317b4a7548b9d9612a417c8c4d55759209a7b0:42c6a82c7df327261a906b878f233b00fa2632af6c69b1772817d625dfdaa93c + executionResult: dad7aacf6991cfb72e16325c54dd456e5e8501fb:feada44cb6bf18355e52dab6fb6aa4edd1c414165ab7d913afc1a205fec871b2 resultSpec: dimensions: - localIdentifier: dim_0 @@ -349,7 +350,7 @@ interactions: resultSize: 4794 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/62317b4a7548b9d9612a417c8c4d55759209a7b0%3A42c6a82c7df327261a906b878f233b00fa2632af6c69b1772817d625dfdaa93c?offset=0%2C0&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/dad7aacf6991cfb72e16325c54dd456e5e8501fb%3Afeada44cb6bf18355e52dab6fb6aa4edd1c414165ab7d913afc1a205fec871b2?offset=0%2C0&limit=100%2C100 body: null headers: Accept: @@ -1778,7 +1779,7 @@ interactions: dataSourceMessages: [] - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/62317b4a7548b9d9612a417c8c4d55759209a7b0%3A42c6a82c7df327261a906b878f233b00fa2632af6c69b1772817d625dfdaa93c/metadata + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/dad7aacf6991cfb72e16325c54dd456e5e8501fb%3Afeada44cb6bf18355e52dab6fb6aa4edd1c414165ab7d913afc1a205fec871b2/metadata body: null headers: Accept: @@ -1797,7 +1798,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '2528' + - '2560' Content-Type: - application/json DATE: *id001 @@ -1860,6 +1861,7 @@ interactions: computeRatio: false filters: [] auxMeasures: [] + measureDefinitionOverrides: [] executionResponse: dimensions: - headers: @@ -1917,7 +1919,7 @@ interactions: valueType: TEXT localIdentifier: dim_1 links: - executionResult: 62317b4a7548b9d9612a417c8c4d55759209a7b0:42c6a82c7df327261a906b878f233b00fa2632af6c69b1772817d625dfdaa93c + executionResult: dad7aacf6991cfb72e16325c54dd456e5e8501fb:feada44cb6bf18355e52dab6fb6aa4edd1c414165ab7d913afc1a205fec871b2 resultSpec: dimensions: - localIdentifier: dim_0 @@ -1952,7 +1954,7 @@ interactions: resultSize: 4794 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/62317b4a7548b9d9612a417c8c4d55759209a7b0%3A42c6a82c7df327261a906b878f233b00fa2632af6c69b1772817d625dfdaa93c?offset=0%2C0&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/dad7aacf6991cfb72e16325c54dd456e5e8501fb%3Afeada44cb6bf18355e52dab6fb6aa4edd1c414165ab7d913afc1a205fec871b2?offset=0%2C0&limit=100%2C100 body: null headers: Accept: diff --git a/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_totals4.yaml b/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_totals4.yaml index ba9a8d01b..b482387d3 100644 --- a/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_totals4.yaml +++ b/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_totals4.yaml @@ -107,7 +107,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - c6ef7d2a-6ab9-4453-85fe-8f8a575632d4 + - 0297b085-27b4-4fea-9b6b-7323acf0ca6c X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -170,10 +170,10 @@ interactions: valueType: TEXT localIdentifier: dim_1 links: - executionResult: 88c5e500dd8423954c9d0ad443c91613f4d371ea:28ac1b2f7b88159e6d1a00031b417607d7bf9a184e8b5017320edd01a04dcade + executionResult: 5f2924bed6bbd4d2ef6c6e5ddf87d0c0b14af08d:1a68011bef797ddebccd73d1c35929710bd7fe9fd02207919208129b1a5028e7 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/88c5e500dd8423954c9d0ad443c91613f4d371ea%3A28ac1b2f7b88159e6d1a00031b417607d7bf9a184e8b5017320edd01a04dcade/metadata + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/5f2924bed6bbd4d2ef6c6e5ddf87d0c0b14af08d%3A1a68011bef797ddebccd73d1c35929710bd7fe9fd02207919208129b1a5028e7/metadata body: null headers: Accept: @@ -192,7 +192,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '2511' + - '2543' Content-Type: - application/json DATE: *id001 @@ -255,6 +255,7 @@ interactions: computeRatio: false filters: [] auxMeasures: [] + measureDefinitionOverrides: [] executionResponse: dimensions: - headers: @@ -312,7 +313,7 @@ interactions: valueType: TEXT localIdentifier: dim_1 links: - executionResult: 88c5e500dd8423954c9d0ad443c91613f4d371ea:28ac1b2f7b88159e6d1a00031b417607d7bf9a184e8b5017320edd01a04dcade + executionResult: 5f2924bed6bbd4d2ef6c6e5ddf87d0c0b14af08d:1a68011bef797ddebccd73d1c35929710bd7fe9fd02207919208129b1a5028e7 resultSpec: dimensions: - localIdentifier: dim_0 @@ -345,7 +346,7 @@ interactions: resultSize: 15444 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/88c5e500dd8423954c9d0ad443c91613f4d371ea%3A28ac1b2f7b88159e6d1a00031b417607d7bf9a184e8b5017320edd01a04dcade?offset=0%2C0&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/5f2924bed6bbd4d2ef6c6e5ddf87d0c0b14af08d%3A1a68011bef797ddebccd73d1c35929710bd7fe9fd02207919208129b1a5028e7?offset=0%2C0&limit=100%2C100 body: null headers: Accept: @@ -2829,7 +2830,7 @@ interactions: dataSourceMessages: [] - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/88c5e500dd8423954c9d0ad443c91613f4d371ea%3A28ac1b2f7b88159e6d1a00031b417607d7bf9a184e8b5017320edd01a04dcade/metadata + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/5f2924bed6bbd4d2ef6c6e5ddf87d0c0b14af08d%3A1a68011bef797ddebccd73d1c35929710bd7fe9fd02207919208129b1a5028e7/metadata body: null headers: Accept: @@ -2848,7 +2849,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '2511' + - '2543' Content-Type: - application/json DATE: *id001 @@ -2911,6 +2912,7 @@ interactions: computeRatio: false filters: [] auxMeasures: [] + measureDefinitionOverrides: [] executionResponse: dimensions: - headers: @@ -2968,7 +2970,7 @@ interactions: valueType: TEXT localIdentifier: dim_1 links: - executionResult: 88c5e500dd8423954c9d0ad443c91613f4d371ea:28ac1b2f7b88159e6d1a00031b417607d7bf9a184e8b5017320edd01a04dcade + executionResult: 5f2924bed6bbd4d2ef6c6e5ddf87d0c0b14af08d:1a68011bef797ddebccd73d1c35929710bd7fe9fd02207919208129b1a5028e7 resultSpec: dimensions: - localIdentifier: dim_0 @@ -3001,7 +3003,7 @@ interactions: resultSize: 15444 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/88c5e500dd8423954c9d0ad443c91613f4d371ea%3A28ac1b2f7b88159e6d1a00031b417607d7bf9a184e8b5017320edd01a04dcade?offset=0%2C0&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/5f2924bed6bbd4d2ef6c6e5ddf87d0c0b14af08d%3A1a68011bef797ddebccd73d1c35929710bd7fe9fd02207919208129b1a5028e7?offset=0%2C0&limit=100%2C100 body: null headers: Accept: diff --git a/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_two_dim1.yaml b/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_two_dim1.yaml index fb8548510..60b09e12b 100644 --- a/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_two_dim1.yaml +++ b/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_two_dim1.yaml @@ -90,7 +90,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - 8957375b-74ad-4844-8d35-3cc066d806de + - e719d792-cc45-43d3-bbfe-3f699caec6ac X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -153,10 +153,10 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: 4c9a39e6a0b20cc55fb0811a27939b92fc5d49a4:bd02ea7028b8356e32e979c26f5ab0852511226ff47e4c9b3a6ba79c9678f704 + executionResult: 4d70b2f5dc82de826023bd64a95a9b6cece1fc90:727263b01ce1783fb5c523537135e11e675307f8552f0094ccebb2e30d794188 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/4c9a39e6a0b20cc55fb0811a27939b92fc5d49a4%3Abd02ea7028b8356e32e979c26f5ab0852511226ff47e4c9b3a6ba79c9678f704/metadata + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/4d70b2f5dc82de826023bd64a95a9b6cece1fc90%3A727263b01ce1783fb5c523537135e11e675307f8552f0094ccebb2e30d794188/metadata body: null headers: Accept: @@ -175,7 +175,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '2168' + - '2200' Content-Type: - application/json DATE: *id001 @@ -238,6 +238,7 @@ interactions: computeRatio: false filters: [] auxMeasures: [] + measureDefinitionOverrides: [] executionResponse: dimensions: - headers: @@ -295,7 +296,7 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: 4c9a39e6a0b20cc55fb0811a27939b92fc5d49a4:bd02ea7028b8356e32e979c26f5ab0852511226ff47e4c9b3a6ba79c9678f704 + executionResult: 4d70b2f5dc82de826023bd64a95a9b6cece1fc90:727263b01ce1783fb5c523537135e11e675307f8552f0094ccebb2e30d794188 resultSpec: dimensions: - localIdentifier: dim_0 @@ -312,7 +313,7 @@ interactions: resultSize: 4625 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/4c9a39e6a0b20cc55fb0811a27939b92fc5d49a4%3Abd02ea7028b8356e32e979c26f5ab0852511226ff47e4c9b3a6ba79c9678f704?offset=0%2C0&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/4d70b2f5dc82de826023bd64a95a9b6cece1fc90%3A727263b01ce1783fb5c523537135e11e675307f8552f0094ccebb2e30d794188?offset=0%2C0&limit=100%2C100 body: null headers: Accept: @@ -1087,7 +1088,7 @@ interactions: dataSourceMessages: [] - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/4c9a39e6a0b20cc55fb0811a27939b92fc5d49a4%3Abd02ea7028b8356e32e979c26f5ab0852511226ff47e4c9b3a6ba79c9678f704/metadata + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/4d70b2f5dc82de826023bd64a95a9b6cece1fc90%3A727263b01ce1783fb5c523537135e11e675307f8552f0094ccebb2e30d794188/metadata body: null headers: Accept: @@ -1106,7 +1107,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '2168' + - '2200' Content-Type: - application/json DATE: *id001 @@ -1169,6 +1170,7 @@ interactions: computeRatio: false filters: [] auxMeasures: [] + measureDefinitionOverrides: [] executionResponse: dimensions: - headers: @@ -1226,7 +1228,7 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: 4c9a39e6a0b20cc55fb0811a27939b92fc5d49a4:bd02ea7028b8356e32e979c26f5ab0852511226ff47e4c9b3a6ba79c9678f704 + executionResult: 4d70b2f5dc82de826023bd64a95a9b6cece1fc90:727263b01ce1783fb5c523537135e11e675307f8552f0094ccebb2e30d794188 resultSpec: dimensions: - localIdentifier: dim_0 @@ -1243,7 +1245,7 @@ interactions: resultSize: 4625 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/4c9a39e6a0b20cc55fb0811a27939b92fc5d49a4%3Abd02ea7028b8356e32e979c26f5ab0852511226ff47e4c9b3a6ba79c9678f704?offset=0%2C0&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/4d70b2f5dc82de826023bd64a95a9b6cece1fc90%3A727263b01ce1783fb5c523537135e11e675307f8552f0094ccebb2e30d794188?offset=0%2C0&limit=100%2C100 body: null headers: Accept: @@ -2018,7 +2020,7 @@ interactions: dataSourceMessages: [] - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/4c9a39e6a0b20cc55fb0811a27939b92fc5d49a4%3Abd02ea7028b8356e32e979c26f5ab0852511226ff47e4c9b3a6ba79c9678f704/metadata + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/4d70b2f5dc82de826023bd64a95a9b6cece1fc90%3A727263b01ce1783fb5c523537135e11e675307f8552f0094ccebb2e30d794188/metadata body: null headers: Accept: @@ -2037,7 +2039,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '2168' + - '2200' Content-Type: - application/json DATE: *id001 @@ -2100,6 +2102,7 @@ interactions: computeRatio: false filters: [] auxMeasures: [] + measureDefinitionOverrides: [] executionResponse: dimensions: - headers: @@ -2157,7 +2160,7 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: 4c9a39e6a0b20cc55fb0811a27939b92fc5d49a4:bd02ea7028b8356e32e979c26f5ab0852511226ff47e4c9b3a6ba79c9678f704 + executionResult: 4d70b2f5dc82de826023bd64a95a9b6cece1fc90:727263b01ce1783fb5c523537135e11e675307f8552f0094ccebb2e30d794188 resultSpec: dimensions: - localIdentifier: dim_0 @@ -2174,7 +2177,7 @@ interactions: resultSize: 4625 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/4c9a39e6a0b20cc55fb0811a27939b92fc5d49a4%3Abd02ea7028b8356e32e979c26f5ab0852511226ff47e4c9b3a6ba79c9678f704?offset=0%2C0&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/4d70b2f5dc82de826023bd64a95a9b6cece1fc90%3A727263b01ce1783fb5c523537135e11e675307f8552f0094ccebb2e30d794188?offset=0%2C0&limit=100%2C100 body: null headers: Accept: diff --git a/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_two_dim2.yaml b/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_two_dim2.yaml index 22811ae14..1f83502c9 100644 --- a/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_two_dim2.yaml +++ b/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_two_dim2.yaml @@ -90,7 +90,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - e704063a-db78-457f-bf02-b429d1296211 + - d25f2bd6-cf60-49a8-9a28-26d1d6743695 X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -153,10 +153,10 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: 2e340d3c3f612121205587a70cd5b368c9da1b52:d71469286113b61debc87a7f151c7f2288aa435ce96dc823a9e7d9860caef3e2 + executionResult: 5da80bb6e45a200962ed00c7429eedd42c71a629:652e0bb712e711141d6155d8ca23758c2b2ef5752a25f730de27f2b52a8e1d95 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/2e340d3c3f612121205587a70cd5b368c9da1b52%3Ad71469286113b61debc87a7f151c7f2288aa435ce96dc823a9e7d9860caef3e2/metadata + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/5da80bb6e45a200962ed00c7429eedd42c71a629%3A652e0bb712e711141d6155d8ca23758c2b2ef5752a25f730de27f2b52a8e1d95/metadata body: null headers: Accept: @@ -175,7 +175,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '2169' + - '2201' Content-Type: - application/json DATE: *id001 @@ -238,6 +238,7 @@ interactions: computeRatio: false filters: [] auxMeasures: [] + measureDefinitionOverrides: [] executionResponse: dimensions: - headers: @@ -295,7 +296,7 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: 2e340d3c3f612121205587a70cd5b368c9da1b52:d71469286113b61debc87a7f151c7f2288aa435ce96dc823a9e7d9860caef3e2 + executionResult: 5da80bb6e45a200962ed00c7429eedd42c71a629:652e0bb712e711141d6155d8ca23758c2b2ef5752a25f730de27f2b52a8e1d95 resultSpec: dimensions: - localIdentifier: dim_0 @@ -312,7 +313,7 @@ interactions: resultSize: 11457 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/2e340d3c3f612121205587a70cd5b368c9da1b52%3Ad71469286113b61debc87a7f151c7f2288aa435ce96dc823a9e7d9860caef3e2?offset=0%2C0&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/5da80bb6e45a200962ed00c7429eedd42c71a629%3A652e0bb712e711141d6155d8ca23758c2b2ef5752a25f730de27f2b52a8e1d95?offset=0%2C0&limit=100%2C100 body: null headers: Accept: @@ -1479,7 +1480,7 @@ interactions: dataSourceMessages: [] - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/2e340d3c3f612121205587a70cd5b368c9da1b52%3Ad71469286113b61debc87a7f151c7f2288aa435ce96dc823a9e7d9860caef3e2?offset=100%2C0&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/5da80bb6e45a200962ed00c7429eedd42c71a629%3A652e0bb712e711141d6155d8ca23758c2b2ef5752a25f730de27f2b52a8e1d95?offset=100%2C0&limit=100%2C100 body: null headers: Accept: @@ -2448,7 +2449,7 @@ interactions: dataSourceMessages: [] - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/2e340d3c3f612121205587a70cd5b368c9da1b52%3Ad71469286113b61debc87a7f151c7f2288aa435ce96dc823a9e7d9860caef3e2/metadata + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/5da80bb6e45a200962ed00c7429eedd42c71a629%3A652e0bb712e711141d6155d8ca23758c2b2ef5752a25f730de27f2b52a8e1d95/metadata body: null headers: Accept: @@ -2467,7 +2468,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '2169' + - '2201' Content-Type: - application/json DATE: *id001 @@ -2530,6 +2531,7 @@ interactions: computeRatio: false filters: [] auxMeasures: [] + measureDefinitionOverrides: [] executionResponse: dimensions: - headers: @@ -2587,7 +2589,7 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: 2e340d3c3f612121205587a70cd5b368c9da1b52:d71469286113b61debc87a7f151c7f2288aa435ce96dc823a9e7d9860caef3e2 + executionResult: 5da80bb6e45a200962ed00c7429eedd42c71a629:652e0bb712e711141d6155d8ca23758c2b2ef5752a25f730de27f2b52a8e1d95 resultSpec: dimensions: - localIdentifier: dim_0 @@ -2604,7 +2606,7 @@ interactions: resultSize: 11457 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/2e340d3c3f612121205587a70cd5b368c9da1b52%3Ad71469286113b61debc87a7f151c7f2288aa435ce96dc823a9e7d9860caef3e2?offset=0%2C0&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/5da80bb6e45a200962ed00c7429eedd42c71a629%3A652e0bb712e711141d6155d8ca23758c2b2ef5752a25f730de27f2b52a8e1d95?offset=0%2C0&limit=100%2C100 body: null headers: Accept: @@ -3771,7 +3773,7 @@ interactions: dataSourceMessages: [] - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/2e340d3c3f612121205587a70cd5b368c9da1b52%3Ad71469286113b61debc87a7f151c7f2288aa435ce96dc823a9e7d9860caef3e2?offset=100%2C0&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/5da80bb6e45a200962ed00c7429eedd42c71a629%3A652e0bb712e711141d6155d8ca23758c2b2ef5752a25f730de27f2b52a8e1d95?offset=100%2C0&limit=100%2C100 body: null headers: Accept: diff --git a/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_two_dim3.yaml b/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_two_dim3.yaml index 5678daa49..a6de97d20 100644 --- a/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_two_dim3.yaml +++ b/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_exec_def_two_dim3.yaml @@ -90,7 +90,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - 0fe8f424-acc3-4f1e-a059-a14f048dfe14 + - 94edfd58-a6d9-4b7e-b615-37d7d4e73e9b X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -153,10 +153,10 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: 8bf425e693cbe26093f574b0c9d3ac21204ba2d0:585ba19c1703850e8dada432ec32cb9de92a872e115c7a5e8a6810736f4f2f76 + executionResult: f787654fc28ef09f1bdd10028d8f9341b10fd4bf:daa410610a6a9bcfc4b973edf393a1c372627046a05ea69e199891fda0b946ae - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/8bf425e693cbe26093f574b0c9d3ac21204ba2d0%3A585ba19c1703850e8dada432ec32cb9de92a872e115c7a5e8a6810736f4f2f76/metadata + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/f787654fc28ef09f1bdd10028d8f9341b10fd4bf%3Adaa410610a6a9bcfc4b973edf393a1c372627046a05ea69e199891fda0b946ae/metadata body: null headers: Accept: @@ -175,7 +175,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '2168' + - '2200' Content-Type: - application/json DATE: *id001 @@ -238,6 +238,7 @@ interactions: computeRatio: false filters: [] auxMeasures: [] + measureDefinitionOverrides: [] executionResponse: dimensions: - headers: @@ -295,7 +296,7 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: 8bf425e693cbe26093f574b0c9d3ac21204ba2d0:585ba19c1703850e8dada432ec32cb9de92a872e115c7a5e8a6810736f4f2f76 + executionResult: f787654fc28ef09f1bdd10028d8f9341b10fd4bf:daa410610a6a9bcfc4b973edf393a1c372627046a05ea69e199891fda0b946ae resultSpec: dimensions: - localIdentifier: dim_0 @@ -312,7 +313,7 @@ interactions: resultSize: 3152 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/8bf425e693cbe26093f574b0c9d3ac21204ba2d0%3A585ba19c1703850e8dada432ec32cb9de92a872e115c7a5e8a6810736f4f2f76?offset=0%2C0&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/f787654fc28ef09f1bdd10028d8f9341b10fd4bf%3Adaa410610a6a9bcfc4b973edf393a1c372627046a05ea69e199891fda0b946ae?offset=0%2C0&limit=100%2C100 body: null headers: Accept: @@ -1539,7 +1540,7 @@ interactions: dataSourceMessages: [] - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/8bf425e693cbe26093f574b0c9d3ac21204ba2d0%3A585ba19c1703850e8dada432ec32cb9de92a872e115c7a5e8a6810736f4f2f76/metadata + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/f787654fc28ef09f1bdd10028d8f9341b10fd4bf%3Adaa410610a6a9bcfc4b973edf393a1c372627046a05ea69e199891fda0b946ae/metadata body: null headers: Accept: @@ -1558,7 +1559,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '2168' + - '2200' Content-Type: - application/json DATE: *id001 @@ -1621,6 +1622,7 @@ interactions: computeRatio: false filters: [] auxMeasures: [] + measureDefinitionOverrides: [] executionResponse: dimensions: - headers: @@ -1678,7 +1680,7 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: 8bf425e693cbe26093f574b0c9d3ac21204ba2d0:585ba19c1703850e8dada432ec32cb9de92a872e115c7a5e8a6810736f4f2f76 + executionResult: f787654fc28ef09f1bdd10028d8f9341b10fd4bf:daa410610a6a9bcfc4b973edf393a1c372627046a05ea69e199891fda0b946ae resultSpec: dimensions: - localIdentifier: dim_0 @@ -1695,7 +1697,7 @@ interactions: resultSize: 3152 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/8bf425e693cbe26093f574b0c9d3ac21204ba2d0%3A585ba19c1703850e8dada432ec32cb9de92a872e115c7a5e8a6810736f4f2f76?offset=0%2C0&limit=100%2C100 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/f787654fc28ef09f1bdd10028d8f9341b10fd4bf%3Adaa410610a6a9bcfc4b973edf393a1c372627046a05ea69e199891fda0b946ae?offset=0%2C0&limit=100%2C100 body: null headers: Accept: diff --git a/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_items.yaml b/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_items.yaml index e45ecc7d7..2abf8abd1 100644 --- a/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_items.yaml +++ b/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_items.yaml @@ -84,7 +84,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - c9afac43-ce35-4b43-a1b2-f33a9b398268 + - a73d8ffc-b520-434f-b66d-9127666295d3 X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -132,7 +132,7 @@ interactions: valueType: TEXT localIdentifier: dim_1 links: - executionResult: 46d63a03dff57ace4aa9b00e0977abd61d7844b3:e57f67c638612ad24882d14baa9b2200a678deb6eb614c6460cf976122eac855 + executionResult: 84b31dfcb81d4c41ee2e69867ad64a9293aa4549:37bf78a80daff74a94963d9f1cc1753b94f332e7ba30b5e8e48a2f887ad811b5 - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3Din%3D%28region%2Cproducts.category%29&page=0&size=500 @@ -154,7 +154,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '2689' + - '2761' Content-Type: - application/json DATE: *id001 @@ -184,6 +184,7 @@ interactions: areRelationsValid: true sourceColumn: category sourceColumnDataType: STRING + isNullable: true id: products.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/products.category @@ -209,6 +210,7 @@ interactions: areRelationsValid: true sourceColumn: region sourceColumnDataType: STRING + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/region @@ -253,6 +255,7 @@ interactions: sourceColumn: region sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/region @@ -266,6 +269,7 @@ interactions: sourceColumn: category sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: products.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/products.category @@ -292,7 +296,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3Din%3D%28%27region%27%2C%27products.category%27%29&page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/46d63a03dff57ace4aa9b00e0977abd61d7844b3%3Ae57f67c638612ad24882d14baa9b2200a678deb6eb614c6460cf976122eac855?offset=0%2C0&limit=2%2C1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/84b31dfcb81d4c41ee2e69867ad64a9293aa4549%3A37bf78a80daff74a94963d9f1cc1753b94f332e7ba30b5e8e48a2f887ad811b5?offset=0%2C0&limit=2%2C1000 body: null headers: Accept: diff --git a/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_items_no_index.yaml b/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_items_no_index.yaml index 6b86f75d1..2f2e74295 100644 --- a/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_items_no_index.yaml +++ b/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_items_no_index.yaml @@ -84,7 +84,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - 837af067-2a5c-4f66-a26e-86e95c6d0a9b + - 6c88e57a-b463-472f-a00f-e31327a582fc X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -132,7 +132,7 @@ interactions: valueType: TEXT localIdentifier: dim_1 links: - executionResult: 46d63a03dff57ace4aa9b00e0977abd61d7844b3:e57f67c638612ad24882d14baa9b2200a678deb6eb614c6460cf976122eac855 + executionResult: 84b31dfcb81d4c41ee2e69867ad64a9293aa4549:37bf78a80daff74a94963d9f1cc1753b94f332e7ba30b5e8e48a2f887ad811b5 - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3Din%3D%28region%2Cproducts.category%29&page=0&size=500 @@ -154,7 +154,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '2689' + - '2761' Content-Type: - application/json DATE: *id001 @@ -184,6 +184,7 @@ interactions: areRelationsValid: true sourceColumn: category sourceColumnDataType: STRING + isNullable: true id: products.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/products.category @@ -209,6 +210,7 @@ interactions: areRelationsValid: true sourceColumn: region sourceColumnDataType: STRING + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/region @@ -253,6 +255,7 @@ interactions: sourceColumn: region sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/region @@ -266,6 +269,7 @@ interactions: sourceColumn: category sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: products.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/products.category @@ -292,7 +296,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3Din%3D%28%27region%27%2C%27products.category%27%29&page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/46d63a03dff57ace4aa9b00e0977abd61d7844b3%3Ae57f67c638612ad24882d14baa9b2200a678deb6eb614c6460cf976122eac855?offset=0%2C0&limit=2%2C1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/84b31dfcb81d4c41ee2e69867ad64a9293aa4549%3A37bf78a80daff74a94963d9f1cc1753b94f332e7ba30b5e8e48a2f887ad811b5?offset=0%2C0&limit=2%2C1000 body: null headers: Accept: diff --git a/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_visualization.yaml b/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_visualization.yaml index 2b0850000..8fdc20960 100644 --- a/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_visualization.yaml +++ b/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_visualization.yaml @@ -22,7 +22,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '5006' + - '5096' Content-Type: - application/json DATE: &id001 @@ -141,7 +141,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: revenue_and_quantity_by_product_and_category meta: origin: @@ -181,6 +181,7 @@ interactions: - Order lines sourceColumn: quantity sourceColumnDataType: NUMERIC + isNullable: true id: quantity links: self: http://localhost:3000/api/v1/entities/workspaces/demo/facts/quantity @@ -192,7 +193,7 @@ interactions: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: revenue links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue @@ -204,6 +205,7 @@ interactions: - Order lines sourceColumn: price sourceColumnDataType: NUMERIC + isNullable: true id: price links: self: http://localhost:3000/api/v1/entities/workspaces/demo/facts/price @@ -217,6 +219,7 @@ interactions: sourceColumn: product_name sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: product_name links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/product_name @@ -235,6 +238,7 @@ interactions: sourceColumn: customer_name sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: customer_name links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/customer_name @@ -245,7 +249,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, ALL OTHER) - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: percent_revenue_in_category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue_in_category @@ -259,6 +263,7 @@ interactions: sourceColumn: category sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: products.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/products.category @@ -366,7 +371,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - 6fd8845c-9bbd-4a6c-b523-fe2f27b11727 + - 471f16c5-44ea-439f-b956-325908244960 X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -418,7 +423,7 @@ interactions: valueType: TEXT localIdentifier: dim_1 links: - executionResult: 0ad1055bd1f3d7323af83f113eaf29bd5ff331d0:eb55cff569fc208cdce9c9f31e0ebbff4f0d69076eb16abe84edd538cb561719 + executionResult: e4fa78ce51c011ade31101b9f168e0d6401d09a5:aaf07d03576c1613b9fb1030a735fac4e76974f03e4c6c1abd964dd63c031e1a - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3Din%3D%28products.category%2Cproduct_name%29&page=0&size=500 @@ -440,7 +445,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '2400' + - '2472' Content-Type: - application/json DATE: *id001 @@ -470,6 +475,7 @@ interactions: areRelationsValid: true sourceColumn: product_name sourceColumnDataType: STRING + isNullable: true id: product_name links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/product_name @@ -495,6 +501,7 @@ interactions: areRelationsValid: true sourceColumn: category sourceColumnDataType: STRING + isNullable: true id: products.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/products.category @@ -522,6 +529,7 @@ interactions: sourceColumn: product_name sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: product_name links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/product_name @@ -535,6 +543,7 @@ interactions: sourceColumn: category sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: products.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/products.category @@ -561,7 +570,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3Din%3D%28%27products.category%27%2C%27product_name%27%29&page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/0ad1055bd1f3d7323af83f113eaf29bd5ff331d0%3Aeb55cff569fc208cdce9c9f31e0ebbff4f0d69076eb16abe84edd538cb561719?offset=0%2C0&limit=4%2C1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/e4fa78ce51c011ade31101b9f168e0d6401d09a5%3Aaaf07d03576c1613b9fb1030a735fac4e76974f03e4c6c1abd964dd63c031e1a?offset=0%2C0&limit=4%2C1000 body: null headers: Accept: diff --git a/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_visualization_date.yaml b/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_visualization_date.yaml index b4a8c970c..44ea39be2 100644 --- a/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_visualization_date.yaml +++ b/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_visualization_date.yaml @@ -22,7 +22,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '3321' + - '3322' Content-Type: - application/json DATE: &id001 @@ -90,9 +90,9 @@ interactions: identifier: id: date type: dataset - from: -11 + from: -12 granularity: GDC.time.month - to: 0 + to: -1 properties: controls: colorMapping: @@ -118,7 +118,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: customers_trend meta: origin: @@ -165,7 +165,7 @@ interactions: content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: amount_of_active_customers links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/amount_of_active_customers @@ -175,7 +175,7 @@ interactions: content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: revenue_per_customer links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue_per_customer @@ -210,9 +210,9 @@ interactions: identifier: id: date type: dataset - from: -11 + from: -12 granularity: MONTH - to: 0 + to: -1 measures: - definition: measure: @@ -276,7 +276,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - 22d43a32-87f0-497c-95a0-7f0ac3b1156c + - 024dabbb-dd5b-4362-a818-888c575c0dec X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -315,7 +315,7 @@ interactions: valueType: TEXT localIdentifier: dim_1 links: - executionResult: 6ab9134bb21d6597e5ff9e99c9f8f98e4a8f89dd:41965d04a1acdac7a484362b0639a397089de32eb5973e06ebecb765da08dead + executionResult: 9d4fdf9fa59ba79605909bac62ea3b584bae4306:0a212a77329fb901b3fe2f044edc35f89d1b6cee34aa6eda57e05a850238e7b9 - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3Din%3D%28date.month%29&page=0&size=500 @@ -410,7 +410,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3D%3D%27date.month%27&page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/6ab9134bb21d6597e5ff9e99c9f8f98e4a8f89dd%3A41965d04a1acdac7a484362b0639a397089de32eb5973e06ebecb765da08dead?offset=0%2C0&limit=2%2C1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/9d4fdf9fa59ba79605909bac62ea3b584bae4306%3A0a212a77329fb901b3fe2f044edc35f89d1b6cee34aa6eda57e05a850238e7b9?offset=0%2C0&limit=2%2C1000 body: null headers: Accept: @@ -429,7 +429,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '1403' + - '1413' Content-Type: - application/json DATE: *id001 @@ -451,7 +451,8 @@ interactions: body: string: data: - - - 62 + - - 57 + - 62 - 60 - 51 - 60 @@ -462,8 +463,8 @@ interactions: - 56 - 90 - 60 - - 64 - - - 93.78964285714285 + - - 197.37653846153847 + - 93.78964285714285 - 115.96454545454546 - 241.92872340425532 - 270.91346938775513 @@ -474,7 +475,6 @@ interactions: - 160.19469387755103 - 178.3658536585366 - 185.4194 - - 146.6475 dimensionHeaders: - headerGroups: - headers: @@ -484,6 +484,9 @@ interactions: measureIndex: 1 - headerGroups: - headers: + - attributeHeader: + labelValue: 2025-02 + primaryLabelValue: 2025-02 - attributeHeader: labelValue: 2025-03 primaryLabelValue: 2025-03 @@ -517,9 +520,6 @@ interactions: - attributeHeader: labelValue: 2026-01 primaryLabelValue: 2026-01 - - attributeHeader: - labelValue: 2026-02 - primaryLabelValue: 2026-02 grandTotals: [] paging: count: diff --git a/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_visualization_no_index.yaml b/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_visualization_no_index.yaml index 6f38587f0..c8a66ca92 100644 --- a/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_visualization_no_index.yaml +++ b/packages/gooddata-pandas/tests/dataframe/fixtures/dataframe_for_visualization_no_index.yaml @@ -22,7 +22,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '5006' + - '5096' Content-Type: - application/json DATE: &id001 @@ -141,7 +141,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: revenue_and_quantity_by_product_and_category meta: origin: @@ -181,6 +181,7 @@ interactions: - Order lines sourceColumn: quantity sourceColumnDataType: NUMERIC + isNullable: true id: quantity links: self: http://localhost:3000/api/v1/entities/workspaces/demo/facts/quantity @@ -192,7 +193,7 @@ interactions: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: revenue links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue @@ -204,6 +205,7 @@ interactions: - Order lines sourceColumn: price sourceColumnDataType: NUMERIC + isNullable: true id: price links: self: http://localhost:3000/api/v1/entities/workspaces/demo/facts/price @@ -217,6 +219,7 @@ interactions: sourceColumn: product_name sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: product_name links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/product_name @@ -235,6 +238,7 @@ interactions: sourceColumn: customer_name sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: customer_name links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/customer_name @@ -245,7 +249,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, ALL OTHER) - createdAt: 2026-02-16 14:48 + createdAt: 2025-08-07 11:45 id: percent_revenue_in_category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue_in_category @@ -259,6 +263,7 @@ interactions: sourceColumn: category sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: products.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/products.category @@ -366,7 +371,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - d5e9bac5-cf07-471a-b806-dceaf76ef3d9 + - 5bcfa15e-0eb1-43c4-9ad1-e1577ad937a4 X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -418,7 +423,7 @@ interactions: valueType: TEXT localIdentifier: dim_1 links: - executionResult: 0ad1055bd1f3d7323af83f113eaf29bd5ff331d0:eb55cff569fc208cdce9c9f31e0ebbff4f0d69076eb16abe84edd538cb561719 + executionResult: e4fa78ce51c011ade31101b9f168e0d6401d09a5:aaf07d03576c1613b9fb1030a735fac4e76974f03e4c6c1abd964dd63c031e1a - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3Din%3D%28products.category%2Cproduct_name%29&page=0&size=500 @@ -440,7 +445,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '2400' + - '2472' Content-Type: - application/json DATE: *id001 @@ -470,6 +475,7 @@ interactions: areRelationsValid: true sourceColumn: product_name sourceColumnDataType: STRING + isNullable: true id: product_name links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/product_name @@ -495,6 +501,7 @@ interactions: areRelationsValid: true sourceColumn: category sourceColumnDataType: STRING + isNullable: true id: products.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/products.category @@ -522,6 +529,7 @@ interactions: sourceColumn: product_name sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: product_name links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/product_name @@ -535,6 +543,7 @@ interactions: sourceColumn: category sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: products.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/products.category @@ -561,7 +570,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3Din%3D%28%27products.category%27%2C%27product_name%27%29&page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/0ad1055bd1f3d7323af83f113eaf29bd5ff331d0%3Aeb55cff569fc208cdce9c9f31e0ebbff4f0d69076eb16abe84edd538cb561719?offset=0%2C0&limit=4%2C1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/e4fa78ce51c011ade31101b9f168e0d6401d09a5%3Aaaf07d03576c1613b9fb1030a735fac4e76974f03e4c6c1abd964dd63c031e1a?offset=0%2C0&limit=4%2C1000 body: null headers: Accept: diff --git a/packages/gooddata-pandas/tests/dataframe/fixtures/empty_indexed_dataframe.yaml b/packages/gooddata-pandas/tests/dataframe/fixtures/empty_indexed_dataframe.yaml index afb103811..1e4601074 100644 --- a/packages/gooddata-pandas/tests/dataframe/fixtures/empty_indexed_dataframe.yaml +++ b/packages/gooddata-pandas/tests/dataframe/fixtures/empty_indexed_dataframe.yaml @@ -77,7 +77,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - d5998aba-2389-4c25-b2db-169b0b097c33 + - fdf00d9e-0433-436d-9f52-23a062bcae8c X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -112,7 +112,7 @@ interactions: valueType: TEXT localIdentifier: dim_1 links: - executionResult: 767e88d98ee8778c460fb76b838ad9817a90ad95:b779644cfb78b2fdfa7c4ff2c2bba6a698baf236e73ebbef8c38747f5bb076a6 + executionResult: 9f9773fef7c75cf03baf8f0f54fc176df011cdab:6292e6de07a100badd1c83e8415ca23954eee9b57e921df8b5d30874c5d671ab - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3Din%3D%28product_name%29&page=0&size=500 @@ -134,7 +134,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '1517' + - '1553' Content-Type: - application/json DATE: *id001 @@ -164,6 +164,7 @@ interactions: areRelationsValid: true sourceColumn: product_name sourceColumnDataType: STRING + isNullable: true id: product_name links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/product_name @@ -191,6 +192,7 @@ interactions: sourceColumn: product_name sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: product_name links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/product_name @@ -217,7 +219,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3D%3D%27product_name%27&page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/767e88d98ee8778c460fb76b838ad9817a90ad95%3Ab779644cfb78b2fdfa7c4ff2c2bba6a698baf236e73ebbef8c38747f5bb076a6?offset=0%2C0&limit=2%2C1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/9f9773fef7c75cf03baf8f0f54fc176df011cdab%3A6292e6de07a100badd1c83e8415ca23954eee9b57e921df8b5d30874c5d671ab?offset=0%2C0&limit=2%2C1000 body: null headers: Accept: diff --git a/packages/gooddata-pandas/tests/dataframe/fixtures/empty_not_indexed_dataframe.yaml b/packages/gooddata-pandas/tests/dataframe/fixtures/empty_not_indexed_dataframe.yaml index 4ff720fbd..999611813 100644 --- a/packages/gooddata-pandas/tests/dataframe/fixtures/empty_not_indexed_dataframe.yaml +++ b/packages/gooddata-pandas/tests/dataframe/fixtures/empty_not_indexed_dataframe.yaml @@ -77,7 +77,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - 290d1ceb-3c34-4324-bba1-988a6c991b1a + - ebef8814-1e5e-43cb-95e1-4c59024a9ac3 X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -112,7 +112,7 @@ interactions: valueType: TEXT localIdentifier: dim_1 links: - executionResult: 767e88d98ee8778c460fb76b838ad9817a90ad95:b779644cfb78b2fdfa7c4ff2c2bba6a698baf236e73ebbef8c38747f5bb076a6 + executionResult: 9f9773fef7c75cf03baf8f0f54fc176df011cdab:6292e6de07a100badd1c83e8415ca23954eee9b57e921df8b5d30874c5d671ab - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3Din%3D%28product_name%29&page=0&size=500 @@ -134,7 +134,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '1517' + - '1553' Content-Type: - application/json DATE: *id001 @@ -164,6 +164,7 @@ interactions: areRelationsValid: true sourceColumn: product_name sourceColumnDataType: STRING + isNullable: true id: product_name links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/product_name @@ -191,6 +192,7 @@ interactions: sourceColumn: product_name sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: product_name links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/product_name @@ -217,7 +219,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3D%3D%27product_name%27&page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/767e88d98ee8778c460fb76b838ad9817a90ad95%3Ab779644cfb78b2fdfa7c4ff2c2bba6a698baf236e73ebbef8c38747f5bb076a6?offset=0%2C0&limit=2%2C1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/9f9773fef7c75cf03baf8f0f54fc176df011cdab%3A6292e6de07a100badd1c83e8415ca23954eee9b57e921df8b5d30874c5d671ab?offset=0%2C0&limit=2%2C1000 body: null headers: Accept: diff --git a/packages/gooddata-pandas/tests/dataframe/fixtures/filtered_empty_df.yaml b/packages/gooddata-pandas/tests/dataframe/fixtures/filtered_empty_df.yaml index 21fd6850f..10c94dd7d 100644 --- a/packages/gooddata-pandas/tests/dataframe/fixtures/filtered_empty_df.yaml +++ b/packages/gooddata-pandas/tests/dataframe/fixtures/filtered_empty_df.yaml @@ -68,7 +68,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - 7eae99b8-ad0e-4c75-aced-720c0f699ad5 + - 374aae05-a2b2-407d-ae48-89f5c621eda7 X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -83,10 +83,10 @@ interactions: name: Revenue localIdentifier: dim_0 links: - executionResult: 461e84559cf5c61c8823ce5a91da2f534ab49a46:81af740dd55bf16cdc29901f1c7d987446830f79609b4b2930c1e503dafd7e56 + executionResult: cf77f69345043b940d6645120620d3a4fa345b7b:9fe6390637bcf60e0aa0ccd421baa63e26917bc128de62364b13d5e5990c4f54 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/461e84559cf5c61c8823ce5a91da2f534ab49a46%3A81af740dd55bf16cdc29901f1c7d987446830f79609b4b2930c1e503dafd7e56?offset=0&limit=1 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/cf77f69345043b940d6645120620d3a4fa345b7b%3A9fe6390637bcf60e0aa0ccd421baa63e26917bc128de62364b13d5e5990c4f54?offset=0&limit=1 body: null headers: Accept: diff --git a/packages/gooddata-pandas/tests/dataframe/fixtures/multi_index_filtered_metrics_and_label.yaml b/packages/gooddata-pandas/tests/dataframe/fixtures/multi_index_filtered_metrics_and_label.yaml index 9d6b1b1e8..d29992378 100644 --- a/packages/gooddata-pandas/tests/dataframe/fixtures/multi_index_filtered_metrics_and_label.yaml +++ b/packages/gooddata-pandas/tests/dataframe/fixtures/multi_index_filtered_metrics_and_label.yaml @@ -102,7 +102,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - ff08579c-0672-4a62-a806-a87cf1c6304d + - 6ad792bf-85de-46ab-bc57-ed9f18fc1d65 X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -167,7 +167,7 @@ interactions: valueType: TEXT localIdentifier: dim_1 links: - executionResult: 7920081470b5d3f8ccb794e67b294a53c63823eb:d7fc6114c2df754c7eed141624bbbda75daeb7f8f21e4bc4d6d5dc90912bf2f9 + executionResult: 2c02040f096d0e4af41a99c58598b77fc4fc6ea5:477d985e1a894544e188dc092c4916bc2df89035678ca0bdbfac7fc737752401 - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3Din%3D%28state%2Cregion%2Cproducts.category%29&page=0&size=500 @@ -189,7 +189,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '3885' + - '4011' Content-Type: - application/json DATE: *id001 @@ -219,6 +219,7 @@ interactions: areRelationsValid: true sourceColumn: category sourceColumnDataType: STRING + isNullable: true id: products.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/products.category @@ -244,6 +245,7 @@ interactions: areRelationsValid: true sourceColumn: region sourceColumnDataType: STRING + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/region @@ -269,6 +271,7 @@ interactions: areRelationsValid: true sourceColumn: state sourceColumnDataType: STRING + isNullable: true id: state links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/state @@ -302,6 +305,7 @@ interactions: sourceColumn: geo__state__location sourceColumnDataType: STRING valueType: GEO + isNullable: true id: geo__state__location links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/geo__state__location @@ -332,6 +336,7 @@ interactions: sourceColumn: region sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/region @@ -345,6 +350,7 @@ interactions: sourceColumn: state sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: state links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/state @@ -358,6 +364,7 @@ interactions: sourceColumn: category sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: products.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/products.category @@ -384,7 +391,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3Din%3D%28%27state%27%2C%27region%27%2C%27products.category%27%29&page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/7920081470b5d3f8ccb794e67b294a53c63823eb%3Ad7fc6114c2df754c7eed141624bbbda75daeb7f8f21e4bc4d6d5dc90912bf2f9?offset=0%2C0&limit=2%2C1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/2c02040f096d0e4af41a99c58598b77fc4fc6ea5%3A477d985e1a894544e188dc092c4916bc2df89035678ca0bdbfac7fc737752401?offset=0%2C0&limit=2%2C1000 body: null headers: Accept: diff --git a/packages/gooddata-pandas/tests/dataframe/fixtures/multi_index_filtered_metrics_and_label_reuse.yaml b/packages/gooddata-pandas/tests/dataframe/fixtures/multi_index_filtered_metrics_and_label_reuse.yaml index 5bb0cb096..eeb6a58ec 100644 --- a/packages/gooddata-pandas/tests/dataframe/fixtures/multi_index_filtered_metrics_and_label_reuse.yaml +++ b/packages/gooddata-pandas/tests/dataframe/fixtures/multi_index_filtered_metrics_and_label_reuse.yaml @@ -91,7 +91,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - fe51fed9-6caf-4fd4-885f-1d6bcde09bac + - 59666652-1ff9-451b-a86f-57b84bc0a3da X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -141,7 +141,7 @@ interactions: valueType: TEXT localIdentifier: dim_1 links: - executionResult: 9de58f23845a569bcde651abed255e53c71af106:45e25cba81a26b1d2d6d5d8eda947e302dc2bf52cbf2c2b769169dcb1f34bca4 + executionResult: 1f8a3ac9a9075fdea2175a4ccfd1f7b50427fea5:51193f1bd2e11e748057d292c2859e46983abfb45eb910276a43e08c1438263e - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3Din%3D%28region%2Cproducts.category%29&page=0&size=500 @@ -163,7 +163,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '2689' + - '2761' Content-Type: - application/json DATE: *id001 @@ -193,6 +193,7 @@ interactions: areRelationsValid: true sourceColumn: category sourceColumnDataType: STRING + isNullable: true id: products.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/products.category @@ -218,6 +219,7 @@ interactions: areRelationsValid: true sourceColumn: region sourceColumnDataType: STRING + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/region @@ -262,6 +264,7 @@ interactions: sourceColumn: region sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/region @@ -275,6 +278,7 @@ interactions: sourceColumn: category sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: products.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/products.category @@ -301,7 +305,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3Din%3D%28%27region%27%2C%27products.category%27%29&page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/9de58f23845a569bcde651abed255e53c71af106%3A45e25cba81a26b1d2d6d5d8eda947e302dc2bf52cbf2c2b769169dcb1f34bca4?offset=0%2C0&limit=2%2C1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/1f8a3ac9a9075fdea2175a4ccfd1f7b50427fea5%3A51193f1bd2e11e748057d292c2859e46983abfb45eb910276a43e08c1438263e?offset=0%2C0&limit=2%2C1000 body: null headers: Accept: diff --git a/packages/gooddata-pandas/tests/dataframe/fixtures/multi_index_metrics.yaml b/packages/gooddata-pandas/tests/dataframe/fixtures/multi_index_metrics.yaml index ec135e684..5c20f2691 100644 --- a/packages/gooddata-pandas/tests/dataframe/fixtures/multi_index_metrics.yaml +++ b/packages/gooddata-pandas/tests/dataframe/fixtures/multi_index_metrics.yaml @@ -83,7 +83,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - 50a783f4-a0cc-4113-9f89-fbd4a31889de + - 6463f639-2477-42f6-b8b1-4bf955f2033b X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -133,7 +133,7 @@ interactions: valueType: TEXT localIdentifier: dim_1 links: - executionResult: 6e591bd4f1abc05ac4e61c6de407817c2314e7b6:e00f4099268a0b36fa4d0012ea68b6c3a6647d0b7b466d29a826ee8fd612eb1a + executionResult: 05f8944478156fffc0e091c069d9288c5ac25a28:b16707cce31b7dc93a39fb22cb40c9f53d4df6088f4cce2ac95b3789a501db92 - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3Din%3D%28region%2Cproducts.category%29&page=0&size=500 @@ -155,7 +155,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '2689' + - '2761' Content-Type: - application/json DATE: *id001 @@ -185,6 +185,7 @@ interactions: areRelationsValid: true sourceColumn: category sourceColumnDataType: STRING + isNullable: true id: products.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/products.category @@ -210,6 +211,7 @@ interactions: areRelationsValid: true sourceColumn: region sourceColumnDataType: STRING + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/region @@ -254,6 +256,7 @@ interactions: sourceColumn: region sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/region @@ -267,6 +270,7 @@ interactions: sourceColumn: category sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: products.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/products.category @@ -293,7 +297,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3Din%3D%28%27region%27%2C%27products.category%27%29&page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/6e591bd4f1abc05ac4e61c6de407817c2314e7b6%3Ae00f4099268a0b36fa4d0012ea68b6c3a6647d0b7b466d29a826ee8fd612eb1a?offset=0%2C0&limit=2%2C1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/05f8944478156fffc0e091c069d9288c5ac25a28%3Ab16707cce31b7dc93a39fb22cb40c9f53d4df6088f4cce2ac95b3789a501db92?offset=0%2C0&limit=2%2C1000 body: null headers: Accept: diff --git a/packages/gooddata-pandas/tests/dataframe/fixtures/multi_index_metrics_and_label.yaml b/packages/gooddata-pandas/tests/dataframe/fixtures/multi_index_metrics_and_label.yaml index c196515c8..4386ab518 100644 --- a/packages/gooddata-pandas/tests/dataframe/fixtures/multi_index_metrics_and_label.yaml +++ b/packages/gooddata-pandas/tests/dataframe/fixtures/multi_index_metrics_and_label.yaml @@ -89,7 +89,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - 531ce14f-7c5a-4d75-9bba-d93f9a956450 + - 9fc42477-8765-4a63-a0cd-a4d42e6d49c9 X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -154,7 +154,7 @@ interactions: valueType: TEXT localIdentifier: dim_1 links: - executionResult: 2a898ab0fd18fcff531722282467600bf66d57c2:3396c2d60451a33b21085cbfe41302992a76e378eda17a7a1bf82c1a5a813110 + executionResult: 7a6b16f3e2806f27ebd8611bcb3a061a94a4dfb1:2484456eac3644131f3d7d434e2a8b831634fe7b96c713ed0de2d6bdb0aa3862 - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3Din%3D%28state%2Cregion%2Cproducts.category%29&page=0&size=500 @@ -176,7 +176,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '3885' + - '4011' Content-Type: - application/json DATE: *id001 @@ -206,6 +206,7 @@ interactions: areRelationsValid: true sourceColumn: category sourceColumnDataType: STRING + isNullable: true id: products.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/products.category @@ -231,6 +232,7 @@ interactions: areRelationsValid: true sourceColumn: region sourceColumnDataType: STRING + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/region @@ -256,6 +258,7 @@ interactions: areRelationsValid: true sourceColumn: state sourceColumnDataType: STRING + isNullable: true id: state links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/state @@ -289,6 +292,7 @@ interactions: sourceColumn: geo__state__location sourceColumnDataType: STRING valueType: GEO + isNullable: true id: geo__state__location links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/geo__state__location @@ -319,6 +323,7 @@ interactions: sourceColumn: region sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/region @@ -332,6 +337,7 @@ interactions: sourceColumn: state sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: state links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/state @@ -345,6 +351,7 @@ interactions: sourceColumn: category sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: products.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/products.category @@ -371,7 +378,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3Din%3D%28%27state%27%2C%27region%27%2C%27products.category%27%29&page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/2a898ab0fd18fcff531722282467600bf66d57c2%3A3396c2d60451a33b21085cbfe41302992a76e378eda17a7a1bf82c1a5a813110?offset=0%2C0&limit=2%2C1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/7a6b16f3e2806f27ebd8611bcb3a061a94a4dfb1%3A2484456eac3644131f3d7d434e2a8b831634fe7b96c713ed0de2d6bdb0aa3862?offset=0%2C0&limit=2%2C1000 body: null headers: Accept: diff --git a/packages/gooddata-pandas/tests/dataframe/fixtures/not_indexed_filtered_metrics_and_labels.yaml b/packages/gooddata-pandas/tests/dataframe/fixtures/not_indexed_filtered_metrics_and_labels.yaml index 24bb320bc..300d6b162 100644 --- a/packages/gooddata-pandas/tests/dataframe/fixtures/not_indexed_filtered_metrics_and_labels.yaml +++ b/packages/gooddata-pandas/tests/dataframe/fixtures/not_indexed_filtered_metrics_and_labels.yaml @@ -85,7 +85,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - 16f15c07-48f9-48bc-9a85-1e23af1e774e + - 9ae3d46c-ce4f-4647-b31c-47279d11a961 X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -120,7 +120,7 @@ interactions: valueType: TEXT localIdentifier: dim_1 links: - executionResult: 0aac874dbc43e290f41c6c249c71304ed77c0b64:49ba3843ff515b47cdc24b2204392baf6b68b393e4c57cccc65ecf94ad69c214 + executionResult: 509a554f4b8d4a03e7bf47f091040b9e239b0f11:d1ddf33a20f776455c9bd4b5ce541a8252dd11fb4dd077dc936aaf2d243d88b9 - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3Din%3D%28region%29&page=0&size=500 @@ -142,7 +142,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '1450' + - '1486' Content-Type: - application/json DATE: *id001 @@ -172,6 +172,7 @@ interactions: areRelationsValid: true sourceColumn: region sourceColumnDataType: STRING + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/region @@ -216,6 +217,7 @@ interactions: sourceColumn: region sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/region @@ -225,7 +227,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3D%3D%27region%27&page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/0aac874dbc43e290f41c6c249c71304ed77c0b64%3A49ba3843ff515b47cdc24b2204392baf6b68b393e4c57cccc65ecf94ad69c214?offset=0%2C0&limit=2%2C1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/509a554f4b8d4a03e7bf47f091040b9e239b0f11%3Ad1ddf33a20f776455c9bd4b5ce541a8252dd11fb4dd077dc936aaf2d243d88b9?offset=0%2C0&limit=2%2C1000 body: null headers: Accept: diff --git a/packages/gooddata-pandas/tests/dataframe/fixtures/not_indexed_metrics.yaml b/packages/gooddata-pandas/tests/dataframe/fixtures/not_indexed_metrics.yaml index 0fc05465f..ebd92daf4 100644 --- a/packages/gooddata-pandas/tests/dataframe/fixtures/not_indexed_metrics.yaml +++ b/packages/gooddata-pandas/tests/dataframe/fixtures/not_indexed_metrics.yaml @@ -69,7 +69,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - 02217057-dd38-4618-9b4c-8778e96f06df + - ef16ff95-f2ca-44b4-a742-788fe19a2920 X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -87,10 +87,10 @@ interactions: name: '# of Orders' localIdentifier: dim_0 links: - executionResult: 3a881c56cb475a095b8608d995463e16c158e839:92f79992884dc09786b1bb91134854b287080350cda65121ea36c5aea60049ee + executionResult: ac3fa8d126a0ff1220c62bff1393bdfc07553ff3:5c7758f55fe50e9e23e93815333d5a62e5a977c8cd4960e9ab4dc46826cfc75e - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/3a881c56cb475a095b8608d995463e16c158e839%3A92f79992884dc09786b1bb91134854b287080350cda65121ea36c5aea60049ee?offset=0&limit=2 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/ac3fa8d126a0ff1220c62bff1393bdfc07553ff3%3A5c7758f55fe50e9e23e93815333d5a62e5a977c8cd4960e9ab4dc46826cfc75e?offset=0&limit=2 body: null headers: Accept: diff --git a/packages/gooddata-pandas/tests/dataframe/fixtures/not_indexed_metrics_and_labels.yaml b/packages/gooddata-pandas/tests/dataframe/fixtures/not_indexed_metrics_and_labels.yaml index 0ae10c962..9bb976442 100644 --- a/packages/gooddata-pandas/tests/dataframe/fixtures/not_indexed_metrics_and_labels.yaml +++ b/packages/gooddata-pandas/tests/dataframe/fixtures/not_indexed_metrics_and_labels.yaml @@ -77,7 +77,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - daa69086-7fda-40ca-91d5-a40cd5fb7be9 + - 00c326ed-7c57-4f61-917a-429fd247a08d X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -112,7 +112,7 @@ interactions: valueType: TEXT localIdentifier: dim_1 links: - executionResult: 140160e08502bc39940aa41456fa03720180100d:a00ca6ea33f78b03ad685a578e654600208c7ae4381ef5540109f92e308fecbb + executionResult: 4bddf4939359ca3d7c332ceae6d33c3f633e33b2:075bc4be3642052156348ec4c30522c7780ceff82625bf7ff5e1a31e42818b3d - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3Din%3D%28region%29&page=0&size=500 @@ -134,7 +134,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '1450' + - '1486' Content-Type: - application/json DATE: *id001 @@ -164,6 +164,7 @@ interactions: areRelationsValid: true sourceColumn: region sourceColumnDataType: STRING + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/region @@ -208,6 +209,7 @@ interactions: sourceColumn: region sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/region @@ -217,7 +219,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3D%3D%27region%27&page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/140160e08502bc39940aa41456fa03720180100d%3Aa00ca6ea33f78b03ad685a578e654600208c7ae4381ef5540109f92e308fecbb?offset=0%2C0&limit=2%2C1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/4bddf4939359ca3d7c332ceae6d33c3f633e33b2%3A075bc4be3642052156348ec4c30522c7780ceff82625bf7ff5e1a31e42818b3d?offset=0%2C0&limit=2%2C1000 body: null headers: Accept: diff --git a/packages/gooddata-pandas/tests/dataframe/fixtures/simple_index_filtered_metrics_and_label.yaml b/packages/gooddata-pandas/tests/dataframe/fixtures/simple_index_filtered_metrics_and_label.yaml index d9ce27775..2ad712eb2 100644 --- a/packages/gooddata-pandas/tests/dataframe/fixtures/simple_index_filtered_metrics_and_label.yaml +++ b/packages/gooddata-pandas/tests/dataframe/fixtures/simple_index_filtered_metrics_and_label.yaml @@ -122,7 +122,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - 8198214c-0d19-450a-bfe2-1909a51fa4ab + - 7442dd5c-dad3-4546-b76b-d51b88e06832 X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -168,7 +168,7 @@ interactions: valueType: TEXT localIdentifier: dim_1 links: - executionResult: d21b09a635704d884d352a2777e7315cee5066e9:366c50a0eaa2d792de024edcac4d4a8d0f1c92de3b3726ec7cf00a61ef867a7f + executionResult: 16a6b4b766c98c408ffca790f2cb0c2401c86564:26cdda60eccd31ea530ae9c822cce7ab940d1f12e998a4a143166f676758114d - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3Din%3D%28products.category%2Cregion%29&page=0&size=500 @@ -190,7 +190,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '2689' + - '2761' Content-Type: - application/json DATE: *id001 @@ -220,6 +220,7 @@ interactions: areRelationsValid: true sourceColumn: category sourceColumnDataType: STRING + isNullable: true id: products.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/products.category @@ -245,6 +246,7 @@ interactions: areRelationsValid: true sourceColumn: region sourceColumnDataType: STRING + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/region @@ -289,6 +291,7 @@ interactions: sourceColumn: region sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/region @@ -302,6 +305,7 @@ interactions: sourceColumn: category sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: products.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/products.category @@ -328,7 +332,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3Din%3D%28%27products.category%27%2C%27region%27%29&page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/d21b09a635704d884d352a2777e7315cee5066e9%3A366c50a0eaa2d792de024edcac4d4a8d0f1c92de3b3726ec7cf00a61ef867a7f?offset=0%2C0&limit=2%2C1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/16a6b4b766c98c408ffca790f2cb0c2401c86564%3A26cdda60eccd31ea530ae9c822cce7ab940d1f12e998a4a143166f676758114d?offset=0%2C0&limit=2%2C1000 body: null headers: Accept: diff --git a/packages/gooddata-pandas/tests/dataframe/fixtures/simple_index_metrics.yaml b/packages/gooddata-pandas/tests/dataframe/fixtures/simple_index_metrics.yaml index be4421e8a..2f73298e7 100644 --- a/packages/gooddata-pandas/tests/dataframe/fixtures/simple_index_metrics.yaml +++ b/packages/gooddata-pandas/tests/dataframe/fixtures/simple_index_metrics.yaml @@ -75,7 +75,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - c8a5e1d1-6f71-4305-8f74-9dabd24b085b + - 33317aa8-8fd3-4754-ba33-6a52b2d6c3b9 X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -120,7 +120,7 @@ interactions: valueType: TEXT localIdentifier: dim_1 links: - executionResult: 0d3ff0d5531a4cd0aff6e1b6927044567eef4ec3:e47757b868dfedbedee0651d92f5c81a65e0db36ee4a329ac2c4bd1596785975 + executionResult: 61f4421c6062670bcb644d23be49da3f27796cc8:8327ebaf42a3816bf2d74be9359c3c2c39325c6b16a932e2620ae8ac351325c2 - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3Din%3D%28region%2Cproducts.category%29&page=0&size=500 @@ -142,7 +142,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '2689' + - '2761' Content-Type: - application/json DATE: *id001 @@ -172,6 +172,7 @@ interactions: areRelationsValid: true sourceColumn: category sourceColumnDataType: STRING + isNullable: true id: products.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/products.category @@ -197,6 +198,7 @@ interactions: areRelationsValid: true sourceColumn: region sourceColumnDataType: STRING + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/region @@ -241,6 +243,7 @@ interactions: sourceColumn: region sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/region @@ -254,6 +257,7 @@ interactions: sourceColumn: category sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: products.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/products.category @@ -280,7 +284,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3Din%3D%28%27region%27%2C%27products.category%27%29&page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/0d3ff0d5531a4cd0aff6e1b6927044567eef4ec3%3Ae47757b868dfedbedee0651d92f5c81a65e0db36ee4a329ac2c4bd1596785975?offset=0%2C0&limit=1%2C1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/61f4421c6062670bcb644d23be49da3f27796cc8%3A8327ebaf42a3816bf2d74be9359c3c2c39325c6b16a932e2620ae8ac351325c2?offset=0%2C0&limit=1%2C1000 body: null headers: Accept: diff --git a/packages/gooddata-pandas/tests/dataframe/fixtures/simple_index_metrics_and_label.yaml b/packages/gooddata-pandas/tests/dataframe/fixtures/simple_index_metrics_and_label.yaml index 42834522f..431e905a5 100644 --- a/packages/gooddata-pandas/tests/dataframe/fixtures/simple_index_metrics_and_label.yaml +++ b/packages/gooddata-pandas/tests/dataframe/fixtures/simple_index_metrics_and_label.yaml @@ -79,7 +79,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - a2b37ecd-c340-4828-a23e-ace7382f3110 + - ea0479bb-1fd0-41a5-92f0-10bd781614a3 X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -110,7 +110,7 @@ interactions: valueType: TEXT localIdentifier: dim_1 links: - executionResult: 0d6d01a24ec201f729f87fdfdf70ad3f54dd6da7:923c20de2f439e10b78770315eccdb05b6ef0633b38b28854061e2eeb0e1f917 + executionResult: 91cbface659a3577c2c5a2449c46f4332dac93f1:f108ffba5514baff4c6974c00ce8ce6e3d91ff18f1fd7fc3d9251edc1cb42524 - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3Din%3D%28region%29&page=0&size=500 @@ -132,7 +132,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '1450' + - '1486' Content-Type: - application/json DATE: *id001 @@ -162,6 +162,7 @@ interactions: areRelationsValid: true sourceColumn: region sourceColumnDataType: STRING + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/region @@ -206,6 +207,7 @@ interactions: sourceColumn: region sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/region @@ -215,7 +217,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3D%3D%27region%27&page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/0d6d01a24ec201f729f87fdfdf70ad3f54dd6da7%3A923c20de2f439e10b78770315eccdb05b6ef0633b38b28854061e2eeb0e1f917?offset=0%2C0&limit=2%2C1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/91cbface659a3577c2c5a2449c46f4332dac93f1%3Af108ffba5514baff4c6974c00ce8ce6e3d91ff18f1fd7fc3d9251edc1cb42524?offset=0%2C0&limit=2%2C1000 body: null headers: Accept: diff --git a/packages/gooddata-pandas/tests/dataframe/fixtures/simple_index_metrics_no_duplicate.yaml b/packages/gooddata-pandas/tests/dataframe/fixtures/simple_index_metrics_no_duplicate.yaml index 17a39ca84..3e9c03f80 100644 --- a/packages/gooddata-pandas/tests/dataframe/fixtures/simple_index_metrics_no_duplicate.yaml +++ b/packages/gooddata-pandas/tests/dataframe/fixtures/simple_index_metrics_no_duplicate.yaml @@ -79,7 +79,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - 9a7a1186-c9a6-4b7a-ab8d-7389a45ce268 + - 2f8324a4-bc69-4c4f-b8be-d2b132984481 X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -110,7 +110,7 @@ interactions: valueType: TEXT localIdentifier: dim_1 links: - executionResult: 0d6d01a24ec201f729f87fdfdf70ad3f54dd6da7:923c20de2f439e10b78770315eccdb05b6ef0633b38b28854061e2eeb0e1f917 + executionResult: 91cbface659a3577c2c5a2449c46f4332dac93f1:f108ffba5514baff4c6974c00ce8ce6e3d91ff18f1fd7fc3d9251edc1cb42524 - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3Din%3D%28region%29&page=0&size=500 @@ -132,7 +132,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '1450' + - '1486' Content-Type: - application/json DATE: *id001 @@ -162,6 +162,7 @@ interactions: areRelationsValid: true sourceColumn: region sourceColumnDataType: STRING + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/region @@ -206,6 +207,7 @@ interactions: sourceColumn: region sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/region @@ -215,7 +217,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3D%3D%27region%27&page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/0d6d01a24ec201f729f87fdfdf70ad3f54dd6da7%3A923c20de2f439e10b78770315eccdb05b6ef0633b38b28854061e2eeb0e1f917?offset=0%2C0&limit=2%2C1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/91cbface659a3577c2c5a2449c46f4332dac93f1%3Af108ffba5514baff4c6974c00ce8ce6e3d91ff18f1fd7fc3d9251edc1cb42524?offset=0%2C0&limit=2%2C1000 body: null headers: Accept: diff --git a/packages/gooddata-pandas/tests/series/fixtures/multi_index_filtered_series.yaml b/packages/gooddata-pandas/tests/series/fixtures/multi_index_filtered_series.yaml index be67c57d5..9f3e2ecfa 100644 --- a/packages/gooddata-pandas/tests/series/fixtures/multi_index_filtered_series.yaml +++ b/packages/gooddata-pandas/tests/series/fixtures/multi_index_filtered_series.yaml @@ -83,7 +83,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - d8f151cc-008b-4518-8574-fdd0c2e48101 + - 2d2c438a-6407-43ed-9ace-06b3003c429f X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -128,7 +128,7 @@ interactions: valueType: TEXT localIdentifier: dim_1 links: - executionResult: 2774b8f5e94346c48d2199bf39643fc00a675e9f:0187f3b9127f9329d31e9f05ac3bb5f910ae6434cce392bb331a0ba624ade7e2 + executionResult: 0f91f5ef07da2bd92ecd487a78304eb1463d2e7f:ee1f8db666140aa48911224ecc5b5c513a18e854b1ad0948f8021566275902c9 - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3Din%3D%28region%2Cproducts.category%29&page=0&size=500 @@ -150,7 +150,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '2689' + - '2761' Content-Type: - application/json DATE: *id001 @@ -180,6 +180,7 @@ interactions: areRelationsValid: true sourceColumn: category sourceColumnDataType: STRING + isNullable: true id: products.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/products.category @@ -205,6 +206,7 @@ interactions: areRelationsValid: true sourceColumn: region sourceColumnDataType: STRING + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/region @@ -249,6 +251,7 @@ interactions: sourceColumn: region sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/region @@ -262,6 +265,7 @@ interactions: sourceColumn: category sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: products.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/products.category @@ -288,7 +292,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3Din%3D%28%27region%27%2C%27products.category%27%29&page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/2774b8f5e94346c48d2199bf39643fc00a675e9f%3A0187f3b9127f9329d31e9f05ac3bb5f910ae6434cce392bb331a0ba624ade7e2?offset=0%2C0&limit=1%2C1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/0f91f5ef07da2bd92ecd487a78304eb1463d2e7f%3Aee1f8db666140aa48911224ecc5b5c513a18e854b1ad0948f8021566275902c9?offset=0%2C0&limit=1%2C1000 body: null headers: Accept: diff --git a/packages/gooddata-pandas/tests/series/fixtures/multi_index_metric_series.yaml b/packages/gooddata-pandas/tests/series/fixtures/multi_index_metric_series.yaml index 18e4a3d16..9de896641 100644 --- a/packages/gooddata-pandas/tests/series/fixtures/multi_index_metric_series.yaml +++ b/packages/gooddata-pandas/tests/series/fixtures/multi_index_metric_series.yaml @@ -75,7 +75,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - dced2a10-2f1c-4426-80c5-9a893f7e980e + - a0c75617-88f6-457b-9b66-1aed2e0e9aaf X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -120,7 +120,7 @@ interactions: valueType: TEXT localIdentifier: dim_1 links: - executionResult: 0d3ff0d5531a4cd0aff6e1b6927044567eef4ec3:e47757b868dfedbedee0651d92f5c81a65e0db36ee4a329ac2c4bd1596785975 + executionResult: 61f4421c6062670bcb644d23be49da3f27796cc8:8327ebaf42a3816bf2d74be9359c3c2c39325c6b16a932e2620ae8ac351325c2 - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3Din%3D%28region%2Cproducts.category%29&page=0&size=500 @@ -142,7 +142,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '2689' + - '2761' Content-Type: - application/json DATE: *id001 @@ -172,6 +172,7 @@ interactions: areRelationsValid: true sourceColumn: category sourceColumnDataType: STRING + isNullable: true id: products.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/products.category @@ -197,6 +198,7 @@ interactions: areRelationsValid: true sourceColumn: region sourceColumnDataType: STRING + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/region @@ -241,6 +243,7 @@ interactions: sourceColumn: region sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/region @@ -254,6 +257,7 @@ interactions: sourceColumn: category sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: products.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/products.category @@ -280,7 +284,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3Din%3D%28%27region%27%2C%27products.category%27%29&page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/0d3ff0d5531a4cd0aff6e1b6927044567eef4ec3%3Ae47757b868dfedbedee0651d92f5c81a65e0db36ee4a329ac2c4bd1596785975?offset=0%2C0&limit=1%2C1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/61f4421c6062670bcb644d23be49da3f27796cc8%3A8327ebaf42a3816bf2d74be9359c3c2c39325c6b16a932e2620ae8ac351325c2?offset=0%2C0&limit=1%2C1000 body: null headers: Accept: diff --git a/packages/gooddata-pandas/tests/series/fixtures/not_indexed_filtered_metric_series.yaml b/packages/gooddata-pandas/tests/series/fixtures/not_indexed_filtered_metric_series.yaml index e54515a10..38cd6ef86 100644 --- a/packages/gooddata-pandas/tests/series/fixtures/not_indexed_filtered_metric_series.yaml +++ b/packages/gooddata-pandas/tests/series/fixtures/not_indexed_filtered_metric_series.yaml @@ -61,7 +61,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - deba1e4d-754a-48ae-9708-cdc7f6bf07ea + - 319bc2be-f73c-4564-bcea-230046ae733e X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -74,10 +74,10 @@ interactions: - localIdentifier: 27c4b665b9d047b1a66a149714f1c596 localIdentifier: dim_0 links: - executionResult: 8838e09a331f9fdd1264929126ffeb3c446be21c:ff3b0248eebf2ed56a4ac81c9df75ab0b4dacd0aae40cf8971732b879e5420dd + executionResult: a2034e393829055d312ff607a69301be9fd4d4d6:7f257f50c4e2cfa4de3856acc8f3e80bc44acab5d6448843b08980638d557b8a - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/8838e09a331f9fdd1264929126ffeb3c446be21c%3Aff3b0248eebf2ed56a4ac81c9df75ab0b4dacd0aae40cf8971732b879e5420dd?offset=0&limit=1 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/a2034e393829055d312ff607a69301be9fd4d4d6%3A7f257f50c4e2cfa4de3856acc8f3e80bc44acab5d6448843b08980638d557b8a?offset=0&limit=1 body: null headers: Accept: @@ -201,7 +201,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - b9f7581c-b741-4df1-b8ce-be0470defd5c + - c02afbac-3063-45b0-b22f-77b275d793ac X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -214,10 +214,10 @@ interactions: - localIdentifier: 27c4b665b9d047b1a66a149714f1c596 localIdentifier: dim_0 links: - executionResult: f9443f120966e2b57c6f1fbd80bbafcb04fe7ba8:2889c71432ef5914d221781916b2bc08d7a3d39ab862dd22862c8613613eda98 + executionResult: ca59a1fde6013f5b54b7a3c291e811d2a740f192:12edb01d02a503eb1b6346638ada3fd6477ad4770680a9ee719636e47170bdd9 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/f9443f120966e2b57c6f1fbd80bbafcb04fe7ba8%3A2889c71432ef5914d221781916b2bc08d7a3d39ab862dd22862c8613613eda98?offset=0&limit=1 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/ca59a1fde6013f5b54b7a3c291e811d2a740f192%3A12edb01d02a503eb1b6346638ada3fd6477ad4770680a9ee719636e47170bdd9?offset=0&limit=1 body: null headers: Accept: diff --git a/packages/gooddata-pandas/tests/series/fixtures/not_indexed_label_series.yaml b/packages/gooddata-pandas/tests/series/fixtures/not_indexed_label_series.yaml index 8b0f34b0b..e0522fb35 100644 --- a/packages/gooddata-pandas/tests/series/fixtures/not_indexed_label_series.yaml +++ b/packages/gooddata-pandas/tests/series/fixtures/not_indexed_label_series.yaml @@ -56,7 +56,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - 03d38650-f544-4e7d-ab62-15fe1795d685 + - 311ba5f1-708f-4f58-8d85-da55322ca690 X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -82,7 +82,7 @@ interactions: valueType: TEXT localIdentifier: dim_0 links: - executionResult: 5ec97e8e7d5fccfc3ebde7a713d50e7098dd3b07:965df0e8c623aaa7671c0f147010094c82c6aed4d880189be3d7bdcee62d2130 + executionResult: c03f39fe5f6c40dbc81a91af7c76a5dcaf1e498a:33b9380572c8766c601adfa7fa7c2c5247ac7a3334f666ebecc3156e3ad4687e - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3Din%3D%28region%29&page=0&size=500 @@ -104,7 +104,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '1450' + - '1486' Content-Type: - application/json DATE: *id001 @@ -134,6 +134,7 @@ interactions: areRelationsValid: true sourceColumn: region sourceColumnDataType: STRING + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/region @@ -178,6 +179,7 @@ interactions: sourceColumn: region sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/region @@ -187,7 +189,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3D%3D%27region%27&page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/5ec97e8e7d5fccfc3ebde7a713d50e7098dd3b07%3A965df0e8c623aaa7671c0f147010094c82c6aed4d880189be3d7bdcee62d2130?offset=0&limit=1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/c03f39fe5f6c40dbc81a91af7c76a5dcaf1e498a%3A33b9380572c8766c601adfa7fa7c2c5247ac7a3334f666ebecc3156e3ad4687e?offset=0&limit=1000 body: null headers: Accept: diff --git a/packages/gooddata-pandas/tests/series/fixtures/not_indexed_label_series_with_granularity.yaml b/packages/gooddata-pandas/tests/series/fixtures/not_indexed_label_series_with_granularity.yaml index 8c32de8f4..efbf969ec 100644 --- a/packages/gooddata-pandas/tests/series/fixtures/not_indexed_label_series_with_granularity.yaml +++ b/packages/gooddata-pandas/tests/series/fixtures/not_indexed_label_series_with_granularity.yaml @@ -62,7 +62,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - 6cc2e0e8-6bfd-4371-9f96-409e2515ab48 + - efb0bea0-3c7a-4c02-8e7b-eda54bcddbed X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -103,7 +103,7 @@ interactions: valueType: TEXT localIdentifier: dim_0 links: - executionResult: 7b5a46bba6f8c5e5ffd3028f02c8de34076341c4:d13be7d65d5bbe0aa2cdaae4d10698fa3c39a5905d98b5a6f9550546daeae7f4 + executionResult: a3d9c6d4693d8831dab062c8985a19e2daba76cc:da4f7da0daeb19f4cbd6305a94815fe7df0154a0fff89133988a7276dedd9235 - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3Din%3D%28products.category%2Cregion%29&page=0&size=500 @@ -125,7 +125,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '2689' + - '2761' Content-Type: - application/json DATE: *id001 @@ -155,6 +155,7 @@ interactions: areRelationsValid: true sourceColumn: category sourceColumnDataType: STRING + isNullable: true id: products.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/products.category @@ -180,6 +181,7 @@ interactions: areRelationsValid: true sourceColumn: region sourceColumnDataType: STRING + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/region @@ -224,6 +226,7 @@ interactions: sourceColumn: region sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/region @@ -237,6 +240,7 @@ interactions: sourceColumn: category sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: products.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/products.category @@ -263,7 +267,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3Din%3D%28%27products.category%27%2C%27region%27%29&page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/7b5a46bba6f8c5e5ffd3028f02c8de34076341c4%3Ad13be7d65d5bbe0aa2cdaae4d10698fa3c39a5905d98b5a6f9550546daeae7f4?offset=0&limit=1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/a3d9c6d4693d8831dab062c8985a19e2daba76cc%3Ada4f7da0daeb19f4cbd6305a94815fe7df0154a0fff89133988a7276dedd9235?offset=0&limit=1000 body: null headers: Accept: diff --git a/packages/gooddata-pandas/tests/series/fixtures/not_indexed_metric_series.yaml b/packages/gooddata-pandas/tests/series/fixtures/not_indexed_metric_series.yaml index 9df3a0461..c478ef4a4 100644 --- a/packages/gooddata-pandas/tests/series/fixtures/not_indexed_metric_series.yaml +++ b/packages/gooddata-pandas/tests/series/fixtures/not_indexed_metric_series.yaml @@ -61,7 +61,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - 86100c89-50eb-4b04-8033-a6e4230a6eed + - da3dd688-dc0b-4289-bd25-0d1bf3c39da6 X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -74,10 +74,10 @@ interactions: - localIdentifier: 27c4b665b9d047b1a66a149714f1c596 localIdentifier: dim_0 links: - executionResult: 8838e09a331f9fdd1264929126ffeb3c446be21c:ff3b0248eebf2ed56a4ac81c9df75ab0b4dacd0aae40cf8971732b879e5420dd + executionResult: a2034e393829055d312ff607a69301be9fd4d4d6:7f257f50c4e2cfa4de3856acc8f3e80bc44acab5d6448843b08980638d557b8a - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/8838e09a331f9fdd1264929126ffeb3c446be21c%3Aff3b0248eebf2ed56a4ac81c9df75ab0b4dacd0aae40cf8971732b879e5420dd?offset=0&limit=1 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/a2034e393829055d312ff607a69301be9fd4d4d6%3A7f257f50c4e2cfa4de3856acc8f3e80bc44acab5d6448843b08980638d557b8a?offset=0&limit=1 body: null headers: Accept: diff --git a/packages/gooddata-pandas/tests/series/fixtures/not_indexed_metric_series_with_granularity.yaml b/packages/gooddata-pandas/tests/series/fixtures/not_indexed_metric_series_with_granularity.yaml index ef7f4dd73..2d51a425e 100644 --- a/packages/gooddata-pandas/tests/series/fixtures/not_indexed_metric_series_with_granularity.yaml +++ b/packages/gooddata-pandas/tests/series/fixtures/not_indexed_metric_series_with_granularity.yaml @@ -69,7 +69,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - 089db6a5-6a5e-46eb-a2a4-78bb1b60c1c4 + - 80d6fe33-7703-4ea4-ae41-3ab2aedc7c87 X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -99,7 +99,7 @@ interactions: valueType: TEXT localIdentifier: dim_1 links: - executionResult: 20b130308bdb18f9884d3f1fa215b5551f6ae5b5:1620e73e26e7149f85d25651b706b92272c96b1548f0c1a28c268bd1894092fd + executionResult: 53d8df5e0f57bb3778fa52e09a5dbf3fe0d20593:411320e1b32e088701f9b07028c6d9022db8b9c332e7446b7c7088eb2dfe1e50 - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3Din%3D%28region%29&page=0&size=500 @@ -121,7 +121,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '1450' + - '1486' Content-Type: - application/json DATE: *id001 @@ -151,6 +151,7 @@ interactions: areRelationsValid: true sourceColumn: region sourceColumnDataType: STRING + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/region @@ -195,6 +196,7 @@ interactions: sourceColumn: region sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/region @@ -204,7 +206,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3D%3D%27region%27&page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/20b130308bdb18f9884d3f1fa215b5551f6ae5b5%3A1620e73e26e7149f85d25651b706b92272c96b1548f0c1a28c268bd1894092fd?offset=0%2C0&limit=1%2C1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/53d8df5e0f57bb3778fa52e09a5dbf3fe0d20593%3A411320e1b32e088701f9b07028c6d9022db8b9c332e7446b7c7088eb2dfe1e50?offset=0%2C0&limit=1%2C1000 body: null headers: Accept: diff --git a/packages/gooddata-pandas/tests/series/fixtures/simple_index_filtered_series.yaml b/packages/gooddata-pandas/tests/series/fixtures/simple_index_filtered_series.yaml index d8396454c..2185f6062 100644 --- a/packages/gooddata-pandas/tests/series/fixtures/simple_index_filtered_series.yaml +++ b/packages/gooddata-pandas/tests/series/fixtures/simple_index_filtered_series.yaml @@ -78,7 +78,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - a0f2672a-b054-4a26-b6a8-553d84002695 + - 600573ec-101c-459e-9ffc-c6b52620f0f8 X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -119,7 +119,7 @@ interactions: valueType: TEXT localIdentifier: dim_0 links: - executionResult: 5ad3a0f3a5a00d480c351d35c01a59cf632601c4:de186fa2ed72379b433eb0eaad09a66614a50c93f2c1ece343cf8b38b9838d2b + executionResult: 9f9d3b1b81d7485abba2e04baf35d6881c5d49ef:993db9220c07fe0207339ea9f23514f593b996448937880b2f355ba3a21a022b - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3Din%3D%28products.category%2Cregion%29&page=0&size=500 @@ -141,7 +141,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '2689' + - '2761' Content-Type: - application/json DATE: *id001 @@ -171,6 +171,7 @@ interactions: areRelationsValid: true sourceColumn: category sourceColumnDataType: STRING + isNullable: true id: products.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/products.category @@ -196,6 +197,7 @@ interactions: areRelationsValid: true sourceColumn: region sourceColumnDataType: STRING + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/region @@ -240,6 +242,7 @@ interactions: sourceColumn: region sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/region @@ -253,6 +256,7 @@ interactions: sourceColumn: category sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: products.category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/products.category @@ -279,7 +283,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3Din%3D%28%27products.category%27%2C%27region%27%29&page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/5ad3a0f3a5a00d480c351d35c01a59cf632601c4%3Ade186fa2ed72379b433eb0eaad09a66614a50c93f2c1ece343cf8b38b9838d2b?offset=0&limit=1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/9f9d3b1b81d7485abba2e04baf35d6881c5d49ef%3A993db9220c07fe0207339ea9f23514f593b996448937880b2f355ba3a21a022b?offset=0&limit=1000 body: null headers: Accept: diff --git a/packages/gooddata-pandas/tests/series/fixtures/simple_index_label_series.yaml b/packages/gooddata-pandas/tests/series/fixtures/simple_index_label_series.yaml index b5a3681ab..082282d4e 100644 --- a/packages/gooddata-pandas/tests/series/fixtures/simple_index_label_series.yaml +++ b/packages/gooddata-pandas/tests/series/fixtures/simple_index_label_series.yaml @@ -56,7 +56,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - 56c75fc1-5f42-4afa-b880-888c2f2f6282 + - d8474362-39e0-4433-babb-ac28a29bf37c X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -82,7 +82,7 @@ interactions: valueType: TEXT localIdentifier: dim_0 links: - executionResult: 5ec97e8e7d5fccfc3ebde7a713d50e7098dd3b07:965df0e8c623aaa7671c0f147010094c82c6aed4d880189be3d7bdcee62d2130 + executionResult: c03f39fe5f6c40dbc81a91af7c76a5dcaf1e498a:33b9380572c8766c601adfa7fa7c2c5247ac7a3334f666ebecc3156e3ad4687e - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3Din%3D%28region%29&page=0&size=500 @@ -104,7 +104,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '1450' + - '1486' Content-Type: - application/json DATE: *id001 @@ -134,6 +134,7 @@ interactions: areRelationsValid: true sourceColumn: region sourceColumnDataType: STRING + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/region @@ -178,6 +179,7 @@ interactions: sourceColumn: region sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/region @@ -187,7 +189,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3D%3D%27region%27&page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/5ec97e8e7d5fccfc3ebde7a713d50e7098dd3b07%3A965df0e8c623aaa7671c0f147010094c82c6aed4d880189be3d7bdcee62d2130?offset=0&limit=1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/c03f39fe5f6c40dbc81a91af7c76a5dcaf1e498a%3A33b9380572c8766c601adfa7fa7c2c5247ac7a3334f666ebecc3156e3ad4687e?offset=0&limit=1000 body: null headers: Accept: diff --git a/packages/gooddata-pandas/tests/series/fixtures/simple_index_metric_series.yaml b/packages/gooddata-pandas/tests/series/fixtures/simple_index_metric_series.yaml index 45aa674b1..6efa0fc9e 100644 --- a/packages/gooddata-pandas/tests/series/fixtures/simple_index_metric_series.yaml +++ b/packages/gooddata-pandas/tests/series/fixtures/simple_index_metric_series.yaml @@ -69,7 +69,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - 8337e4b1-728a-4406-bf18-c72b37d93b7c + - 8b0916e4-0b85-4980-8302-de72b6c25561 X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -99,7 +99,7 @@ interactions: valueType: TEXT localIdentifier: dim_1 links: - executionResult: 20b130308bdb18f9884d3f1fa215b5551f6ae5b5:1620e73e26e7149f85d25651b706b92272c96b1548f0c1a28c268bd1894092fd + executionResult: 53d8df5e0f57bb3778fa52e09a5dbf3fe0d20593:411320e1b32e088701f9b07028c6d9022db8b9c332e7446b7c7088eb2dfe1e50 - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3Din%3D%28region%29&page=0&size=500 @@ -121,7 +121,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '1450' + - '1486' Content-Type: - application/json DATE: *id001 @@ -151,6 +151,7 @@ interactions: areRelationsValid: true sourceColumn: region sourceColumnDataType: STRING + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/region @@ -195,6 +196,7 @@ interactions: sourceColumn: region sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/region @@ -204,7 +206,7 @@ interactions: next: http://localhost:3000/api/v1/entities/workspaces/demo/attributes?include=labels%2Cdatasets&filter=labels.id%3D%3D%27region%27&page=1&size=500 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/20b130308bdb18f9884d3f1fa215b5551f6ae5b5%3A1620e73e26e7149f85d25651b706b92272c96b1548f0c1a28c268bd1894092fd?offset=0%2C0&limit=1%2C1000 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/53d8df5e0f57bb3778fa52e09a5dbf3fe0d20593%3A411320e1b32e088701f9b07028c6d9022db8b9c332e7446b7c7088eb2dfe1e50?offset=0%2C0&limit=1%2C1000 body: null headers: Accept: diff --git a/packages/gooddata-pandas/tests/utils/fixtures/test_get_catalog_attributes_for_extract.yaml b/packages/gooddata-pandas/tests/utils/fixtures/test_get_catalog_attributes_for_extract.yaml index 509276535..768a40002 100644 --- a/packages/gooddata-pandas/tests/utils/fixtures/test_get_catalog_attributes_for_extract.yaml +++ b/packages/gooddata-pandas/tests/utils/fixtures/test_get_catalog_attributes_for_extract.yaml @@ -22,7 +22,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '1541' + - '1577' Content-Type: - application/json DATE: &id001 @@ -53,6 +53,7 @@ interactions: areRelationsValid: true sourceColumn: campaign_name sourceColumnDataType: STRING + isNullable: true id: campaign_name links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/campaign_name @@ -97,6 +98,7 @@ interactions: sourceColumn: campaign_name sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: campaign_name links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/campaign_name @@ -125,7 +127,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '1450' + - '1486' Content-Type: - application/json DATE: *id001 @@ -155,6 +157,7 @@ interactions: areRelationsValid: true sourceColumn: region sourceColumnDataType: STRING + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/attributes/region @@ -199,6 +202,7 @@ interactions: sourceColumn: region sourceColumnDataType: STRING valueType: TEXT + isNullable: true id: region links: self: http://localhost:3000/api/v1/entities/workspaces/demo/labels/region diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/bigquery.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/bigquery.yaml index 69b71b5f6..19402c99d 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/bigquery.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/bigquery.yaml @@ -48,7 +48,7 @@ interactions: to access it. status: 404 title: Not Found - traceId: e35800af9d2265ef2eacf0ae12da6a3b + traceId: d90b939488c0002afa6049595a44c1b6 - request: method: POST uri: http://localhost:3000/api/v1/entities/dataSources @@ -117,8 +117,8 @@ interactions: - name: projectId value: PROJECT_ID authenticationType: TOKEN - name: Test type: BIGQUERY + name: Test schema: demo id: test type: dataSource @@ -179,8 +179,8 @@ interactions: - name: projectId value: PROJECT_ID authenticationType: TOKEN - name: Test type: BIGQUERY + name: Test schema: demo id: test type: dataSource diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_cache_strategy.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_cache_strategy.yaml index ab204ab6d..1786f6cf0 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_cache_strategy.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_cache_strategy.yaml @@ -50,8 +50,8 @@ interactions: username: postgres authenticationType: USERNAME_PASSWORD alternativeDataSourceId: ds-put-abc-id - name: demo-test-ds type: POSTGRESQL + name: demo-test-ds schema: demo id: demo-test-ds type: dataSource @@ -115,8 +115,8 @@ interactions: cacheStrategy: NEVER authenticationType: USERNAME_PASSWORD alternativeDataSourceId: ds-put-abc-id - name: demo-test-ds type: POSTGRESQL + name: demo-test-ds schema: demo id: demo-test-ds type: dataSource @@ -171,8 +171,8 @@ interactions: cacheStrategy: NEVER authenticationType: USERNAME_PASSWORD alternativeDataSourceId: ds-put-abc-id - name: demo-test-ds type: POSTGRESQL + name: demo-test-ds schema: demo id: demo-test-ds type: dataSource diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_data_sources_list.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_data_sources_list.yaml index e3009faad..75712194c 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_data_sources_list.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_data_sources_list.yaml @@ -22,7 +22,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '533' + - '491' Content-Type: - application/json DATE: &id001 @@ -49,9 +49,8 @@ interactions: url: jdbc:postgresql://postgres:5432/tiger?sslmode=prefer username: postgres authenticationType: USERNAME_PASSWORD - alternativeDataSourceId: ds-put-abc-id - name: demo-test-ds type: POSTGRESQL + name: demo-test-ds schema: demo id: demo-test-ds links: diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_load_and_put_declarative_data_sources.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_load_and_put_declarative_data_sources.yaml index 6e06511c6..cff15b46f 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_load_and_put_declarative_data_sources.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_load_and_put_declarative_data_sources.yaml @@ -102,7 +102,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '450' + - '430' Content-Type: - application/vnd.gooddata.api+json DATE: *id001 @@ -127,7 +127,6 @@ interactions: attributes: name: Default Organization hostname: localhost - allowedOrigins: [] earlyAccess: enableAlerting earlyAccessValues: - enableAlerting diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_put_declarative_data_sources_connection.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_put_declarative_data_sources_connection.yaml index 7eccda724..7391f96ad 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_put_declarative_data_sources_connection.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_put_declarative_data_sources_connection.yaml @@ -90,7 +90,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '81' + - '82' Content-Type: - application/json DATE: *id001 @@ -113,7 +113,7 @@ interactions: string: queryDurationMillis: createCacheTable: 0 - simpleSelect: 2 + simpleSelect: 13 successful: true - request: method: PUT diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_register_upload_notification.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_register_upload_notification.yaml index 982c1b25a..92995645e 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_register_upload_notification.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_register_upload_notification.yaml @@ -481,7 +481,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - cd5b7343-e815-4e46-be8f-eb08f408d0b7 + - e34222b2-f408-4fab-83bd-f3e0c76320b4 X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -496,7 +496,7 @@ interactions: name: '# of Active Customers' localIdentifier: dim_0 links: - executionResult: 6c54156f3a9deb1a3a683abf8fe02d4cda602897:34112baf98a1f1725e7443a79e2f273928ea8c90f12268e9688f82889995b4a2 + executionResult: 4c0ed2507a2ed0cdbd1c339e840fc87ebbbbb513:4f9dd40adf4f1c0c5cd39016efd25c02e2024ce88dc05c56aa69649d1086fe05 - request: method: POST uri: http://localhost:3000/api/v1/actions/dataSources/demo-test-ds/uploadNotification @@ -593,7 +593,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - 8ae956c5-c4ee-4723-ad40-ecc2abea15b4 + - dca56864-8aa0-40a3-8369-bebd91f47375 X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -608,4 +608,4 @@ interactions: name: '# of Active Customers' localIdentifier: dim_0 links: - executionResult: 298094bbe4806e8a185985fad85fc888f68b8cb1:44680f8e697e42ce87d7350e0dc5372523cafee8b0c742e5a67872517346a08e + executionResult: ba73679655f46ccf86e63851e6d4489f8f1bcfdd:d99c949238d57882d207dd94dd1733c4a322843c450244a1e64e21a43ba6d013 diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_store_declarative_data_sources.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_store_declarative_data_sources.yaml index a4f5aa2b5..bb71d0522 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_store_declarative_data_sources.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_store_declarative_data_sources.yaml @@ -183,7 +183,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '450' + - '430' Content-Type: - application/vnd.gooddata.api+json DATE: *id001 @@ -208,7 +208,6 @@ interactions: attributes: name: Default Organization hostname: localhost - allowedOrigins: [] earlyAccess: enableAlerting earlyAccessValues: - enableAlerting @@ -284,7 +283,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '450' + - '430' Content-Type: - application/vnd.gooddata.api+json DATE: *id001 @@ -309,7 +308,6 @@ interactions: attributes: name: Default Organization hostname: localhost - allowedOrigins: [] earlyAccess: enableAlerting earlyAccessValues: - enableAlerting diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_test_declarative_data_sources.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_test_declarative_data_sources.yaml index f4dc98b7c..408091fe3 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_test_declarative_data_sources.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/demo_test_declarative_data_sources.yaml @@ -166,5 +166,5 @@ interactions: string: queryDurationMillis: createCacheTable: 0 - simpleSelect: 1 + simpleSelect: 5 successful: true diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/dremio.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/dremio.yaml index 9047ac498..681939df5 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/dremio.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/dremio.yaml @@ -48,7 +48,7 @@ interactions: to access it. status: 404 title: Not Found - traceId: 446d0c9d64d03ef713538fb92a4e97b3 + traceId: b63978defa31c68ca546c1ab343a448d - request: method: POST uri: http://localhost:3000/api/v1/entities/dataSources @@ -108,8 +108,8 @@ interactions: url: jdbc:dremio:direct=dremio:31010 username: demouser authenticationType: USERNAME_PASSWORD - name: Dremio type: DREMIO + name: Dremio schema: '' id: dremio type: dataSource @@ -162,8 +162,8 @@ interactions: url: jdbc:dremio:direct=dremio:31010 username: demouser authenticationType: USERNAME_PASSWORD - name: Dremio type: DREMIO + name: Dremio schema: '' id: dremio type: dataSource diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/patch.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/patch.yaml index d3cdbd1e7..562cf508b 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/patch.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/patch.yaml @@ -22,7 +22,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '533' + - '491' Content-Type: - application/json DATE: &id001 @@ -49,9 +49,8 @@ interactions: url: jdbc:postgresql://postgres:5432/tiger?sslmode=prefer username: postgres authenticationType: USERNAME_PASSWORD - alternativeDataSourceId: ds-put-abc-id - name: demo-test-ds type: POSTGRESQL + name: demo-test-ds schema: demo id: demo-test-ds links: @@ -106,7 +105,7 @@ interactions: to access it. status: 404 title: Not Found - traceId: 6edc01acd4632fd5df20b6097e53e244 + traceId: f86c79144f9a36d6f9348cbacfb8db41 - request: method: POST uri: http://localhost:3000/api/v1/entities/dataSources @@ -166,8 +165,8 @@ interactions: url: jdbc:postgresql://localhost:5432/demo?autosave=true&sslmode=prefer username: demouser authenticationType: USERNAME_PASSWORD - name: Test type: POSTGRESQL + name: Test schema: demo id: test type: dataSource @@ -220,8 +219,8 @@ interactions: url: jdbc:postgresql://localhost:5432/demo?autosave=true&sslmode=prefer username: demouser authenticationType: USERNAME_PASSWORD - name: Test type: POSTGRESQL + name: Test schema: demo id: test type: dataSource @@ -274,8 +273,8 @@ interactions: url: jdbc:postgresql://localhost:5432/demo?autosave=true&sslmode=prefer username: demouser authenticationType: USERNAME_PASSWORD - name: Test type: POSTGRESQL + name: Test schema: demo id: test type: dataSource @@ -339,8 +338,8 @@ interactions: username: demouser authenticationType: USERNAME_PASSWORD alternativeDataSourceId: ds-patch-abc-id - name: Test2 type: POSTGRESQL + name: Test2 schema: demo id: test type: dataSource @@ -394,8 +393,8 @@ interactions: username: demouser authenticationType: USERNAME_PASSWORD alternativeDataSourceId: ds-patch-abc-id - name: Test2 type: POSTGRESQL + name: Test2 schema: demo id: test type: dataSource diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/redshift.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/redshift.yaml index d033cbb1f..4599d9f01 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/redshift.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/redshift.yaml @@ -48,7 +48,7 @@ interactions: to access it. status: 404 title: Not Found - traceId: b69b109ae77d43f5d98f70ec41344fde + traceId: 324c02acf3782a683f008bd594d4b384 - request: method: POST uri: http://localhost:3000/api/v1/entities/dataSources @@ -110,8 +110,8 @@ interactions: username: demouser authenticationType: USERNAME_PASSWORD alternativeDataSourceId: ds-abc-id - name: Test2 type: REDSHIFT + name: Test2 schema: demo id: test type: dataSource @@ -165,8 +165,8 @@ interactions: username: demouser authenticationType: USERNAME_PASSWORD alternativeDataSourceId: ds-abc-id - name: Test2 type: REDSHIFT + name: Test2 schema: demo id: test type: dataSource diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/snowflake.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/snowflake.yaml index 432ceb7c2..38cb0a061 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/snowflake.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/snowflake.yaml @@ -48,7 +48,7 @@ interactions: to access it. status: 404 title: Not Found - traceId: 20f1abee31c988a186548c866b04d907 + traceId: 4cf75552de66e723c0f7c68c17035293 - request: method: POST uri: http://localhost:3000/api/v1/entities/dataSources @@ -108,8 +108,8 @@ interactions: url: jdbc:snowflake://gooddata.snowflakecomputing.com:443/?application=GoodData_GoodDataCN&db=TIGER&useProxy=true&warehouse=TIGER username: demouser authenticationType: USERNAME_PASSWORD - name: Test type: SNOWFLAKE + name: Test schema: demo id: test type: dataSource @@ -162,8 +162,8 @@ interactions: url: jdbc:snowflake://gooddata.snowflakecomputing.com:443/?application=GoodData_GoodDataCN&db=TIGER&useProxy=true&warehouse=TIGER username: demouser authenticationType: USERNAME_PASSWORD - name: Test type: SNOWFLAKE + name: Test schema: demo id: test type: dataSource @@ -253,7 +253,7 @@ interactions: to access it. status: 404 title: Not Found - traceId: 3b93311a9c03c87025a227dd409303de + traceId: e09194bf37bb65497db2e23dca921296 - request: method: POST uri: http://localhost:3000/api/v1/entities/dataSources @@ -314,8 +314,8 @@ interactions: url: jdbc:snowflake://gooddata.snowflakecomputing.com:443/?application=GoodData_GoodDataCN&db=TIGER&useProxy=true&warehouse=TIGER username: demouser authenticationType: KEY_PAIR - name: Test type: SNOWFLAKE + name: Test schema: demo id: test type: dataSource @@ -368,8 +368,8 @@ interactions: url: jdbc:snowflake://gooddata.snowflakecomputing.com:443/?application=GoodData_GoodDataCN&db=TIGER&useProxy=true&warehouse=TIGER username: demouser authenticationType: KEY_PAIR - name: Test type: SNOWFLAKE + name: Test schema: demo id: test type: dataSource diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/test_create_update.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/test_create_update.yaml index 1524f3ac6..bce766be1 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/test_create_update.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/test_create_update.yaml @@ -22,7 +22,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '533' + - '491' Content-Type: - application/json DATE: &id001 @@ -49,9 +49,8 @@ interactions: url: jdbc:postgresql://postgres:5432/tiger?sslmode=prefer username: postgres authenticationType: USERNAME_PASSWORD - alternativeDataSourceId: ds-put-abc-id - name: demo-test-ds type: POSTGRESQL + name: demo-test-ds schema: demo id: demo-test-ds links: @@ -106,7 +105,7 @@ interactions: to access it. status: 404 title: Not Found - traceId: f6096509921bc44f358b9d340fc53c83 + traceId: d61e83e698c733efd8f092e18379bea6 - request: method: POST uri: http://localhost:3000/api/v1/entities/dataSources @@ -166,8 +165,8 @@ interactions: url: jdbc:postgresql://localhost:5432/demo?autosave=true&sslmode=prefer username: demouser authenticationType: USERNAME_PASSWORD - name: Test type: POSTGRESQL + name: Test schema: demo id: test type: dataSource @@ -220,8 +219,8 @@ interactions: url: jdbc:postgresql://localhost:5432/demo?autosave=true&sslmode=prefer username: demouser authenticationType: USERNAME_PASSWORD - name: Test type: POSTGRESQL + name: Test schema: demo id: test type: dataSource @@ -274,8 +273,8 @@ interactions: url: jdbc:postgresql://localhost:5432/demo?autosave=true&sslmode=prefer username: demouser authenticationType: USERNAME_PASSWORD - name: Test type: POSTGRESQL + name: Test schema: demo id: test type: dataSource @@ -340,8 +339,8 @@ interactions: url: jdbc:postgresql://localhost:5432/demo?autosave=false&sslmode=prefer username: demouser authenticationType: USERNAME_PASSWORD - name: Test2 type: POSTGRESQL + name: Test2 schema: demo id: test type: dataSource @@ -368,7 +367,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '846' + - '804' Content-Type: - application/json DATE: *id001 @@ -394,9 +393,8 @@ interactions: url: jdbc:postgresql://postgres:5432/tiger?sslmode=prefer username: postgres authenticationType: USERNAME_PASSWORD - alternativeDataSourceId: ds-put-abc-id - name: demo-test-ds type: POSTGRESQL + name: demo-test-ds schema: demo id: demo-test-ds links: @@ -406,8 +404,8 @@ interactions: url: jdbc:postgresql://localhost:5432/demo?autosave=false&sslmode=prefer username: demouser authenticationType: USERNAME_PASSWORD - name: Test2 type: POSTGRESQL + name: Test2 schema: demo id: test links: @@ -475,7 +473,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '533' + - '491' Content-Type: - application/json DATE: *id001 @@ -501,9 +499,8 @@ interactions: url: jdbc:postgresql://postgres:5432/tiger?sslmode=prefer username: postgres authenticationType: USERNAME_PASSWORD - alternativeDataSourceId: ds-put-abc-id - name: demo-test-ds type: POSTGRESQL + name: demo-test-ds schema: demo id: demo-test-ds links: diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/vertica.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/vertica.yaml index 291bfc708..077f62c11 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/vertica.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/data_sources/vertica.yaml @@ -48,7 +48,7 @@ interactions: to access it. status: 404 title: Not Found - traceId: d5f4266feea469875638ff47bc979a0b + traceId: 50ab98fc73169db1e16211918da0afee - request: method: POST uri: http://localhost:3000/api/v1/entities/dataSources @@ -108,8 +108,8 @@ interactions: url: jdbc:vertica://localhost:5433/demo?TLSmode=false username: demouser authenticationType: USERNAME_PASSWORD - name: Test2 type: VERTICA + name: Test2 schema: demo id: test type: dataSource @@ -162,8 +162,8 @@ interactions: url: jdbc:vertica://localhost:5433/demo?TLSmode=false username: demouser authenticationType: USERNAME_PASSWORD - name: Test2 type: VERTICA + name: Test2 schema: demo id: test type: dataSource diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/organization/create_jwk.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/organization/create_jwk.yaml index 35ea1761e..c9b46fe79 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/organization/create_jwk.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/organization/create_jwk.yaml @@ -48,7 +48,7 @@ interactions: to access it. status: 404 title: Not Found - traceId: 4f06186da942ae24741ff7c17490bc1b + traceId: 5765adf5c8a130e2ff955b2dbd5b081a - request: method: POST uri: http://localhost:3000/api/v1/entities/jwks diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/organization/delete_csp_directive.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/organization/delete_csp_directive.yaml index 537437ccc..6c1fe1cc4 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/organization/delete_csp_directive.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/organization/delete_csp_directive.yaml @@ -144,7 +144,7 @@ interactions: to access it. status: 404 title: Not Found - traceId: 58311a843d474a75851bbb9c29023751 + traceId: f264d2d766bbd7ae60058e329dfa5090 - request: method: GET uri: http://localhost:3000/api/v1/entities/cspDirectives?page=0&size=500 diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/organization/delete_jwk.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/organization/delete_jwk.yaml index 0dfc695b6..f685dd91c 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/organization/delete_jwk.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/organization/delete_jwk.yaml @@ -48,7 +48,7 @@ interactions: to access it. status: 404 title: Not Found - traceId: c6dab2dcd27324838dd704056a191a7e + traceId: 26e86c74c00dbadaa3c0d26e9b4cacaa - request: method: POST uri: http://localhost:3000/api/v1/entities/jwks @@ -207,7 +207,7 @@ interactions: to access it. status: 404 title: Not Found - traceId: 7b347cf9b6ae8a3b7de3555181db526f + traceId: b4d1eb921615509c521767c5d3c6fe68 - request: method: GET uri: http://localhost:3000/api/v1/entities/jwks?page=0&size=500 diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/organization/delete_llm_endpoint.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/organization/delete_llm_endpoint.yaml index 4ff3bc272..a32451130 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/organization/delete_llm_endpoint.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/organization/delete_llm_endpoint.yaml @@ -145,7 +145,7 @@ interactions: to access it. status: 404 title: Not Found - traceId: f7f8ef5d6322257623163d7951267938 + traceId: c657d9dc47cadc6183b4ac712f500926 - request: method: DELETE uri: http://localhost:3000/api/v1/entities/llmEndpoints/endpoint1 diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/organization/delete_organization_setting.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/organization/delete_organization_setting.yaml index c2533d3c5..801937047 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/organization/delete_organization_setting.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/organization/delete_organization_setting.yaml @@ -146,7 +146,7 @@ interactions: to access it. status: 404 title: Not Found - traceId: 10107387cc439bd0d1874921776551af + traceId: eade9edee77e4a2059b1fb6d59d2ace8 - request: method: GET uri: http://localhost:3000/api/v1/entities/organizationSettings?page=0&size=500 diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/organization/list_jwk.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/organization/list_jwk.yaml index 99f704491..09250ac3f 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/organization/list_jwk.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/organization/list_jwk.yaml @@ -48,7 +48,7 @@ interactions: to access it. status: 404 title: Not Found - traceId: 11a5c4063d8bcb74460f4bf6ca0fdc70 + traceId: 5805bf88897de31c2cd224c06156e025 - request: method: POST uri: http://localhost:3000/api/v1/entities/jwks @@ -169,7 +169,7 @@ interactions: to access it. status: 404 title: Not Found - traceId: e80a5bc704ef3d84ef60c7ea83cfd6b3 + traceId: 3bc666007e4300f5486c292095721e20 - request: method: POST uri: http://localhost:3000/api/v1/entities/jwks diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/organization/organization.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/organization/organization.yaml index 670d38fe5..834bac0a2 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/organization/organization.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/organization/organization.yaml @@ -63,7 +63,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '450' + - '430' Content-Type: - application/vnd.gooddata.api+json DATE: *id001 @@ -88,7 +88,6 @@ interactions: attributes: name: Default Organization hostname: localhost - allowedOrigins: [] earlyAccess: enableAlerting earlyAccessValues: - enableAlerting diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/organization/update_allowed_origins.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/organization/update_allowed_origins.yaml index c399838ee..b9fd9a7c4 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/organization/update_allowed_origins.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/organization/update_allowed_origins.yaml @@ -63,7 +63,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '450' + - '430' Content-Type: - application/vnd.gooddata.api+json DATE: *id001 @@ -88,7 +88,6 @@ interactions: attributes: name: Default Organization hostname: localhost - allowedOrigins: [] earlyAccess: enableAlerting earlyAccessValues: - enableAlerting diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/organization/update_jwk.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/organization/update_jwk.yaml index 6c851d824..9bec41d53 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/organization/update_jwk.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/organization/update_jwk.yaml @@ -48,7 +48,7 @@ interactions: to access it. status: 404 title: Not Found - traceId: 5163ba948077b90a7fb6feb605cf5ca6 + traceId: cf3452051f6c79a977b915ae0b35d9b5 - request: method: POST uri: http://localhost:3000/api/v1/entities/jwks diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/organization/update_name.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/organization/update_name.yaml index 66ff45f37..3e993735e 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/organization/update_name.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/organization/update_name.yaml @@ -63,7 +63,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '450' + - '430' Content-Type: - application/vnd.gooddata.api+json DATE: *id001 @@ -88,7 +88,6 @@ interactions: attributes: name: Default Organization hostname: localhost - allowedOrigins: [] earlyAccess: enableAlerting earlyAccessValues: - enableAlerting @@ -164,7 +163,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '450' + - '430' Content-Type: - application/vnd.gooddata.api+json DATE: *id001 @@ -189,7 +188,6 @@ interactions: attributes: name: Default Organization hostname: localhost - allowedOrigins: [] earlyAccess: enableAlerting earlyAccessValues: - enableAlerting @@ -232,7 +230,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '447' + - '427' Content-Type: - application/json DATE: *id001 @@ -257,7 +255,6 @@ interactions: attributes: name: test_organization hostname: localhost - allowedOrigins: [] earlyAccess: enableAlerting earlyAccessValues: - enableAlerting @@ -333,7 +330,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '447' + - '427' Content-Type: - application/vnd.gooddata.api+json DATE: *id001 @@ -358,7 +355,6 @@ interactions: attributes: name: test_organization hostname: localhost - allowedOrigins: [] earlyAccess: enableAlerting earlyAccessValues: - enableAlerting @@ -434,7 +430,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '447' + - '427' Content-Type: - application/vnd.gooddata.api+json DATE: *id001 @@ -459,7 +455,6 @@ interactions: attributes: name: test_organization hostname: localhost - allowedOrigins: [] earlyAccess: enableAlerting earlyAccessValues: - enableAlerting @@ -502,7 +497,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '450' + - '430' Content-Type: - application/json DATE: *id001 @@ -527,7 +522,6 @@ interactions: attributes: name: Default Organization hostname: localhost - allowedOrigins: [] earlyAccess: enableAlerting earlyAccessValues: - enableAlerting @@ -603,7 +597,7 @@ interactions: Cache-Control: - no-cache, no-store, max-age=0, must-revalidate Content-Length: - - '450' + - '430' Content-Type: - application/vnd.gooddata.api+json DATE: *id001 @@ -628,7 +622,6 @@ interactions: attributes: name: Default Organization hostname: localhost - allowedOrigins: [] earlyAccess: enableAlerting earlyAccessValues: - enableAlerting diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/permissions/list_available_assignees.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/permissions/list_available_assignees.yaml index 39c2247da..15465e1e1 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/permissions/list_available_assignees.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/permissions/list_available_assignees.yaml @@ -45,8 +45,8 @@ interactions: body: string: userGroups: - - id: visitorsGroup - name: visitors - id: demoGroup name: demo group + - id: visitorsGroup + name: visitors users: [] diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/users/create_delete_user.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/users/create_delete_user.yaml index 141c0d056..8a4220b35 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/users/create_delete_user.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/users/create_delete_user.yaml @@ -56,7 +56,7 @@ interactions: type: userGroup type: user - attributes: - authenticationId: CiQ4ODg0NDU5Ny0zY2VjLTQ5MWItYmM1Ny1mMDQyOWQ0MTE4YjISBWxvY2Fs + authenticationId: CiRhNzhmZjA0Zi0xYjU1LTQwY2MtODQ0OS1jMmQzNGE4MGVjMzkSBWxvY2Fs firstname: Demo lastname: User email: demo@example.com @@ -70,7 +70,7 @@ interactions: type: userGroup type: user - attributes: - authenticationId: CiRlYWE5ZThhNS1hNDlhLTRiOTAtODYxZi0yMGJjZTA1Mjg0OTQSBWxvY2Fs + authenticationId: CiQxNzQyNzBmZC0wZjlkLTRkMTctYjU5Ni01OThhNzkzMDU3ODkSBWxvY2Fs id: demo2 links: self: http://localhost:3000/api/v1/entities/users/demo2 @@ -141,7 +141,7 @@ interactions: to access it. status: 404 title: Not Found - traceId: f2895902beb6483dd80c687d4d30a7df + traceId: 30520e29be2971de33a559438b57fc3c - request: method: POST uri: http://localhost:3000/api/v1/entities/users @@ -327,7 +327,7 @@ interactions: type: userGroup type: user - attributes: - authenticationId: CiQ4ODg0NDU5Ny0zY2VjLTQ5MWItYmM1Ny1mMDQyOWQ0MTE4YjISBWxvY2Fs + authenticationId: CiRhNzhmZjA0Zi0xYjU1LTQwY2MtODQ0OS1jMmQzNGE4MGVjMzkSBWxvY2Fs firstname: Demo lastname: User email: demo@example.com @@ -341,7 +341,7 @@ interactions: type: userGroup type: user - attributes: - authenticationId: CiRlYWE5ZThhNS1hNDlhLTRiOTAtODYxZi0yMGJjZTA1Mjg0OTQSBWxvY2Fs + authenticationId: CiQxNzQyNzBmZC0wZjlkLTRkMTctYjU5Ni01OThhNzkzMDU3ODkSBWxvY2Fs id: demo2 links: self: http://localhost:3000/api/v1/entities/users/demo2 @@ -472,7 +472,7 @@ interactions: type: userGroup type: user - attributes: - authenticationId: CiQ4ODg0NDU5Ny0zY2VjLTQ5MWItYmM1Ny1mMDQyOWQ0MTE4YjISBWxvY2Fs + authenticationId: CiRhNzhmZjA0Zi0xYjU1LTQwY2MtODQ0OS1jMmQzNGE4MGVjMzkSBWxvY2Fs firstname: Demo lastname: User email: demo@example.com @@ -486,7 +486,7 @@ interactions: type: userGroup type: user - attributes: - authenticationId: CiRlYWE5ZThhNS1hNDlhLTRiOTAtODYxZi0yMGJjZTA1Mjg0OTQSBWxvY2Fs + authenticationId: CiQxNzQyNzBmZC0wZjlkLTRkMTctYjU5Ni01OThhNzkzMDU3ODkSBWxvY2Fs id: demo2 links: self: http://localhost:3000/api/v1/entities/users/demo2 diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/users/create_delete_user_group.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/users/create_delete_user_group.yaml index e15552374..203852666 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/users/create_delete_user_group.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/users/create_delete_user_group.yaml @@ -138,7 +138,7 @@ interactions: to access it. status: 404 title: Not Found - traceId: c1580377051053ba828664b0e93b8523 + traceId: 834a429917d4ee64a936a957b20b4a1e - request: method: POST uri: http://localhost:3000/api/v1/entities/userGroups diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/users/get_declarative_users.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/users/get_declarative_users.yaml index 5374e98b9..c5743111d 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/users/get_declarative_users.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/users/get_declarative_users.yaml @@ -51,7 +51,7 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiQ4ODg0NDU5Ny0zY2VjLTQ5MWItYmM1Ny1mMDQyOWQ0MTE4YjISBWxvY2Fs + - authId: CiRhNzhmZjA0Zi0xYjU1LTQwY2MtODQ0OS1jMmQzNGE4MGVjMzkSBWxvY2Fs email: demo@example.com firstname: Demo id: demo @@ -61,7 +61,7 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiRlYWE5ZThhNS1hNDlhLTRiOTAtODYxZi0yMGJjZTA1Mjg0OTQSBWxvY2Fs + - authId: CiQxNzQyNzBmZC0wZjlkLTRkMTctYjU5Ni01OThhNzkzMDU3ODkSBWxvY2Fs id: demo2 permissions: [] settings: [] @@ -117,7 +117,7 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiQ4ODg0NDU5Ny0zY2VjLTQ5MWItYmM1Ny1mMDQyOWQ0MTE4YjISBWxvY2Fs + - authId: CiRhNzhmZjA0Zi0xYjU1LTQwY2MtODQ0OS1jMmQzNGE4MGVjMzkSBWxvY2Fs email: demo@example.com firstname: Demo id: demo @@ -127,7 +127,7 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiRlYWE5ZThhNS1hNDlhLTRiOTAtODYxZi0yMGJjZTA1Mjg0OTQSBWxvY2Fs + - authId: CiQxNzQyNzBmZC0wZjlkLTRkMTctYjU5Ni01OThhNzkzMDU3ODkSBWxvY2Fs id: demo2 permissions: [] settings: [] diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/users/get_declarative_users_user_groups.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/users/get_declarative_users_user_groups.yaml index 1498affd9..7b1f5abcd 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/users/get_declarative_users_user_groups.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/users/get_declarative_users_user_groups.yaml @@ -68,7 +68,7 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiQ4ODg0NDU5Ny0zY2VjLTQ5MWItYmM1Ny1mMDQyOWQ0MTE4YjISBWxvY2Fs + - authId: CiRhNzhmZjA0Zi0xYjU1LTQwY2MtODQ0OS1jMmQzNGE4MGVjMzkSBWxvY2Fs email: demo@example.com firstname: Demo id: demo @@ -78,7 +78,7 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiRlYWE5ZThhNS1hNDlhLTRiOTAtODYxZi0yMGJjZTA1Mjg0OTQSBWxvY2Fs + - authId: CiQxNzQyNzBmZC0wZjlkLTRkMTctYjU5Ni01OThhNzkzMDU3ODkSBWxvY2Fs id: demo2 permissions: [] settings: [] @@ -151,7 +151,7 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiQ4ODg0NDU5Ny0zY2VjLTQ5MWItYmM1Ny1mMDQyOWQ0MTE4YjISBWxvY2Fs + - authId: CiRhNzhmZjA0Zi0xYjU1LTQwY2MtODQ0OS1jMmQzNGE4MGVjMzkSBWxvY2Fs email: demo@example.com firstname: Demo id: demo @@ -161,7 +161,7 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiRlYWE5ZThhNS1hNDlhLTRiOTAtODYxZi0yMGJjZTA1Mjg0OTQSBWxvY2Fs + - authId: CiQxNzQyNzBmZC0wZjlkLTRkMTctYjU5Ni01OThhNzkzMDU3ODkSBWxvY2Fs id: demo2 permissions: [] settings: [] diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/users/get_user.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/users/get_user.yaml index 193893832..bd98a7951 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/users/get_user.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/users/get_user.yaml @@ -46,7 +46,7 @@ interactions: string: data: attributes: - authenticationId: CiRlYWE5ZThhNS1hNDlhLTRiOTAtODYxZi0yMGJjZTA1Mjg0OTQSBWxvY2Fs + authenticationId: CiQxNzQyNzBmZC0wZjlkLTRkMTctYjU5Ni01OThhNzkzMDU3ODkSBWxvY2Fs id: demo2 relationships: userGroups: diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/users/list_users.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/users/list_users.yaml index 884b2884d..d8df3cccd 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/users/list_users.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/users/list_users.yaml @@ -56,7 +56,7 @@ interactions: type: userGroup type: user - attributes: - authenticationId: CiQ4ODg0NDU5Ny0zY2VjLTQ5MWItYmM1Ny1mMDQyOWQ0MTE4YjISBWxvY2Fs + authenticationId: CiRhNzhmZjA0Zi0xYjU1LTQwY2MtODQ0OS1jMmQzNGE4MGVjMzkSBWxvY2Fs firstname: Demo lastname: User email: demo@example.com @@ -70,7 +70,7 @@ interactions: type: userGroup type: user - attributes: - authenticationId: CiRlYWE5ZThhNS1hNDlhLTRiOTAtODYxZi0yMGJjZTA1Mjg0OTQSBWxvY2Fs + authenticationId: CiQxNzQyNzBmZC0wZjlkLTRkMTctYjU5Ni01OThhNzkzMDU3ODkSBWxvY2Fs id: demo2 links: self: http://localhost:3000/api/v1/entities/users/demo2 diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/users/load_and_put_declarative_user_groups.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/users/load_and_put_declarative_user_groups.yaml index 42128bdaf..f3e1b711c 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/users/load_and_put_declarative_user_groups.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/users/load_and_put_declarative_user_groups.yaml @@ -51,7 +51,7 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiQ4ODg0NDU5Ny0zY2VjLTQ5MWItYmM1Ny1mMDQyOWQ0MTE4YjISBWxvY2Fs + - authId: CiRhNzhmZjA0Zi0xYjU1LTQwY2MtODQ0OS1jMmQzNGE4MGVjMzkSBWxvY2Fs email: demo@example.com firstname: Demo id: demo @@ -61,7 +61,7 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiRlYWE5ZThhNS1hNDlhLTRiOTAtODYxZi0yMGJjZTA1Mjg0OTQSBWxvY2Fs + - authId: CiQxNzQyNzBmZC0wZjlkLTRkMTctYjU5Ni01OThhNzkzMDU3ODkSBWxvY2Fs id: demo2 permissions: [] settings: [] @@ -181,7 +181,7 @@ interactions: type: userGroup type: user - attributes: - authenticationId: CiQ4ODg0NDU5Ny0zY2VjLTQ5MWItYmM1Ny1mMDQyOWQ0MTE4YjISBWxvY2Fs + authenticationId: CiRhNzhmZjA0Zi0xYjU1LTQwY2MtODQ0OS1jMmQzNGE4MGVjMzkSBWxvY2Fs firstname: Demo lastname: User email: demo@example.com @@ -195,7 +195,7 @@ interactions: type: userGroup type: user - attributes: - authenticationId: CiRlYWE5ZThhNS1hNDlhLTRiOTAtODYxZi0yMGJjZTA1Mjg0OTQSBWxvY2Fs + authenticationId: CiQxNzQyNzBmZC0wZjlkLTRkMTctYjU5Ni01OThhNzkzMDU3ODkSBWxvY2Fs id: demo2 links: self: http://localhost:3000/api/v1/entities/users/demo2 @@ -548,14 +548,14 @@ interactions: email: demo@example.com firstname: Demo lastname: User - authId: CiQ4ODg0NDU5Ny0zY2VjLTQ5MWItYmM1Ny1mMDQyOWQ0MTE4YjISBWxvY2Fs + authId: CiRhNzhmZjA0Zi0xYjU1LTQwY2MtODQ0OS1jMmQzNGE4MGVjMzkSBWxvY2Fs userGroups: - id: adminGroup type: userGroup settings: [] permissions: [] - id: demo2 - authId: CiRlYWE5ZThhNS1hNDlhLTRiOTAtODYxZi0yMGJjZTA1Mjg0OTQSBWxvY2Fs + authId: CiQxNzQyNzBmZC0wZjlkLTRkMTctYjU5Ni01OThhNzkzMDU3ODkSBWxvY2Fs userGroups: - id: demoGroup type: userGroup diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/users/load_and_put_declarative_users.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/users/load_and_put_declarative_users.yaml index ddea2ce20..cd353c345 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/users/load_and_put_declarative_users.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/users/load_and_put_declarative_users.yaml @@ -51,7 +51,7 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiQ4ODg0NDU5Ny0zY2VjLTQ5MWItYmM1Ny1mMDQyOWQ0MTE4YjISBWxvY2Fs + - authId: CiRhNzhmZjA0Zi0xYjU1LTQwY2MtODQ0OS1jMmQzNGE4MGVjMzkSBWxvY2Fs email: demo@example.com firstname: Demo id: demo @@ -61,7 +61,7 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiRlYWE5ZThhNS1hNDlhLTRiOTAtODYxZi0yMGJjZTA1Mjg0OTQSBWxvY2Fs + - authId: CiQxNzQyNzBmZC0wZjlkLTRkMTctYjU5Ni01OThhNzkzMDU3ODkSBWxvY2Fs id: demo2 permissions: [] settings: [] @@ -122,7 +122,7 @@ interactions: type: userGroup type: user - attributes: - authenticationId: CiQ4ODg0NDU5Ny0zY2VjLTQ5MWItYmM1Ny1mMDQyOWQ0MTE4YjISBWxvY2Fs + authenticationId: CiRhNzhmZjA0Zi0xYjU1LTQwY2MtODQ0OS1jMmQzNGE4MGVjMzkSBWxvY2Fs firstname: Demo lastname: User email: demo@example.com @@ -136,7 +136,7 @@ interactions: type: userGroup type: user - attributes: - authenticationId: CiRlYWE5ZThhNS1hNDlhLTRiOTAtODYxZi0yMGJjZTA1Mjg0OTQSBWxvY2Fs + authenticationId: CiQxNzQyNzBmZC0wZjlkLTRkMTctYjU5Ni01OThhNzkzMDU3ODkSBWxvY2Fs id: demo2 links: self: http://localhost:3000/api/v1/entities/users/demo2 @@ -399,14 +399,14 @@ interactions: email: demo@example.com firstname: Demo lastname: User - authId: CiQ4ODg0NDU5Ny0zY2VjLTQ5MWItYmM1Ny1mMDQyOWQ0MTE4YjISBWxvY2Fs + authId: CiRhNzhmZjA0Zi0xYjU1LTQwY2MtODQ0OS1jMmQzNGE4MGVjMzkSBWxvY2Fs userGroups: - id: adminGroup type: userGroup settings: [] permissions: [] - id: demo2 - authId: CiRlYWE5ZThhNS1hNDlhLTRiOTAtODYxZi0yMGJjZTA1Mjg0OTQSBWxvY2Fs + authId: CiQxNzQyNzBmZC0wZjlkLTRkMTctYjU5Ni01OThhNzkzMDU3ODkSBWxvY2Fs userGroups: - id: demoGroup type: userGroup diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/users/load_and_put_declarative_users_user_groups.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/users/load_and_put_declarative_users_user_groups.yaml index e8bf8f3f8..be83e403c 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/users/load_and_put_declarative_users_user_groups.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/users/load_and_put_declarative_users_user_groups.yaml @@ -68,7 +68,7 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiQ4ODg0NDU5Ny0zY2VjLTQ5MWItYmM1Ny1mMDQyOWQ0MTE4YjISBWxvY2Fs + - authId: CiRhNzhmZjA0Zi0xYjU1LTQwY2MtODQ0OS1jMmQzNGE4MGVjMzkSBWxvY2Fs email: demo@example.com firstname: Demo id: demo @@ -78,7 +78,7 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiRlYWE5ZThhNS1hNDlhLTRiOTAtODYxZi0yMGJjZTA1Mjg0OTQSBWxvY2Fs + - authId: CiQxNzQyNzBmZC0wZjlkLTRkMTctYjU5Ni01OThhNzkzMDU3ODkSBWxvY2Fs id: demo2 permissions: [] settings: [] @@ -139,7 +139,7 @@ interactions: type: userGroup type: user - attributes: - authenticationId: CiQ4ODg0NDU5Ny0zY2VjLTQ5MWItYmM1Ny1mMDQyOWQ0MTE4YjISBWxvY2Fs + authenticationId: CiRhNzhmZjA0Zi0xYjU1LTQwY2MtODQ0OS1jMmQzNGE4MGVjMzkSBWxvY2Fs firstname: Demo lastname: User email: demo@example.com @@ -153,7 +153,7 @@ interactions: type: userGroup type: user - attributes: - authenticationId: CiRlYWE5ZThhNS1hNDlhLTRiOTAtODYxZi0yMGJjZTA1Mjg0OTQSBWxvY2Fs + authenticationId: CiQxNzQyNzBmZC0wZjlkLTRkMTctYjU5Ni01OThhNzkzMDU3ODkSBWxvY2Fs id: demo2 links: self: http://localhost:3000/api/v1/entities/users/demo2 @@ -510,14 +510,14 @@ interactions: email: demo@example.com firstname: Demo lastname: User - authId: CiQ4ODg0NDU5Ny0zY2VjLTQ5MWItYmM1Ny1mMDQyOWQ0MTE4YjISBWxvY2Fs + authId: CiRhNzhmZjA0Zi0xYjU1LTQwY2MtODQ0OS1jMmQzNGE4MGVjMzkSBWxvY2Fs userGroups: - id: adminGroup type: userGroup settings: [] permissions: [] - id: demo2 - authId: CiRlYWE5ZThhNS1hNDlhLTRiOTAtODYxZi0yMGJjZTA1Mjg0OTQSBWxvY2Fs + authId: CiQxNzQyNzBmZC0wZjlkLTRkMTctYjU5Ni01OThhNzkzMDU3ODkSBWxvY2Fs userGroups: - id: demoGroup type: userGroup diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/users/put_declarative_user_groups.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/users/put_declarative_user_groups.yaml index 019358176..30471d558 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/users/put_declarative_user_groups.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/users/put_declarative_user_groups.yaml @@ -110,7 +110,7 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiQ4ODg0NDU5Ny0zY2VjLTQ5MWItYmM1Ny1mMDQyOWQ0MTE4YjISBWxvY2Fs + - authId: CiRhNzhmZjA0Zi0xYjU1LTQwY2MtODQ0OS1jMmQzNGE4MGVjMzkSBWxvY2Fs email: demo@example.com firstname: Demo id: demo @@ -120,7 +120,7 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiRlYWE5ZThhNS1hNDlhLTRiOTAtODYxZi0yMGJjZTA1Mjg0OTQSBWxvY2Fs + - authId: CiQxNzQyNzBmZC0wZjlkLTRkMTctYjU5Ni01OThhNzkzMDU3ODkSBWxvY2Fs id: demo2 permissions: [] settings: [] @@ -181,7 +181,7 @@ interactions: type: userGroup type: user - attributes: - authenticationId: CiQ4ODg0NDU5Ny0zY2VjLTQ5MWItYmM1Ny1mMDQyOWQ0MTE4YjISBWxvY2Fs + authenticationId: CiRhNzhmZjA0Zi0xYjU1LTQwY2MtODQ0OS1jMmQzNGE4MGVjMzkSBWxvY2Fs firstname: Demo lastname: User email: demo@example.com @@ -195,7 +195,7 @@ interactions: type: userGroup type: user - attributes: - authenticationId: CiRlYWE5ZThhNS1hNDlhLTRiOTAtODYxZi0yMGJjZTA1Mjg0OTQSBWxvY2Fs + authenticationId: CiQxNzQyNzBmZC0wZjlkLTRkMTctYjU5Ni01OThhNzkzMDU3ODkSBWxvY2Fs id: demo2 links: self: http://localhost:3000/api/v1/entities/users/demo2 @@ -447,14 +447,14 @@ interactions: email: demo@example.com firstname: Demo lastname: User - authId: CiQ4ODg0NDU5Ny0zY2VjLTQ5MWItYmM1Ny1mMDQyOWQ0MTE4YjISBWxvY2Fs + authId: CiRhNzhmZjA0Zi0xYjU1LTQwY2MtODQ0OS1jMmQzNGE4MGVjMzkSBWxvY2Fs userGroups: - id: adminGroup type: userGroup settings: [] permissions: [] - id: demo2 - authId: CiRlYWE5ZThhNS1hNDlhLTRiOTAtODYxZi0yMGJjZTA1Mjg0OTQSBWxvY2Fs + authId: CiQxNzQyNzBmZC0wZjlkLTRkMTctYjU5Ni01OThhNzkzMDU3ODkSBWxvY2Fs userGroups: - id: demoGroup type: userGroup diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/users/put_declarative_users.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/users/put_declarative_users.yaml index 405d702cb..299c7030f 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/users/put_declarative_users.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/users/put_declarative_users.yaml @@ -51,7 +51,7 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiQ4ODg0NDU5Ny0zY2VjLTQ5MWItYmM1Ny1mMDQyOWQ0MTE4YjISBWxvY2Fs + - authId: CiRhNzhmZjA0Zi0xYjU1LTQwY2MtODQ0OS1jMmQzNGE4MGVjMzkSBWxvY2Fs email: demo@example.com firstname: Demo id: demo @@ -61,7 +61,7 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiRlYWE5ZThhNS1hNDlhLTRiOTAtODYxZi0yMGJjZTA1Mjg0OTQSBWxvY2Fs + - authId: CiQxNzQyNzBmZC0wZjlkLTRkMTctYjU5Ni01OThhNzkzMDU3ODkSBWxvY2Fs id: demo2 permissions: [] settings: [] @@ -122,7 +122,7 @@ interactions: type: userGroup type: user - attributes: - authenticationId: CiQ4ODg0NDU5Ny0zY2VjLTQ5MWItYmM1Ny1mMDQyOWQ0MTE4YjISBWxvY2Fs + authenticationId: CiRhNzhmZjA0Zi0xYjU1LTQwY2MtODQ0OS1jMmQzNGE4MGVjMzkSBWxvY2Fs firstname: Demo lastname: User email: demo@example.com @@ -136,7 +136,7 @@ interactions: type: userGroup type: user - attributes: - authenticationId: CiRlYWE5ZThhNS1hNDlhLTRiOTAtODYxZi0yMGJjZTA1Mjg0OTQSBWxvY2Fs + authenticationId: CiQxNzQyNzBmZC0wZjlkLTRkMTctYjU5Ni01OThhNzkzMDU3ODkSBWxvY2Fs id: demo2 links: self: http://localhost:3000/api/v1/entities/users/demo2 @@ -176,14 +176,14 @@ interactions: email: demo@example.com firstname: Demo lastname: User - authId: CiQ4ODg0NDU5Ny0zY2VjLTQ5MWItYmM1Ny1mMDQyOWQ0MTE4YjISBWxvY2Fs + authId: CiRhNzhmZjA0Zi0xYjU1LTQwY2MtODQ0OS1jMmQzNGE4MGVjMzkSBWxvY2Fs userGroups: - id: adminGroup type: userGroup settings: [] permissions: [] - id: demo2 - authId: CiRlYWE5ZThhNS1hNDlhLTRiOTAtODYxZi0yMGJjZTA1Mjg0OTQSBWxvY2Fs + authId: CiQxNzQyNzBmZC0wZjlkLTRkMTctYjU5Ni01OThhNzkzMDU3ODkSBWxvY2Fs userGroups: - id: demoGroup type: userGroup @@ -272,7 +272,7 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiQ4ODg0NDU5Ny0zY2VjLTQ5MWItYmM1Ny1mMDQyOWQ0MTE4YjISBWxvY2Fs + - authId: CiRhNzhmZjA0Zi0xYjU1LTQwY2MtODQ0OS1jMmQzNGE4MGVjMzkSBWxvY2Fs email: demo@example.com firstname: Demo id: demo @@ -282,7 +282,7 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiRlYWE5ZThhNS1hNDlhLTRiOTAtODYxZi0yMGJjZTA1Mjg0OTQSBWxvY2Fs + - authId: CiQxNzQyNzBmZC0wZjlkLTRkMTctYjU5Ni01OThhNzkzMDU3ODkSBWxvY2Fs id: demo2 permissions: [] settings: [] @@ -304,14 +304,14 @@ interactions: email: demo@example.com firstname: Demo lastname: User - authId: CiQ4ODg0NDU5Ny0zY2VjLTQ5MWItYmM1Ny1mMDQyOWQ0MTE4YjISBWxvY2Fs + authId: CiRhNzhmZjA0Zi0xYjU1LTQwY2MtODQ0OS1jMmQzNGE4MGVjMzkSBWxvY2Fs userGroups: - id: adminGroup type: userGroup settings: [] permissions: [] - id: demo2 - authId: CiRlYWE5ZThhNS1hNDlhLTRiOTAtODYxZi0yMGJjZTA1Mjg0OTQSBWxvY2Fs + authId: CiQxNzQyNzBmZC0wZjlkLTRkMTctYjU5Ni01OThhNzkzMDU3ODkSBWxvY2Fs userGroups: - id: demoGroup type: userGroup diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/users/put_declarative_users_user_groups.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/users/put_declarative_users_user_groups.yaml index aeb5b526e..52707c9fa 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/users/put_declarative_users_user_groups.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/users/put_declarative_users_user_groups.yaml @@ -68,7 +68,7 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiQ4ODg0NDU5Ny0zY2VjLTQ5MWItYmM1Ny1mMDQyOWQ0MTE4YjISBWxvY2Fs + - authId: CiRhNzhmZjA0Zi0xYjU1LTQwY2MtODQ0OS1jMmQzNGE4MGVjMzkSBWxvY2Fs email: demo@example.com firstname: Demo id: demo @@ -78,7 +78,7 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiRlYWE5ZThhNS1hNDlhLTRiOTAtODYxZi0yMGJjZTA1Mjg0OTQSBWxvY2Fs + - authId: CiQxNzQyNzBmZC0wZjlkLTRkMTctYjU5Ni01OThhNzkzMDU3ODkSBWxvY2Fs id: demo2 permissions: [] settings: [] @@ -139,7 +139,7 @@ interactions: type: userGroup type: user - attributes: - authenticationId: CiQ4ODg0NDU5Ny0zY2VjLTQ5MWItYmM1Ny1mMDQyOWQ0MTE4YjISBWxvY2Fs + authenticationId: CiRhNzhmZjA0Zi0xYjU1LTQwY2MtODQ0OS1jMmQzNGE4MGVjMzkSBWxvY2Fs firstname: Demo lastname: User email: demo@example.com @@ -153,7 +153,7 @@ interactions: type: userGroup type: user - attributes: - authenticationId: CiRlYWE5ZThhNS1hNDlhLTRiOTAtODYxZi0yMGJjZTA1Mjg0OTQSBWxvY2Fs + authenticationId: CiQxNzQyNzBmZC0wZjlkLTRkMTctYjU5Ni01OThhNzkzMDU3ODkSBWxvY2Fs id: demo2 links: self: http://localhost:3000/api/v1/entities/users/demo2 @@ -253,14 +253,14 @@ interactions: email: demo@example.com firstname: Demo lastname: User - authId: CiQ4ODg0NDU5Ny0zY2VjLTQ5MWItYmM1Ny1mMDQyOWQ0MTE4YjISBWxvY2Fs + authId: CiRhNzhmZjA0Zi0xYjU1LTQwY2MtODQ0OS1jMmQzNGE4MGVjMzkSBWxvY2Fs userGroups: - id: adminGroup type: userGroup settings: [] permissions: [] - id: demo2 - authId: CiRlYWE5ZThhNS1hNDlhLTRiOTAtODYxZi0yMGJjZTA1Mjg0OTQSBWxvY2Fs + authId: CiQxNzQyNzBmZC0wZjlkLTRkMTctYjU5Ni01OThhNzkzMDU3ODkSBWxvY2Fs userGroups: - id: demoGroup type: userGroup @@ -366,7 +366,7 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiQ4ODg0NDU5Ny0zY2VjLTQ5MWItYmM1Ny1mMDQyOWQ0MTE4YjISBWxvY2Fs + - authId: CiRhNzhmZjA0Zi0xYjU1LTQwY2MtODQ0OS1jMmQzNGE4MGVjMzkSBWxvY2Fs email: demo@example.com firstname: Demo id: demo @@ -376,7 +376,7 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiRlYWE5ZThhNS1hNDlhLTRiOTAtODYxZi0yMGJjZTA1Mjg0OTQSBWxvY2Fs + - authId: CiQxNzQyNzBmZC0wZjlkLTRkMTctYjU5Ni01OThhNzkzMDU3ODkSBWxvY2Fs id: demo2 permissions: [] settings: [] @@ -415,14 +415,14 @@ interactions: email: demo@example.com firstname: Demo lastname: User - authId: CiQ4ODg0NDU5Ny0zY2VjLTQ5MWItYmM1Ny1mMDQyOWQ0MTE4YjISBWxvY2Fs + authId: CiRhNzhmZjA0Zi0xYjU1LTQwY2MtODQ0OS1jMmQzNGE4MGVjMzkSBWxvY2Fs userGroups: - id: adminGroup type: userGroup settings: [] permissions: [] - id: demo2 - authId: CiRlYWE5ZThhNS1hNDlhLTRiOTAtODYxZi0yMGJjZTA1Mjg0OTQSBWxvY2Fs + authId: CiQxNzQyNzBmZC0wZjlkLTRkMTctYjU5Ni01OThhNzkzMDU3ODkSBWxvY2Fs userGroups: - id: demoGroup type: userGroup diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/users/store_declarative_users.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/users/store_declarative_users.yaml index c04b2faf9..0ee66f3ae 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/users/store_declarative_users.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/users/store_declarative_users.yaml @@ -51,7 +51,7 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiQ4ODg0NDU5Ny0zY2VjLTQ5MWItYmM1Ny1mMDQyOWQ0MTE4YjISBWxvY2Fs + - authId: CiRhNzhmZjA0Zi0xYjU1LTQwY2MtODQ0OS1jMmQzNGE4MGVjMzkSBWxvY2Fs email: demo@example.com firstname: Demo id: demo @@ -61,7 +61,7 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiRlYWE5ZThhNS1hNDlhLTRiOTAtODYxZi0yMGJjZTA1Mjg0OTQSBWxvY2Fs + - authId: CiQxNzQyNzBmZC0wZjlkLTRkMTctYjU5Ni01OThhNzkzMDU3ODkSBWxvY2Fs id: demo2 permissions: [] settings: [] @@ -117,7 +117,7 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiQ4ODg0NDU5Ny0zY2VjLTQ5MWItYmM1Ny1mMDQyOWQ0MTE4YjISBWxvY2Fs + - authId: CiRhNzhmZjA0Zi0xYjU1LTQwY2MtODQ0OS1jMmQzNGE4MGVjMzkSBWxvY2Fs email: demo@example.com firstname: Demo id: demo @@ -127,7 +127,7 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiRlYWE5ZThhNS1hNDlhLTRiOTAtODYxZi0yMGJjZTA1Mjg0OTQSBWxvY2Fs + - authId: CiQxNzQyNzBmZC0wZjlkLTRkMTctYjU5Ni01OThhNzkzMDU3ODkSBWxvY2Fs id: demo2 permissions: [] settings: [] diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/users/store_declarative_users_user_groups.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/users/store_declarative_users_user_groups.yaml index e2e87314c..b9e338ceb 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/users/store_declarative_users_user_groups.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/users/store_declarative_users_user_groups.yaml @@ -68,7 +68,7 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiQ4ODg0NDU5Ny0zY2VjLTQ5MWItYmM1Ny1mMDQyOWQ0MTE4YjISBWxvY2Fs + - authId: CiRhNzhmZjA0Zi0xYjU1LTQwY2MtODQ0OS1jMmQzNGE4MGVjMzkSBWxvY2Fs email: demo@example.com firstname: Demo id: demo @@ -78,7 +78,7 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiRlYWE5ZThhNS1hNDlhLTRiOTAtODYxZi0yMGJjZTA1Mjg0OTQSBWxvY2Fs + - authId: CiQxNzQyNzBmZC0wZjlkLTRkMTctYjU5Ni01OThhNzkzMDU3ODkSBWxvY2Fs id: demo2 permissions: [] settings: [] @@ -151,7 +151,7 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiQ4ODg0NDU5Ny0zY2VjLTQ5MWItYmM1Ny1mMDQyOWQ0MTE4YjISBWxvY2Fs + - authId: CiRhNzhmZjA0Zi0xYjU1LTQwY2MtODQ0OS1jMmQzNGE4MGVjMzkSBWxvY2Fs email: demo@example.com firstname: Demo id: demo @@ -161,7 +161,7 @@ interactions: userGroups: - id: adminGroup type: userGroup - - authId: CiRlYWE5ZThhNS1hNDlhLTRiOTAtODYxZi0yMGJjZTA1Mjg0OTQSBWxvY2Fs + - authId: CiQxNzQyNzBmZC0wZjlkLTRkMTctYjU5Ni01OThhNzkzMDU3ODkSBWxvY2Fs id: demo2 permissions: [] settings: [] diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/users/test_api_tokens.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/users/test_api_tokens.yaml index 369a77cb0..5c57f5d2b 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/users/test_api_tokens.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/users/test_api_tokens.yaml @@ -97,7 +97,7 @@ interactions: string: data: attributes: - bearerToken: ZGVtbzp0ZXN0X3Rva2VuOmVFY0dkN29zVU5kVEt3WjZaNTFLNHFBNnhzaGVmZHZY + bearerToken: ZGVtbzp0ZXN0X3Rva2VuOjV1eXBzMGpLZjUxRXplS3psREFuNkkxTVpSYzVBVnZ2 id: test_token type: apiToken links: diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/users/test_user_add_user_group.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/users/test_user_add_user_group.yaml index 193893832..bd98a7951 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/users/test_user_add_user_group.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/users/test_user_add_user_group.yaml @@ -46,7 +46,7 @@ interactions: string: data: attributes: - authenticationId: CiRlYWE5ZThhNS1hNDlhLTRiOTAtODYxZi0yMGJjZTA1Mjg0OTQSBWxvY2Fs + authenticationId: CiQxNzQyNzBmZC0wZjlkLTRkMTctYjU5Ni01OThhNzkzMDU3ODkSBWxvY2Fs id: demo2 relationships: userGroups: diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/users/test_user_add_user_groups.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/users/test_user_add_user_groups.yaml index 193893832..bd98a7951 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/users/test_user_add_user_groups.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/users/test_user_add_user_groups.yaml @@ -46,7 +46,7 @@ interactions: string: data: attributes: - authenticationId: CiRlYWE5ZThhNS1hNDlhLTRiOTAtODYxZi0yMGJjZTA1Mjg0OTQSBWxvY2Fs + authenticationId: CiQxNzQyNzBmZC0wZjlkLTRkMTctYjU5Ni01OThhNzkzMDU3ODkSBWxvY2Fs id: demo2 relationships: userGroups: diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/users/test_user_remove_user_groups.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/users/test_user_remove_user_groups.yaml index 193893832..bd98a7951 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/users/test_user_remove_user_groups.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/users/test_user_remove_user_groups.yaml @@ -46,7 +46,7 @@ interactions: string: data: attributes: - authenticationId: CiRlYWE5ZThhNS1hNDlhLTRiOTAtODYxZi0yMGJjZTA1Mjg0OTQSBWxvY2Fs + authenticationId: CiQxNzQyNzBmZC0wZjlkLTRkMTctYjU5Ni01OThhNzkzMDU3ODkSBWxvY2Fs id: demo2 relationships: userGroups: diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/users/test_user_replace_user_groups.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/users/test_user_replace_user_groups.yaml index 193893832..bd98a7951 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/users/test_user_replace_user_groups.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/users/test_user_replace_user_groups.yaml @@ -46,7 +46,7 @@ interactions: string: data: attributes: - authenticationId: CiRlYWE5ZThhNS1hNDlhLTRiOTAtODYxZi0yMGJjZTA1Mjg0OTQSBWxvY2Fs + authenticationId: CiQxNzQyNzBmZC0wZjlkLTRkMTctYjU5Ni01OThhNzkzMDU3ODkSBWxvY2Fs id: demo2 relationships: userGroups: diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/users/update_user.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/users/update_user.yaml index 874ec3938..eef07972e 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/users/update_user.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/users/update_user.yaml @@ -56,7 +56,7 @@ interactions: type: userGroup type: user - attributes: - authenticationId: CiQ4ODg0NDU5Ny0zY2VjLTQ5MWItYmM1Ny1mMDQyOWQ0MTE4YjISBWxvY2Fs + authenticationId: CiRhNzhmZjA0Zi0xYjU1LTQwY2MtODQ0OS1jMmQzNGE4MGVjMzkSBWxvY2Fs firstname: Demo lastname: User email: demo@example.com @@ -70,7 +70,7 @@ interactions: type: userGroup type: user - attributes: - authenticationId: CiRlYWE5ZThhNS1hNDlhLTRiOTAtODYxZi0yMGJjZTA1Mjg0OTQSBWxvY2Fs + authenticationId: CiQxNzQyNzBmZC0wZjlkLTRkMTctYjU5Ni01OThhNzkzMDU3ODkSBWxvY2Fs id: demo2 links: self: http://localhost:3000/api/v1/entities/users/demo2 @@ -141,7 +141,7 @@ interactions: to access it. status: 404 title: Not Found - traceId: 5475cd67abd82be4eaa3a67fcab49bad + traceId: bdb819a99f0f28ae77afd955be1673dc - request: method: POST uri: http://localhost:3000/api/v1/entities/users @@ -263,7 +263,7 @@ interactions: type: userGroup type: user - attributes: - authenticationId: CiQ4ODg0NDU5Ny0zY2VjLTQ5MWItYmM1Ny1mMDQyOWQ0MTE4YjISBWxvY2Fs + authenticationId: CiRhNzhmZjA0Zi0xYjU1LTQwY2MtODQ0OS1jMmQzNGE4MGVjMzkSBWxvY2Fs firstname: Demo lastname: User email: demo@example.com @@ -277,7 +277,7 @@ interactions: type: userGroup type: user - attributes: - authenticationId: CiRlYWE5ZThhNS1hNDlhLTRiOTAtODYxZi0yMGJjZTA1Mjg0OTQSBWxvY2Fs + authenticationId: CiQxNzQyNzBmZC0wZjlkLTRkMTctYjU5Ni01OThhNzkzMDU3ODkSBWxvY2Fs id: demo2 links: self: http://localhost:3000/api/v1/entities/users/demo2 @@ -613,7 +613,7 @@ interactions: type: userGroup type: user - attributes: - authenticationId: CiQ4ODg0NDU5Ny0zY2VjLTQ5MWItYmM1Ny1mMDQyOWQ0MTE4YjISBWxvY2Fs + authenticationId: CiRhNzhmZjA0Zi0xYjU1LTQwY2MtODQ0OS1jMmQzNGE4MGVjMzkSBWxvY2Fs firstname: Demo lastname: User email: demo@example.com @@ -627,7 +627,7 @@ interactions: type: userGroup type: user - attributes: - authenticationId: CiRlYWE5ZThhNS1hNDlhLTRiOTAtODYxZi0yMGJjZTA1Mjg0OTQSBWxvY2Fs + authenticationId: CiQxNzQyNzBmZC0wZjlkLTRkMTctYjU5Ni01OThhNzkzMDU3ODkSBWxvY2Fs id: demo2 links: self: http://localhost:3000/api/v1/entities/users/demo2 diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/analytics_store_load.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/analytics_store_load.yaml index 36b3b1814..017b1a28e 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/analytics_store_load.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/analytics_store_load.yaml @@ -94,7 +94,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -137,7 +137,7 @@ interactions: type: dashboardPlugin version: '2' version: '2' - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -287,7 +287,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -299,7 +299,7 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -309,7 +309,7 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -360,7 +360,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -369,7 +369,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -379,7 +379,7 @@ interactions: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT {metric/revenue} BY {attribute/customer_id}) > 10000 ' - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -389,7 +389,7 @@ interactions: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -399,7 +399,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/spend}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -408,7 +408,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -417,7 +417,7 @@ interactions: - content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -427,7 +427,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: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -437,7 +437,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: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -447,7 +447,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: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -457,7 +457,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: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -467,7 +467,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, ALL OTHER) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -477,7 +477,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL {attribute/product_id}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -487,7 +487,7 @@ interactions: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -498,7 +498,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Clothing") - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -508,7 +508,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ( "Electronics") - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -518,7 +518,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Home") - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -528,7 +528,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Outdoor") - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -537,7 +537,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -546,7 +546,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -555,7 +555,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -564,7 +564,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -573,7 +573,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -582,7 +582,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -647,7 +647,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -723,7 +723,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -802,7 +802,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -861,7 +861,7 @@ interactions: stackMeasuresToPercent: true version: '2' visualizationUrl: local:area - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -918,7 +918,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -971,7 +971,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:donut - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1046,7 +1046,7 @@ interactions: visible: false version: '2' visualizationUrl: local:column - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1103,7 +1103,7 @@ interactions: enabled: true version: '2' visualizationUrl: local:scatter - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1202,7 +1202,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1258,7 +1258,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:line - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1297,7 +1297,7 @@ interactions: properties: {} version: '2' visualizationUrl: local:bar - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1353,7 +1353,7 @@ interactions: min: '0' version: '2' visualizationUrl: local:scatter - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1421,7 +1421,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1478,7 +1478,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1535,7 +1535,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1633,7 +1633,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1676,7 +1676,7 @@ interactions: type: dashboardPlugin version: '2' version: '2' - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1826,7 +1826,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1838,7 +1838,7 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1848,7 +1848,7 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1899,7 +1899,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1908,7 +1908,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1918,7 +1918,7 @@ interactions: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT {metric/revenue} BY {attribute/customer_id}) > 10000 ' - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1928,7 +1928,7 @@ interactions: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1938,7 +1938,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/spend}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1947,7 +1947,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1956,7 +1956,7 @@ interactions: - content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1966,7 +1966,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: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1976,7 +1976,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: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1986,7 +1986,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: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1996,7 +1996,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: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2006,7 +2006,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, ALL OTHER) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2016,7 +2016,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL {attribute/product_id}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2026,7 +2026,7 @@ interactions: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2037,7 +2037,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Clothing") - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2047,7 +2047,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ( "Electronics") - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2057,7 +2057,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Home") - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2067,7 +2067,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Outdoor") - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2076,7 +2076,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2085,7 +2085,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2094,7 +2094,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2103,7 +2103,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2112,7 +2112,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2121,7 +2121,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2186,7 +2186,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2262,7 +2262,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2341,7 +2341,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2400,7 +2400,7 @@ interactions: stackMeasuresToPercent: true version: '2' visualizationUrl: local:area - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2457,7 +2457,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2510,7 +2510,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:donut - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2585,7 +2585,7 @@ interactions: visible: false version: '2' visualizationUrl: local:column - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2642,7 +2642,7 @@ interactions: enabled: true version: '2' visualizationUrl: local:scatter - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2741,7 +2741,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2797,7 +2797,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:line - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2836,7 +2836,7 @@ interactions: properties: {} version: '2' visualizationUrl: local:bar - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2892,7 +2892,7 @@ interactions: min: '0' version: '2' visualizationUrl: local:scatter - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2960,7 +2960,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3017,7 +3017,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3074,7 +3074,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_catalog.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_catalog.yaml index 20806a6b2..686f10868 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_catalog.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_catalog.yaml @@ -583,57 +583,57 @@ interactions: type: attribute referenceProperties: - identifier: - id: customers + id: campaigns type: dataset multivalue: false sources: - - column: customer_id + - column: campaign_id dataType: INT target: - id: customer_id + id: campaign_id type: attribute isNullable: null nullValue: null sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: products type: dataset multivalue: false sources: - - column: campaign_id + - column: product_id dataType: INT target: - id: campaign_id + id: product_id type: attribute isNullable: null nullValue: null sourceColumns: null sourceColumnDataTypes: null - identifier: - id: date + id: customers type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: customer_id + dataType: INT target: - id: date - type: date + id: customer_id + type: attribute isNullable: null nullValue: null sourceColumns: null sourceColumnDataTypes: null - identifier: - id: products + id: date type: dataset multivalue: false sources: - - column: product_id - dataType: INT + - column: date + dataType: DATE target: - id: product_id - type: attribute + id: date + type: date isNullable: null nullValue: null sourceColumns: null @@ -643,10 +643,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 @@ -1184,14 +1184,14 @@ interactions: relationships: attributes: data: - - id: customer_id - type: attribute - - id: customer_name - type: attribute - id: region type: attribute - id: state type: attribute + - id: customer_id + type: attribute + - id: customer_name + type: attribute type: dataset - attributes: title: Date @@ -1231,57 +1231,57 @@ interactions: type: attribute referenceProperties: - identifier: - id: customers + id: campaigns type: dataset multivalue: false sources: - - column: customer_id + - column: campaign_id dataType: INT target: - id: customer_id + id: campaign_id type: attribute isNullable: null nullValue: null sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: products type: dataset multivalue: false sources: - - column: campaign_id + - column: product_id dataType: INT target: - id: campaign_id + id: product_id type: attribute isNullable: null nullValue: null sourceColumns: null sourceColumnDataTypes: null - identifier: - id: date + id: customers type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: customer_id + dataType: INT target: - id: date - type: date + id: customer_id + type: attribute isNullable: null nullValue: null sourceColumns: null sourceColumnDataTypes: null - identifier: - id: products + id: date type: dataset multivalue: false sources: - - column: product_id - dataType: INT + - column: date + dataType: DATE target: - id: product_id - type: attribute + id: date + type: date isNullable: null nullValue: null sourceColumns: null @@ -1292,10 +1292,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 @@ -1685,7 +1685,7 @@ interactions: content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: amount_of_active_customers links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/amount_of_active_customers @@ -1700,7 +1700,7 @@ interactions: content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: amount_of_orders links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/amount_of_orders @@ -1716,7 +1716,7 @@ interactions: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT {metric/revenue} BY {attribute/customer_id}) > 10000 ' - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: amount_of_top_customers links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/amount_of_top_customers @@ -1733,7 +1733,7 @@ interactions: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: amount_of_valid_orders links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/amount_of_valid_orders @@ -1748,7 +1748,7 @@ interactions: content: format: $#,##0 maql: SELECT SUM({fact/spend}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: campaign_spend links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/campaign_spend @@ -1763,7 +1763,7 @@ interactions: content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: order_amount links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/order_amount @@ -1778,7 +1778,7 @@ interactions: content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: percent_revenue links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue @@ -1794,7 +1794,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: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: percent_revenue_from_top_10_customers links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue_from_top_10_customers @@ -1810,7 +1810,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: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: percent_revenue_from_top_10_percent_customers links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue_from_top_10_percent_customers @@ -1826,7 +1826,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: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: percent_revenue_from_top_10_percent_products links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue_from_top_10_percent_products @@ -1842,7 +1842,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: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: percent_revenue_from_top_10_products links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue_from_top_10_products @@ -1858,7 +1858,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, ALL OTHER) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: percent_revenue_in_category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue_in_category @@ -1874,7 +1874,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL {attribute/product_id}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: percent_revenue_per_product links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue_per_product @@ -1891,7 +1891,7 @@ interactions: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: revenue links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue @@ -1907,7 +1907,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Clothing") - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: revenue-clothing links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue-clothing @@ -1923,7 +1923,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ( "Electronics") - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: revenue-electronic links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue-electronic @@ -1939,7 +1939,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Home") - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: revenue-home links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue-home @@ -1955,7 +1955,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Outdoor") - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: revenue-outdoor links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue-outdoor @@ -1970,7 +1970,7 @@ interactions: content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: revenue_per_customer links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue_per_customer @@ -1985,7 +1985,7 @@ interactions: content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: revenue_per_dollar_spent links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue_per_dollar_spent @@ -2000,7 +2000,7 @@ interactions: content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: revenue_top_10 links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue_top_10 @@ -2015,7 +2015,7 @@ interactions: content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: revenue_top_10_percent links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue_top_10_percent @@ -2030,7 +2030,7 @@ interactions: content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: total_revenue links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/total_revenue @@ -2045,7 +2045,7 @@ interactions: content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: total_revenue-no_filters links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/total_revenue-no_filters diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_catalog_availability.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_catalog_availability.yaml index df4516aeb..273e93a13 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_catalog_availability.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_catalog_availability.yaml @@ -583,57 +583,57 @@ interactions: type: attribute referenceProperties: - identifier: - id: customers + id: campaigns type: dataset multivalue: false sources: - - column: customer_id + - column: campaign_id dataType: INT target: - id: customer_id + id: campaign_id type: attribute isNullable: null nullValue: null sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: products type: dataset multivalue: false sources: - - column: campaign_id + - column: product_id dataType: INT target: - id: campaign_id + id: product_id type: attribute isNullable: null nullValue: null sourceColumns: null sourceColumnDataTypes: null - identifier: - id: date + id: customers type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: customer_id + dataType: INT target: - id: date - type: date + id: customer_id + type: attribute isNullable: null nullValue: null sourceColumns: null sourceColumnDataTypes: null - identifier: - id: products + id: date type: dataset multivalue: false sources: - - column: product_id - dataType: INT + - column: date + dataType: DATE target: - id: product_id - type: attribute + id: date + type: date isNullable: null nullValue: null sourceColumns: null @@ -643,10 +643,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 @@ -1184,14 +1184,14 @@ interactions: relationships: attributes: data: - - id: customer_id - type: attribute - - id: customer_name - type: attribute - id: region type: attribute - id: state type: attribute + - id: customer_id + type: attribute + - id: customer_name + type: attribute type: dataset - attributes: title: Date @@ -1231,57 +1231,57 @@ interactions: type: attribute referenceProperties: - identifier: - id: customers + id: campaigns type: dataset multivalue: false sources: - - column: customer_id + - column: campaign_id dataType: INT target: - id: customer_id + id: campaign_id type: attribute isNullable: null nullValue: null sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: products type: dataset multivalue: false sources: - - column: campaign_id + - column: product_id dataType: INT target: - id: campaign_id + id: product_id type: attribute isNullable: null nullValue: null sourceColumns: null sourceColumnDataTypes: null - identifier: - id: date + id: customers type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: customer_id + dataType: INT target: - id: date - type: date + id: customer_id + type: attribute isNullable: null nullValue: null sourceColumns: null sourceColumnDataTypes: null - identifier: - id: products + id: date type: dataset multivalue: false sources: - - column: product_id - dataType: INT + - column: date + dataType: DATE target: - id: product_id - type: attribute + id: date + type: date isNullable: null nullValue: null sourceColumns: null @@ -1292,10 +1292,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 @@ -1685,7 +1685,7 @@ interactions: content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: amount_of_active_customers links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/amount_of_active_customers @@ -1700,7 +1700,7 @@ interactions: content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: amount_of_orders links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/amount_of_orders @@ -1716,7 +1716,7 @@ interactions: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT {metric/revenue} BY {attribute/customer_id}) > 10000 ' - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: amount_of_top_customers links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/amount_of_top_customers @@ -1733,7 +1733,7 @@ interactions: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: amount_of_valid_orders links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/amount_of_valid_orders @@ -1748,7 +1748,7 @@ interactions: content: format: $#,##0 maql: SELECT SUM({fact/spend}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: campaign_spend links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/campaign_spend @@ -1763,7 +1763,7 @@ interactions: content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: order_amount links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/order_amount @@ -1778,7 +1778,7 @@ interactions: content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: percent_revenue links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue @@ -1794,7 +1794,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: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: percent_revenue_from_top_10_customers links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue_from_top_10_customers @@ -1810,7 +1810,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: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: percent_revenue_from_top_10_percent_customers links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue_from_top_10_percent_customers @@ -1826,7 +1826,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: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: percent_revenue_from_top_10_percent_products links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue_from_top_10_percent_products @@ -1842,7 +1842,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: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: percent_revenue_from_top_10_products links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue_from_top_10_products @@ -1858,7 +1858,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, ALL OTHER) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: percent_revenue_in_category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue_in_category @@ -1874,7 +1874,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL {attribute/product_id}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: percent_revenue_per_product links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue_per_product @@ -1891,7 +1891,7 @@ interactions: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: revenue links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue @@ -1907,7 +1907,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Clothing") - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: revenue-clothing links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue-clothing @@ -1923,7 +1923,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ( "Electronics") - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: revenue-electronic links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue-electronic @@ -1939,7 +1939,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Home") - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: revenue-home links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue-home @@ -1955,7 +1955,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Outdoor") - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: revenue-outdoor links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue-outdoor @@ -1970,7 +1970,7 @@ interactions: content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: revenue_per_customer links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue_per_customer @@ -1985,7 +1985,7 @@ interactions: content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: revenue_per_dollar_spent links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue_per_dollar_spent @@ -2000,7 +2000,7 @@ interactions: content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: revenue_top_10 links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue_top_10 @@ -2015,7 +2015,7 @@ interactions: content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: revenue_top_10_percent links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue_top_10_percent @@ -2030,7 +2030,7 @@ interactions: content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: total_revenue links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/total_revenue @@ -2045,7 +2045,7 @@ interactions: content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: total_revenue-no_filters links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/total_revenue-no_filters diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_catalog_list_metrics.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_catalog_list_metrics.yaml index 5012aad12..429c51788 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_catalog_list_metrics.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_catalog_list_metrics.yaml @@ -51,7 +51,7 @@ interactions: content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: amount_of_active_customers links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/amount_of_active_customers @@ -66,7 +66,7 @@ interactions: content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: amount_of_orders links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/amount_of_orders @@ -82,7 +82,7 @@ interactions: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT {metric/revenue} BY {attribute/customer_id}) > 10000 ' - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: amount_of_top_customers links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/amount_of_top_customers @@ -99,7 +99,7 @@ interactions: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: amount_of_valid_orders links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/amount_of_valid_orders @@ -114,7 +114,7 @@ interactions: content: format: $#,##0 maql: SELECT SUM({fact/spend}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: campaign_spend links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/campaign_spend @@ -129,7 +129,7 @@ interactions: content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: order_amount links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/order_amount @@ -144,7 +144,7 @@ interactions: content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: percent_revenue links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue @@ -160,7 +160,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: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: percent_revenue_from_top_10_customers links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue_from_top_10_customers @@ -176,7 +176,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: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: percent_revenue_from_top_10_percent_customers links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue_from_top_10_percent_customers @@ -192,7 +192,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: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: percent_revenue_from_top_10_percent_products links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue_from_top_10_percent_products @@ -208,7 +208,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: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: percent_revenue_from_top_10_products links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue_from_top_10_products @@ -224,7 +224,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, ALL OTHER) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: percent_revenue_in_category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue_in_category @@ -240,7 +240,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL {attribute/product_id}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: percent_revenue_per_product links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue_per_product @@ -257,7 +257,7 @@ interactions: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: revenue links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue @@ -273,7 +273,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Clothing") - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: revenue-clothing links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue-clothing @@ -289,7 +289,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ( "Electronics") - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: revenue-electronic links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue-electronic @@ -305,7 +305,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Home") - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: revenue-home links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue-home @@ -321,7 +321,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Outdoor") - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: revenue-outdoor links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue-outdoor @@ -336,7 +336,7 @@ interactions: content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: revenue_per_customer links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue_per_customer @@ -351,7 +351,7 @@ interactions: content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: revenue_per_dollar_spent links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue_per_dollar_spent @@ -366,7 +366,7 @@ interactions: content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: revenue_top_10 links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue_top_10 @@ -381,7 +381,7 @@ interactions: content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: revenue_top_10_percent links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue_top_10_percent @@ -396,7 +396,7 @@ interactions: content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: total_revenue links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/total_revenue @@ -411,7 +411,7 @@ interactions: content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: total_revenue-no_filters links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/total_revenue-no_filters diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_get_dependent_entities_graph.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_get_dependent_entities_graph.yaml index a2a208eeb..301ceb9d3 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_get_dependent_entities_graph.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_get_dependent_entities_graph.yaml @@ -64,28 +64,28 @@ interactions: type: dataset - - 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: revenue_per_customer type: metric - - 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: revenue_per_customer + - id: amount_of_active_customers type: metric - - id: customer_id type: attribute - - id: customers - type: dataset + - id: amount_of_top_customers + type: metric - - id: customer_name type: attribute - id: customers @@ -106,14 +106,14 @@ interactions: type: attribute - id: date type: dataset - - - id: date.year - type: attribute - - id: product_revenue_comparison-over_previous_period - type: visualizationObject - - 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 type: attribute - id: order_lines @@ -136,19 +136,19 @@ interactions: type: dataset - - id: product_id type: attribute - - id: products - type: dataset + - id: percent_revenue_per_product + 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_from_top_10_products type: metric - - id: product_id type: attribute - - id: percent_revenue_per_product + - id: percent_revenue_from_top_10_percent_products type: metric - - id: product_name type: attribute @@ -184,11 +184,11 @@ interactions: type: dataset - - id: campaigns type: dataset - - id: order_lines + - id: campaign_channels type: dataset - - id: campaigns type: dataset - - id: campaign_channels + - id: order_lines type: dataset - - id: customers type: dataset @@ -196,16 +196,16 @@ interactions: type: dataset - - id: date type: dataset - - id: customers_trend - type: visualizationObject + - id: order_lines + type: dataset - - id: date type: dataset - - id: percentage_of_customers_by_region + - id: revenue_by_category_trend type: visualizationObject - - id: date type: dataset - - id: order_lines - type: dataset + - id: percentage_of_customers_by_region + type: visualizationObject - - id: date type: dataset - id: product_revenue_comparison-over_previous_period @@ -216,7 +216,7 @@ interactions: type: analyticalDashboard - - id: date type: dataset - - id: revenue_by_category_trend + - id: customers_trend type: visualizationObject - - id: date type: dataset @@ -254,26 +254,26 @@ interactions: type: fact - id: revenue_and_quantity_by_product_and_category type: visualizationObject - - - id: spend - type: fact - - 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 type: attribute - - - id: campaign_channels.category - type: label - - id: campaign_channels.category - type: attribute - - id: campaign_channels.category type: label - id: campaign_spend type: visualizationObject + - - id: campaign_channels.category + type: label + - id: campaign_channels.category + type: attribute - - id: campaign_id type: label - id: campaign_id @@ -300,24 +300,28 @@ interactions: type: attribute - - id: customer_name type: label - - id: customer_name - type: attribute + - id: revenue_and_quantity_by_product_and_category + type: visualizationObject - - id: customer_name type: label - - id: percent_revenue_per_product_by_customer_and_category + - id: top_10_customers type: visualizationObject - - id: customer_name type: label - - id: revenue_and_quantity_by_product_and_category - type: visualizationObject + - id: customer_name + type: attribute - - id: customer_name type: label - - id: top_10_customers + - id: percent_revenue_per_product_by_customer_and_category type: visualizationObject - - id: date.day type: label - id: date.day type: attribute + - - id: date.month + type: label + - id: percentage_of_customers_by_region + type: visualizationObject - - id: date.month type: label - id: date.month @@ -326,10 +330,6 @@ interactions: type: label - id: customers_trend type: visualizationObject - - - id: date.month - type: label - - id: percentage_of_customers_by_region - type: visualizationObject - - id: date.month type: label - id: revenue_by_category_trend @@ -368,11 +368,11 @@ 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 @@ -380,11 +380,15 @@ interactions: type: attribute - - id: product_name type: label - - id: revenue_by_product + - id: top_10_products type: visualizationObject - - id: product_name type: label - - id: top_10_products + - id: product_breakdown + type: visualizationObject + - - id: product_name + type: label + - id: product_categories_pie_chart type: visualizationObject - - id: product_name type: label @@ -396,15 +400,11 @@ interactions: type: visualizationObject - - id: product_name type: label - - id: product_categories_pie_chart - type: visualizationObject - - - id: product_name - type: label - - id: product_breakdown + - id: revenue_by_product type: visualizationObject - - id: product_name type: label - - id: product_saleability + - id: revenue_and_quantity_by_product_and_category type: visualizationObject - - id: product_name type: label @@ -412,31 +412,31 @@ interactions: type: visualizationObject - - id: product_name type: label - - id: revenue_and_quantity_by_product_and_category + - id: product_saleability type: visualizationObject - - id: products.category type: label - - id: products.category - type: attribute + - id: top_10_products + type: visualizationObject - - id: products.category type: label - - id: revenue-clothing + - id: revenue-electronic type: metric - - id: products.category type: label - - id: revenue-electronic + - id: revenue-clothing type: metric - - id: products.category type: label - - id: revenue-outdoor - type: metric + - id: product_breakdown + type: visualizationObject - - id: products.category type: label - - id: top_10_products + - id: revenue_by_category_trend type: visualizationObject - - id: products.category type: label - - id: product_revenue_comparison-over_previous_period + - id: product_categories_pie_chart type: visualizationObject - - id: products.category type: label @@ -444,63 +444,67 @@ interactions: type: metric - - id: products.category type: label - - id: product_categories_pie_chart - type: visualizationObject + - id: revenue-outdoor + type: metric - - id: products.category type: label - - id: product_breakdown + - id: product_revenue_comparison-over_previous_period type: visualizationObject - - id: products.category type: label - - id: revenue_by_category_trend - type: visualizationObject + - id: products.category + type: attribute - - id: products.category type: label - - id: percent_revenue_per_product_by_customer_and_category + - id: revenue_and_quantity_by_product_and_category type: visualizationObject - - id: products.category type: label - - id: revenue_and_quantity_by_product_and_category + - id: percent_revenue_per_product_by_customer_and_category type: visualizationObject - - id: region type: label - id: region_filter type: filterContext - - - id: region - type: label - - id: percentage_of_customers_by_region - type: visualizationObject - - id: region type: label - id: region type: attribute - - - id: state + - - id: region type: label - - id: state - type: attribute + - id: percentage_of_customers_by_region + type: visualizationObject - - id: state type: label - id: top_10_customers type: visualizationObject - - - id: type + - - id: state type: label - - id: type + - id: state type: attribute - - id: type type: label - id: campaign_spend type: visualizationObject + - - id: type + type: label + - id: type + type: attribute - - id: amount_of_active_customers type: metric - - id: amount_of_top_customers - type: metric + - id: percentage_of_customers_by_region + type: visualizationObject - - id: amount_of_active_customers type: metric - id: customers_trend type: visualizationObject - - id: amount_of_active_customers type: metric - - id: percentage_of_customers_by_region + - id: amount_of_top_customers + type: metric + - - id: amount_of_orders + type: metric + - id: revenue_trend type: visualizationObject - - id: amount_of_orders type: metric @@ -510,10 +514,6 @@ interactions: type: metric - id: amount_of_valid_orders type: metric - - - id: amount_of_orders - type: metric - - id: revenue_trend - type: visualizationObject - - id: campaign_spend type: metric - id: revenue_per_usd_vs_spend_by_campaign @@ -538,85 +538,81 @@ interactions: type: metric - id: percent_revenue_per_product_by_customer_and_category type: visualizationObject - - - id: revenue - type: metric - - id: percent_revenue_from_top_10_customers - type: metric - - id: revenue type: metric - id: revenue-clothing type: metric - - id: revenue type: metric - - id: revenue_per_customer + - id: product_breakdown + type: visualizationObject + - - id: revenue type: metric + - id: revenue_by_category_trend + type: visualizationObject - - id: revenue type: metric - - id: product_revenue_comparison-over_previous_period + - id: product_categories_pie_chart type: visualizationObject - - id: revenue type: metric - id: percent_revenue_in_category type: metric + - - id: revenue + type: metric + - id: revenue_top_10 + type: metric - - id: revenue type: metric - id: percent_revenue_per_product type: metric - - id: revenue type: metric - - id: percent_revenue + - id: revenue-outdoor type: metric - - id: revenue type: metric - - id: revenue_top_10_percent + - id: revenue_per_customer type: metric - - id: revenue type: metric - - id: revenue_top_10 + - id: percent_revenue_from_top_10_customers type: metric - - id: revenue type: metric - - id: product_categories_pie_chart + - id: revenue_and_quantity_by_product_and_category type: visualizationObject - - id: revenue type: metric - - id: total_revenue + - id: percent_revenue_from_top_10_percent_products type: metric - - id: revenue type: metric - - id: percent_revenue_from_top_10_percent_products + - id: revenue_top_10_percent type: metric - - id: revenue type: metric - - id: product_saleability - type: visualizationObject - - - id: revenue + - id: percent_revenue type: metric - - id: percent_revenue_per_product_by_customer_and_category - type: visualizationObject - - id: revenue type: metric - - id: revenue_trend - type: visualizationObject - - - id: revenue + - id: total_revenue type: metric - - id: revenue_by_product - type: visualizationObject - - id: revenue type: metric - id: revenue-electronic type: metric - - id: revenue type: metric - - id: revenue-outdoor + - id: percent_revenue_from_top_10_percent_customers type: metric - - id: revenue type: metric - - id: revenue_per_dollar_spent + - id: percent_revenue_from_top_10_products type: metric - - id: revenue type: metric - - id: percent_revenue_from_top_10_products + - id: revenue_per_dollar_spent type: metric - - id: revenue type: metric @@ -624,23 +620,27 @@ interactions: type: metric - - id: revenue type: metric - - id: percent_revenue_from_top_10_percent_customers - type: metric + - id: product_revenue_comparison-over_previous_period + type: visualizationObject - - id: revenue type: metric - - id: amount_of_top_customers - type: metric + - id: revenue_by_product + type: visualizationObject - - id: revenue type: metric - - id: product_breakdown + - id: revenue_trend type: visualizationObject - - id: revenue type: metric - - id: revenue_by_category_trend + - id: amount_of_top_customers + type: metric + - - id: revenue + type: metric + - id: percent_revenue_per_product_by_customer_and_category type: visualizationObject - - id: revenue type: metric - - id: revenue_and_quantity_by_product_and_category + - id: product_saleability type: visualizationObject - - id: revenue_per_customer type: metric @@ -652,20 +652,20 @@ interactions: type: visualizationObject - - id: revenue_top_10 type: metric - - id: percent_revenue_from_top_10_customers - type: metric - - - id: revenue_top_10 - type: metric - - id: top_10_customers + - id: top_10_products type: visualizationObject - - id: revenue_top_10 type: metric - - id: top_10_products - type: visualizationObject + - id: percent_revenue_from_top_10_customers + type: metric - - id: revenue_top_10 type: metric - id: percent_revenue_from_top_10_products type: metric + - - id: revenue_top_10 + type: metric + - id: top_10_customers + type: visualizationObject - - id: revenue_top_10_percent type: metric - id: percent_revenue_from_top_10_percent_customers @@ -676,11 +676,11 @@ interactions: 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 diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_load_and_modify_ds_and_put_declarative_ldm.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_load_and_modify_ds_and_put_declarative_ldm.yaml index 9e23dbae3..b77a44e2e 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_load_and_modify_ds_and_put_declarative_ldm.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_load_and_modify_ds_and_put_declarative_ldm.yaml @@ -44,7 +44,7 @@ interactions: to access it. status: 404 title: Not Found - traceId: bb7e5c8c337db523003b39dd19094abc + traceId: 673fd5f14dd7d3ae0d362c0982d29b02 - request: method: POST uri: http://localhost:3000/api/v1/entities/workspaces @@ -556,8 +556,8 @@ interactions: username: postgres authenticationType: USERNAME_PASSWORD alternativeDataSourceId: ds-put-abc-id - name: demo-test-ds type: POSTGRESQL + name: demo-test-ds schema: demo id: demo-test-ds links: @@ -1011,8 +1011,8 @@ interactions: username: postgres authenticationType: USERNAME_PASSWORD alternativeDataSourceId: ds-put-abc-id - name: demo-test-ds type: POSTGRESQL + name: demo-test-ds schema: demo id: demo-test-ds links: diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_load_and_put_declarative_analytics_model.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_load_and_put_declarative_analytics_model.yaml index 25a74464f..142ad4112 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_load_and_put_declarative_analytics_model.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_load_and_put_declarative_analytics_model.yaml @@ -44,7 +44,7 @@ interactions: to access it. status: 404 title: Not Found - traceId: 46d627a68277c7fef3bcb5af31859ca7 + traceId: d9de430d2325b6b53c5f219dc401ece7 - request: method: POST uri: http://localhost:3000/api/v1/entities/workspaces diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_load_and_put_declarative_ldm.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_load_and_put_declarative_ldm.yaml index a54a511e2..fdbb8a25a 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_load_and_put_declarative_ldm.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_load_and_put_declarative_ldm.yaml @@ -44,7 +44,7 @@ interactions: to access it. status: 404 title: Not Found - traceId: bb97d63804862e900247ba158c3d5fd6 + traceId: f566f715ce07a6469e9445ff7b5be24f - request: method: POST uri: http://localhost:3000/api/v1/entities/workspaces diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_put_declarative_analytics_model.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_put_declarative_analytics_model.yaml index a59c3dd52..b998d1e3a 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_put_declarative_analytics_model.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_put_declarative_analytics_model.yaml @@ -19,32 +19,21 @@ interactions: code: 404 message: Not Found headers: - Cache-Control: - - max-age=5, private Content-Length: - '172' Content-Type: - - application/problem+json + - application/json DATE: &id001 - PLACEHOLDER - Referrer-Policy: - - no-referrer - Vary: - - Origin - - Access-Control-Request-Method - - Access-Control-Request-Headers X-Content-Type-Options: - nosniff - X-GDC-TRACE-ID: *id001 - X-Xss-Protection: - - '0' body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: 7a8476e9233bd922199e045de02979e7 + traceId: 70430583981660c2cd4974a166a50292 - request: method: POST uri: http://localhost:3000/api/v1/entities/workspaces diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_put_declarative_ldm.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_put_declarative_ldm.yaml index a138a59c1..e07df2fd8 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_put_declarative_ldm.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_put_declarative_ldm.yaml @@ -19,32 +19,21 @@ interactions: code: 404 message: Not Found headers: - Cache-Control: - - max-age=5, private Content-Length: - '172' Content-Type: - - application/problem+json + - application/json DATE: &id001 - PLACEHOLDER - Referrer-Policy: - - no-referrer - Vary: - - Origin - - Access-Control-Request-Method - - Access-Control-Request-Headers X-Content-Type-Options: - nosniff - X-GDC-TRACE-ID: *id001 - X-Xss-Protection: - - '0' body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: 4764599273a9738e8ae22f87615f0cf5 + traceId: 99ab8b8998cae5573820bda78ff4e02a - request: method: POST uri: http://localhost:3000/api/v1/entities/workspaces diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_store_declarative_analytics_model.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_store_declarative_analytics_model.yaml index e36690ad1..24ffcb84e 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_store_declarative_analytics_model.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/demo_store_declarative_analytics_model.yaml @@ -94,7 +94,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -137,7 +137,7 @@ interactions: type: dashboardPlugin version: '2' version: '2' - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -287,7 +287,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -299,7 +299,7 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -309,7 +309,7 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -360,7 +360,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -369,7 +369,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -379,7 +379,7 @@ interactions: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT {metric/revenue} BY {attribute/customer_id}) > 10000 ' - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -389,7 +389,7 @@ interactions: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -399,7 +399,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/spend}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -408,7 +408,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -417,7 +417,7 @@ interactions: - content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -427,7 +427,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: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -437,7 +437,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: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -447,7 +447,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: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -457,7 +457,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: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -467,7 +467,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, ALL OTHER) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -477,7 +477,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL {attribute/product_id}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -487,7 +487,7 @@ interactions: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -498,7 +498,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Clothing") - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -508,7 +508,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ( "Electronics") - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -518,7 +518,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Home") - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -528,7 +528,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Outdoor") - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -537,7 +537,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -546,7 +546,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -555,7 +555,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -564,7 +564,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -573,7 +573,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -582,7 +582,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -647,7 +647,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -723,7 +723,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -802,7 +802,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -861,7 +861,7 @@ interactions: stackMeasuresToPercent: true version: '2' visualizationUrl: local:area - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -918,7 +918,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -971,7 +971,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:donut - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1046,7 +1046,7 @@ interactions: visible: false version: '2' visualizationUrl: local:column - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1103,7 +1103,7 @@ interactions: enabled: true version: '2' visualizationUrl: local:scatter - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1202,7 +1202,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1258,7 +1258,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:line - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1297,7 +1297,7 @@ interactions: properties: {} version: '2' visualizationUrl: local:bar - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1353,7 +1353,7 @@ interactions: min: '0' version: '2' visualizationUrl: local:scatter - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1421,7 +1421,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1478,7 +1478,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1535,7 +1535,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1734,7 +1734,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1777,7 +1777,7 @@ interactions: type: dashboardPlugin version: '2' version: '2' - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1927,7 +1927,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1939,7 +1939,7 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1949,7 +1949,7 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2000,7 +2000,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2009,7 +2009,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2019,7 +2019,7 @@ interactions: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT {metric/revenue} BY {attribute/customer_id}) > 10000 ' - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2029,7 +2029,7 @@ interactions: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2039,7 +2039,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/spend}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2048,7 +2048,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2057,7 +2057,7 @@ interactions: - content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2067,7 +2067,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: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2077,7 +2077,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: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2087,7 +2087,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: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2097,7 +2097,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: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2107,7 +2107,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, ALL OTHER) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2117,7 +2117,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL {attribute/product_id}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2127,7 +2127,7 @@ interactions: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2138,7 +2138,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Clothing") - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2148,7 +2148,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ( "Electronics") - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2158,7 +2158,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Home") - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2168,7 +2168,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Outdoor") - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2177,7 +2177,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2186,7 +2186,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2195,7 +2195,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2204,7 +2204,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2213,7 +2213,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2222,7 +2222,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2287,7 +2287,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2363,7 +2363,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2442,7 +2442,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2501,7 +2501,7 @@ interactions: stackMeasuresToPercent: true version: '2' visualizationUrl: local:area - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2558,7 +2558,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2611,7 +2611,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:donut - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2686,7 +2686,7 @@ interactions: visible: false version: '2' visualizationUrl: local:column - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2743,7 +2743,7 @@ interactions: enabled: true version: '2' visualizationUrl: local:scatter - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2842,7 +2842,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2898,7 +2898,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:line - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2937,7 +2937,7 @@ interactions: properties: {} version: '2' visualizationUrl: local:bar - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2993,7 +2993,7 @@ interactions: min: '0' version: '2' visualizationUrl: local:scatter - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3061,7 +3061,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3118,7 +3118,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3175,7 +3175,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/explicit_workspace_data_filter.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/explicit_workspace_data_filter.yaml index 83e0b2519..42d76ea77 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/explicit_workspace_data_filter.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/explicit_workspace_data_filter.yaml @@ -1812,57 +1812,57 @@ interactions: type: attribute referenceProperties: - identifier: - id: customers + id: campaigns type: dataset multivalue: false sources: - - column: customer_id + - column: campaign_id dataType: INT target: - id: customer_id + id: campaign_id type: attribute isNullable: null nullValue: null sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: products type: dataset multivalue: false sources: - - column: campaign_id + - column: product_id dataType: INT target: - id: campaign_id + id: product_id type: attribute isNullable: null nullValue: null sourceColumns: null sourceColumnDataTypes: null - identifier: - id: date + id: customers type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: customer_id + dataType: INT target: - id: date - type: date + id: customer_id + type: attribute isNullable: null nullValue: null sourceColumns: null sourceColumnDataTypes: null - identifier: - id: products + id: date type: dataset multivalue: false sources: - - column: product_id - dataType: INT + - column: date + dataType: DATE target: - id: product_id - type: attribute + id: date + type: date isNullable: null nullValue: null sourceColumns: null @@ -1872,10 +1872,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 @@ -2472,57 +2472,57 @@ interactions: type: attribute referenceProperties: - identifier: - id: customers + id: campaigns type: dataset multivalue: false sources: - - column: customer_id + - column: campaign_id dataType: INT target: - id: customer_id + id: campaign_id type: attribute isNullable: null nullValue: null sourceColumns: null sourceColumnDataTypes: null - identifier: - id: campaigns + id: products type: dataset multivalue: false sources: - - column: campaign_id + - column: product_id dataType: INT target: - id: campaign_id + id: product_id type: attribute isNullable: null nullValue: null sourceColumns: null sourceColumnDataTypes: null - identifier: - id: date + id: customers type: dataset multivalue: false sources: - - column: date - dataType: DATE + - column: customer_id + dataType: INT target: - id: date - type: date + id: customer_id + type: attribute isNullable: null nullValue: null sourceColumns: null sourceColumnDataTypes: null - identifier: - id: products + id: date type: dataset multivalue: false sources: - - column: product_id - dataType: INT + - column: date + dataType: DATE target: - id: product_id - type: attribute + id: date + type: date isNullable: null nullValue: null sourceColumns: null @@ -2533,10 +2533,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 @@ -2926,7 +2926,7 @@ interactions: content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: amount_of_active_customers links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/amount_of_active_customers @@ -2941,7 +2941,7 @@ interactions: content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: amount_of_orders links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/amount_of_orders @@ -2957,7 +2957,7 @@ interactions: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT {metric/revenue} BY {attribute/customer_id}) > 10000 ' - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: amount_of_top_customers links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/amount_of_top_customers @@ -2974,7 +2974,7 @@ interactions: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: amount_of_valid_orders links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/amount_of_valid_orders @@ -2989,7 +2989,7 @@ interactions: content: format: $#,##0 maql: SELECT SUM({fact/spend}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: campaign_spend links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/campaign_spend @@ -3004,7 +3004,7 @@ interactions: content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: order_amount links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/order_amount @@ -3019,7 +3019,7 @@ interactions: content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: percent_revenue links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue @@ -3035,7 +3035,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: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: percent_revenue_from_top_10_customers links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue_from_top_10_customers @@ -3051,7 +3051,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: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: percent_revenue_from_top_10_percent_customers links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue_from_top_10_percent_customers @@ -3067,7 +3067,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: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: percent_revenue_from_top_10_percent_products links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue_from_top_10_percent_products @@ -3083,7 +3083,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: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: percent_revenue_from_top_10_products links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue_from_top_10_products @@ -3099,7 +3099,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, ALL OTHER) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: percent_revenue_in_category links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue_in_category @@ -3115,7 +3115,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL {attribute/product_id}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: percent_revenue_per_product links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/percent_revenue_per_product @@ -3132,7 +3132,7 @@ interactions: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: revenue links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue @@ -3148,7 +3148,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Clothing") - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: revenue-clothing links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue-clothing @@ -3164,7 +3164,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ( "Electronics") - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: revenue-electronic links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue-electronic @@ -3180,7 +3180,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Home") - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: revenue-home links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue-home @@ -3196,7 +3196,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Outdoor") - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: revenue-outdoor links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue-outdoor @@ -3211,7 +3211,7 @@ interactions: content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: revenue_per_customer links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue_per_customer @@ -3226,7 +3226,7 @@ interactions: content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: revenue_per_dollar_spent links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue_per_dollar_spent @@ -3241,7 +3241,7 @@ interactions: content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: revenue_top_10 links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue_top_10 @@ -3256,7 +3256,7 @@ interactions: content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: revenue_top_10_percent links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/revenue_top_10_percent @@ -3271,7 +3271,7 @@ interactions: content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: total_revenue links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/total_revenue @@ -3286,7 +3286,7 @@ interactions: content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER - createdAt: 2026-02-16 15:26 + createdAt: 2026-02-26 14:23 id: total_revenue-no_filters links: self: http://localhost:3000/api/v1/entities/workspaces/demo/metrics/total_revenue-no_filters diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/label_elements.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/label_elements.yaml index 53c156c95..4f16b0c43 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/label_elements.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/workspace_content/label_elements.yaml @@ -67,7 +67,7 @@ interactions: count: 2 offset: 0 next: null - cacheId: cfab51328ab4456a7566d09d7e65a3d0 + cacheId: afaa082b7a6dcdeb3ea43c44f98c1a77 - request: method: POST uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/collectLabelElements @@ -128,7 +128,7 @@ interactions: count: 1 offset: 0 next: null - cacheId: 556fe4e6164ab3469ffdebc189576536 + cacheId: 2adf55d333ec2770665bbf26a33fc9ad - request: method: POST uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/collectLabelElements @@ -191,7 +191,7 @@ interactions: count: 3 offset: 0 next: null - cacheId: 53715ec38a50c80767c2e5f460bbe3d5 + cacheId: 326d9540a84e4e8fa6f67c938770761c - request: method: POST uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/collectLabelElements @@ -256,7 +256,7 @@ interactions: count: 0 offset: 0 next: null - cacheId: ddbe275f60d9c3026dc407d65c3500d1 + cacheId: 7c7152263d38734d1ca25594e82109a3 - request: method: POST uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/collectLabelElements @@ -322,7 +322,7 @@ interactions: count: 0 offset: 0 next: null - cacheId: bf2f9485252e836f26823c4218f1e692 + cacheId: 48a38845fa9b3f60e32eae87ff0be520 - request: method: POST uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/collectLabelElements @@ -388,7 +388,7 @@ interactions: count: 2 offset: 0 next: null - cacheId: cfab51328ab4456a7566d09d7e65a3d0 + cacheId: afaa082b7a6dcdeb3ea43c44f98c1a77 - request: method: POST uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/collectLabelElements @@ -448,7 +448,7 @@ interactions: count: 1 offset: 0 next: null - cacheId: a8a7f873d466867074230166d8ed89a3 + cacheId: f3e06f30e63d96c757d05e289ce18905 - request: method: POST uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/collectLabelElements @@ -511,7 +511,7 @@ interactions: count: 2 offset: 0 next: null - cacheId: b72a409afbc1d8577c568483c0f8c5f3 + cacheId: b219514f64a898f9b3e6b01ac3f7440e - request: method: POST uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/collectLabelElements @@ -575,7 +575,7 @@ interactions: count: 3 offset: 0 next: null - cacheId: e78e5c864db92a0bace1346a5ad3d14f + cacheId: a2735bd6b9ee9604e7b0848679734a1a - request: method: POST uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/collectLabelElements?offset=1&limit=1 @@ -634,4 +634,4 @@ interactions: count: 1 offset: 1 next: http://localhost:3000/api/v1/actions/workspaces/demo/execution/collectLabelElements?limit=1&offset=2 - cacheId: 53715ec38a50c80767c2e5f460bbe3d5 + cacheId: 326d9540a84e4e8fa6f67c938770761c diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/workspaces/add_metadata_locale.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/workspaces/add_metadata_locale.yaml index e4575bdd7..680643eaf 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/workspaces/add_metadata_locale.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/workspaces/add_metadata_locale.yaml @@ -144,13 +144,10 @@ interactions: id="attribute.campaign_channels.category.title">CategoryCategoryCampaign - channelsTypeTypeCampaign channelsCampaign - idCampaign - idCampaignsCampaign idCampaign idCampaignsCampaign nameCampaign nameCampaignsCustomer nameCustomer nameCustomersRegionRegionCustomersDate + - DateDateDateDate + - Month/YearMonth + and Year (12/2020)DateDate + - Quarter/YearQuarter + and Year (Q1/2020)DateDate + - Week/YearWeek + and Year (W52/2020)DateDate + - YearYearDateOrder idOrder idOrder @@ -183,24 +192,15 @@ interactions: id="attribute.products.category">CategoryCategoryProductsDate - - DateDateDateDate - - Week/YearWeek - and Year (W52/2020)DateDate - - Month/YearMonth - and Year (12/2020)DateDate - - Quarter/YearQuarter - and Year (Q1/2020)DateDate - - YearYearDateRegionRegionCustomersStateStateCustomersCustomersTypeTypeCampaign channelsCampaign channelsCampaign channelsCampaign @@ -215,28 +215,28 @@ interactions: id="dataset.customers">CustomersCustomersCustomersDateDateOrder linesOrder linesOrder linesProductsProductsProductsDateDateProductsBudgetBudgetCampaign channelsSpendSpendCampaign channelsPricePriceOrder linesQuantityQuantityOrder linesOrder linesSpendSpendCampaign channelsBudget AggCampaign channels per @@ -248,9 +248,6 @@ interactions: id="label.campaign_channels.category.title">CategoryCategoryCampaign channelsTypeTypeCampaign channelsCampaign idCampaign idCampaignsCustomer nameCustomer nameCustomersRegionRegionCustomersStateStateCustomersDate + - DateDateDateDate + - Month/YearMonth + and Year (12/2020)DateDate + - Quarter/YearQuarter + and Year (Q1/2020)DateDate + - Week/YearWeek + and Year (W52/2020)DateDate + - YearYearDateLocationLocationCustomersCategoryCategoryProductsDate - - DateDateDateDate - - Week/YearWeek - and Year (W52/2020)DateDate - - Month/YearMonth - and Year (12/2020)DateDate - - Quarter/YearQuarter - and Year (Q1/2020)DateDate - - YearYearDateRegionRegionCustomersStateStateCustomersTypeTypeCampaign channels# of Active Customers# of OrdersCategoryCategoryCampaign - channelsTypeTypeCampaign channelsCampaign - idCampaign - idCampaignsCampaign idCampaign idCampaignsCampaign nameCampaign nameCampaignsCustomer nameCustomer nameCustomersRegionRegionCustomersDate + - DateDateDateDate + - Month/YearMonth + and Year (12/2020)DateDate + - Quarter/YearQuarter + and Year (Q1/2020)DateDate + - Week/YearWeek + and Year (W52/2020)DateDate + - YearYearDateOrder idOrder idOrder @@ -643,24 +652,15 @@ interactions: id="attribute.products.category">CategoryCategoryProductsDate - - DateDateDateDate - - Week/YearWeek - and Year (W52/2020)DateDate - - Month/YearMonth - and Year (12/2020)DateDate - - Quarter/YearQuarter - and Year (Q1/2020)DateDate - - YearYearDateRegionRegionCustomersStateStateCustomersCustomersTypeTypeCampaign channelsCampaign channelsCampaign channelsCampaign @@ -675,28 +675,28 @@ interactions: id="dataset.customers">CustomersCustomersCustomersDateDateOrder linesOrder linesOrder linesProductsProductsProductsDateDateProductsBudgetBudgetCampaign channelsSpendSpendCampaign channelsPricePriceOrder linesQuantityQuantityOrder linesOrder linesSpendSpendCampaign channelsBudget AggCampaign channels per @@ -708,9 +708,6 @@ interactions: id="label.campaign_channels.category.title">CategoryCategoryCampaign channelsTypeTypeCampaign channelsCampaign idCampaign idCampaignsCustomer nameCustomer nameCustomersRegionRegionCustomersStateStateCustomersDate + - DateDateDateDate + - Month/YearMonth + and Year (12/2020)DateDate + - Quarter/YearQuarter + and Year (Q1/2020)DateDate + - Week/YearWeek + and Year (W52/2020)DateDate + - YearYearDateLocationLocationCustomersCategoryCategoryProductsDate - - DateDateDateDate - - Week/YearWeek - and Year (W52/2020)DateDate - - Month/YearMonth - and Year (12/2020)DateDate - - Quarter/YearQuarter - and Year (Q1/2020)DateDate - - YearYearDateRegionRegionCustomersStateStateCustomersTypeTypeCampaign channels# of Active Customers# of OrdersCategoryCategory.CategoryCategory.Campaign channelsCampaign - channels.TypeType.TypeType.Campaign channelsCampaign channels.Campaign idCampaign id.Campaign @@ -1059,9 +1055,25 @@ interactions: id="attribute.customer_name">Customer nameCustomer name.Customer nameCustomer name.CustomersCustomers.RegionRegion.RegionRegion.CustomersCustomers.Date + - DateDate - Date.DateDate.DateDate.Date + - Month/YearDate - Month/Year.Month and Year (12/2020)Month + and Year (12/2020).DateDate.Date + - Quarter/YearDate - Quarter/Year.Quarter and Year + (Q1/2020)Quarter and Year (Q1/2020).DateDate.Date + - Week/YearDate - Week/Year.Week and Year (W52/2020)Week + and Year (W52/2020).DateDate.Date + - YearDate - Year.YearYear.DateDate.Order idOrder id.Order idOrder id.Order @@ -1083,29 +1095,17 @@ interactions: id="attribute.products.category">CategoryCategory.CategoryCategory.ProductsProducts.Date - - DateDate - Date.DateDate.DateDate.Date - - Week/YearDate - Week/Year.Week and Year (W52/2020)Week - and Year (W52/2020).DateDate.Date - - Month/YearDate - Month/Year.Month and Year (12/2020)Month - and Year (12/2020).DateDate.Date - - Quarter/YearDate - Quarter/Year.Quarter and Year - (Q1/2020)Quarter and Year (Q1/2020).DateDate.Date - - YearDate - Year.YearYear.DateDate.RegionRegion.RegionRegion.CustomersCustomers.StateState.StateState.CustomersCustomers.Campaign + id="attribute.state.tags">CustomersCustomers.TypeType.TypeType.Campaign channelsCampaign + channels.Campaign channelsCampaign channels.Campaign channelsCampaign channels.Campaign @@ -1122,28 +1122,28 @@ interactions: id="dataset.customers">CustomersCustomers.CustomersCustomers.CustomersCustomers.DateDate.DateDate.Order linesOrder lines.Order linesOrder lines.Order linesOrder lines.ProductsProducts.ProductsProducts.ProductsProducts.DateDate.DateDate.ProductsProducts.BudgetBudget.BudgetBudget.Campaign channelsCampaign - channels.SpendSpend.SpendSpend.Campaign channelsCampaign channels.PricePrice.PricePrice.Order linesOrder lines.QuantityQuantity.QuantityQuantity.Order linesOrder - lines.SpendSpend.SpendSpend.Campaign channelsCampaign + channels.Budget AggBudget Agg.Campaign @@ -1156,9 +1156,6 @@ interactions: id="label.campaign_channels.category">CategoryCategory.CategoryCategory.Campaign channelsCampaign - channels.TypeType.TypeType.Campaign channelsCampaign channels.Campaign idCampaign id.Campaign @@ -1172,12 +1169,24 @@ interactions: id="label.customer_name">Customer nameCustomer name.Customer nameCustomer name.CustomersCustomers.RegionRegion.RegionRegion.CustomersCustomers.StateState.StateState.CustomersCustomers.Date + - DateDate - Date.DateDate.DateDate.Date + - Month/YearDate - Month/Year.Month and Year (12/2020)Month + and Year (12/2020).DateDate.Date + - Quarter/YearDate - Quarter/Year.Quarter and Year (Q1/2020)Quarter + and Year (Q1/2020).DateDate.Date + - Week/YearDate - Week/Year.Week and Year (W52/2020)Week + and Year (W52/2020).DateDate.Date + - YearDate - Year.YearYear.DateDate.LocationLocation.LocationLocation.CustomersCustomers.CategoryCategory.CategoryCategory.ProductsProducts.Date - - DateDate - Date.DateDate.DateDate.Date - - Week/YearDate - Week/Year.Week and Year (W52/2020)Week - and Year (W52/2020).DateDate.Date - - Month/YearDate - Month/Year.Month and Year (12/2020)Month - and Year (12/2020).DateDate.Date - - Quarter/YearDate - Quarter/Year.Quarter and Year (Q1/2020)Quarter - and Year (Q1/2020).DateDate.Date - - YearDate - Year.YearYear.DateDate.# + id="label.region">RegionRegion.RegionRegion.CustomersCustomers.StateState.StateState.CustomersCustomers.TypeType.TypeType.Campaign channelsCampaign + channels.# of Active Customers# of Active Customers.# of Orders# of Orders.CategoryCategory.Campaign channelsCampaign channels.TypeType.TypeType.Campaign channelsCampaign - channels.Campaign idCampaign - id.Campaign + id="attribute.campaign_id">Campaign + idCampaign id.Campaign idCampaign id.CampaignsCampaigns.Campaign nameCampaign name.Campaign @@ -1608,9 +1605,25 @@ interactions: id="attribute.customer_name">Customer nameCustomer name.Customer nameCustomer name.CustomersCustomers.RegionRegion.RegionRegion.CustomersCustomers.Date + - DateDate - Date.DateDate.DateDate.Date + - Month/YearDate - Month/Year.Month and Year (12/2020)Month + and Year (12/2020).DateDate.Date + - Quarter/YearDate - Quarter/Year.Quarter and Year + (Q1/2020)Quarter and Year (Q1/2020).DateDate.Date + - Week/YearDate - Week/Year.Week and Year (W52/2020)Week + and Year (W52/2020).DateDate.Date + - YearDate - Year.YearYear.DateDate.Order idOrder id.Order idOrder id.Order @@ -1632,29 +1645,17 @@ interactions: id="attribute.products.category">CategoryCategory.CategoryCategory.ProductsProducts.Date - - DateDate - Date.DateDate.DateDate.Date - - Week/YearDate - Week/Year.Week and Year (W52/2020)Week - and Year (W52/2020).DateDate.Date - - Month/YearDate - Month/Year.Month and Year (12/2020)Month - and Year (12/2020).DateDate.Date - - Quarter/YearDate - Quarter/Year.Quarter and Year - (Q1/2020)Quarter and Year (Q1/2020).DateDate.Date - - YearDate - Year.YearYear.DateDate.RegionRegion.RegionRegion.CustomersCustomers.StateState.StateState.CustomersCustomers.Campaign + id="attribute.state.tags">CustomersCustomers.TypeType.TypeType.Campaign channelsCampaign + channels.Campaign channelsCampaign channels.Campaign channelsCampaign channels.Campaign @@ -1671,23 +1672,19 @@ interactions: id="dataset.customers">CustomersCustomers.CustomersCustomers.CustomersCustomers.DateDate.DateDate.Order linesOrder lines.Order linesOrder lines.Order linesOrder lines.ProductsProducts.ProductsProducts.ProductsProducts.DateDate.DateDate.ProductsProducts.BudgetBudget.BudgetBudget.Campaign channelsCampaign - channels.SpendSpend.SpendSpend.Campaign channelsCampaign channels.PricePrice.PricePrice.QuantityQuantity.QuantityQuantity.Order linesOrder - lines.SpendSpend.SpendSpend.Campaign channelsCampaign + channels.Budget AggBudget Agg.Campaign @@ -1709,10 +1709,6 @@ interactions: id="label.campaign_channels.category">CategoryCategory.CategoryCategory.Campaign channelsCampaign - channels.TypeType.TypeType.Campaign channelsCampaign channels.Campaign idCampaign id.Campaign @@ -1726,12 +1722,24 @@ interactions: id="label.customer_name">Customer nameCustomer name.Customer nameCustomer name.CustomersCustomers.RegionRegion.RegionRegion.CustomersCustomers.StateState.StateState.CustomersCustomers.Date + - DateDate - Date.DateDate.DateDate.Date + - Month/YearDate - Month/Year.Month and Year (12/2020)Month + and Year (12/2020).DateDate.Date + - Quarter/YearDate - Quarter/Year.Quarter and Year (Q1/2020)Quarter + and Year (Q1/2020).DateDate.Date + - Week/YearDate - Week/Year.Week and Year (W52/2020)Week + and Year (W52/2020).DateDate.Date + - YearDate - Year.YearYear.DateDate.LocationLocation.LocationLocation.CustomersCustomers.CategoryCategory.CategoryCategory.ProductsProducts.Date - - DateDate - Date.DateDate.DateDate.Date - - Week/YearDate - Week/Year.Week and Year (W52/2020)Week - and Year (W52/2020).DateDate.Date - - Month/YearDate - Month/Year.Month and Year (12/2020)Month - and Year (12/2020).DateDate.Date - - Quarter/YearDate - Quarter/Year.Quarter and Year (Q1/2020)Quarter - and Year (Q1/2020).DateDate.Date - - YearDate - Year.YearYear.DateDate.# + id="label.region">RegionRegion.RegionRegion.CustomersCustomers.StateState.StateState.CustomersCustomers.TypeType.TypeType.Campaign channelsCampaign + channels.# of Active Customers# of Active Customers.# of Orders# of Orders.CategoryCategoryCampaign - channelsTypeTypeCampaign channelsCampaign - idCampaign - idCampaignsCampaign idCampaign idCampaignsCampaign nameCampaign nameCampaignsCustomer nameCustomer nameCustomersRegionRegionCustomersDate + - DateDateDateDate + - Month/YearMonth + and Year (12/2020)DateDate + - Quarter/YearQuarter + and Year (Q1/2020)DateDate + - Week/YearWeek + and Year (W52/2020)DateDate + - YearYearDateOrder idOrder idOrder @@ -183,24 +192,15 @@ interactions: id="attribute.products.category">CategoryCategoryProductsDate - - DateDateDateDate - - Week/YearWeek - and Year (W52/2020)DateDate - - Month/YearMonth - and Year (12/2020)DateDate - - Quarter/YearQuarter - and Year (Q1/2020)DateDate - - YearYearDateRegionRegionCustomersStateStateCustomersCustomersTypeTypeCampaign channelsCampaign channelsCampaign channelsCampaign @@ -215,28 +215,28 @@ interactions: id="dataset.customers">CustomersCustomersCustomersDateDateOrder linesOrder linesOrder linesProductsProductsProductsDateDateProductsBudgetBudgetCampaign channelsSpendSpendCampaign channelsPricePriceOrder linesQuantityQuantityOrder linesOrder linesSpendSpendCampaign channelsBudget AggCampaign channels per @@ -248,9 +248,6 @@ interactions: id="label.campaign_channels.category.title">CategoryCategoryCampaign channelsTypeTypeCampaign channelsCampaign idCampaign idCampaignsCustomer nameCustomer nameCustomersRegionRegionCustomersStateStateCustomersDate + - DateDateDateDate + - Month/YearMonth + and Year (12/2020)DateDate + - Quarter/YearQuarter + and Year (Q1/2020)DateDate + - Week/YearWeek + and Year (W52/2020)DateDate + - YearYearDateLocationLocationCustomersCategoryCategoryProductsDate - - DateDateDateDate - - Week/YearWeek - and Year (W52/2020)DateDate - - Month/YearMonth - and Year (12/2020)DateDate - - Quarter/YearQuarter - and Year (Q1/2020)DateDate - - YearYearDateRegionRegionCustomersStateStateCustomersTypeTypeCampaign channels# of Active Customers# of OrdersCategoryCategoryCampaign - channelsTypeTypeCampaign channelsCampaign - idCampaign - idCampaignsCampaign idCampaign idCampaignsCampaign nameCampaign nameCampaignsCustomer nameCustomer nameCustomersRegionRegionCustomersDate + - DateDateDateDate + - Month/YearMonth + and Year (12/2020)DateDate + - Quarter/YearQuarter + and Year (Q1/2020)DateDate + - Week/YearWeek + and Year (W52/2020)DateDate + - YearYearDateOrder idOrder idOrder @@ -643,24 +652,15 @@ interactions: id="attribute.products.category">CategoryCategoryProductsDate - - DateDateDateDate - - Week/YearWeek - and Year (W52/2020)DateDate - - Month/YearMonth - and Year (12/2020)DateDate - - Quarter/YearQuarter - and Year (Q1/2020)DateDate - - YearYearDateRegionRegionCustomersStateStateCustomersCustomersTypeTypeCampaign channelsCampaign channelsCampaign channelsCampaign @@ -675,28 +675,28 @@ interactions: id="dataset.customers">CustomersCustomersCustomersDateDateOrder linesOrder linesOrder linesProductsProductsProductsDateDateProductsBudgetBudgetCampaign channelsSpendSpendCampaign channelsPricePriceOrder linesQuantityQuantityOrder linesOrder linesSpendSpendCampaign channelsBudget AggCampaign channels per @@ -708,9 +708,6 @@ interactions: id="label.campaign_channels.category.title">CategoryCategoryCampaign channelsTypeTypeCampaign channelsCampaign idCampaign idCampaignsCustomer nameCustomer nameCustomersRegionRegionCustomersStateStateCustomersDate + - DateDateDateDate + - Month/YearMonth + and Year (12/2020)DateDate + - Quarter/YearQuarter + and Year (Q1/2020)DateDate + - Week/YearWeek + and Year (W52/2020)DateDate + - YearYearDateLocationLocationCustomersCategoryCategoryProductsDate - - DateDateDateDate - - Week/YearWeek - and Year (W52/2020)DateDate - - Month/YearMonth - and Year (12/2020)DateDate - - Quarter/YearQuarter - and Year (Q1/2020)DateDate - - YearYearDateRegionRegionCustomersStateStateCustomersTypeTypeCampaign channels# of Active Customers# of OrdersCategoryCategory.CategoryCategory.Campaign channelsCampaign - channels.TypeType.TypeType.Campaign channelsCampaign channels.Campaign idCampaign id.Campaign @@ -1059,9 +1055,25 @@ interactions: id="attribute.customer_name">Customer nameCustomer name.Customer nameCustomer name.CustomersCustomers.RegionRegion.RegionRegion.CustomersCustomers.Date + - DateDate - Date.DateDate.DateDate.Date + - Month/YearDate - Month/Year.Month and Year (12/2020)Month + and Year (12/2020).DateDate.Date + - Quarter/YearDate - Quarter/Year.Quarter and Year + (Q1/2020)Quarter and Year (Q1/2020).DateDate.Date + - Week/YearDate - Week/Year.Week and Year (W52/2020)Week + and Year (W52/2020).DateDate.Date + - YearDate - Year.YearYear.DateDate.Order idOrder id.Order idOrder id.Order @@ -1083,29 +1095,17 @@ interactions: id="attribute.products.category">CategoryCategory.CategoryCategory.ProductsProducts.Date - - DateDate - Date.DateDate.DateDate.Date - - Week/YearDate - Week/Year.Week and Year (W52/2020)Week - and Year (W52/2020).DateDate.Date - - Month/YearDate - Month/Year.Month and Year (12/2020)Month - and Year (12/2020).DateDate.Date - - Quarter/YearDate - Quarter/Year.Quarter and Year - (Q1/2020)Quarter and Year (Q1/2020).DateDate.Date - - YearDate - Year.YearYear.DateDate.RegionRegion.RegionRegion.CustomersCustomers.StateState.StateState.CustomersCustomers.Campaign + id="attribute.state.tags">CustomersCustomers.TypeType.TypeType.Campaign channelsCampaign + channels.Campaign channelsCampaign channels.Campaign channelsCampaign channels.Campaign @@ -1122,28 +1122,28 @@ interactions: id="dataset.customers">CustomersCustomers.CustomersCustomers.CustomersCustomers.DateDate.DateDate.Order linesOrder lines.Order linesOrder lines.Order linesOrder lines.ProductsProducts.ProductsProducts.ProductsProducts.DateDate.DateDate.ProductsProducts.BudgetBudget.BudgetBudget.Campaign channelsCampaign - channels.SpendSpend.SpendSpend.Campaign channelsCampaign channels.PricePrice.PricePrice.Order linesOrder lines.QuantityQuantity.QuantityQuantity.Order linesOrder - lines.SpendSpend.SpendSpend.Campaign channelsCampaign + channels.Budget AggBudget Agg.Campaign @@ -1156,9 +1156,6 @@ interactions: id="label.campaign_channels.category">CategoryCategory.CategoryCategory.Campaign channelsCampaign - channels.TypeType.TypeType.Campaign channelsCampaign channels.Campaign idCampaign id.Campaign @@ -1172,12 +1169,24 @@ interactions: id="label.customer_name">Customer nameCustomer name.Customer nameCustomer name.CustomersCustomers.RegionRegion.RegionRegion.CustomersCustomers.StateState.StateState.CustomersCustomers.Date + - DateDate - Date.DateDate.DateDate.Date + - Month/YearDate - Month/Year.Month and Year (12/2020)Month + and Year (12/2020).DateDate.Date + - Quarter/YearDate - Quarter/Year.Quarter and Year (Q1/2020)Quarter + and Year (Q1/2020).DateDate.Date + - Week/YearDate - Week/Year.Week and Year (W52/2020)Week + and Year (W52/2020).DateDate.Date + - YearDate - Year.YearYear.DateDate.LocationLocation.LocationLocation.CustomersCustomers.CategoryCategory.CategoryCategory.ProductsProducts.Date - - DateDate - Date.DateDate.DateDate.Date - - Week/YearDate - Week/Year.Week and Year (W52/2020)Week - and Year (W52/2020).DateDate.Date - - Month/YearDate - Month/Year.Month and Year (12/2020)Month - and Year (12/2020).DateDate.Date - - Quarter/YearDate - Quarter/Year.Quarter and Year (Q1/2020)Quarter - and Year (Q1/2020).DateDate.Date - - YearDate - Year.YearYear.DateDate.# + id="label.region">RegionRegion.RegionRegion.CustomersCustomers.StateState.StateState.CustomersCustomers.TypeType.TypeType.Campaign channelsCampaign + channels.# of Active Customers# of Active Customers.# of Orders# of Orders.CategoryCategory.Campaign channelsCampaign channels.TypeType.TypeType.Campaign channelsCampaign - channels.Campaign idCampaign - id.Campaign + id="attribute.campaign_id">Campaign + idCampaign id.Campaign idCampaign id.CampaignsCampaigns.Campaign nameCampaign name.Campaign @@ -1608,9 +1605,25 @@ interactions: id="attribute.customer_name">Customer nameCustomer name.Customer nameCustomer name.CustomersCustomers.RegionRegion.RegionRegion.CustomersCustomers.Date + - DateDate - Date.DateDate.DateDate.Date + - Month/YearDate - Month/Year.Month and Year (12/2020)Month + and Year (12/2020).DateDate.Date + - Quarter/YearDate - Quarter/Year.Quarter and Year + (Q1/2020)Quarter and Year (Q1/2020).DateDate.Date + - Week/YearDate - Week/Year.Week and Year (W52/2020)Week + and Year (W52/2020).DateDate.Date + - YearDate - Year.YearYear.DateDate.Order idOrder id.Order idOrder id.Order @@ -1632,29 +1645,17 @@ interactions: id="attribute.products.category">CategoryCategory.CategoryCategory.ProductsProducts.Date - - DateDate - Date.DateDate.DateDate.Date - - Week/YearDate - Week/Year.Week and Year (W52/2020)Week - and Year (W52/2020).DateDate.Date - - Month/YearDate - Month/Year.Month and Year (12/2020)Month - and Year (12/2020).DateDate.Date - - Quarter/YearDate - Quarter/Year.Quarter and Year - (Q1/2020)Quarter and Year (Q1/2020).DateDate.Date - - YearDate - Year.YearYear.DateDate.RegionRegion.RegionRegion.CustomersCustomers.StateState.StateState.CustomersCustomers.Campaign + id="attribute.state.tags">CustomersCustomers.TypeType.TypeType.Campaign channelsCampaign + channels.Campaign channelsCampaign channels.Campaign channelsCampaign channels.Campaign @@ -1671,23 +1672,19 @@ interactions: id="dataset.customers">CustomersCustomers.CustomersCustomers.CustomersCustomers.DateDate.DateDate.Order linesOrder lines.Order linesOrder lines.Order linesOrder lines.ProductsProducts.ProductsProducts.ProductsProducts.DateDate.DateDate.ProductsProducts.BudgetBudget.BudgetBudget.Campaign channelsCampaign - channels.SpendSpend.SpendSpend.Campaign channelsCampaign channels.PricePrice.PricePrice.QuantityQuantity.QuantityQuantity.Order linesOrder - lines.SpendSpend.SpendSpend.Campaign channelsCampaign + channels.Budget AggBudget Agg.Campaign @@ -1709,10 +1709,6 @@ interactions: id="label.campaign_channels.category">CategoryCategory.CategoryCategory.Campaign channelsCampaign - channels.TypeType.TypeType.Campaign channelsCampaign channels.Campaign idCampaign id.Campaign @@ -1726,12 +1722,24 @@ interactions: id="label.customer_name">Customer nameCustomer name.Customer nameCustomer name.CustomersCustomers.RegionRegion.RegionRegion.CustomersCustomers.StateState.StateState.CustomersCustomers.Date + - DateDate - Date.DateDate.DateDate.Date + - Month/YearDate - Month/Year.Month and Year (12/2020)Month + and Year (12/2020).DateDate.Date + - Quarter/YearDate - Quarter/Year.Quarter and Year (Q1/2020)Quarter + and Year (Q1/2020).DateDate.Date + - Week/YearDate - Week/Year.Week and Year (W52/2020)Week + and Year (W52/2020).DateDate.Date + - YearDate - Year.YearYear.DateDate.LocationLocation.LocationLocation.CustomersCustomers.CategoryCategory.CategoryCategory.ProductsProducts.Date - - DateDate - Date.DateDate.DateDate.Date - - Week/YearDate - Week/Year.Week and Year (W52/2020)Week - and Year (W52/2020).DateDate.Date - - Month/YearDate - Month/Year.Month and Year (12/2020)Month - and Year (12/2020).DateDate.Date - - Quarter/YearDate - Quarter/Year.Quarter and Year (Q1/2020)Quarter - and Year (Q1/2020).DateDate.Date - - YearDate - Year.YearYear.DateDate.# + id="label.region">RegionRegion.RegionRegion.CustomersCustomers.StateState.StateState.CustomersCustomers.TypeType.TypeType.Campaign channelsCampaign + channels.# of Active Customers# of Active Customers.# of Orders# of Orders.CategoryCategoryCampaign - channelsTypeTypeCampaign channelsCampaign - idCampaign - idCampaignsCampaign idCampaign idCampaignsCampaign nameCampaign nameCampaignsCustomer nameCustomer nameCustomersRegionRegionCustomersDate + - DateDateDateDate + - Month/YearMonth + and Year (12/2020)DateDate + - Quarter/YearQuarter + and Year (Q1/2020)DateDate + - Week/YearWeek + and Year (W52/2020)DateDate + - YearYearDateOrder idOrder idOrder @@ -2176,24 +2185,15 @@ interactions: id="attribute.products.category">CategoryCategoryProductsDate - - DateDateDateDate - - Week/YearWeek - and Year (W52/2020)DateDate - - Month/YearMonth - and Year (12/2020)DateDate - - Quarter/YearQuarter - and Year (Q1/2020)DateDate - - YearYearDateRegionRegionCustomersStateStateCustomersCustomersTypeTypeCampaign channelsCampaign channelsCampaign channelsCampaign @@ -2208,28 +2208,28 @@ interactions: id="dataset.customers">CustomersCustomersCustomersDateDateOrder linesOrder linesOrder linesProductsProductsProductsDateDateProductsBudgetBudgetCampaign channelsSpendSpendCampaign channelsPricePriceOrder linesQuantityQuantityOrder linesOrder linesSpendSpendCampaign channelsBudget AggCampaign channels per @@ -2241,9 +2241,6 @@ interactions: id="label.campaign_channels.category.title">CategoryCategoryCampaign channelsTypeTypeCampaign channelsCampaign idCampaign idCampaignsCustomer nameCustomer nameCustomersRegionRegionCustomersStateStateCustomersDate + - DateDateDateDate + - Month/YearMonth + and Year (12/2020)DateDate + - Quarter/YearQuarter + and Year (Q1/2020)DateDate + - Week/YearWeek + and Year (W52/2020)DateDate + - YearYearDateLocationLocationCustomersCategoryCategoryProductsDate - - DateDateDateDate - - Week/YearWeek - and Year (W52/2020)DateDate - - Month/YearMonth - and Year (12/2020)DateDate - - Quarter/YearQuarter - and Year (Q1/2020)DateDate - - YearYearDateRegionRegionCustomersStateStateCustomersTypeTypeCampaign channels# of Active Customers# of Orders 10000 ' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -502,7 +502,7 @@ interactions: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -512,7 +512,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/spend}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -521,7 +521,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -530,7 +530,7 @@ interactions: - content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -540,7 +540,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -550,7 +550,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -560,7 +560,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -570,7 +570,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -580,7 +580,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, ALL OTHER) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -590,7 +590,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL {attribute/product_id}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -600,7 +600,7 @@ interactions: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -611,7 +611,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Clothing") - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -621,7 +621,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ( "Electronics") - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -631,7 +631,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Home") - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -641,7 +641,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Outdoor") - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -650,7 +650,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -659,7 +659,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -668,7 +668,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -677,7 +677,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -686,7 +686,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -695,7 +695,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -760,7 +760,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -836,7 +836,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -915,7 +915,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -974,7 +974,7 @@ interactions: stackMeasuresToPercent: true version: '2' visualizationUrl: local:area - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1031,7 +1031,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1084,7 +1084,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:donut - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1159,7 +1159,7 @@ interactions: visible: false version: '2' visualizationUrl: local:column - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1216,7 +1216,7 @@ interactions: enabled: true version: '2' visualizationUrl: local:scatter - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1315,7 +1315,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1371,7 +1371,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:line - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1410,7 +1410,7 @@ interactions: properties: {} version: '2' visualizationUrl: local:bar - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1466,7 +1466,7 @@ interactions: min: '0' version: '2' visualizationUrl: local:scatter - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1534,7 +1534,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1591,7 +1591,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1648,7 +1648,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2082,31 +2082,20 @@ interactions: code: 404 message: Not Found headers: - Cache-Control: - - max-age=5, private Content-Length: - '172' Content-Type: - - application/problem+json + - application/json DATE: *id001 - Referrer-Policy: - - no-referrer - Vary: - - Origin - - Access-Control-Request-Method - - Access-Control-Request-Headers X-Content-Type-Options: - nosniff - X-GDC-TRACE-ID: *id001 - X-Xss-Protection: - - '0' body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: 1be2e06c39417a3bad03e1832e1dcc4b + traceId: c0269bf8ae237c9d90e40e9ea3a26b21 - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo_clone?include=workspaces @@ -2125,31 +2114,20 @@ interactions: code: 404 message: Not Found headers: - Cache-Control: - - max-age=5, private Content-Length: - '172' Content-Type: - - application/problem+json + - application/json DATE: *id001 - Referrer-Policy: - - no-referrer - Vary: - - Origin - - Access-Control-Request-Method - - Access-Control-Request-Headers X-Content-Type-Options: - nosniff - X-GDC-TRACE-ID: *id001 - X-Xss-Protection: - - '0' body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: e65e2376d1685f81c09d08d5b1a0ccf9 + traceId: 4486f9c0d871a3e559dd977079fc7340 - request: method: POST uri: http://localhost:3000/api/v1/entities/workspaces @@ -2771,7 +2749,7 @@ interactions: version: '2' id: campaign title: Campaign - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2814,7 +2792,7 @@ interactions: version: '2' id: dashboard_plugin title: Dashboard plugin - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2964,7 +2942,7 @@ interactions: version: '2' id: product_and_category title: Product & Category - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2977,7 +2955,7 @@ interactions: version: '2' id: dashboard_plugin_1 title: dashboard_plugin_1 - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2987,7 +2965,7 @@ interactions: version: '2' id: dashboard_plugin_2 title: dashboard_plugin_2 - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3036,7 +3014,7 @@ interactions: maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) id: amount_of_active_customers title: '# of Active Customers' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3045,7 +3023,7 @@ interactions: maql: SELECT COUNT({attribute/order_id}) id: amount_of_orders title: '# of Orders' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3055,7 +3033,7 @@ interactions: BY {attribute/customer_id}) > 10000 ' id: amount_of_top_customers title: '# of Top Customers' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3065,7 +3043,7 @@ interactions: IN ("Returned", "Canceled")) id: amount_of_valid_orders title: '# of Valid Orders' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3075,7 +3053,7 @@ interactions: maql: SELECT SUM({fact/spend}) id: campaign_spend title: Campaign Spend - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3084,7 +3062,7 @@ interactions: maql: SELECT SUM({fact/price}*{fact/quantity}) id: order_amount title: Order Amount - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3093,7 +3071,7 @@ interactions: maql: SELECT {metric/revenue} / {metric/total_revenue} id: percent_revenue title: '% Revenue' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3103,7 +3081,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3113,7 +3091,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3123,7 +3101,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3133,7 +3111,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3143,7 +3121,7 @@ interactions: ALL OTHER) id: percent_revenue_in_category title: '% Revenue in Category' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3152,7 +3130,7 @@ interactions: maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL {attribute/product_id}) id: percent_revenue_per_product title: '% Revenue per Product' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3162,7 +3140,7 @@ interactions: IN ("Returned", "Canceled")) id: revenue title: Revenue - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3172,7 +3150,7 @@ interactions: maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Clothing") id: revenue-clothing title: Revenue (Clothing) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3182,7 +3160,7 @@ interactions: "Electronics") id: revenue-electronic title: Revenue (Electronic) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3191,7 +3169,7 @@ interactions: maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Home") id: revenue-home title: Revenue (Home) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3200,7 +3178,7 @@ interactions: maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Outdoor") id: revenue-outdoor title: Revenue (Outdoor) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3209,7 +3187,7 @@ interactions: maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) id: revenue_per_customer title: Revenue per Customer - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3218,7 +3196,7 @@ interactions: maql: SELECT {metric/revenue} / {metric/campaign_spend} id: revenue_per_dollar_spent title: Revenue per Dollar Spent - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3227,7 +3205,7 @@ interactions: maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) id: revenue_top_10 title: Revenue / Top 10 - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3236,7 +3214,7 @@ interactions: maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) id: revenue_top_10_percent title: Revenue / Top 10% - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3245,7 +3223,7 @@ interactions: maql: SELECT {metric/revenue} BY ALL OTHER id: total_revenue title: Total Revenue - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3254,7 +3232,7 @@ interactions: maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER id: total_revenue-no_filters title: Total Revenue (No Filters) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3319,7 +3297,7 @@ interactions: visualizationUrl: local:treemap id: campaign_spend title: Campaign Spend - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3395,7 +3373,7 @@ interactions: visualizationUrl: local:combo2 id: customers_trend title: Customers Trend - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3474,7 +3452,7 @@ interactions: visualizationUrl: local:table id: percent_revenue_per_product_by_customer_and_category title: '% Revenue per Product by Customer and Category' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3533,7 +3511,7 @@ interactions: visualizationUrl: local:area id: percentage_of_customers_by_region title: Percentage of Customers by Region - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3590,7 +3568,7 @@ interactions: visualizationUrl: local:treemap id: product_breakdown title: Product Breakdown - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3643,7 +3621,7 @@ interactions: visualizationUrl: local:donut id: product_categories_pie_chart title: Product Categories Pie Chart - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3718,7 +3696,7 @@ interactions: visualizationUrl: local:column id: product_revenue_comparison-over_previous_period title: Product Revenue Comparison (over previous period) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3775,7 +3753,7 @@ interactions: visualizationUrl: local:scatter id: product_saleability title: Product Saleability - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3874,7 +3852,7 @@ interactions: visualizationUrl: local:table id: revenue_and_quantity_by_product_and_category title: Revenue and Quantity by Product and Category - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3930,7 +3908,7 @@ interactions: visualizationUrl: local:line id: revenue_by_category_trend title: Revenue by Category Trend - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3969,7 +3947,7 @@ interactions: visualizationUrl: local:bar id: revenue_by_product title: Revenue by Product - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4025,7 +4003,7 @@ interactions: visualizationUrl: local:scatter id: revenue_per_usd_vs_spend_by_campaign title: Revenue per $ vs Spend by Campaign - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4093,7 +4071,7 @@ interactions: visualizationUrl: local:combo2 id: revenue_trend title: Revenue Trend - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4150,7 +4128,7 @@ interactions: visualizationUrl: local:bar id: top_10_customers title: Top 10 Customers - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4207,7 +4185,7 @@ interactions: visualizationUrl: local:bar id: top_10_products title: Top 10 Products - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4500,7 +4478,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4543,7 +4521,7 @@ interactions: type: dashboardPlugin version: '2' version: '2' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4693,7 +4671,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4705,7 +4683,7 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4715,7 +4693,7 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4766,7 +4744,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4775,7 +4753,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4785,7 +4763,7 @@ interactions: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT {metric/revenue} BY {attribute/customer_id}) > 10000 ' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4795,7 +4773,7 @@ interactions: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4805,7 +4783,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/spend}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4814,7 +4792,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4823,7 +4801,7 @@ interactions: - content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4833,7 +4811,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4843,7 +4821,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4853,7 +4831,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4863,7 +4841,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4873,7 +4851,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, ALL OTHER) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4883,7 +4861,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL {attribute/product_id}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4893,7 +4871,7 @@ interactions: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4904,7 +4882,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Clothing") - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4914,7 +4892,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ( "Electronics") - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4924,7 +4902,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Home") - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4934,7 +4912,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Outdoor") - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4943,7 +4921,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4952,7 +4930,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4961,7 +4939,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4970,7 +4948,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4979,7 +4957,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4988,7 +4966,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -5053,7 +5031,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -5129,7 +5107,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -5208,7 +5186,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -5267,7 +5245,7 @@ interactions: stackMeasuresToPercent: true version: '2' visualizationUrl: local:area - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -5324,7 +5302,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -5377,7 +5355,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:donut - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -5452,7 +5430,7 @@ interactions: visible: false version: '2' visualizationUrl: local:column - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -5509,7 +5487,7 @@ interactions: enabled: true version: '2' visualizationUrl: local:scatter - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -5608,7 +5586,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -5664,7 +5642,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:line - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -5703,7 +5681,7 @@ interactions: properties: {} version: '2' visualizationUrl: local:bar - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -5759,7 +5737,7 @@ interactions: min: '0' version: '2' visualizationUrl: local:scatter - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -5827,7 +5805,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -5884,7 +5862,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -5941,7 +5919,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -6404,7 +6382,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -6447,7 +6425,7 @@ interactions: type: dashboardPlugin version: '2' version: '2' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -6597,7 +6575,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -6609,7 +6587,7 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -6619,7 +6597,7 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -6670,7 +6648,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -6679,7 +6657,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -6689,7 +6667,7 @@ interactions: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT {metric/revenue} BY {attribute/customer_id}) > 10000 ' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -6699,7 +6677,7 @@ interactions: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -6709,7 +6687,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/spend}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -6718,7 +6696,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -6727,7 +6705,7 @@ interactions: - content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -6737,7 +6715,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -6747,7 +6725,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -6757,7 +6735,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -6767,7 +6745,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -6777,7 +6755,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, ALL OTHER) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -6787,7 +6765,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL {attribute/product_id}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -6797,7 +6775,7 @@ interactions: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -6808,7 +6786,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Clothing") - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -6818,7 +6796,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ( "Electronics") - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -6828,7 +6806,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Home") - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -6838,7 +6816,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Outdoor") - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -6847,7 +6825,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -6856,7 +6834,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -6865,7 +6843,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -6874,7 +6852,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -6883,7 +6861,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -6892,7 +6870,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -6957,7 +6935,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -7033,7 +7011,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -7112,7 +7090,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -7171,7 +7149,7 @@ interactions: stackMeasuresToPercent: true version: '2' visualizationUrl: local:area - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -7228,7 +7206,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -7281,7 +7259,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:donut - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -7356,7 +7334,7 @@ interactions: visible: false version: '2' visualizationUrl: local:column - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -7413,7 +7391,7 @@ interactions: enabled: true version: '2' visualizationUrl: local:scatter - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -7512,7 +7490,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -7568,7 +7546,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:line - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -7607,7 +7585,7 @@ interactions: properties: {} version: '2' visualizationUrl: local:bar - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -7663,7 +7641,7 @@ interactions: min: '0' version: '2' visualizationUrl: local:scatter - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -7731,7 +7709,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -7788,7 +7766,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -7845,7 +7823,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -8279,31 +8257,20 @@ interactions: code: 404 message: Not Found headers: - Cache-Control: - - max-age=5, private Content-Length: - '172' Content-Type: - - application/problem+json + - application/json DATE: *id001 - Referrer-Policy: - - no-referrer - Vary: - - Origin - - Access-Control-Request-Method - - Access-Control-Request-Headers X-Content-Type-Options: - nosniff - X-GDC-TRACE-ID: *id001 - X-Xss-Protection: - - '0' body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: fa88fcfde20a53cf3bccaebdd6aa2d6a + traceId: 2d063a5fb90276040ae01af823ac5ae4 - request: method: GET uri: http://localhost:3000/api/v1/entities/workspaces/demo_jacek?include=workspaces @@ -8322,31 +8289,20 @@ interactions: code: 404 message: Not Found headers: - Cache-Control: - - max-age=5, private Content-Length: - '172' Content-Type: - - application/problem+json + - application/json DATE: *id001 - Referrer-Policy: - - no-referrer - Vary: - - Origin - - Access-Control-Request-Method - - Access-Control-Request-Headers X-Content-Type-Options: - nosniff - X-GDC-TRACE-ID: *id001 - X-Xss-Protection: - - '0' body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: 05bc40cd41464cfa475aceabf3db9c50 + traceId: e3bbf07b80110df58a2050af71948090 - request: method: POST uri: http://localhost:3000/api/v1/entities/workspaces @@ -8982,7 +8938,7 @@ interactions: version: '2' id: campaign title: Campaign - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -9025,7 +8981,7 @@ interactions: version: '2' id: dashboard_plugin title: Dashboard plugin - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -9175,7 +9131,7 @@ interactions: version: '2' id: product_and_category title: Product & Category - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -9188,7 +9144,7 @@ interactions: version: '2' id: dashboard_plugin_1 title: dashboard_plugin_1 - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -9198,7 +9154,7 @@ interactions: version: '2' id: dashboard_plugin_2 title: dashboard_plugin_2 - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -9247,7 +9203,7 @@ interactions: maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) id: amount_of_active_customers title: '# of Active Customers' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -9256,7 +9212,7 @@ interactions: maql: SELECT COUNT({attribute/order_id}) id: amount_of_orders title: '# of Orders' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -9266,7 +9222,7 @@ interactions: BY {attribute/customer_id}) > 10000 ' id: amount_of_top_customers title: '# of Top Customers' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -9276,7 +9232,7 @@ interactions: IN ("Returned", "Canceled")) id: amount_of_valid_orders title: '# of Valid Orders' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -9286,7 +9242,7 @@ interactions: maql: SELECT SUM({fact/spend}) id: campaign_spend title: Campaign Spend - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -9295,7 +9251,7 @@ interactions: maql: SELECT SUM({fact/price}*{fact/quantity}) id: order_amount title: Order Amount - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -9304,7 +9260,7 @@ interactions: maql: SELECT {metric/revenue} / {metric/total_revenue} id: percent_revenue title: '% Revenue' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -9314,7 +9270,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -9324,7 +9280,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -9334,7 +9290,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -9344,7 +9300,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -9354,7 +9310,7 @@ interactions: ALL OTHER) id: percent_revenue_in_category title: '% Revenue in Category' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -9363,7 +9319,7 @@ interactions: maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL {attribute/product_id}) id: percent_revenue_per_product title: '% Revenue per Product' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -9373,7 +9329,7 @@ interactions: IN ("Returned", "Canceled")) id: revenue title: Revenue - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -9383,7 +9339,7 @@ interactions: maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Clothing") id: revenue-clothing title: Revenue (Clothing) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -9393,7 +9349,7 @@ interactions: "Electronics") id: revenue-electronic title: Revenue (Electronic) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -9402,7 +9358,7 @@ interactions: maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Home") id: revenue-home title: Revenue (Home) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -9411,7 +9367,7 @@ interactions: maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Outdoor") id: revenue-outdoor title: Revenue (Outdoor) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -9420,7 +9376,7 @@ interactions: maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) id: revenue_per_customer title: Revenue per Customer - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -9429,7 +9385,7 @@ interactions: maql: SELECT {metric/revenue} / {metric/campaign_spend} id: revenue_per_dollar_spent title: Revenue per Dollar Spent - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -9438,7 +9394,7 @@ interactions: maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) id: revenue_top_10 title: Revenue / Top 10 - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -9447,7 +9403,7 @@ interactions: maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) id: revenue_top_10_percent title: Revenue / Top 10% - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -9456,7 +9412,7 @@ interactions: maql: SELECT {metric/revenue} BY ALL OTHER id: total_revenue title: Total Revenue - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -9465,7 +9421,7 @@ interactions: maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER id: total_revenue-no_filters title: Total Revenue (No Filters) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -9530,7 +9486,7 @@ interactions: visualizationUrl: local:treemap id: campaign_spend title: Campaign Spend - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -9606,7 +9562,7 @@ interactions: visualizationUrl: local:combo2 id: customers_trend title: Customers Trend - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -9685,7 +9641,7 @@ interactions: visualizationUrl: local:table id: percent_revenue_per_product_by_customer_and_category title: '% Revenue per Product by Customer and Category' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -9744,7 +9700,7 @@ interactions: visualizationUrl: local:area id: percentage_of_customers_by_region title: Percentage of Customers by Region - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -9801,7 +9757,7 @@ interactions: visualizationUrl: local:treemap id: product_breakdown title: Product Breakdown - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -9854,7 +9810,7 @@ interactions: visualizationUrl: local:donut id: product_categories_pie_chart title: Product Categories Pie Chart - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -9929,7 +9885,7 @@ interactions: visualizationUrl: local:column id: product_revenue_comparison-over_previous_period title: Product Revenue Comparison (over previous period) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -9986,7 +9942,7 @@ interactions: visualizationUrl: local:scatter id: product_saleability title: Product Saleability - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -10085,7 +10041,7 @@ interactions: visualizationUrl: local:table id: revenue_and_quantity_by_product_and_category title: Revenue and Quantity by Product and Category - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -10141,7 +10097,7 @@ interactions: visualizationUrl: local:line id: revenue_by_category_trend title: Revenue by Category Trend - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -10180,7 +10136,7 @@ interactions: visualizationUrl: local:bar id: revenue_by_product title: Revenue by Product - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -10236,7 +10192,7 @@ interactions: visualizationUrl: local:scatter id: revenue_per_usd_vs_spend_by_campaign title: Revenue per $ vs Spend by Campaign - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -10304,7 +10260,7 @@ interactions: visualizationUrl: local:combo2 id: revenue_trend title: Revenue Trend - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -10361,7 +10317,7 @@ interactions: visualizationUrl: local:bar id: top_10_customers title: Top 10 Customers - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -10418,7 +10374,7 @@ interactions: visualizationUrl: local:bar id: top_10_products title: Top 10 Products - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -10831,7 +10787,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -10874,7 +10830,7 @@ interactions: type: dashboardPlugin version: '2' version: '2' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -11024,7 +10980,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -11036,7 +10992,7 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -11046,7 +11002,7 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -11097,7 +11053,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -11106,7 +11062,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -11116,7 +11072,7 @@ interactions: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT {metric/revenue} BY {attribute/customer_id}) > 10000 ' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -11126,7 +11082,7 @@ interactions: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -11136,7 +11092,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/spend}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -11145,7 +11101,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -11154,7 +11110,7 @@ interactions: - content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -11164,7 +11120,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -11174,7 +11130,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -11184,7 +11140,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -11194,7 +11150,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -11204,7 +11160,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, ALL OTHER) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -11214,7 +11170,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL {attribute/product_id}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -11224,7 +11180,7 @@ interactions: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -11235,7 +11191,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Clothing") - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -11245,7 +11201,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ( "Electronics") - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -11255,7 +11211,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Home") - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -11265,7 +11221,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Outdoor") - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -11274,7 +11230,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -11283,7 +11239,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -11292,7 +11248,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -11301,7 +11257,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -11310,7 +11266,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -11319,7 +11275,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -11384,7 +11340,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -11460,7 +11416,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -11539,7 +11495,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -11598,7 +11554,7 @@ interactions: stackMeasuresToPercent: true version: '2' visualizationUrl: local:area - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -11655,7 +11611,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -11708,7 +11664,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:donut - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -11783,7 +11739,7 @@ interactions: visible: false version: '2' visualizationUrl: local:column - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -11840,7 +11796,7 @@ interactions: enabled: true version: '2' visualizationUrl: local:scatter - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -11939,7 +11895,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -11995,7 +11951,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:line - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -12034,7 +11990,7 @@ interactions: properties: {} version: '2' visualizationUrl: local:bar - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -12090,7 +12046,7 @@ interactions: min: '0' version: '2' visualizationUrl: local:scatter - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -12158,7 +12114,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -12215,7 +12171,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -12272,7 +12228,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -12912,7 +12868,7 @@ interactions: to access it. status: 404 title: Not Found - traceId: c0d943ac82fbddead598563f19800100 + traceId: 0c596765e7a1a0ee3510757ba97b9a45 - request: method: POST uri: http://localhost:3000/api/v1/entities/workspaces @@ -13548,7 +13504,7 @@ interactions: version: '2' id: campaign title: Campaign - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -13591,7 +13547,7 @@ interactions: version: '2' id: dashboard_plugin title: Dashboard plugin - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -13741,7 +13697,7 @@ interactions: version: '2' id: product_and_category title: Product & Category - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -13754,7 +13710,7 @@ interactions: version: '2' id: dashboard_plugin_1 title: dashboard_plugin_1 - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -13764,7 +13720,7 @@ interactions: version: '2' id: dashboard_plugin_2 title: dashboard_plugin_2 - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -13813,7 +13769,7 @@ interactions: maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) id: amount_of_active_customers title: '# of Active Customers' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -13822,7 +13778,7 @@ interactions: maql: SELECT COUNT({attribute/order_id}) id: amount_of_orders title: '# of Orders' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -13832,7 +13788,7 @@ interactions: BY {attribute/customer_id}) > 10000 ' id: amount_of_top_customers title: '# of Top Customers' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -13842,7 +13798,7 @@ interactions: IN ("Returned", "Canceled")) id: amount_of_valid_orders title: '# of Valid Orders' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -13852,7 +13808,7 @@ interactions: maql: SELECT SUM({fact/spend}) id: campaign_spend title: Campaign Spend - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -13861,7 +13817,7 @@ interactions: maql: SELECT SUM({fact/price}*{fact/quantity}) id: order_amount title: Order Amount - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -13870,7 +13826,7 @@ interactions: maql: SELECT {metric/revenue} / {metric/total_revenue} id: percent_revenue title: '% Revenue' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -13880,7 +13836,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -13890,7 +13846,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -13900,7 +13856,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -13910,7 +13866,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -13920,7 +13876,7 @@ interactions: ALL OTHER) id: percent_revenue_in_category title: '% Revenue in Category' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -13929,7 +13885,7 @@ interactions: maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL {attribute/product_id}) id: percent_revenue_per_product title: '% Revenue per Product' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -13939,7 +13895,7 @@ interactions: IN ("Returned", "Canceled")) id: revenue title: Revenue - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -13949,7 +13905,7 @@ interactions: maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Clothing") id: revenue-clothing title: Revenue (Clothing) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -13959,7 +13915,7 @@ interactions: "Electronics") id: revenue-electronic title: Revenue (Electronic) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -13968,7 +13924,7 @@ interactions: maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Home") id: revenue-home title: Revenue (Home) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -13977,7 +13933,7 @@ interactions: maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Outdoor") id: revenue-outdoor title: Revenue (Outdoor) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -13986,7 +13942,7 @@ interactions: maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) id: revenue_per_customer title: Revenue per Customer - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -13995,7 +13951,7 @@ interactions: maql: SELECT {metric/revenue} / {metric/campaign_spend} id: revenue_per_dollar_spent title: Revenue per Dollar Spent - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -14004,7 +13960,7 @@ interactions: maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) id: revenue_top_10 title: Revenue / Top 10 - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -14013,7 +13969,7 @@ interactions: maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) id: revenue_top_10_percent title: Revenue / Top 10% - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -14022,7 +13978,7 @@ interactions: maql: SELECT {metric/revenue} BY ALL OTHER id: total_revenue title: Total Revenue - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -14031,7 +13987,7 @@ interactions: maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER id: total_revenue-no_filters title: Total Revenue (No Filters) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -14096,7 +14052,7 @@ interactions: visualizationUrl: local:treemap id: campaign_spend title: Campaign Spend - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -14172,7 +14128,7 @@ interactions: visualizationUrl: local:combo2 id: customers_trend title: Customers Trend - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -14251,7 +14207,7 @@ interactions: visualizationUrl: local:table id: percent_revenue_per_product_by_customer_and_category title: '% Revenue per Product by Customer and Category' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -14310,7 +14266,7 @@ interactions: visualizationUrl: local:area id: percentage_of_customers_by_region title: Percentage of Customers by Region - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -14367,7 +14323,7 @@ interactions: visualizationUrl: local:treemap id: product_breakdown title: Product Breakdown - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -14420,7 +14376,7 @@ interactions: visualizationUrl: local:donut id: product_categories_pie_chart title: Product Categories Pie Chart - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -14495,7 +14451,7 @@ interactions: visualizationUrl: local:column id: product_revenue_comparison-over_previous_period title: Product Revenue Comparison (over previous period) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -14552,7 +14508,7 @@ interactions: visualizationUrl: local:scatter id: product_saleability title: Product Saleability - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -14651,7 +14607,7 @@ interactions: visualizationUrl: local:table id: revenue_and_quantity_by_product_and_category title: Revenue and Quantity by Product and Category - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -14707,7 +14663,7 @@ interactions: visualizationUrl: local:line id: revenue_by_category_trend title: Revenue by Category Trend - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -14746,7 +14702,7 @@ interactions: visualizationUrl: local:bar id: revenue_by_product title: Revenue by Product - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -14802,7 +14758,7 @@ interactions: visualizationUrl: local:scatter id: revenue_per_usd_vs_spend_by_campaign title: Revenue per $ vs Spend by Campaign - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -14870,7 +14826,7 @@ interactions: visualizationUrl: local:combo2 id: revenue_trend title: Revenue Trend - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -14927,7 +14883,7 @@ interactions: visualizationUrl: local:bar id: top_10_customers title: Top 10 Customers - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -14984,7 +14940,7 @@ interactions: visualizationUrl: local:bar id: top_10_products title: Top 10 Products - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_create_workspace.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_create_workspace.yaml index 7cb626038..14904c554 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_create_workspace.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_create_workspace.yaml @@ -107,31 +107,20 @@ interactions: code: 404 message: Not Found headers: - Cache-Control: - - max-age=5, private Content-Length: - '172' Content-Type: - - application/problem+json + - application/json DATE: *id001 - Referrer-Policy: - - no-referrer - Vary: - - Origin - - Access-Control-Request-Method - - Access-Control-Request-Headers X-Content-Type-Options: - nosniff - X-GDC-TRACE-ID: *id001 - X-Xss-Protection: - - '0' body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: 004a46aa7a196c26bbe8f35d524dc304 + traceId: f41e843d52459fbc6c2fd95dd8dcec0e - request: method: POST uri: http://localhost:3000/api/v1/entities/workspaces diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_put_declarative_workspace.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_put_declarative_workspace.yaml index 074fbfb01..954d8fc73 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_put_declarative_workspace.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_put_declarative_workspace.yaml @@ -19,32 +19,21 @@ interactions: code: 404 message: Not Found headers: - Cache-Control: - - max-age=5, private Content-Length: - '172' Content-Type: - - application/problem+json + - application/json DATE: &id001 - PLACEHOLDER - Referrer-Policy: - - no-referrer - Vary: - - Origin - - Access-Control-Request-Method - - Access-Control-Request-Headers X-Content-Type-Options: - nosniff - X-GDC-TRACE-ID: *id001 - X-Xss-Protection: - - '0' body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: a4266b9a45ab4b037659e653ae3bc4e4 + traceId: 53534ca64c975eabed68e35bf7310ddf - request: method: POST uri: http://localhost:3000/api/v1/entities/workspaces diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_store_declarative_workspaces.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_store_declarative_workspaces.yaml index 6f8a43c3f..915632c9c 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_store_declarative_workspaces.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_store_declarative_workspaces.yaml @@ -138,7 +138,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -181,7 +181,7 @@ interactions: type: dashboardPlugin version: '2' version: '2' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -332,7 +332,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -344,7 +344,7 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -354,7 +354,7 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -405,7 +405,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -414,7 +414,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -424,7 +424,7 @@ interactions: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT {metric/revenue} BY {attribute/customer_id}) > 10000 ' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -434,7 +434,7 @@ interactions: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -444,7 +444,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/spend}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -453,7 +453,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -462,7 +462,7 @@ interactions: - content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -472,7 +472,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -482,7 +482,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -492,7 +492,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -502,7 +502,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -512,7 +512,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, ALL OTHER) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -522,7 +522,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL {attribute/product_id}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -532,7 +532,7 @@ interactions: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -543,7 +543,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Clothing") - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -553,7 +553,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ( "Electronics") - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -563,7 +563,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Home") - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -573,7 +573,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Outdoor") - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -582,7 +582,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -591,7 +591,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -600,7 +600,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -609,7 +609,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -618,7 +618,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -627,7 +627,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -692,7 +692,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -768,7 +768,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -847,7 +847,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -906,7 +906,7 @@ interactions: stackMeasuresToPercent: true version: '2' visualizationUrl: local:area - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -963,7 +963,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1016,7 +1016,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:donut - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1091,7 +1091,7 @@ interactions: visible: false version: '2' visualizationUrl: local:column - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1148,7 +1148,7 @@ interactions: enabled: true version: '2' visualizationUrl: local:scatter - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1247,7 +1247,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1303,7 +1303,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:line - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1342,7 +1342,7 @@ interactions: properties: {} version: '2' visualizationUrl: local:bar - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1398,7 +1398,7 @@ interactions: min: '0' version: '2' visualizationUrl: local:scatter - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1466,7 +1466,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1523,7 +1523,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1580,7 +1580,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2164,7 +2164,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2207,7 +2207,7 @@ interactions: type: dashboardPlugin version: '2' version: '2' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2358,7 +2358,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2370,7 +2370,7 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2380,7 +2380,7 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2431,7 +2431,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2440,7 +2440,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2450,7 +2450,7 @@ interactions: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT {metric/revenue} BY {attribute/customer_id}) > 10000 ' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2460,7 +2460,7 @@ interactions: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2470,7 +2470,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/spend}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2479,7 +2479,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2488,7 +2488,7 @@ interactions: - content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2498,7 +2498,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2508,7 +2508,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2518,7 +2518,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2528,7 +2528,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2538,7 +2538,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, ALL OTHER) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2548,7 +2548,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL {attribute/product_id}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2558,7 +2558,7 @@ interactions: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2569,7 +2569,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Clothing") - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2579,7 +2579,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ( "Electronics") - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2589,7 +2589,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Home") - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2599,7 +2599,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Outdoor") - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2608,7 +2608,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2617,7 +2617,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2626,7 +2626,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2635,7 +2635,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2644,7 +2644,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2653,7 +2653,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2718,7 +2718,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2794,7 +2794,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2873,7 +2873,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2932,7 +2932,7 @@ interactions: stackMeasuresToPercent: true version: '2' visualizationUrl: local:area - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2989,7 +2989,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3042,7 +3042,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:donut - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3117,7 +3117,7 @@ interactions: visible: false version: '2' visualizationUrl: local:column - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3174,7 +3174,7 @@ interactions: enabled: true version: '2' visualizationUrl: local:scatter - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3273,7 +3273,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3329,7 +3329,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:line - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3368,7 +3368,7 @@ interactions: properties: {} version: '2' visualizationUrl: local:bar - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3424,7 +3424,7 @@ interactions: min: '0' version: '2' visualizationUrl: local:scatter - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3492,7 +3492,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3549,7 +3549,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3606,7 +3606,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_translate_workspace.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_translate_workspace.yaml index 8a81a3194..faec28805 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_translate_workspace.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/workspaces/demo_translate_workspace.yaml @@ -139,7 +139,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -182,7 +182,7 @@ interactions: type: dashboardPlugin version: '2' version: '2' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -332,7 +332,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -344,7 +344,7 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -354,7 +354,7 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -405,7 +405,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -414,7 +414,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -424,7 +424,7 @@ interactions: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT {metric/revenue} BY {attribute/customer_id}) > 10000 ' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -434,7 +434,7 @@ interactions: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -444,7 +444,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/spend}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -453,7 +453,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -462,7 +462,7 @@ interactions: - content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -472,7 +472,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -482,7 +482,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -492,7 +492,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -502,7 +502,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -512,7 +512,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, ALL OTHER) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -522,7 +522,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL {attribute/product_id}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -532,7 +532,7 @@ interactions: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -543,7 +543,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Clothing") - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -553,7 +553,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ( "Electronics") - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -563,7 +563,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Home") - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -573,7 +573,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Outdoor") - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -582,7 +582,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -591,7 +591,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -600,7 +600,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -609,7 +609,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -618,7 +618,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -627,7 +627,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -692,7 +692,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -768,7 +768,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -847,7 +847,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -906,7 +906,7 @@ interactions: stackMeasuresToPercent: true version: '2' visualizationUrl: local:area - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -963,7 +963,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1016,7 +1016,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:donut - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1091,7 +1091,7 @@ interactions: visible: false version: '2' visualizationUrl: local:column - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1148,7 +1148,7 @@ interactions: enabled: true version: '2' visualizationUrl: local:scatter - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1247,7 +1247,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1303,7 +1303,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:line - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1342,7 +1342,7 @@ interactions: properties: {} version: '2' visualizationUrl: local:bar - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1398,7 +1398,7 @@ interactions: min: '0' version: '2' visualizationUrl: local:scatter - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1466,7 +1466,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1523,7 +1523,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -1580,7 +1580,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2189,7 +2189,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2232,7 +2232,7 @@ interactions: type: dashboardPlugin version: '2' version: '2' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2382,7 +2382,7 @@ interactions: drills: [] properties: {} version: '2' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2394,7 +2394,7 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2404,7 +2404,7 @@ interactions: - content: url: https://www.example.com version: '2' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2455,7 +2455,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2464,7 +2464,7 @@ interactions: - content: format: '#,##0' maql: SELECT COUNT({attribute/order_id}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2474,7 +2474,7 @@ interactions: format: '#,##0' maql: 'SELECT {metric/amount_of_active_customers} WHERE (SELECT {metric/revenue} BY {attribute/customer_id}) > 10000 ' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2484,7 +2484,7 @@ interactions: format: '#,##0.00' maql: SELECT {metric/amount_of_orders} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2494,7 +2494,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/spend}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2503,7 +2503,7 @@ interactions: - content: format: $#,##0 maql: SELECT SUM({fact/price}*{fact/quantity}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2512,7 +2512,7 @@ interactions: - content: format: '#,##0.0%' maql: SELECT {metric/revenue} / {metric/total_revenue} - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2522,7 +2522,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2532,7 +2532,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2542,7 +2542,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2552,7 +2552,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2562,7 +2562,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY {attribute/products.category}, ALL OTHER) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2572,7 +2572,7 @@ interactions: format: '#,##0.0%' maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL {attribute/product_id}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2582,7 +2582,7 @@ interactions: format: $#,##0 maql: SELECT {metric/order_amount} WHERE NOT ({label/order_status} IN ("Returned", "Canceled")) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2593,7 +2593,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Clothing") - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2603,7 +2603,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ( "Electronics") - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2613,7 +2613,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Home") - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2623,7 +2623,7 @@ interactions: format: $#,##0 maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Outdoor") - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2632,7 +2632,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2641,7 +2641,7 @@ interactions: - content: format: $#,##0.0 maql: SELECT {metric/revenue} / {metric/campaign_spend} - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2650,7 +2650,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2659,7 +2659,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2668,7 +2668,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/revenue} BY ALL OTHER - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2677,7 +2677,7 @@ interactions: - content: format: $#,##0 maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2742,7 +2742,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2818,7 +2818,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2897,7 +2897,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -2956,7 +2956,7 @@ interactions: stackMeasuresToPercent: true version: '2' visualizationUrl: local:area - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3013,7 +3013,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:treemap - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3066,7 +3066,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:donut - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3141,7 +3141,7 @@ interactions: visible: false version: '2' visualizationUrl: local:column - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3198,7 +3198,7 @@ interactions: enabled: true version: '2' visualizationUrl: local:scatter - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3297,7 +3297,7 @@ interactions: direction: asc version: '2' visualizationUrl: local:table - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3353,7 +3353,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:line - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3392,7 +3392,7 @@ interactions: properties: {} version: '2' visualizationUrl: local:bar - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3448,7 +3448,7 @@ interactions: min: '0' version: '2' visualizationUrl: local:scatter - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3516,7 +3516,7 @@ interactions: rotation: auto version: '2' visualizationUrl: local:combo2 - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3573,7 +3573,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -3630,7 +3630,7 @@ interactions: position: bottom version: '2' visualizationUrl: local:bar - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4019,31 +4019,20 @@ interactions: code: 404 message: Not Found headers: - Cache-Control: - - max-age=5, private Content-Length: - '172' Content-Type: - - application/problem+json + - application/json DATE: *id001 - Referrer-Policy: - - no-referrer - Vary: - - Origin - - Access-Control-Request-Method - - Access-Control-Request-Headers X-Content-Type-Options: - nosniff - X-GDC-TRACE-ID: *id001 - X-Xss-Protection: - - '0' body: string: detail: The requested endpoint does not exist or you do not have permission to access it. status: 404 title: Not Found - traceId: c9b8eaee39b82599cfa2765958882543 + traceId: 6cbf44a67a3c1838eb72526254e4e595 - request: method: POST uri: http://localhost:3000/api/v1/entities/workspaces @@ -4665,7 +4654,7 @@ interactions: version: '2' id: campaign title: Campaign - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4708,7 +4697,7 @@ interactions: version: '2' id: dashboard_plugin title: Dashboard plugin - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4858,7 +4847,7 @@ interactions: version: '2' id: product_and_category title: Product & Category - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4871,7 +4860,7 @@ interactions: version: '2' id: dashboard_plugin_1 title: dashboard_plugin_1 - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4881,7 +4870,7 @@ interactions: version: '2' id: dashboard_plugin_2 title: dashboard_plugin_2 - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4930,7 +4919,7 @@ interactions: maql: SELECT COUNT({attribute/customer_id},{attribute/order_line_id}) id: amount_of_active_customers title: '# of Active Customers' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4939,7 +4928,7 @@ interactions: maql: SELECT COUNT({attribute/order_id}) id: amount_of_orders title: '# of Orders' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4949,7 +4938,7 @@ interactions: BY {attribute/customer_id}) > 10000 ' id: amount_of_top_customers title: '# of Top Customers' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4959,7 +4948,7 @@ interactions: IN ("Returned", "Canceled")) id: amount_of_valid_orders title: '# of Valid Orders' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4969,7 +4958,7 @@ interactions: maql: SELECT SUM({fact/spend}) id: campaign_spend title: Campaign Spend - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4978,7 +4967,7 @@ interactions: maql: SELECT SUM({fact/price}*{fact/quantity}) id: order_amount title: Order Amount - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4987,7 +4976,7 @@ interactions: maql: SELECT {metric/revenue} / {metric/total_revenue} id: percent_revenue title: '% Revenue' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -4997,7 +4986,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -5007,7 +4996,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -5017,7 +5006,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -5027,7 +5016,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: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -5037,7 +5026,7 @@ interactions: ALL OTHER) id: percent_revenue_in_category title: '% Revenue in Category' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -5046,7 +5035,7 @@ interactions: maql: SELECT {metric/revenue} / (SELECT {metric/revenue} BY ALL {attribute/product_id}) id: percent_revenue_per_product title: '% Revenue per Product' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -5056,7 +5045,7 @@ interactions: IN ("Returned", "Canceled")) id: revenue title: Revenue - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -5066,7 +5055,7 @@ interactions: maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Clothing") id: revenue-clothing title: Revenue (Clothing) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -5076,7 +5065,7 @@ interactions: "Electronics") id: revenue-electronic title: Revenue (Electronic) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -5085,7 +5074,7 @@ interactions: maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Home") id: revenue-home title: Revenue (Home) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -5094,7 +5083,7 @@ interactions: maql: SELECT {metric/revenue} WHERE {label/products.category} IN ("Outdoor") id: revenue-outdoor title: Revenue (Outdoor) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -5103,7 +5092,7 @@ interactions: maql: SELECT AVG(SELECT {metric/revenue} BY {attribute/customer_id}) id: revenue_per_customer title: Revenue per Customer - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -5112,7 +5101,7 @@ interactions: maql: SELECT {metric/revenue} / {metric/campaign_spend} id: revenue_per_dollar_spent title: Revenue per Dollar Spent - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -5121,7 +5110,7 @@ interactions: maql: SELECT {metric/revenue} WHERE TOP(10) OF ({metric/revenue}) id: revenue_top_10 title: Revenue / Top 10 - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -5130,7 +5119,7 @@ interactions: maql: SELECT {metric/revenue} WHERE TOP(10%) OF ({metric/revenue}) id: revenue_top_10_percent title: Revenue / Top 10% - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -5139,7 +5128,7 @@ interactions: maql: SELECT {metric/revenue} BY ALL OTHER id: total_revenue title: Total Revenue - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -5148,7 +5137,7 @@ interactions: maql: SELECT {metric/total_revenue} WITHOUT PARENT FILTER id: total_revenue-no_filters title: Total Revenue (No Filters) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -5213,7 +5202,7 @@ interactions: visualizationUrl: local:treemap id: campaign_spend title: Campaign Spend - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -5289,7 +5278,7 @@ interactions: visualizationUrl: local:combo2 id: customers_trend title: Customers Trend - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -5368,7 +5357,7 @@ interactions: visualizationUrl: local:table id: percent_revenue_per_product_by_customer_and_category title: '% Revenue per Product by Customer and Category' - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -5427,7 +5416,7 @@ interactions: visualizationUrl: local:area id: percentage_of_customers_by_region title: Percentage of Customers by Region - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -5484,7 +5473,7 @@ interactions: visualizationUrl: local:treemap id: product_breakdown title: Product Breakdown - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -5537,7 +5526,7 @@ interactions: visualizationUrl: local:donut id: product_categories_pie_chart title: Product Categories Pie Chart - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -5612,7 +5601,7 @@ interactions: visualizationUrl: local:column id: product_revenue_comparison-over_previous_period title: Product Revenue Comparison (over previous period) - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -5669,7 +5658,7 @@ interactions: visualizationUrl: local:scatter id: product_saleability title: Product Saleability - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -5768,7 +5757,7 @@ interactions: visualizationUrl: local:table id: revenue_and_quantity_by_product_and_category title: Revenue and Quantity by Product and Category - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -5824,7 +5813,7 @@ interactions: visualizationUrl: local:line id: revenue_by_category_trend title: Revenue by Category Trend - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -5863,7 +5852,7 @@ interactions: visualizationUrl: local:bar id: revenue_by_product title: Revenue by Product - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -5919,7 +5908,7 @@ interactions: visualizationUrl: local:scatter id: revenue_per_usd_vs_spend_by_campaign title: Revenue per $ vs Spend by Campaign - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -5987,7 +5976,7 @@ interactions: visualizationUrl: local:combo2 id: revenue_trend title: Revenue Trend - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -6044,7 +6033,7 @@ interactions: visualizationUrl: local:bar id: top_10_customers title: Top 10 Customers - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -6101,7 +6090,7 @@ interactions: visualizationUrl: local:bar id: top_10_products title: Top 10 Products - createdAt: 2026-02-16 15:25 + createdAt: 2026-02-26 14:23 createdBy: id: admin type: user @@ -6263,7 +6252,7 @@ interactions: to access it. status: 404 title: Not Found - traceId: 0c5342c4ac2b27be526c7167caa8a06e + traceId: e70e0f1560f5f1ebc2acd245491cf4a0 - request: method: POST uri: http://localhost:3000/api/v1/entities/workspaces/demo_cs/workspaceSettings @@ -6374,7 +6363,7 @@ interactions: to access it. status: 404 title: Not Found - traceId: 97c69331b0fcd5a0bbe1efca101bcd8f + traceId: 61810ec0b6a95fd85336d2a746a2fa1c - request: method: POST uri: http://localhost:3000/api/v1/entities/workspaces/demo_cs/workspaceSettings diff --git a/packages/gooddata-sdk/tests/catalog/fixtures/workspaces/get_metadata_localization.yaml b/packages/gooddata-sdk/tests/catalog/fixtures/workspaces/get_metadata_localization.yaml index ccc2239e8..4faee2665 100644 --- a/packages/gooddata-sdk/tests/catalog/fixtures/workspaces/get_metadata_localization.yaml +++ b/packages/gooddata-sdk/tests/catalog/fixtures/workspaces/get_metadata_localization.yaml @@ -105,13 +105,10 @@ interactions: id="attribute.campaign_channels.category.title">CategoryCategoryCampaign - channelsTypeTypeCampaign channelsCampaign - idCampaign - idCampaignsCampaign idCampaign idCampaignsCampaign nameCampaign nameCampaignsCustomer nameCustomer nameCustomersRegionRegionCustomersDate + - DateDateDateDate + - Month/YearMonth + and Year (12/2020)DateDate + - Quarter/YearQuarter + and Year (Q1/2020)DateDate + - Week/YearWeek + and Year (W52/2020)DateDate + - YearYearDateOrder idOrder idOrder @@ -144,24 +153,15 @@ interactions: id="attribute.products.category">CategoryCategoryProductsDate - - DateDateDateDate - - Week/YearWeek - and Year (W52/2020)DateDate - - Month/YearMonth - and Year (12/2020)DateDate - - Quarter/YearQuarter - and Year (Q1/2020)DateDate - - YearYearDateRegionRegionCustomersStateStateCustomersCustomersTypeTypeCampaign channelsCampaign channelsCampaign channelsCampaign @@ -176,28 +176,28 @@ interactions: id="dataset.customers">CustomersCustomersCustomersDateDateOrder linesOrder linesOrder linesProductsProductsProductsDateDateProductsBudgetBudgetCampaign channelsSpendSpendCampaign channelsPricePriceOrder linesQuantityQuantityOrder linesOrder linesSpendSpendCampaign channelsBudget AggCampaign channels per @@ -209,9 +209,6 @@ interactions: id="label.campaign_channels.category.title">CategoryCategoryCampaign channelsTypeTypeCampaign channelsCampaign idCampaign idCampaignsCustomer nameCustomer nameCustomersRegionRegionCustomersStateStateCustomersDate + - DateDateDateDate + - Month/YearMonth + and Year (12/2020)DateDate + - Quarter/YearQuarter + and Year (Q1/2020)DateDate + - Week/YearWeek + and Year (W52/2020)DateDate + - YearYearDateLocationLocationCustomersCategoryCategoryProductsDate - - DateDateDateDate - - Week/YearWeek - and Year (W52/2020)DateDate - - Month/YearMonth - and Year (12/2020)DateDate - - Quarter/YearQuarter - and Year (Q1/2020)DateDate - - YearYearDateRegionRegionCustomersStateStateCustomersTypeTypeCampaign channels# of Active Customers# of OrdersCategoryCategoryCampaign - channelsTypeTypeCampaign channelsCampaign - idCampaign - idCampaignsCampaign idCampaign idCampaignsCampaign nameCampaign nameCampaignsCustomer nameCustomer nameCustomersRegionRegionCustomersDate + - DateDateDateDate + - Month/YearMonth + and Year (12/2020)DateDate + - Quarter/YearQuarter + and Year (Q1/2020)DateDate + - Week/YearWeek + and Year (W52/2020)DateDate + - YearYearDateOrder idOrder idOrder @@ -144,24 +153,15 @@ interactions: id="attribute.products.category">CategoryCategoryProductsDate - - DateDateDateDate - - Week/YearWeek - and Year (W52/2020)DateDate - - Month/YearMonth - and Year (12/2020)DateDate - - Quarter/YearQuarter - and Year (Q1/2020)DateDate - - YearYearDateRegionRegionCustomersStateStateCustomersCustomersTypeTypeCampaign channelsCampaign channelsCampaign channelsCampaign @@ -176,28 +176,28 @@ interactions: id="dataset.customers">CustomersCustomersCustomersDateDateOrder linesOrder linesOrder linesProductsProductsProductsDateDateProductsBudgetBudgetCampaign channelsSpendSpendCampaign channelsPricePriceOrder linesQuantityQuantityOrder linesOrder linesSpendSpendCampaign channelsBudget AggCampaign channels per @@ -209,9 +209,6 @@ interactions: id="label.campaign_channels.category.title">CategoryCategoryCampaign channelsTypeTypeCampaign channelsCampaign idCampaign idCampaignsCustomer nameCustomer nameCustomersRegionRegionCustomersStateStateCustomersDate + - DateDateDateDate + - Month/YearMonth + and Year (12/2020)DateDate + - Quarter/YearQuarter + and Year (Q1/2020)DateDate + - Week/YearWeek + and Year (W52/2020)DateDate + - YearYearDateLocationLocationCustomersCategoryCategoryProductsDate - - DateDateDateDate - - Week/YearWeek - and Year (W52/2020)DateDate - - Month/YearMonth - and Year (12/2020)DateDate - - Quarter/YearQuarter - and Year (Q1/2020)DateDate - - YearYearDateRegionRegionCustomersStateStateCustomersTypeTypeCampaign channels# of Active Customers# of OrdersCategoryCategoryCampaign channelsTypeTypeCampaign channelsCampaign idCampaign idCampaignsCustomer nameCustomer nameCustomersRegionRegionCustomersDate + - DateDateDateDate + - Month/YearMonth + and Year (12/2020)DateDate + - Quarter/YearQuarter + and Year (Q1/2020)DateDate + - Week/YearWeek + and Year (W52/2020)DateDate + - YearYearDateOrder idOrder idOrder @@ -561,24 +570,15 @@ interactions: id="attribute.products.category">CategoryCategoryProductsDate - - DateDateDateDate - - Week/YearWeek - and Year (W52/2020)DateDate - - Month/YearMonth - and Year (12/2020)DateDate - - Quarter/YearQuarter - and Year (Q1/2020)DateDate - - YearYearDateRegionRegionCustomersStateStateCustomersCustomersTypeTypeCampaign channelsCampaign channelsCampaign channelsCampaign @@ -593,28 +593,28 @@ interactions: id="dataset.customers">CustomersCustomersCustomersDateDateOrder linesOrder linesOrder linesProductsProductsProductsDateDateProductsBudgetBudgetCampaign channelsSpendSpendCampaign channelsPricePriceOrder linesQuantityQuantityOrder linesOrder linesSpendSpendCampaign channelsBudget AggCampaign channels per @@ -626,9 +626,6 @@ interactions: id="label.campaign_channels.category.title">CategoryCategoryCampaign channelsTypeTypeCampaign channelsCampaign idCampaign idCampaignsCustomer nameCustomer nameCustomersRegionRegionCustomersStateStateCustomersDate + - DateDateDateDate + - Month/YearMonth + and Year (12/2020)DateDate + - Quarter/YearQuarter + and Year (Q1/2020)DateDate + - Week/YearWeek + and Year (W52/2020)DateDate + - YearYearDateLocationLocationCustomersCategoryCategoryProductsDate - - DateDateDateDate - - Week/YearWeek - and Year (W52/2020)DateDate - - Month/YearMonth - and Year (12/2020)DateDate - - Quarter/YearQuarter - and Year (Q1/2020)DateDate - - YearYearDateRegionRegionCustomersStateStateCustomersTypeTypeCampaign channels# of Active Customers# of Orders /tmp/exports). Fix with: chmod -R 777 tests/export/exports/ import os from pathlib import Path diff --git a/packages/gooddata-sdk/tests/table/fixtures/table_with_attribute_and_metric.yaml b/packages/gooddata-sdk/tests/table/fixtures/table_with_attribute_and_metric.yaml index 614103870..10113baeb 100644 --- a/packages/gooddata-sdk/tests/table/fixtures/table_with_attribute_and_metric.yaml +++ b/packages/gooddata-sdk/tests/table/fixtures/table_with_attribute_and_metric.yaml @@ -68,7 +68,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - eaffc8a3-19d4-4023-b077-ae41849f5573 + - f6586eb9-0798-4623-bddd-e72a70c02302 X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -100,10 +100,10 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: a2d8464d407287fd60ff727efb9ca723313945cf:ea9fba1292fd7ba6b788ca0954035d1d611c306e013fc3da604b770acbe09075 + executionResult: 5408f1f655c4875c281f1c3e6e71d40bb3ee0477:7b04404d9ea1df6fc812822821541706442f5cd24dff799e5ba0fc2cc1d4bcfc - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/a2d8464d407287fd60ff727efb9ca723313945cf%3Aea9fba1292fd7ba6b788ca0954035d1d611c306e013fc3da604b770acbe09075?offset=0%2C0&limit=512%2C256 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/5408f1f655c4875c281f1c3e6e71d40bb3ee0477%3A7b04404d9ea1df6fc812822821541706442f5cd24dff799e5ba0fc2cc1d4bcfc?offset=0%2C0&limit=512%2C256 body: null headers: Accept: diff --git a/packages/gooddata-sdk/tests/table/fixtures/table_with_attribute_metric_and_filter.yaml b/packages/gooddata-sdk/tests/table/fixtures/table_with_attribute_metric_and_filter.yaml index 799c95426..dcb245b0f 100644 --- a/packages/gooddata-sdk/tests/table/fixtures/table_with_attribute_metric_and_filter.yaml +++ b/packages/gooddata-sdk/tests/table/fixtures/table_with_attribute_metric_and_filter.yaml @@ -75,7 +75,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - f17594c2-da12-45ac-be1c-aacfd7cbab9a + - 5d44bc61-7fcb-4db7-a0fe-ae153ca48f76 X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -107,10 +107,10 @@ interactions: name: Order Amount localIdentifier: dim_1 links: - executionResult: 17b6b613f646288f55cc5eaa5eec93ebeec5d461:56db1c5b964178497c06a420ae7437d0c5ecfe36fc83b7a121de2627c54c8d44 + executionResult: e2985459cb131f7c7d356b4094b5665e0dd68310:3a5aa5b3fc57c1f72de41866b00d2cc1add75bc752e001b6dc78d1c74a55a901 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/17b6b613f646288f55cc5eaa5eec93ebeec5d461%3A56db1c5b964178497c06a420ae7437d0c5ecfe36fc83b7a121de2627c54c8d44?offset=0%2C0&limit=512%2C256 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/e2985459cb131f7c7d356b4094b5665e0dd68310%3A3a5aa5b3fc57c1f72de41866b00d2cc1add75bc752e001b6dc78d1c74a55a901?offset=0%2C0&limit=512%2C256 body: null headers: Accept: diff --git a/packages/gooddata-sdk/tests/table/fixtures/table_with_attribute_show_all_values.yaml b/packages/gooddata-sdk/tests/table/fixtures/table_with_attribute_show_all_values.yaml index 5ff0c5c5c..d7528e2c9 100644 --- a/packages/gooddata-sdk/tests/table/fixtures/table_with_attribute_show_all_values.yaml +++ b/packages/gooddata-sdk/tests/table/fixtures/table_with_attribute_show_all_values.yaml @@ -69,7 +69,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - b9709cbc-31cb-44ae-b28e-2afe30533527 + - 7956b8b4-e13c-4e69-b4e0-797a1b53f200 X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -103,10 +103,10 @@ interactions: - localIdentifier: metric1 localIdentifier: dim_1 links: - executionResult: e1399b10251cc48e94d47462743cd4f118e38c90:589f391bda047d0a1dc865c89b63cfed5f00a744330cf8c9b529cc8e9e7448da + executionResult: 91be15b027fa02f3119d9968d8820a1170609db3:716c66898addd719ebe544fd4202ce2548cc58249a7b9dd58975bf1362609525 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/e1399b10251cc48e94d47462743cd4f118e38c90%3A589f391bda047d0a1dc865c89b63cfed5f00a744330cf8c9b529cc8e9e7448da?offset=0%2C0&limit=512%2C256 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/91be15b027fa02f3119d9968d8820a1170609db3%3A716c66898addd719ebe544fd4202ce2548cc58249a7b9dd58975bf1362609525?offset=0%2C0&limit=512%2C256 body: null headers: Accept: @@ -447,7 +447,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - f3d57fa0-ec0a-4d13-8a85-5588eca8007b + - 46323b5f-3f34-437a-bbd3-dc1875e9f410 X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -481,10 +481,10 @@ interactions: - localIdentifier: metric1 localIdentifier: dim_1 links: - executionResult: 63167a5d97f5af0631a40023783f578442f9be73:736e93bf4015802d8509a9ea02e26cf6c80fe136f259497cbebb0440bb56c3bc + executionResult: b2f5e5bf97c867c22ae31ca478470adcc129c906:640997b31b142e80bea09ef6193940820a4ada24dbbe02005cf6911eed5c9de2 - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/63167a5d97f5af0631a40023783f578442f9be73%3A736e93bf4015802d8509a9ea02e26cf6c80fe136f259497cbebb0440bb56c3bc?offset=0%2C0&limit=512%2C256 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/b2f5e5bf97c867c22ae31ca478470adcc129c906%3A640997b31b142e80bea09ef6193940820a4ada24dbbe02005cf6911eed5c9de2?offset=0%2C0&limit=512%2C256 body: null headers: Accept: @@ -821,7 +821,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - ee021b3e-488b-4390-a24f-fbf719fb9f1b + - 99abd273-f953-4a94-a602-f4d2dd293fb5 X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -855,10 +855,10 @@ interactions: - localIdentifier: metric1 localIdentifier: dim_1 links: - executionResult: 249df0aa9b4d81932bdd08da0e7c16d19ccb3ca2:60de10e7c49f01e98954bfc3bef2c974d3b82f878f1337ca76fd00ffb4ec3a84 + executionResult: 39858c7efb40851b8f50bc9a3012c03c348d3a0a:c881753c77047679f9da7f39ea7b75f2a473178d0ee998c265cf0028dc5dd9ac - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/249df0aa9b4d81932bdd08da0e7c16d19ccb3ca2%3A60de10e7c49f01e98954bfc3bef2c974d3b82f878f1337ca76fd00ffb4ec3a84?offset=0%2C0&limit=512%2C256 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/39858c7efb40851b8f50bc9a3012c03c348d3a0a%3Ac881753c77047679f9da7f39ea7b75f2a473178d0ee998c265cf0028dc5dd9ac?offset=0%2C0&limit=512%2C256 body: null headers: Accept: diff --git a/packages/gooddata-sdk/tests/table/fixtures/table_with_just_attribute.yaml b/packages/gooddata-sdk/tests/table/fixtures/table_with_just_attribute.yaml index 549dc30be..5c88b9dda 100644 --- a/packages/gooddata-sdk/tests/table/fixtures/table_with_just_attribute.yaml +++ b/packages/gooddata-sdk/tests/table/fixtures/table_with_just_attribute.yaml @@ -56,7 +56,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - ac83933a-4b5f-4702-ae7a-bd3242051096 + - 14358f29-e283-4119-a3d9-566d812d2b6f X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -82,10 +82,10 @@ interactions: valueType: TEXT localIdentifier: dim_0 links: - executionResult: d1e3f057b6337dc974d1e6ffb5625fe678f191d4:f61992e426737f54bd3bcfeedbb28cbdfe27488edd6a2c3198d6f691403ad33d + executionResult: fc08106481e859ba38823a0d1fce0f2841ee96b1:4dbe3689160c97cb36b7a28309cae6b279e30d8eddb03c17b326d6941effcd8e - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/d1e3f057b6337dc974d1e6ffb5625fe678f191d4%3Af61992e426737f54bd3bcfeedbb28cbdfe27488edd6a2c3198d6f691403ad33d?offset=0&limit=512 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/fc08106481e859ba38823a0d1fce0f2841ee96b1%3A4dbe3689160c97cb36b7a28309cae6b279e30d8eddb03c17b326d6941effcd8e?offset=0&limit=512 body: null headers: Accept: diff --git a/packages/gooddata-sdk/tests/table/fixtures/table_with_just_metric.yaml b/packages/gooddata-sdk/tests/table/fixtures/table_with_just_metric.yaml index 98c13ec4b..68a9b7d52 100644 --- a/packages/gooddata-sdk/tests/table/fixtures/table_with_just_metric.yaml +++ b/packages/gooddata-sdk/tests/table/fixtures/table_with_just_metric.yaml @@ -60,7 +60,7 @@ interactions: X-Content-Type-Options: - nosniff X-Gdc-Cancel-Token: - - 29a6dbb7-b194-4349-8bcb-fd04e015c49a + - b5bca899-13f2-4bc3-a895-238fcd14786d X-GDC-TRACE-ID: *id001 X-Xss-Protection: - '0' @@ -75,10 +75,10 @@ interactions: name: Order Amount localIdentifier: dim_0 links: - executionResult: b31a6ecac937d8ff3984dd0be3e74740d0bb979b:ecc634f8b2815af4a9632add5e8fa7ed5a5b2edb78e08ae437d6039860ad2cb7 + executionResult: 992af09d979e4fe9eb8da5a84b06c74e498c846d:b76292e2bc7789ad2d66956c84fbecaa20596d78cc3dbd8cf94605ee186c466c - request: method: GET - uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/b31a6ecac937d8ff3984dd0be3e74740d0bb979b%3Aecc634f8b2815af4a9632add5e8fa7ed5a5b2edb78e08ae437d6039860ad2cb7?offset=0&limit=256 + uri: http://localhost:3000/api/v1/actions/workspaces/demo/execution/afm/execute/result/992af09d979e4fe9eb8da5a84b06c74e498c846d%3Ab76292e2bc7789ad2d66956c84fbecaa20596d78cc3dbd8cf94605ee186c466c?offset=0&limit=256 body: null headers: Accept: diff --git a/schemas/gooddata-afm-client.json b/schemas/gooddata-afm-client.json index 31dab5da5..f7d41eb58 100644 --- a/schemas/gooddata-afm-client.json +++ b/schemas/gooddata-afm-client.json @@ -25,6 +25,13 @@ }, "type": "array" }, + "measureDefinitionOverrides": { + "description": "(EXPERIMENTAL) Override definitions of catalog metrics for this request. Allows substituting a catalog metric's MAQL definition without modifying the stored definition.", + "items": { + "$ref": "#/components/schemas/MetricDefinitionOverride" + }, + "type": "array" + }, "measures": { "description": "Metrics to be computed.", "items": { @@ -76,9 +83,9 @@ } }, "required": [ + "dataset", "from", - "to", - "dataset" + "to" ], "type": "object" } @@ -598,6 +605,24 @@ ], "type": "object" }, + "AnomalyDetectionConfig": { + "description": "Anomaly detection configuration.", + "properties": { + "sensitivity": { + "description": "Outlier sensitivity level.", + "enum": [ + "LOW", + "MEDIUM", + "HIGH" + ], + "type": "string" + } + }, + "required": [ + "sensitivity" + ], + "type": "object" + }, "AnomalyDetectionRequest": { "properties": { "sensitivity": { @@ -930,6 +955,146 @@ ], "type": "object" }, + "AwsBedrockAccessKeyAuth": { + "allOf": [ + { + "properties": { + "accessKeyId": { + "description": "AWS Access Key ID.", + "maxLength": 255, + "nullable": true, + "type": "string", + "writeOnly": true + }, + "secretAccessKey": { + "description": "AWS Secret Access Key.", + "maxLength": 10000, + "nullable": true, + "type": "string", + "writeOnly": true + }, + "sessionToken": { + "description": "AWS Session Token (for temporary credentials).", + "maxLength": 10000, + "nullable": true, + "type": "string", + "writeOnly": true + }, + "type": { + "description": "Authentication type.", + "enum": [ + "ACCESS_KEY" + ], + "type": "string" + } + }, + "type": "object" + } + ], + "required": [ + "type" + ], + "type": "object" + }, + "AwsBedrockProviderConfig": { + "description": "Configuration for AWS Bedrock provider.", + "properties": { + "auth": { + "$ref": "#/components/schemas/BedrockProviderAuth" + }, + "region": { + "description": "AWS region for Bedrock.", + "example": "us-east-1", + "maxLength": 255, + "type": "string" + }, + "type": { + "description": "Provider type.", + "enum": [ + "AWS_BEDROCK" + ], + "type": "string" + } + }, + "required": [ + "auth", + "region", + "type" + ], + "type": "object" + }, + "AzureFoundryApiKeyAuth": { + "allOf": [ + { + "properties": { + "apiKey": { + "description": "Azure API key.", + "maxLength": 255, + "nullable": true, + "type": "string", + "writeOnly": true + }, + "type": { + "description": "Authentication type.", + "enum": [ + "API_KEY" + ], + "type": "string" + } + }, + "type": "object" + } + ], + "required": [ + "type" + ], + "type": "object" + }, + "AzureFoundryProviderAuth": { + "description": "Authentication configuration.", + "oneOf": [ + { + "$ref": "#/components/schemas/AzureFoundryApiKeyAuth" + } + ], + "type": "object" + }, + "AzureFoundryProviderConfig": { + "description": "Configuration for Azure Foundry provider.", + "properties": { + "auth": { + "$ref": "#/components/schemas/AzureFoundryProviderAuth" + }, + "endpoint": { + "description": "Azure AI inference endpoint URL.", + "example": "https://my-resource.services.ai.azure.com/models", + "maxLength": 255, + "type": "string" + }, + "type": { + "description": "Provider type.", + "enum": [ + "AZURE_FOUNDRY" + ], + "type": "string" + } + }, + "required": [ + "auth", + "endpoint", + "type" + ], + "type": "object" + }, + "BedrockProviderAuth": { + "description": "Authentication configuration.", + "oneOf": [ + { + "$ref": "#/components/schemas/AwsBedrockAccessKeyAuth" + } + ], + "type": "object" + }, "BoundedFilter": { "description": "Bounding filter for this relative date filter. This can be used to limit the range of the relative date filter to a specific date range.", "properties": { @@ -1427,6 +1592,26 @@ ], "type": "object" }, + "ClusteringConfig": { + "description": "Clustering configuration.", + "properties": { + "numberOfClusters": { + "description": "Number of clusters to create", + "format": "int32", + "type": "integer" + }, + "threshold": { + "description": "Clustering algorithm threshold", + "format": "float", + "type": "number" + } + }, + "required": [ + "numberOfClusters", + "threshold" + ], + "type": "object" + }, "ClusteringRequest": { "properties": { "numberOfClusters": { @@ -1580,9 +1765,9 @@ } }, "required": [ + "measure", "operator", - "value", - "measure" + "value" ], "type": "object" } @@ -1638,9 +1823,67 @@ ], "type": "object" }, + "CreateKnowledgeDocumentRequestDto": { + "properties": { + "content": { + "type": "string" + }, + "filename": { + "type": "string" + }, + "pageBoundaries": { + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + }, + "scopes": { + "items": { + "type": "string" + }, + "type": "array" + }, + "title": { + "type": "string" + } + }, + "required": [ + "content", + "filename" + ], + "type": "object" + }, + "CreateKnowledgeDocumentResponseDto": { + "properties": { + "filename": { + "type": "string" + }, + "message": { + "type": "string" + }, + "numChunks": { + "format": "int32", + "type": "integer" + }, + "success": { + "type": "boolean" + } + }, + "required": [ + "filename", + "message", + "numChunks", + "success" + ], + "type": "object" + }, "CreatedVisualization": { "description": "List of created visualization objects", "properties": { + "config": { + "$ref": "#/components/schemas/VisualizationConfig" + }, "dimensionality": { "description": "List of attributes representing the dimensionality of the new visualization", "items": { @@ -1707,7 +1950,8 @@ "BAR", "LINE", "PIE", - "COLUMN" + "COLUMN", + "SCATTER" ], "example": "TABLE", "type": "string" @@ -1863,6 +2107,9 @@ }, { "$ref": "#/components/schemas/RelativeDateFilter" + }, + { + "$ref": "#/components/schemas/AllTimeDateFilter" } ], "type": "object" @@ -1921,6 +2168,21 @@ ], "type": "object" }, + "DeleteKnowledgeDocumentResponseDto": { + "properties": { + "message": { + "type": "string" + }, + "success": { + "type": "boolean" + } + }, + "required": [ + "message", + "success" + ], + "type": "object" + }, "DependsOn": { "allOf": [ { @@ -2523,10 +2785,10 @@ "$ref": "#/components/schemas/AbsoluteDateFilter" }, { - "$ref": "#/components/schemas/AllTimeDateFilter" + "$ref": "#/components/schemas/RelativeDateFilter" }, { - "$ref": "#/components/schemas/RelativeDateFilter" + "$ref": "#/components/schemas/AllTimeDateFilter" }, { "$ref": "#/components/schemas/NegativeAttributeFilter" @@ -2552,6 +2814,31 @@ ], "type": "object" }, + "ForecastConfig": { + "description": "Forecast configuration.", + "properties": { + "confidenceLevel": { + "description": "Confidence interval boundary value.", + "format": "float", + "type": "number" + }, + "forecastPeriod": { + "description": "Number of future periods that should be forecasted", + "format": "int32", + "type": "integer" + }, + "seasonal": { + "description": "Whether the input data is seasonal", + "type": "boolean" + } + }, + "required": [ + "confidenceLevel", + "forecastPeriod", + "seasonal" + ], + "type": "object" + }, "ForecastRequest": { "properties": { "confidenceLevel": { @@ -2647,6 +2934,80 @@ ], "type": "object" }, + "GenerateDescriptionRequest": { + "properties": { + "objectId": { + "description": "Identifier of the object to describe", + "type": "string" + }, + "objectType": { + "description": "Type of the object to describe. One of: visualization, dashboard, metric, fact, attribute", + "enum": [ + "Visualization", + "Dashboard", + "Metric", + "Fact", + "Attribute" + ], + "type": "string" + } + }, + "required": [ + "objectId", + "objectType" + ], + "type": "object" + }, + "GenerateDescriptionResponse": { + "properties": { + "description": { + "description": "Generated description of the requested object", + "type": "string" + }, + "note": { + "description": "Additional note with details in case generation was not performed", + "type": "string" + } + }, + "type": "object" + }, + "GenerateTitleRequest": { + "properties": { + "objectId": { + "description": "Identifier of the object to title", + "type": "string" + }, + "objectType": { + "description": "Type of the object to title. Matches chat-search object types.", + "enum": [ + "Visualization", + "Dashboard", + "Metric", + "Fact", + "Attribute" + ], + "type": "string" + } + }, + "required": [ + "objectId", + "objectType" + ], + "type": "object" + }, + "GenerateTitleResponse": { + "properties": { + "note": { + "description": "Additional note with details in case generation was not performed", + "type": "string" + }, + "title": { + "description": "Generated title of the requested object", + "type": "string" + } + }, + "type": "object" + }, "GeoAreaConfig": { "description": "Configuration specific to geo area labels.", "properties": { @@ -2697,6 +3058,7 @@ "SYNCING", "COMPLETED", "FAILED", + "CANCELLED", "NOT_FOUND", "DISABLED" ], @@ -2777,6 +3139,11 @@ ], "type": "object" }, + "JsonNode": { + "description": "The payload to pass to the command", + "nullable": true, + "type": "object" + }, "KeyDriversDimension": { "properties": { "attribute": { @@ -2895,11 +3262,215 @@ ], "type": "object" }, - "MatchAttributeFilter": { - "description": "Filter via label with given match type and literal value.", + "KnowledgeDocumentMetadataDto": { "properties": { - "matchAttributeFilter": { - "properties": { + "createdAt": { + "type": "string" + }, + "createdBy": { + "type": "string" + }, + "filename": { + "type": "string" + }, + "isDisabled": { + "type": "boolean" + }, + "numChunks": { + "format": "int32", + "type": "integer" + }, + "scopes": { + "items": { + "type": "string" + }, + "type": "array" + }, + "title": { + "type": "string" + }, + "updatedAt": { + "type": "string" + }, + "updatedBy": { + "type": "string" + }, + "workspaceId": { + "type": "string" + } + }, + "required": [ + "createdAt", + "createdBy", + "filename", + "numChunks", + "scopes", + "updatedAt", + "updatedBy" + ], + "type": "object" + }, + "KnowledgeSearchResultDto": { + "properties": { + "chunkIndex": { + "format": "int32", + "type": "integer" + }, + "content": { + "type": "string" + }, + "filename": { + "type": "string" + }, + "pageNumbers": { + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + }, + "scopes": { + "items": { + "type": "string" + }, + "type": "array" + }, + "score": { + "format": "float", + "type": "number" + }, + "title": { + "type": "string" + }, + "totalChunks": { + "format": "int32", + "type": "integer" + }, + "workspaceId": { + "type": "string" + } + }, + "required": [ + "chunkIndex", + "content", + "filename", + "pageNumbers", + "scopes", + "score", + "totalChunks" + ], + "type": "object" + }, + "ListDatabaseInstancesResponse": { + "description": "Paged response for listing AI Lake database instances", + "properties": { + "databases": { + "description": "List of database instances", + "items": { + "$ref": "#/components/schemas/DatabaseInstance" + }, + "type": "array" + }, + "totalCount": { + "description": "Total count of items (only set when metaInclude=page)", + "format": "int32", + "type": "integer" + } + }, + "required": [ + "databases" + ], + "type": "object" + }, + "ListKnowledgeDocumentsResponseDto": { + "properties": { + "documents": { + "items": { + "$ref": "#/components/schemas/KnowledgeDocumentMetadataDto" + }, + "type": "array" + }, + "nextPageToken": { + "type": "string" + }, + "totalCount": { + "format": "int32", + "type": "integer" + } + }, + "required": [ + "documents" + ], + "type": "object" + }, + "ListServicesResponse": { + "description": "Paged response for listing AI Lake services", + "properties": { + "services": { + "description": "List of services", + "items": { + "$ref": "#/components/schemas/ServiceInfo" + }, + "type": "array" + }, + "totalCount": { + "description": "Total count of items (only set when metaInclude=page)", + "format": "int32", + "type": "integer" + } + }, + "required": [ + "services" + ], + "type": "object" + }, + "LlmModel": { + "description": "LLM Model configuration (id, family) within a provider.", + "properties": { + "family": { + "description": "Family of LLM models.", + "enum": [ + "OPENAI", + "ANTHROPIC", + "META", + "MISTRAL", + "AMAZON", + "GOOGLE", + "COHERE" + ], + "type": "string" + }, + "id": { + "description": "Unique identifier of the model (e.g., gpt-5.3, claude-4.6).", + "maxLength": 255, + "type": "string" + } + }, + "required": [ + "family", + "id" + ], + "type": "object" + }, + "LlmProviderConfig": { + "description": "Provider configuration to test.", + "oneOf": [ + { + "$ref": "#/components/schemas/AwsBedrockProviderConfig" + }, + { + "$ref": "#/components/schemas/AzureFoundryProviderConfig" + }, + { + "$ref": "#/components/schemas/OpenAIProviderConfig" + } + ] + }, + "MatchAttributeFilter": { + "description": "Filter via label with given match type and literal value.", + "properties": { + "matchAttributeFilter": { + "properties": { "applyOnResult": { "type": "boolean" }, @@ -2935,9 +3506,9 @@ } }, "required": [ + "label", "literal", - "matchType", - "label" + "matchType" ], "type": "object" } @@ -3154,6 +3725,22 @@ ], "type": "object" }, + "MetricDefinitionOverride": { + "description": "(EXPERIMENTAL) Override for a catalog metric definition.", + "properties": { + "definition": { + "$ref": "#/components/schemas/InlineMeasureDefinition" + }, + "item": { + "$ref": "#/components/schemas/AfmObjectIdentifierCore" + } + }, + "required": [ + "definition", + "item" + ], + "type": "object" + }, "MetricValueChange": { "description": "Individual change analysis data item", "properties": { @@ -3225,6 +3812,29 @@ ], "type": "object" }, + "ModelTestResult": { + "description": "Per-model test results.", + "properties": { + "message": { + "description": "Message about the model test result.", + "type": "string" + }, + "modelId": { + "description": "The model ID that was tested.", + "type": "string" + }, + "successful": { + "description": "Whether the model test was successful.", + "type": "boolean" + } + }, + "required": [ + "message", + "modelId", + "successful" + ], + "type": "object" + }, "NegativeAttributeFilter": { "description": "Filter able to limit element values by label and related selected negated elements.", "properties": { @@ -3244,8 +3854,8 @@ } }, "required": [ - "notIn", - "label" + "label", + "notIn" ], "type": "object" } @@ -3255,6 +3865,75 @@ ], "type": "object" }, + "OpenAIProviderConfig": { + "description": "Configuration for OpenAI provider.", + "properties": { + "auth": { + "$ref": "#/components/schemas/OpenAiProviderAuth" + }, + "baseUrl": { + "default": "https://api.openai.com", + "description": "Custom base URL for OpenAI API.", + "maxLength": 255, + "nullable": true, + "type": "string" + }, + "organization": { + "description": "OpenAI organization ID.", + "maxLength": 255, + "nullable": true, + "type": "string" + }, + "type": { + "description": "Provider type.", + "enum": [ + "OPENAI" + ], + "type": "string" + } + }, + "required": [ + "auth", + "type" + ], + "type": "object" + }, + "OpenAiApiKeyAuth": { + "allOf": [ + { + "properties": { + "apiKey": { + "description": "OpenAI API key.", + "maxLength": 255, + "nullable": true, + "type": "string", + "writeOnly": true + }, + "type": { + "description": "Authentication type.", + "enum": [ + "API_KEY" + ], + "type": "string" + } + }, + "type": "object" + } + ], + "required": [ + "type" + ], + "type": "object" + }, + "OpenAiProviderAuth": { + "description": "Authentication configuration.", + "oneOf": [ + { + "$ref": "#/components/schemas/OpenAiApiKeyAuth" + } + ], + "type": "object" + }, "Operation": { "description": "Represents a Long-Running Operation: a process that takes some time to complete.", "discriminator": { @@ -3271,10 +3950,11 @@ "type": "string" }, "kind": { - "description": "Type of the long-running operation. \n* `provision-database` — Provisioning of an AI Lake database. \n* `deprovision-database` — Deprovisioning (deletion) of an AI Lake database.\n", + "description": "Type of the long-running operation.\n* `provision-database` — Provisioning of an AI Lake database.\n* `deprovision-database` — Deprovisioning (deletion) of an AI Lake database.\n* `run-service-command` — Running a command in a particular AI Lake service.\n", "enum": [ "provision-database", - "deprovision-database" + "deprovision-database", + "run-service-command" ], "type": "string" }, @@ -3461,6 +4141,23 @@ ], "type": "object" }, + "PatchKnowledgeDocumentRequestDto": { + "properties": { + "isDisabled": { + "type": "boolean" + }, + "scopes": { + "items": { + "type": "string" + }, + "type": "array" + }, + "title": { + "type": "string" + } + }, + "type": "object" + }, "PendingOperation": { "allOf": [ { @@ -3729,6 +4426,7 @@ "SYNCING", "COMPLETED", "FAILED", + "CANCELLED", "NOT_FOUND", "DISABLED" ], @@ -3820,9 +4518,9 @@ }, "required": [ "from", + "measure", "operator", - "to", - "measure" + "to" ], "type": "object" } @@ -3993,10 +4691,10 @@ } }, "required": [ + "dataset", "from", "granularity", - "to", - "dataset" + "to" ], "type": "object" } @@ -4162,6 +4860,25 @@ ], "type": "object" }, + "RunServiceCommandRequest": { + "description": "Request to run an AI Lake Service Command", + "properties": { + "context": { + "additionalProperties": { + "description": "The context to pass to the command", + "nullable": true, + "type": "string" + }, + "description": "The context to pass to the command", + "nullable": true, + "type": "object" + }, + "payload": { + "$ref": "#/components/schemas/JsonNode" + } + }, + "type": "object" + }, "SavedVisualization": { "description": "Created and saved visualization IDs.", "properties": { @@ -4180,13 +4897,31 @@ ], "type": "object" }, - "SearchRelationshipObject": { + "SearchKnowledgeResponseDto": { "properties": { - "sourceObjectId": { - "description": "Source object ID.", - "type": "string" - }, - "sourceObjectTitle": { + "results": { + "items": { + "$ref": "#/components/schemas/KnowledgeSearchResultDto" + }, + "type": "array" + }, + "statistics": { + "$ref": "#/components/schemas/SearchStatisticsDto" + } + }, + "required": [ + "results", + "statistics" + ], + "type": "object" + }, + "SearchRelationshipObject": { + "properties": { + "sourceObjectId": { + "description": "Source object ID.", + "type": "string" + }, + "sourceObjectTitle": { "description": "Source object title.", "type": "string" }, @@ -4417,9 +5152,44 @@ ], "type": "object" }, + "SearchStatisticsDto": { + "properties": { + "averageSimilarityScore": { + "format": "float", + "type": "number" + }, + "totalResults": { + "format": "int32", + "type": "integer" + } + }, + "required": [ + "averageSimilarityScore", + "totalResults" + ], + "type": "object" + }, "ServerSentEventChatResult": { "type": "object" }, + "ServiceInfo": { + "description": "Non-sensitive metadata for an AI Lake pipeline", + "properties": { + "name": { + "description": "Human-readable name of the service", + "type": "string" + }, + "serviceId": { + "description": "Internal identifier for the service configuration (UUID)", + "type": "string" + } + }, + "required": [ + "name", + "serviceId" + ], + "type": "object" + }, "SimpleMeasureDefinition": { "description": "Metric defined by referencing a MAQL metric or an LDM fact object with aggregation.", "properties": { @@ -4634,6 +5404,59 @@ ], "type": "object" }, + "TestLlmProviderDefinitionRequest": { + "properties": { + "models": { + "description": "Models to test.", + "items": { + "$ref": "#/components/schemas/LlmModel" + }, + "type": "array" + }, + "providerConfig": { + "oneOf": [ + { + "$ref": "#/components/schemas/AwsBedrockProviderConfig" + }, + { + "$ref": "#/components/schemas/AzureFoundryProviderConfig" + }, + { + "$ref": "#/components/schemas/OpenAIProviderConfig" + } + ] + } + }, + "required": [ + "providerConfig" + ], + "type": "object" + }, + "TestLlmProviderResponse": { + "properties": { + "modelResults": { + "description": "Per-model test results.", + "items": { + "$ref": "#/components/schemas/ModelTestResult" + }, + "type": "array" + }, + "providerMessage": { + "description": "Message about the provider connectivity test.", + "type": "string" + }, + "providerReachable": { + "description": "Whether the LLM provider is reachable.", + "type": "boolean" + } + }, + "required": [ + "modelResults", + "providerMessage", + "providerReachable" + ], + "type": "object" + }, "Thought": { "description": "Detailed thoughts/messages within this step.", "properties": { @@ -4749,6 +5572,7 @@ "RUNNING", "COMPLETED", "FAILED", + "CANCELLED", "DISABLED" ], "type": "string" @@ -4763,6 +5587,61 @@ "Unit": { "type": "object" }, + "UpsertKnowledgeDocumentRequestDto": { + "properties": { + "content": { + "type": "string" + }, + "filename": { + "type": "string" + }, + "pageBoundaries": { + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + }, + "scopes": { + "items": { + "type": "string" + }, + "type": "array" + }, + "title": { + "type": "string" + } + }, + "required": [ + "content", + "filename" + ], + "type": "object" + }, + "UpsertKnowledgeDocumentResponseDto": { + "properties": { + "filename": { + "type": "string" + }, + "message": { + "type": "string" + }, + "numChunks": { + "format": "int32", + "type": "integer" + }, + "success": { + "type": "boolean" + } + }, + "required": [ + "filename", + "message", + "numChunks", + "success" + ], + "type": "object" + }, "UserContext": { "description": "User context, which can affect the behavior of the underlying AI features.", "properties": { @@ -4864,6 +5743,89 @@ "successful" ], "type": "object" + }, + "VisualizationConfig": { + "description": "Visualization config for smart-function rendering.", + "properties": { + "anomalyDetection": { + "$ref": "#/components/schemas/AnomalyDetectionConfig" + }, + "clustering": { + "$ref": "#/components/schemas/ClusteringConfig" + }, + "forecast": { + "$ref": "#/components/schemas/ForecastConfig" + }, + "whatIf": { + "$ref": "#/components/schemas/WhatIfScenarioConfig" + } + }, + "type": "object" + }, + "WhatIfMeasureAdjustmentConfig": { + "description": "Measure adjustments for this scenario", + "properties": { + "metricId": { + "description": "ID of the metric or fact to adjust", + "type": "string" + }, + "metricType": { + "description": "Type: metric or fact", + "type": "string" + }, + "scenarioMaql": { + "description": "Alternative MAQL expression for this scenario", + "type": "string" + } + }, + "required": [ + "metricId", + "metricType", + "scenarioMaql" + ], + "type": "object" + }, + "WhatIfScenarioConfig": { + "description": "What-if scenario configuration.", + "properties": { + "includeBaseline": { + "description": "Whether baseline (unmodified) values are included", + "type": "boolean" + }, + "scenarios": { + "description": "Scenarios with alternative measure calculations", + "items": { + "$ref": "#/components/schemas/WhatIfScenarioItem" + }, + "type": "array" + } + }, + "required": [ + "includeBaseline", + "scenarios" + ], + "type": "object" + }, + "WhatIfScenarioItem": { + "description": "Scenarios with alternative measure calculations", + "properties": { + "adjustments": { + "description": "Measure adjustments for this scenario", + "items": { + "$ref": "#/components/schemas/WhatIfMeasureAdjustmentConfig" + }, + "type": "array" + }, + "label": { + "description": "Human-readable scenario label", + "type": "string" + } + }, + "required": [ + "adjustments", + "label" + ], + "type": "object" } } }, @@ -4948,18 +5910,49 @@ ] } }, - "/api/v1/actions/workspaces/{workspaceId}/ai/analyticsCatalog/createdBy": { - "get": { - "description": "Returns a list of Users who created any object for this workspace", - "operationId": "createdBy", + "/api/v1/actions/ai/llmProvider/test": { + "post": { + "description": "Tests LLM provider connectivity with a full definition.", + "operationId": "testLlmProvider", + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TestLlmProviderDefinitionRequest" + } + } + }, + "required": true + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TestLlmProviderResponse" + } + } + }, + "description": "OK" + } + }, + "summary": "Test LLM Provider", + "tags": [ + "Smart Functions", + "actions" + ] + } + }, + "/api/v1/actions/ai/llmProvider/{llmProviderId}/test": { + "post": { + "description": "Tests an existing LLM provider connectivity by its ID.", + "operationId": "testLlmProviderById", "parameters": [ { - "description": "Workspace identifier", "in": "path", - "name": "workspaceId", + "name": "llmProviderId", "required": true, "schema": { - "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", "type": "string" } } @@ -4969,24 +5962,24 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/AnalyticsCatalogCreatedBy" + "$ref": "#/components/schemas/TestLlmProviderResponse" } } }, "description": "OK" } }, - "summary": "Get Analytics Catalog CreatedBy Users", + "summary": "Test LLM Provider By Id", "tags": [ "Smart Functions", "actions" ] } }, - "/api/v1/actions/workspaces/{workspaceId}/ai/analyticsCatalog/tags": { + "/api/v1/actions/workspaces/{workspaceId}/ai/analyticsCatalog/createdBy": { "get": { - "description": "Returns a list of tags for this workspace", - "operationId": "tags", + "description": "Returns a list of Users who created any object for this workspace", + "operationId": "createdBy", "parameters": [ { "description": "Workspace identifier", @@ -5004,24 +5997,24 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/AnalyticsCatalogTags" + "$ref": "#/components/schemas/AnalyticsCatalogCreatedBy" } } }, "description": "OK" } }, - "summary": "Get Analytics Catalog Tags", + "summary": "Get Analytics Catalog CreatedBy Users", "tags": [ "Smart Functions", "actions" ] } }, - "/api/v1/actions/workspaces/{workspaceId}/ai/chat": { + "/api/v1/actions/workspaces/{workspaceId}/ai/analyticsCatalog/generateDescription": { "post": { - "description": "(BETA) Combines multiple use cases such as search, create visualizations, ...", - "operationId": "aiChat", + "description": "Generates a description for the specified analytics object. Returns description and a note with details if generation was not performed.", + "operationId": "generateDescription", "parameters": [ { "description": "Workspace identifier", @@ -5038,7 +6031,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/ChatRequest" + "$ref": "#/components/schemas/GenerateDescriptionRequest" } } }, @@ -5049,24 +6042,24 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/ChatResult" + "$ref": "#/components/schemas/GenerateDescriptionResponse" } } }, "description": "OK" } }, - "summary": "(BETA) Chat with AI", + "summary": "Generate Description for Analytics Object", "tags": [ "Smart Functions", "actions" ] } }, - "/api/v1/actions/workspaces/{workspaceId}/ai/chatHistory": { + "/api/v1/actions/workspaces/{workspaceId}/ai/analyticsCatalog/generateTitle": { "post": { - "description": "(BETA) Post thread ID (and optionally interaction ID) to get full/partial chat history.", - "operationId": "aiChatHistory", + "description": "Generates a title for the specified analytics object. Returns title and a note with details if generation was not performed.", + "operationId": "generateTitle", "parameters": [ { "description": "Workspace identifier", @@ -5083,7 +6076,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/ChatHistoryRequest" + "$ref": "#/components/schemas/GenerateTitleRequest" } } }, @@ -5094,24 +6087,24 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/ChatHistoryResult" + "$ref": "#/components/schemas/GenerateTitleResponse" } } }, "description": "OK" } }, - "summary": "(BETA) Get Chat History", + "summary": "Generate Title for Analytics Object", "tags": [ "Smart Functions", "actions" ] } }, - "/api/v1/actions/workspaces/{workspaceId}/ai/chatStream": { - "post": { - "description": "(BETA) Combines multiple use cases such as search, create visualizations, ...", - "operationId": "aiChatStream", + "/api/v1/actions/workspaces/{workspaceId}/ai/analyticsCatalog/tags": { + "get": { + "description": "Returns a list of tags for this workspace", + "operationId": "tags", "parameters": [ { "description": "Workspace identifier", @@ -5124,50 +6117,479 @@ } } ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ChatRequest" - } - } - }, - "required": true - }, "responses": { "200": { "content": { - "text/event-stream": { + "application/json": { "schema": { - "items": { - "$ref": "#/components/schemas/ServerSentEventChatResult" - }, - "type": "array" + "$ref": "#/components/schemas/AnalyticsCatalogTags" } } }, "description": "OK" } }, - "summary": "(BETA) Chat with AI", + "summary": "Get Analytics Catalog Tags", "tags": [ "Smart Functions", "actions" ] } }, - "/api/v1/actions/workspaces/{workspaceId}/ai/chatUsage": { - "get": { - "description": "Returns usage statistics of chat for a user in a workspace.", - "operationId": "aiChatUsage", + "/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", + "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/chatStream": { + "post": { + "description": "(BETA) Combines multiple use cases such as search, create visualizations, ...", + "operationId": "aiChatStream", + "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": { + "text/event-stream": { + "schema": { + "items": { + "$ref": "#/components/schemas/ServerSentEventChatResult" + }, + "type": "array" + } + } + }, + "description": "OK" + } + }, + "summary": "(BETA) Chat with AI", + "tags": [ + "Smart Functions", + "actions" + ] + } + }, + "/api/v1/actions/workspaces/{workspaceId}/ai/chatUsage": { + "get": { + "description": "Returns usage statistics of chat for a user in a workspace.", + "operationId": "aiChatUsage", + "parameters": [ + { + "description": "Workspace identifier", + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ChatUsageResponse" + } + } + }, + "description": "OK" + } + }, + "summary": "Get Chat Usage", + "tags": [ + "Smart Functions", + "actions" + ] + } + }, + "/api/v1/actions/workspaces/{workspaceId}/ai/issues": { + "get": { + "description": "Returns metadata quality issues detected by the platform linter.", + "operationId": "getQualityIssues", + "parameters": [ + { + "description": "Workspace identifier", + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GetQualityIssuesResponse" + } + } + }, + "description": "OK" + } + }, + "summary": "Get Quality Issues", + "tags": [ + "Smart Functions", + "actions" + ] + } + }, + "/api/v1/actions/workspaces/{workspaceId}/ai/issues/status/{processId}": { + "get": { + "description": "Returns the status of a quality issues calculation process identified by process ID.", + "operationId": "getQualityIssuesCalculationStatus", + "parameters": [ + { + "description": "Workspace identifier", + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": "string" + } + }, + { + "in": "path", + "name": "processId", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/QualityIssuesCalculationStatusResponse" + } + } + }, + "description": "OK" + } + }, + "summary": "Get Quality Issues Calculation Status", + "tags": [ + "Smart Functions", + "actions" + ] + } + }, + "/api/v1/actions/workspaces/{workspaceId}/ai/issues/triggerCheck": { + "post": { + "description": "Triggers asynchronous calculation of metadata quality issues and returns a process ID for status tracking.", + "operationId": "triggerQualityIssuesCalculation", + "parameters": [ + { + "description": "Workspace identifier", + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TriggerQualityIssuesCalculationResponse" + } + } + }, + "description": "OK" + } + }, + "summary": "Trigger Quality Issues Calculation", + "tags": [ + "Smart Functions", + "actions" + ] + } + }, + "/api/v1/actions/workspaces/{workspaceId}/ai/knowledge/documents": { + "get": { + "operationId": "listDocuments", + "parameters": [ + { + "description": "Workspace identifier", + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": "string" + } + }, + { + "in": "query", + "name": "scopes", + "required": false, + "schema": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + { + "in": "query", + "name": "size", + "required": false, + "schema": { + "default": 50, + "format": "int32", + "type": "integer" + } + }, + { + "in": "query", + "name": "pageToken", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "query", + "name": "metaInclude", + "required": false, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ListKnowledgeDocumentsResponseDto" + } + } + }, + "description": "OK" + } + }, + "tags": [ + "actions" + ] + }, + "post": { + "operationId": "createDocument", + "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/CreateKnowledgeDocumentRequestDto" + } + } + }, + "required": true + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateKnowledgeDocumentResponseDto" + } + } + }, + "description": "OK" + } + }, + "tags": [ + "actions" + ] + }, + "put": { + "operationId": "upsertDocument", + "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/UpsertKnowledgeDocumentRequestDto" + } + } + }, + "required": true + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpsertKnowledgeDocumentResponseDto" + } + } + }, + "description": "OK" + } + }, + "tags": [ + "actions" + ] + } + }, + "/api/v1/actions/workspaces/{workspaceId}/ai/knowledge/documents/{filename}": { + "delete": { + "operationId": "deleteDocument", + "parameters": [ + { + "description": "Workspace identifier", + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": "string" + } + }, + { + "in": "path", + "name": "filename", "required": true, "schema": { - "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", "type": "string" } } @@ -5177,24 +6599,19 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/ChatUsageResponse" + "$ref": "#/components/schemas/DeleteKnowledgeDocumentResponseDto" } } }, "description": "OK" } }, - "summary": "Get Chat Usage", "tags": [ - "Smart Functions", "actions" ] - } - }, - "/api/v1/actions/workspaces/{workspaceId}/ai/issues": { + }, "get": { - "description": "Returns metadata quality issues detected by the platform linter.", - "operationId": "getQualityIssues", + "operationId": "getDocument", "parameters": [ { "description": "Workspace identifier", @@ -5205,6 +6622,14 @@ "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", "type": "string" } + }, + { + "in": "path", + "name": "filename", + "required": true, + "schema": { + "type": "string" + } } ], "responses": { @@ -5212,24 +6637,19 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/GetQualityIssuesResponse" + "$ref": "#/components/schemas/KnowledgeDocumentMetadataDto" } } }, "description": "OK" } }, - "summary": "Get Quality Issues", "tags": [ - "Smart Functions", "actions" ] - } - }, - "/api/v1/actions/workspaces/{workspaceId}/ai/issues/status/{processId}": { - "get": { - "description": "Returns the status of a quality issues calculation process identified by process ID.", - "operationId": "getQualityIssuesCalculationStatus", + }, + "patch": { + "operationId": "patchDocument", "parameters": [ { "description": "Workspace identifier", @@ -5243,36 +6663,43 @@ }, { "in": "path", - "name": "processId", + "name": "filename", "required": true, "schema": { "type": "string" } } ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PatchKnowledgeDocumentRequestDto" + } + } + }, + "required": true + }, "responses": { "200": { "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/QualityIssuesCalculationStatusResponse" + "$ref": "#/components/schemas/KnowledgeDocumentMetadataDto" } } }, "description": "OK" } }, - "summary": "Get Quality Issues Calculation Status", "tags": [ - "Smart Functions", "actions" ] } }, - "/api/v1/actions/workspaces/{workspaceId}/ai/issues/triggerCheck": { - "post": { - "description": "Triggers asynchronous calculation of metadata quality issues and returns a process ID for status tracking.", - "operationId": "triggerQualityIssuesCalculation", + "/api/v1/actions/workspaces/{workspaceId}/ai/knowledge/search": { + "get": { + "operationId": "searchKnowledge", "parameters": [ { "description": "Workspace identifier", @@ -5283,6 +6710,45 @@ "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", "type": "string" } + }, + { + "in": "query", + "name": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "query", + "name": "limit", + "required": false, + "schema": { + "default": 10, + "format": "int32", + "type": "integer" + } + }, + { + "in": "query", + "name": "minScore", + "required": false, + "schema": { + "default": 0.0, + "format": "double", + "type": "number" + } + }, + { + "in": "query", + "name": "scopes", + "required": false, + "schema": { + "items": { + "type": "string" + }, + "type": "array" + } } ], "responses": { @@ -5290,16 +6756,14 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/TriggerQualityIssuesCalculationResponse" + "$ref": "#/components/schemas/SearchKnowledgeResponseDto" } } }, "description": "OK" } }, - "summary": "Trigger Quality Issues Calculation", "tags": [ - "Smart Functions", "actions" ] } @@ -6689,7 +8153,67 @@ ] } }, - "/api/v1/ailake/database/instance": { + "/api/v1/ailake/database/instances": { + "get": { + "description": "(BETA) Lists database instances in the organization's AI Lake. Supports paging via size and offset query parameters. Use metaInclude=page to get total count.", + "operationId": "listAiLakeDatabaseInstances", + "parameters": [ + { + "in": "query", + "name": "size", + "required": false, + "schema": { + "default": 50, + "format": "int32", + "type": "integer" + } + }, + { + "in": "query", + "name": "offset", + "required": false, + "schema": { + "default": 0, + "format": "int32", + "type": "integer" + } + }, + { + "in": "query", + "name": "metaInclude", + "required": false, + "schema": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": true + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ListDatabaseInstancesResponse" + } + } + }, + "description": "AI Lake database instances successfully retrieved" + } + }, + "summary": "(BETA) List AI Lake Database instances", + "tags": [ + "AI Lake" + ], + "x-gdc-security-info": { + "description": "Permissions required to list AI Lake database instances.", + "permissions": [ + "MANAGE" + ] + } + }, "post": { "description": "(BETA) Creates a new database in the organization's AI Lake. Returns an operation-id in the operation-id header the client can use to poll for the progress.", "operationId": "provisionAiLakeDatabaseInstance", @@ -6735,7 +8259,7 @@ }, "operation-location": { "description": "Operation location URL that can be used for polling.", - "example": "/api/v1/ailake/operation/e9fd5d74-8a1b-46bd-ac60-bd91e9206897", + "example": "/api/v1/ailake/operations/e9fd5d74-8a1b-46bd-ac60-bd91e9206897", "required": true, "schema": { "type": "string" @@ -6757,7 +8281,7 @@ } } }, - "/api/v1/ailake/database/instance/{instanceId}": { + "/api/v1/ailake/database/instances/{instanceId}": { "delete": { "description": "(BETA) Deletes an existing database in the organization's AI Lake. Returns an operation-id in the operation-id header the client can use to poll for the progress.", "operationId": "deprovisionAiLakeDatabaseInstance", @@ -6801,7 +8325,7 @@ }, "operation-location": { "description": "Operation location URL that can be used for polling.", - "example": "/api/v1/ailake/operation/e9fd5d74-8a1b-46bd-ac60-bd91e9206897", + "example": "/api/v1/ailake/operations/e9fd5d74-8a1b-46bd-ac60-bd91e9206897", "required": true, "schema": { "type": "string" @@ -6859,7 +8383,7 @@ } } }, - "/api/v1/ailake/operation/{operationId}": { + "/api/v1/ailake/operations/{operationId}": { "get": { "description": "(BETA) Retrieves details of a Long Running Operation specified by the operation-id.", "operationId": "getAiLakeOperation", @@ -6908,6 +8432,152 @@ ] } } + }, + "/api/v1/ailake/services": { + "get": { + "description": "(BETA) Lists services configured for the organization's AI Lake. Returns only non-sensitive fields (id, name). Supports paging via size and offset query parameters. Use metaInclude=page to get total count.", + "operationId": "listAiLakeServices", + "parameters": [ + { + "in": "query", + "name": "size", + "required": false, + "schema": { + "default": 50, + "format": "int32", + "type": "integer" + } + }, + { + "in": "query", + "name": "offset", + "required": false, + "schema": { + "default": 0, + "format": "int32", + "type": "integer" + } + }, + { + "in": "query", + "name": "metaInclude", + "required": false, + "schema": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": true + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ListServicesResponse" + } + } + }, + "description": "AI Lake services successfully retrieved" + } + }, + "summary": "(BETA) List AI Lake services", + "tags": [ + "AI Lake" + ], + "x-gdc-security-info": { + "description": "Permissions required to list AI Lake services.", + "permissions": [ + "MANAGE" + ] + } + } + }, + "/api/v1/ailake/services/{serviceId}/commands/{commandName}/run": { + "post": { + "description": "(BETA) Runs a specific AI Lake service command.", + "operationId": "runAiLakeServiceCommand", + "parameters": [ + { + "in": "path", + "name": "serviceId", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "commandName", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "header", + "name": "operation-id", + "required": false, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RunServiceCommandRequest" + } + } + }, + "required": true + }, + "responses": { + "202": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Unit" + } + } + }, + "description": "Accepted", + "headers": { + "operation-id": { + "description": "Operation ID to use for polling.", + "example": "e9fd5d74-8a1b-46bd-ac60-bd91e9206897", + "required": true, + "schema": { + "type": "string" + }, + "style": "simple" + }, + "operation-location": { + "description": "Operation location URL that can be used for polling.", + "example": "/api/v1/ailake/operations/e9fd5d74-8a1b-46bd-ac60-bd91e9206897", + "required": true, + "schema": { + "type": "string" + }, + "style": "simple" + } + } + } + }, + "summary": "(BETA) Run an AI Lake services command", + "tags": [ + "AI Lake" + ], + "x-gdc-security-info": { + "description": "Permissions required to run AI Lake service commands.", + "permissions": [ + "MANAGE" + ] + } + } } }, "servers": [ diff --git a/schemas/gooddata-api-client.json b/schemas/gooddata-api-client.json index a0c3f679e..d3c38d784 100644 --- a/schemas/gooddata-api-client.json +++ b/schemas/gooddata-api-client.json @@ -81,6 +81,13 @@ }, "type": "array" }, + "measureDefinitionOverrides": { + "description": "(EXPERIMENTAL) Override definitions of catalog metrics for this request. Allows substituting a catalog metric's MAQL definition without modifying the stored definition.", + "items": { + "$ref": "#/components/schemas/MetricDefinitionOverride" + }, + "type": "array" + }, "measures": { "description": "Metrics to be computed.", "items": { @@ -4495,9 +4502,9 @@ } }, "required": [ + "dataset", "from", - "to", - "dataset" + "to" ], "type": "object" } @@ -4957,69 +4964,6 @@ ], "type": "object" }, - "AllTimeDateFilter": { - "description": "An all-time date filter that does not restrict by date range. Controls how rows with empty (null/missing) date values are handled.", - "properties": { - "allTimeDateFilter": { - "properties": { - "applyOnResult": { - "type": "boolean" - }, - "dataset": { - "$ref": "#/components/schemas/AfmObjectIdentifierDataset" - }, - "emptyValueHandling": { - "default": "INCLUDE", - "description": "Specifies how rows with empty (null/missing) date values should be handled. INCLUDE means no filtering effect (default), EXCLUDE removes rows with null dates, ONLY keeps only rows with null dates.", - "enum": [ - "INCLUDE", - "EXCLUDE", - "ONLY" - ], - "type": "string" - }, - "granularity": { - "default": "DAY", - "description": "Date granularity used to resolve the date attribute label for null value checks. Defaults to DAY if not specified.", - "enum": [ - "MINUTE", - "HOUR", - "DAY", - "WEEK", - "MONTH", - "QUARTER", - "YEAR", - "MINUTE_OF_HOUR", - "HOUR_OF_DAY", - "DAY_OF_WEEK", - "DAY_OF_MONTH", - "DAY_OF_QUARTER", - "DAY_OF_YEAR", - "WEEK_OF_YEAR", - "MONTH_OF_YEAR", - "QUARTER_OF_YEAR", - "FISCAL_MONTH", - "FISCAL_QUARTER", - "FISCAL_YEAR" - ], - "example": "DAY", - "type": "string" - }, - "localIdentifier": { - "type": "string" - } - }, - "required": [ - "dataset" - ], - "type": "object" - } - }, - "required": [ - "allTimeDateFilter" - ], - "type": "object" - }, "AlertAfm": { "properties": { "attributes": { @@ -5177,6 +5121,69 @@ }, "type": "object" }, + "AllTimeDateFilter": { + "description": "An all-time date filter that does not restrict by date range. Controls how rows with empty (null/missing) date values are handled.", + "properties": { + "allTimeDateFilter": { + "properties": { + "applyOnResult": { + "type": "boolean" + }, + "dataset": { + "$ref": "#/components/schemas/AfmObjectIdentifierDataset" + }, + "emptyValueHandling": { + "default": "INCLUDE", + "description": "Specifies how rows with empty (null/missing) date values should be handled. INCLUDE means no filtering effect (default), EXCLUDE removes rows with null dates, ONLY keeps only rows with null dates.", + "enum": [ + "INCLUDE", + "EXCLUDE", + "ONLY" + ], + "type": "string" + }, + "granularity": { + "default": "DAY", + "description": "Date granularity used to resolve the date attribute label for null value checks. Defaults to DAY if not specified.", + "enum": [ + "MINUTE", + "HOUR", + "DAY", + "WEEK", + "MONTH", + "QUARTER", + "YEAR", + "MINUTE_OF_HOUR", + "HOUR_OF_DAY", + "DAY_OF_WEEK", + "DAY_OF_MONTH", + "DAY_OF_QUARTER", + "DAY_OF_YEAR", + "WEEK_OF_YEAR", + "MONTH_OF_YEAR", + "QUARTER_OF_YEAR", + "FISCAL_MONTH", + "FISCAL_QUARTER", + "FISCAL_YEAR" + ], + "example": "DAY", + "type": "string" + }, + "localIdentifier": { + "type": "string" + } + }, + "required": [ + "dataset" + ], + "type": "object" + } + }, + "required": [ + "allTimeDateFilter" + ], + "type": "object" + }, "AllowedRelationshipType": { "description": "Allowed relationship type combination.", "properties": { @@ -5316,6 +5323,24 @@ ], "type": "object" }, + "AnomalyDetectionConfig": { + "description": "Anomaly detection configuration.", + "properties": { + "sensitivity": { + "description": "Outlier sensitivity level.", + "enum": [ + "LOW", + "MEDIUM", + "HIGH" + ], + "type": "string" + } + }, + "required": [ + "sensitivity" + ], + "type": "object" + }, "AnomalyDetectionRequest": { "properties": { "sensitivity": { @@ -6065,6 +6090,146 @@ ], "type": "object" }, + "AwsBedrockAccessKeyAuth": { + "allOf": [ + { + "properties": { + "accessKeyId": { + "description": "AWS Access Key ID.", + "maxLength": 255, + "nullable": true, + "type": "string", + "writeOnly": true + }, + "secretAccessKey": { + "description": "AWS Secret Access Key.", + "maxLength": 10000, + "nullable": true, + "type": "string", + "writeOnly": true + }, + "sessionToken": { + "description": "AWS Session Token (for temporary credentials).", + "maxLength": 10000, + "nullable": true, + "type": "string", + "writeOnly": true + }, + "type": { + "description": "Authentication type.", + "enum": [ + "ACCESS_KEY" + ], + "type": "string" + } + }, + "type": "object" + } + ], + "required": [ + "type" + ], + "type": "object" + }, + "AwsBedrockProviderConfig": { + "description": "Configuration for AWS Bedrock provider.", + "properties": { + "auth": { + "$ref": "#/components/schemas/BedrockProviderAuth" + }, + "region": { + "description": "AWS region for Bedrock.", + "example": "us-east-1", + "maxLength": 255, + "type": "string" + }, + "type": { + "description": "Provider type.", + "enum": [ + "AWS_BEDROCK" + ], + "type": "string" + } + }, + "required": [ + "auth", + "region", + "type" + ], + "type": "object" + }, + "AzureFoundryApiKeyAuth": { + "allOf": [ + { + "properties": { + "apiKey": { + "description": "Azure API key.", + "maxLength": 255, + "nullable": true, + "type": "string", + "writeOnly": true + }, + "type": { + "description": "Authentication type.", + "enum": [ + "API_KEY" + ], + "type": "string" + } + }, + "type": "object" + } + ], + "required": [ + "type" + ], + "type": "object" + }, + "AzureFoundryProviderAuth": { + "description": "Authentication configuration.", + "oneOf": [ + { + "$ref": "#/components/schemas/AzureFoundryApiKeyAuth" + } + ], + "type": "object" + }, + "AzureFoundryProviderConfig": { + "description": "Configuration for Azure Foundry provider.", + "properties": { + "auth": { + "$ref": "#/components/schemas/AzureFoundryProviderAuth" + }, + "endpoint": { + "description": "Azure AI inference endpoint URL.", + "example": "https://my-resource.services.ai.azure.com/models", + "maxLength": 255, + "type": "string" + }, + "type": { + "description": "Provider type.", + "enum": [ + "AZURE_FOUNDRY" + ], + "type": "string" + } + }, + "required": [ + "auth", + "endpoint", + "type" + ], + "type": "object" + }, + "BedrockProviderAuth": { + "description": "Authentication configuration.", + "oneOf": [ + { + "$ref": "#/components/schemas/AwsBedrockAccessKeyAuth" + } + ], + "type": "object" + }, "BoundedFilter": { "description": "Bounding filter for this relative date filter. This can be used to limit the range of the relative date filter to a specific date range.", "properties": { @@ -6562,6 +6727,26 @@ ], "type": "object" }, + "ClusteringConfig": { + "description": "Clustering configuration.", + "properties": { + "numberOfClusters": { + "description": "Number of clusters to create", + "format": "int32", + "type": "integer" + }, + "threshold": { + "description": "Clustering algorithm threshold", + "format": "float", + "type": "number" + } + }, + "required": [ + "numberOfClusters", + "threshold" + ], + "type": "object" + }, "ClusteringRequest": { "properties": { "numberOfClusters": { @@ -6917,9 +7102,9 @@ } }, "required": [ + "measure", "operator", - "value", - "measure" + "value" ], "type": "object" } @@ -7027,9 +7212,67 @@ }, "type": "object" }, + "CreateKnowledgeDocumentRequestDto": { + "properties": { + "content": { + "type": "string" + }, + "filename": { + "type": "string" + }, + "pageBoundaries": { + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + }, + "scopes": { + "items": { + "type": "string" + }, + "type": "array" + }, + "title": { + "type": "string" + } + }, + "required": [ + "content", + "filename" + ], + "type": "object" + }, + "CreateKnowledgeDocumentResponseDto": { + "properties": { + "filename": { + "type": "string" + }, + "message": { + "type": "string" + }, + "numChunks": { + "format": "int32", + "type": "integer" + }, + "success": { + "type": "boolean" + } + }, + "required": [ + "filename", + "message", + "numChunks", + "success" + ], + "type": "object" + }, "CreatedVisualization": { "description": "List of created visualization objects", "properties": { + "config": { + "$ref": "#/components/schemas/VisualizationConfig" + }, "dimensionality": { "description": "List of attributes representing the dimensionality of the new visualization", "items": { @@ -7096,7 +7339,8 @@ "BAR", "LINE", "PIE", - "COLUMN" + "COLUMN", + "SCATTER" ], "example": "TABLE", "type": "string" @@ -7264,6 +7508,14 @@ "dataSet": { "$ref": "#/components/schemas/IdentifierRef" }, + "emptyValueHandling": { + "enum": [ + "INCLUDE", + "EXCLUDE", + "ONLY" + ], + "type": "string" + }, "from": { "oneOf": [ { @@ -7865,6 +8117,9 @@ }, { "$ref": "#/components/schemas/RelativeDateFilter" + }, + { + "$ref": "#/components/schemas/AllTimeDateFilter" } ], "type": "object" @@ -8006,6 +8261,27 @@ }, "DeclarativeAnalyticalDashboard": { "properties": { + "certification": { + "description": "Certification status of the entity.", + "enum": [ + "CERTIFIED" + ], + "type": "string" + }, + "certificationMessage": { + "description": "Optional message associated with the certification.", + "nullable": true, + "type": "string" + }, + "certifiedAt": { + "description": "Time when the certification was set.", + "nullable": true, + "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", + "type": "string" + }, + "certifiedBy": { + "$ref": "#/components/schemas/DeclarativeUserIdentifier" + }, "content": { "$ref": "#/components/schemas/JsonNode" }, @@ -8393,7 +8669,7 @@ }, "createdAt": { "description": "Time of the entity creation.", - "example": "[\"2023-07-20 12:30\"]", + "example": "2023-07-20 12:30", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", "type": "string" @@ -8415,7 +8691,7 @@ }, "modifiedAt": { "description": "Time of the last entity modification.", - "example": "[\"2023-07-20 12:30\"]", + "example": "2023-07-20 12:30", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", "type": "string" @@ -8780,7 +9056,7 @@ }, "createdAt": { "description": "Time of the entity creation.", - "example": "[\"2023-07-20 12:30\"]", + "example": "2023-07-20 12:30", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", "type": "string" @@ -8802,7 +9078,7 @@ }, "modifiedAt": { "description": "Time of the last entity modification.", - "example": "[\"2023-07-20 12:30\"]", + "example": "2023-07-20 12:30", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", "type": "string" @@ -9270,7 +9546,7 @@ "properties": { "createdAt": { "description": "Time of the entity creation.", - "example": "[\"2023-07-20 12:30\"]", + "example": "2023-07-20 12:30", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", "type": "string" @@ -9292,7 +9568,7 @@ }, "modifiedAt": { "description": "Time of the last entity modification.", - "example": "[\"2023-07-20 12:30\"]", + "example": "2023-07-20 12:30", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", "type": "string" @@ -9964,12 +10240,33 @@ }, "DeclarativeMetric": { "properties": { + "certification": { + "description": "Certification status of the entity.", + "enum": [ + "CERTIFIED" + ], + "type": "string" + }, + "certificationMessage": { + "description": "Optional message associated with the certification.", + "nullable": true, + "type": "string" + }, + "certifiedAt": { + "description": "Time when the certification was set.", + "nullable": true, + "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", + "type": "string" + }, + "certifiedBy": { + "$ref": "#/components/schemas/DeclarativeUserIdentifier" + }, "content": { "$ref": "#/components/schemas/JsonNode" }, "createdAt": { "description": "Time of the entity creation.", - "example": "[\"2023-07-20 12:30\"]", + "example": "2023-07-20 12:30", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", "type": "string" @@ -10001,7 +10298,7 @@ }, "modifiedAt": { "description": "Time of the last entity modification.", - "example": "[\"2023-07-20 12:30\"]", + "example": "2023-07-20 12:30", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", "type": "string" @@ -10540,6 +10837,7 @@ "ACTIVE_THEME", "ACTIVE_COLOR_PALETTE", "ACTIVE_LLM_ENDPOINT", + "ACTIVE_LLM_PROVIDER", "ACTIVE_CALENDARS", "WHITE_LABELING", "LOCALE", @@ -10582,7 +10880,8 @@ "ENABLE_NULL_JOINS", "EXPORT_CSV_CUSTOM_DELIMITER", "ENABLE_QUERY_TAGS", - "RESTRICT_BASE_UI" + "RESTRICT_BASE_UI", + "CERTIFY_PARENT_OBJECTS" ], "example": "TIMEZONE", "type": "string" @@ -10608,6 +10907,8 @@ "EXPORT_PDF", "CREATE_AUTOMATION", "USE_AI_ASSISTANT", + "WRITE_KNOWLEDGE_DOCUMENTS", + "READ_KNOWLEDGE_DOCUMENTS", "CREATE_FILTER_VIEW", "VIEW" ], @@ -11061,12 +11362,33 @@ }, "DeclarativeVisualizationObject": { "properties": { + "certification": { + "description": "Certification status of the entity.", + "enum": [ + "CERTIFIED" + ], + "type": "string" + }, + "certificationMessage": { + "description": "Optional message associated with the certification.", + "nullable": true, + "type": "string" + }, + "certifiedAt": { + "description": "Time when the certification was set.", + "nullable": true, + "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", + "type": "string" + }, + "certifiedBy": { + "$ref": "#/components/schemas/DeclarativeUserIdentifier" + }, "content": { "$ref": "#/components/schemas/JsonNode" }, "createdAt": { "description": "Time of the entity creation.", - "example": "[\"2023-07-20 12:30\"]", + "example": "2023-07-20 12:30", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", "type": "string" @@ -11093,7 +11415,7 @@ }, "modifiedAt": { "description": "Time of the last entity modification.", - "example": "[\"2023-07-20 12:30\"]", + "example": "2023-07-20 12:30", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", "type": "string" @@ -11417,6 +11739,8 @@ "EXPORT_PDF", "CREATE_AUTOMATION", "USE_AI_ASSISTANT", + "WRITE_KNOWLEDGE_DOCUMENTS", + "READ_KNOWLEDGE_DOCUMENTS", "CREATE_FILTER_VIEW", "VIEW" ], @@ -11533,6 +11857,21 @@ ], "type": "object" }, + "DeleteKnowledgeDocumentResponseDto": { + "properties": { + "message": { + "type": "string" + }, + "success": { + "type": "boolean" + } + }, + "required": [ + "message", + "success" + ], + "type": "object" + }, "DependentEntitiesGraph": { "properties": { "edges": { @@ -11602,6 +11941,15 @@ "$ref": "#/components/schemas/EntityIdentifier" }, "type": "array" + }, + "relation": { + "default": "DEPENDENTS", + "description": "Entity relation for graph traversal from the entry points. DEPENDENTS returns entities that depend on the entry points. DEPENDENCIES returns entities that the entry points depend on.", + "enum": [ + "DEPENDENTS", + "DEPENDENCIES" + ], + "type": "string" } }, "required": [ @@ -12550,10 +12898,10 @@ "$ref": "#/components/schemas/AbsoluteDateFilter" }, { - "$ref": "#/components/schemas/AllTimeDateFilter" + "$ref": "#/components/schemas/RelativeDateFilter" }, { - "$ref": "#/components/schemas/RelativeDateFilter" + "$ref": "#/components/schemas/AllTimeDateFilter" }, { "$ref": "#/components/schemas/NegativeAttributeFilter" @@ -12579,6 +12927,31 @@ ], "type": "object" }, + "ForecastConfig": { + "description": "Forecast configuration.", + "properties": { + "confidenceLevel": { + "description": "Confidence interval boundary value.", + "format": "float", + "type": "number" + }, + "forecastPeriod": { + "description": "Number of future periods that should be forecasted", + "format": "int32", + "type": "integer" + }, + "seasonal": { + "description": "Whether the input data is seasonal", + "type": "boolean" + } + }, + "required": [ + "confidenceLevel", + "forecastPeriod", + "seasonal" + ], + "type": "object" + }, "ForecastRequest": { "properties": { "confidenceLevel": { @@ -12714,6 +13087,43 @@ }, "type": "object" }, + "GenerateDescriptionRequest": { + "properties": { + "objectId": { + "description": "Identifier of the object to describe", + "type": "string" + }, + "objectType": { + "description": "Type of the object to describe. One of: visualization, dashboard, metric, fact, attribute", + "enum": [ + "Visualization", + "Dashboard", + "Metric", + "Fact", + "Attribute" + ], + "type": "string" + } + }, + "required": [ + "objectId", + "objectType" + ], + "type": "object" + }, + "GenerateDescriptionResponse": { + "properties": { + "description": { + "description": "Generated description of the requested object", + "type": "string" + }, + "note": { + "description": "Additional note with details in case generation was not performed", + "type": "string" + } + }, + "type": "object" + }, "GenerateLdmRequest": { "description": "A request containing all information needed for generation of logical model.", "properties": { @@ -12819,6 +13229,43 @@ }, "type": "object" }, + "GenerateTitleRequest": { + "properties": { + "objectId": { + "description": "Identifier of the object to title", + "type": "string" + }, + "objectType": { + "description": "Type of the object to title. Matches chat-search object types.", + "enum": [ + "Visualization", + "Dashboard", + "Metric", + "Fact", + "Attribute" + ], + "type": "string" + } + }, + "required": [ + "objectId", + "objectType" + ], + "type": "object" + }, + "GenerateTitleResponse": { + "properties": { + "note": { + "description": "Additional note with details in case generation was not performed", + "type": "string" + }, + "title": { + "description": "Generated title of the requested object", + "type": "string" + } + }, + "type": "object" + }, "GeoAreaConfig": { "description": "Configuration specific to geo area labels.", "properties": { @@ -12869,6 +13316,7 @@ "SYNCING", "COMPLETED", "FAILED", + "CANCELLED", "NOT_FOUND", "DISABLED" ], @@ -13621,6 +14069,26 @@ "areRelationsValid": { "type": "boolean" }, + "certification": { + "description": "Certification status of the entity.", + "enum": [ + "CERTIFIED" + ], + "type": "string" + }, + "certificationMessage": { + "description": "Optional message associated with the certification.", + "nullable": true, + "type": "string" + }, + "certifiedAt": { + "description": "Time when the certification was set.", + "example": "2023-07-20 12:30", + "format": "date-time", + "nullable": true, + "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", + "type": "string" + }, "content": { "description": "Free-form JSON content. Maximum supported length is 250000 characters.", "example": { @@ -13634,6 +14102,7 @@ }, "createdAt": { "description": "Time of the entity creation.", + "example": "2023-07-20 12:30", "format": "date-time", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", @@ -13645,6 +14114,7 @@ }, "modifiedAt": { "description": "Time of the last entity modification.", + "example": "2023-07-20 12:30", "format": "date-time", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", @@ -13740,6 +14210,17 @@ ], "type": "object" }, + "certifiedBy": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiUserIdentifierToOneLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + }, "createdBy": { "properties": { "data": { @@ -14353,6 +14834,7 @@ }, "createdAt": { "description": "Time of the entity creation.", + "example": "2023-07-20 12:30", "format": "date-time", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", @@ -14364,6 +14846,7 @@ }, "modifiedAt": { "description": "Time of the last entity modification.", + "example": "2023-07-20 12:30", "format": "date-time", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", @@ -15376,6 +15859,7 @@ }, "createdAt": { "description": "Time of the entity creation.", + "example": "2023-07-20 12:30", "format": "date-time", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", @@ -15463,6 +15947,7 @@ }, "modifiedAt": { "description": "Time of the last entity modification.", + "example": "2023-07-20 12:30", "format": "date-time", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", @@ -17362,6 +17847,7 @@ }, "createdAt": { "description": "Time of the entity creation.", + "example": "2023-07-20 12:30", "format": "date-time", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", @@ -17373,6 +17859,7 @@ }, "modifiedAt": { "description": "Time of the last entity modification.", + "example": "2023-07-20 12:30", "format": "date-time", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", @@ -19076,6 +19563,7 @@ }, "createdAt": { "description": "Time of the entity creation.", + "example": "2023-07-20 12:30", "format": "date-time", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", @@ -19087,6 +19575,7 @@ }, "modifiedAt": { "description": "Time of the last entity modification.", + "example": "2023-07-20 12:30", "format": "date-time", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", @@ -23047,6 +23536,369 @@ ], "type": "object" }, + "JsonApiLlmProviderIn": { + "description": "LLM Provider configuration for connecting to LLM services.", + "properties": { + "attributes": { + "properties": { + "defaultModelId": { + "description": "ID of the default model to use from the models list.", + "maxLength": 255, + "nullable": true, + "type": "string" + }, + "description": { + "description": "Description of the LLM Provider.", + "maxLength": 10000, + "nullable": true, + "type": "string" + }, + "models": { + "description": "List of LLM models available for this provider.", + "items": { + "description": "LLM Model configuration (id, family) within a provider.", + "properties": { + "family": { + "description": "Family of LLM models.", + "enum": [ + "OPENAI", + "ANTHROPIC", + "META", + "MISTRAL", + "AMAZON", + "GOOGLE", + "COHERE" + ], + "type": "string" + }, + "id": { + "description": "Unique identifier of the model (e.g., gpt-5.3, claude-4.6).", + "maxLength": 255, + "type": "string" + } + }, + "required": [ + "family", + "id" + ], + "type": "object" + }, + "nullable": true, + "type": "array" + }, + "name": { + "maxLength": 255, + "nullable": true, + "type": "string" + }, + "providerConfig": { + "description": "Provider-specific configuration including authentication.", + "oneOf": [ + { + "$ref": "#/components/schemas/AwsBedrockProviderConfig" + }, + { + "$ref": "#/components/schemas/AzureFoundryProviderConfig" + }, + { + "$ref": "#/components/schemas/OpenAIProviderConfig" + } + ] + } + }, + "required": [ + "models", + "providerConfig" + ], + "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": [ + "llmProvider" + ], + "example": "llmProvider", + "type": "string" + } + }, + "required": [ + "attributes", + "id", + "type" + ], + "type": "object" + }, + "JsonApiLlmProviderInDocument": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiLlmProviderIn" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "JsonApiLlmProviderOut": { + "description": "LLM Provider configuration for connecting to LLM services.", + "properties": { + "attributes": { + "properties": { + "defaultModelId": { + "description": "ID of the default model to use from the models list.", + "maxLength": 255, + "nullable": true, + "type": "string" + }, + "description": { + "description": "Description of the LLM Provider.", + "maxLength": 10000, + "nullable": true, + "type": "string" + }, + "models": { + "description": "List of LLM models available for this provider.", + "items": { + "description": "LLM Model configuration (id, family) within a provider.", + "properties": { + "family": { + "description": "Family of LLM models.", + "enum": [ + "OPENAI", + "ANTHROPIC", + "META", + "MISTRAL", + "AMAZON", + "GOOGLE", + "COHERE" + ], + "type": "string" + }, + "id": { + "description": "Unique identifier of the model (e.g., gpt-5.3, claude-4.6).", + "maxLength": 255, + "type": "string" + } + }, + "required": [ + "family", + "id" + ], + "type": "object" + }, + "nullable": true, + "type": "array" + }, + "name": { + "maxLength": 255, + "nullable": true, + "type": "string" + }, + "providerConfig": { + "description": "Provider-specific configuration including authentication.", + "oneOf": [ + { + "$ref": "#/components/schemas/AwsBedrockProviderConfig" + }, + { + "$ref": "#/components/schemas/AzureFoundryProviderConfig" + }, + { + "$ref": "#/components/schemas/OpenAIProviderConfig" + } + ] + } + }, + "required": [ + "models", + "providerConfig" + ], + "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": [ + "llmProvider" + ], + "example": "llmProvider", + "type": "string" + } + }, + "required": [ + "attributes", + "id", + "type" + ], + "type": "object" + }, + "JsonApiLlmProviderOutDocument": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiLlmProviderOut" + }, + "links": { + "$ref": "#/components/schemas/ObjectLinks" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "JsonApiLlmProviderOutList": { + "description": "A JSON:API document with a list of resources", + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/JsonApiLlmProviderOutWithLinks" + }, + "type": "array", + "uniqueItems": true + }, + "links": { + "$ref": "#/components/schemas/ListLinks" + }, + "meta": { + "properties": { + "page": { + "$ref": "#/components/schemas/PageMetadata" + } + }, + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "JsonApiLlmProviderOutWithLinks": { + "allOf": [ + { + "$ref": "#/components/schemas/JsonApiLlmProviderOut" + }, + { + "$ref": "#/components/schemas/ObjectLinksContainer" + } + ] + }, + "JsonApiLlmProviderPatch": { + "description": "LLM Provider configuration for connecting to LLM services.", + "properties": { + "attributes": { + "properties": { + "defaultModelId": { + "description": "ID of the default model to use from the models list.", + "maxLength": 255, + "nullable": true, + "type": "string" + }, + "description": { + "description": "Description of the LLM Provider.", + "maxLength": 10000, + "nullable": true, + "type": "string" + }, + "models": { + "description": "List of LLM models available for this provider.", + "items": { + "description": "LLM Model configuration (id, family) within a provider.", + "properties": { + "family": { + "description": "Family of LLM models.", + "enum": [ + "OPENAI", + "ANTHROPIC", + "META", + "MISTRAL", + "AMAZON", + "GOOGLE", + "COHERE" + ], + "type": "string" + }, + "id": { + "description": "Unique identifier of the model (e.g., gpt-5.3, claude-4.6).", + "maxLength": 255, + "type": "string" + } + }, + "required": [ + "family", + "id" + ], + "type": "object" + }, + "nullable": true, + "type": "array" + }, + "name": { + "maxLength": 255, + "nullable": true, + "type": "string" + }, + "providerConfig": { + "description": "Provider-specific configuration including authentication.", + "oneOf": [ + { + "$ref": "#/components/schemas/AwsBedrockProviderConfig" + }, + { + "$ref": "#/components/schemas/AzureFoundryProviderConfig" + }, + { + "$ref": "#/components/schemas/OpenAIProviderConfig" + } + ] + } + }, + "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": [ + "llmProvider" + ], + "example": "llmProvider", + "type": "string" + } + }, + "required": [ + "attributes", + "id", + "type" + ], + "type": "object" + }, + "JsonApiLlmProviderPatchDocument": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiLlmProviderPatch" + } + }, + "required": [ + "data" + ], + "type": "object" + }, "JsonApiMemoryItemIn": { "description": "JSON:API representation of memoryItem entity.", "properties": { @@ -23143,6 +23995,7 @@ }, "createdAt": { "description": "Time of the entity creation.", + "example": "2023-07-20 12:30", "format": "date-time", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", @@ -23170,6 +24023,7 @@ }, "modifiedAt": { "description": "Time of the last entity modification.", + "example": "2023-07-20 12:30", "format": "date-time", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", @@ -23629,6 +24483,26 @@ "areRelationsValid": { "type": "boolean" }, + "certification": { + "description": "Certification status of the entity.", + "enum": [ + "CERTIFIED" + ], + "type": "string" + }, + "certificationMessage": { + "description": "Optional message associated with the certification.", + "nullable": true, + "type": "string" + }, + "certifiedAt": { + "description": "Time when the certification was set.", + "example": "2023-07-20 12:30", + "format": "date-time", + "nullable": true, + "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", + "type": "string" + }, "content": { "properties": { "format": { @@ -23657,6 +24531,7 @@ }, "createdAt": { "description": "Time of the entity creation.", + "example": "2023-07-20 12:30", "format": "date-time", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", @@ -23674,6 +24549,7 @@ }, "modifiedAt": { "description": "Time of the last entity modification.", + "example": "2023-07-20 12:30", "format": "date-time", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", @@ -23740,6 +24616,17 @@ ], "type": "object" }, + "certifiedBy": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiUserIdentifierToOneLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + }, "createdBy": { "properties": { "data": { @@ -25076,6 +25963,7 @@ "ACTIVE_THEME", "ACTIVE_COLOR_PALETTE", "ACTIVE_LLM_ENDPOINT", + "ACTIVE_LLM_PROVIDER", "ACTIVE_CALENDARS", "WHITE_LABELING", "LOCALE", @@ -25118,7 +26006,8 @@ "ENABLE_NULL_JOINS", "EXPORT_CSV_CUSTOM_DELIMITER", "ENABLE_QUERY_TAGS", - "RESTRICT_BASE_UI" + "RESTRICT_BASE_UI", + "CERTIFY_PARENT_OBJECTS" ], "type": "string" } @@ -25173,6 +26062,7 @@ "ACTIVE_THEME", "ACTIVE_COLOR_PALETTE", "ACTIVE_LLM_ENDPOINT", + "ACTIVE_LLM_PROVIDER", "ACTIVE_CALENDARS", "WHITE_LABELING", "LOCALE", @@ -25215,7 +26105,8 @@ "ENABLE_NULL_JOINS", "EXPORT_CSV_CUSTOM_DELIMITER", "ENABLE_QUERY_TAGS", - "RESTRICT_BASE_UI" + "RESTRICT_BASE_UI", + "CERTIFY_PARENT_OBJECTS" ], "type": "string" } @@ -25310,6 +26201,7 @@ "ACTIVE_THEME", "ACTIVE_COLOR_PALETTE", "ACTIVE_LLM_ENDPOINT", + "ACTIVE_LLM_PROVIDER", "ACTIVE_CALENDARS", "WHITE_LABELING", "LOCALE", @@ -25352,7 +26244,8 @@ "ENABLE_NULL_JOINS", "EXPORT_CSV_CUSTOM_DELIMITER", "ENABLE_QUERY_TAGS", - "RESTRICT_BASE_UI" + "RESTRICT_BASE_UI", + "CERTIFY_PARENT_OBJECTS" ], "type": "string" } @@ -26813,6 +27706,7 @@ "ACTIVE_THEME", "ACTIVE_COLOR_PALETTE", "ACTIVE_LLM_ENDPOINT", + "ACTIVE_LLM_PROVIDER", "ACTIVE_CALENDARS", "WHITE_LABELING", "LOCALE", @@ -26855,7 +27749,8 @@ "ENABLE_NULL_JOINS", "EXPORT_CSV_CUSTOM_DELIMITER", "ENABLE_QUERY_TAGS", - "RESTRICT_BASE_UI" + "RESTRICT_BASE_UI", + "CERTIFY_PARENT_OBJECTS" ], "type": "string" } @@ -26910,6 +27805,7 @@ "ACTIVE_THEME", "ACTIVE_COLOR_PALETTE", "ACTIVE_LLM_ENDPOINT", + "ACTIVE_LLM_PROVIDER", "ACTIVE_CALENDARS", "WHITE_LABELING", "LOCALE", @@ -26952,7 +27848,8 @@ "ENABLE_NULL_JOINS", "EXPORT_CSV_CUSTOM_DELIMITER", "ENABLE_QUERY_TAGS", - "RESTRICT_BASE_UI" + "RESTRICT_BASE_UI", + "CERTIFY_PARENT_OBJECTS" ], "type": "string" } @@ -27149,6 +28046,26 @@ "areRelationsValid": { "type": "boolean" }, + "certification": { + "description": "Certification status of the entity.", + "enum": [ + "CERTIFIED" + ], + "type": "string" + }, + "certificationMessage": { + "description": "Optional message associated with the certification.", + "nullable": true, + "type": "string" + }, + "certifiedAt": { + "description": "Time when the certification was set.", + "example": "2023-07-20 12:30", + "format": "date-time", + "nullable": true, + "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", + "type": "string" + }, "content": { "description": "Free-form JSON content. Maximum supported length is 250000 characters.", "example": { @@ -27162,6 +28079,7 @@ }, "createdAt": { "description": "Time of the entity creation.", + "example": "2023-07-20 12:30", "format": "date-time", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", @@ -27176,6 +28094,7 @@ }, "modifiedAt": { "description": "Time of the last entity modification.", + "example": "2023-07-20 12:30", "format": "date-time", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", @@ -27242,6 +28161,17 @@ ], "type": "object" }, + "certifiedBy": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiUserIdentifierToOneLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + }, "createdBy": { "properties": { "data": { @@ -28888,6 +29818,8 @@ "EXPORT_PDF", "CREATE_AUTOMATION", "USE_AI_ASSISTANT", + "WRITE_KNOWLEDGE_DOCUMENTS", + "READ_KNOWLEDGE_DOCUMENTS", "CREATE_FILTER_VIEW", "VIEW" ], @@ -29128,6 +30060,7 @@ "ACTIVE_THEME", "ACTIVE_COLOR_PALETTE", "ACTIVE_LLM_ENDPOINT", + "ACTIVE_LLM_PROVIDER", "ACTIVE_CALENDARS", "WHITE_LABELING", "LOCALE", @@ -29170,7 +30103,8 @@ "ENABLE_NULL_JOINS", "EXPORT_CSV_CUSTOM_DELIMITER", "ENABLE_QUERY_TAGS", - "RESTRICT_BASE_UI" + "RESTRICT_BASE_UI", + "CERTIFY_PARENT_OBJECTS" ], "type": "string" } @@ -29225,6 +30159,7 @@ "ACTIVE_THEME", "ACTIVE_COLOR_PALETTE", "ACTIVE_LLM_ENDPOINT", + "ACTIVE_LLM_PROVIDER", "ACTIVE_CALENDARS", "WHITE_LABELING", "LOCALE", @@ -29267,7 +30202,8 @@ "ENABLE_NULL_JOINS", "EXPORT_CSV_CUSTOM_DELIMITER", "ENABLE_QUERY_TAGS", - "RESTRICT_BASE_UI" + "RESTRICT_BASE_UI", + "CERTIFY_PARENT_OBJECTS" ], "type": "string" } @@ -29388,6 +30324,7 @@ "ACTIVE_THEME", "ACTIVE_COLOR_PALETTE", "ACTIVE_LLM_ENDPOINT", + "ACTIVE_LLM_PROVIDER", "ACTIVE_CALENDARS", "WHITE_LABELING", "LOCALE", @@ -29430,7 +30367,8 @@ "ENABLE_NULL_JOINS", "EXPORT_CSV_CUSTOM_DELIMITER", "ENABLE_QUERY_TAGS", - "RESTRICT_BASE_UI" + "RESTRICT_BASE_UI", + "CERTIFY_PARENT_OBJECTS" ], "type": "string" } @@ -29485,6 +30423,7 @@ "ACTIVE_THEME", "ACTIVE_COLOR_PALETTE", "ACTIVE_LLM_ENDPOINT", + "ACTIVE_LLM_PROVIDER", "ACTIVE_CALENDARS", "WHITE_LABELING", "LOCALE", @@ -29527,7 +30466,8 @@ "ENABLE_NULL_JOINS", "EXPORT_CSV_CUSTOM_DELIMITER", "ENABLE_QUERY_TAGS", - "RESTRICT_BASE_UI" + "RESTRICT_BASE_UI", + "CERTIFY_PARENT_OBJECTS" ], "type": "string" } @@ -29699,6 +30639,105 @@ ], "type": "object" }, + "KnowledgeDocumentMetadataDto": { + "properties": { + "createdAt": { + "type": "string" + }, + "createdBy": { + "type": "string" + }, + "filename": { + "type": "string" + }, + "isDisabled": { + "type": "boolean" + }, + "numChunks": { + "format": "int32", + "type": "integer" + }, + "scopes": { + "items": { + "type": "string" + }, + "type": "array" + }, + "title": { + "type": "string" + }, + "updatedAt": { + "type": "string" + }, + "updatedBy": { + "type": "string" + }, + "workspaceId": { + "type": "string" + } + }, + "required": [ + "createdAt", + "createdBy", + "filename", + "numChunks", + "scopes", + "updatedAt", + "updatedBy" + ], + "type": "object" + }, + "KnowledgeSearchResultDto": { + "properties": { + "chunkIndex": { + "format": "int32", + "type": "integer" + }, + "content": { + "type": "string" + }, + "filename": { + "type": "string" + }, + "pageNumbers": { + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + }, + "scopes": { + "items": { + "type": "string" + }, + "type": "array" + }, + "score": { + "format": "float", + "type": "number" + }, + "title": { + "type": "string" + }, + "totalChunks": { + "format": "int32", + "type": "integer" + }, + "workspaceId": { + "type": "string" + } + }, + "required": [ + "chunkIndex", + "content", + "filename", + "pageNumbers", + "scopes", + "score", + "totalChunks" + ], + "type": "object" + }, "LabelIdentifier": { "description": "A label identifier.", "properties": { @@ -29723,6 +30762,48 @@ ], "type": "object" }, + "ListDatabaseInstancesResponse": { + "description": "Paged response for listing AI Lake database instances", + "properties": { + "databases": { + "description": "List of database instances", + "items": { + "$ref": "#/components/schemas/DatabaseInstance" + }, + "type": "array" + }, + "totalCount": { + "description": "Total count of items (only set when metaInclude=page)", + "format": "int32", + "type": "integer" + } + }, + "required": [ + "databases" + ], + "type": "object" + }, + "ListKnowledgeDocumentsResponseDto": { + "properties": { + "documents": { + "items": { + "$ref": "#/components/schemas/KnowledgeDocumentMetadataDto" + }, + "type": "array" + }, + "nextPageToken": { + "type": "string" + }, + "totalCount": { + "format": "int32", + "type": "integer" + } + }, + "required": [ + "documents" + ], + "type": "object" + }, "ListLinks": { "allOf": [ { @@ -29740,6 +30821,80 @@ } ] }, + "ListServicesResponse": { + "description": "Paged response for listing AI Lake services", + "properties": { + "services": { + "description": "List of services", + "items": { + "$ref": "#/components/schemas/ServiceInfo" + }, + "type": "array" + }, + "totalCount": { + "description": "Total count of items (only set when metaInclude=page)", + "format": "int32", + "type": "integer" + } + }, + "required": [ + "services" + ], + "type": "object" + }, + "LlmModel": { + "description": "LLM Model configuration (id, family) within a provider.", + "properties": { + "family": { + "description": "Family of LLM models.", + "enum": [ + "OPENAI", + "ANTHROPIC", + "META", + "MISTRAL", + "AMAZON", + "GOOGLE", + "COHERE" + ], + "type": "string" + }, + "id": { + "description": "Unique identifier of the model (e.g., gpt-5.3, claude-4.6).", + "maxLength": 255, + "type": "string" + } + }, + "required": [ + "family", + "id" + ], + "type": "object" + }, + "LlmProviderAuth": { + "properties": { + "type": { + "type": "string" + } + }, + "required": [ + "type" + ], + "type": "object" + }, + "LlmProviderConfig": { + "description": "Provider configuration to test.", + "oneOf": [ + { + "$ref": "#/components/schemas/AwsBedrockProviderConfig" + }, + { + "$ref": "#/components/schemas/AzureFoundryProviderConfig" + }, + { + "$ref": "#/components/schemas/OpenAIProviderConfig" + } + ] + }, "LocalIdentifier": { "properties": { "format": { @@ -29821,9 +30976,9 @@ } }, "required": [ + "label", "literal", - "matchType", - "label" + "matchType" ], "type": "object" } @@ -30060,6 +31215,22 @@ ], "type": "object" }, + "MetricDefinitionOverride": { + "description": "(EXPERIMENTAL) Override for a catalog metric definition.", + "properties": { + "definition": { + "$ref": "#/components/schemas/InlineMeasureDefinition" + }, + "item": { + "$ref": "#/components/schemas/AfmObjectIdentifierCore" + } + }, + "required": [ + "definition", + "item" + ], + "type": "object" + }, "MetricRecord": { "properties": { "formattedValue": { @@ -30146,6 +31317,29 @@ ], "type": "object" }, + "ModelTestResult": { + "description": "Per-model test results.", + "properties": { + "message": { + "description": "Message about the model test result.", + "type": "string" + }, + "modelId": { + "description": "The model ID that was tested.", + "type": "string" + }, + "successful": { + "description": "Whether the model test was successful.", + "type": "boolean" + } + }, + "required": [ + "message", + "modelId", + "successful" + ], + "type": "object" + }, "NegativeAttributeFilter": { "description": "Filter able to limit element values by label and related selected negated elements.", "properties": { @@ -30165,8 +31359,8 @@ } }, "required": [ - "notIn", - "label" + "label", + "notIn" ], "type": "object" } @@ -30377,6 +31571,75 @@ }, "type": "object" }, + "OpenAIProviderConfig": { + "description": "Configuration for OpenAI provider.", + "properties": { + "auth": { + "$ref": "#/components/schemas/OpenAiProviderAuth" + }, + "baseUrl": { + "default": "https://api.openai.com", + "description": "Custom base URL for OpenAI API.", + "maxLength": 255, + "nullable": true, + "type": "string" + }, + "organization": { + "description": "OpenAI organization ID.", + "maxLength": 255, + "nullable": true, + "type": "string" + }, + "type": { + "description": "Provider type.", + "enum": [ + "OPENAI" + ], + "type": "string" + } + }, + "required": [ + "auth", + "type" + ], + "type": "object" + }, + "OpenAiApiKeyAuth": { + "allOf": [ + { + "properties": { + "apiKey": { + "description": "OpenAI API key.", + "maxLength": 255, + "nullable": true, + "type": "string", + "writeOnly": true + }, + "type": { + "description": "Authentication type.", + "enum": [ + "API_KEY" + ], + "type": "string" + } + }, + "type": "object" + } + ], + "required": [ + "type" + ], + "type": "object" + }, + "OpenAiProviderAuth": { + "description": "Authentication configuration.", + "oneOf": [ + { + "$ref": "#/components/schemas/OpenAiApiKeyAuth" + } + ], + "type": "object" + }, "Operation": { "description": "Represents a Long-Running Operation: a process that takes some time to complete.", "discriminator": { @@ -30393,10 +31656,11 @@ "type": "string" }, "kind": { - "description": "Type of the long-running operation. \n* `provision-database` — Provisioning of an AI Lake database. \n* `deprovision-database` — Deprovisioning (deletion) of an AI Lake database.\n", + "description": "Type of the long-running operation.\n* `provision-database` — Provisioning of an AI Lake database.\n* `deprovision-database` — Deprovisioning (deletion) of an AI Lake database.\n* `run-service-command` — Running a command in a particular AI Lake service.\n", "enum": [ "provision-database", - "deprovision-database" + "deprovision-database", + "run-service-command" ], "type": "string" }, @@ -30690,6 +31954,23 @@ ], "type": "object" }, + "PatchKnowledgeDocumentRequestDto": { + "properties": { + "isDisabled": { + "type": "boolean" + }, + "scopes": { + "items": { + "type": "string" + }, + "type": "array" + }, + "title": { + "type": "string" + } + }, + "type": "object" + }, "PdfTableStyle": { "deprecated": true, "description": "Custom CSS styles for the table. (PDF, HTML)", @@ -31168,6 +32449,7 @@ "SYNCING", "COMPLETED", "FAILED", + "CANCELLED", "NOT_FOUND", "DISABLED" ], @@ -31286,9 +32568,9 @@ }, "required": [ "from", + "measure", "operator", - "to", - "measure" + "to" ], "type": "object" } @@ -31732,10 +33014,10 @@ } }, "required": [ + "dataset", "from", "granularity", - "to", - "dataset" + "to" ], "type": "object" } @@ -31824,6 +33106,7 @@ "ACTIVE_THEME", "ACTIVE_COLOR_PALETTE", "ACTIVE_LLM_ENDPOINT", + "ACTIVE_LLM_PROVIDER", "ACTIVE_CALENDARS", "WHITE_LABELING", "LOCALE", @@ -31866,7 +33149,8 @@ "ENABLE_NULL_JOINS", "EXPORT_CSV_CUSTOM_DELIMITER", "ENABLE_QUERY_TAGS", - "RESTRICT_BASE_UI" + "RESTRICT_BASE_UI", + "CERTIFY_PARENT_OBJECTS" ], "example": "TIMEZONE", "type": "string" @@ -32016,6 +33300,8 @@ "type": "string" }, "kid": { + "maxLength": 255, + "pattern": "^[^.]", "type": "string" }, "kty": { @@ -32074,6 +33360,25 @@ ], "type": "object" }, + "RunServiceCommandRequest": { + "description": "Request to run an AI Lake Service Command", + "properties": { + "context": { + "additionalProperties": { + "description": "The context to pass to the command", + "nullable": true, + "type": "string" + }, + "description": "The context to pass to the command", + "nullable": true, + "type": "object" + }, + "payload": { + "$ref": "#/components/schemas/JsonNode" + } + }, + "type": "object" + }, "RunningSection": { "description": "Footer section of the slide", "nullable": true, @@ -32216,6 +33521,24 @@ ], "type": "object" }, + "SearchKnowledgeResponseDto": { + "properties": { + "results": { + "items": { + "$ref": "#/components/schemas/KnowledgeSearchResultDto" + }, + "type": "array" + }, + "statistics": { + "$ref": "#/components/schemas/SearchStatisticsDto" + } + }, + "required": [ + "results", + "statistics" + ], + "type": "object" + }, "SearchRelationshipObject": { "properties": { "sourceObjectId": { @@ -32453,6 +33776,23 @@ ], "type": "object" }, + "SearchStatisticsDto": { + "properties": { + "averageSimilarityScore": { + "format": "float", + "type": "number" + }, + "totalResults": { + "format": "int32", + "type": "integer" + } + }, + "required": [ + "averageSimilarityScore", + "totalResults" + ], + "type": "object" + }, "SectionSlideTemplate": { "description": "Settings for section slide.", "nullable": true, @@ -32474,6 +33814,61 @@ "ServerSentEventChatResult": { "type": "object" }, + "ServiceInfo": { + "description": "Non-sensitive metadata for an AI Lake pipeline", + "properties": { + "name": { + "description": "Human-readable name of the service", + "type": "string" + }, + "serviceId": { + "description": "Internal identifier for the service configuration (UUID)", + "type": "string" + } + }, + "required": [ + "name", + "serviceId" + ], + "type": "object" + }, + "SetCertificationRequest": { + "description": "Request to set or clear the certification of a workspace entity.", + "properties": { + "id": { + "description": "ID of the entity.", + "example": "total-sales", + "type": "string" + }, + "message": { + "description": "Optional message associated with the certification.", + "nullable": true, + "type": "string" + }, + "status": { + "description": "Certification status of the entity.", + "enum": [ + "CERTIFIED" + ], + "nullable": true, + "type": "string" + }, + "type": { + "description": "Type of the entity.", + "enum": [ + "metric", + "visualizationObject", + "analyticalDashboard" + ], + "type": "string" + } + }, + "required": [ + "id", + "type" + ], + "type": "object" + }, "Settings": { "description": "Additional settings.", "properties": { @@ -33268,6 +34663,59 @@ ], "type": "object" }, + "TestLlmProviderDefinitionRequest": { + "properties": { + "models": { + "description": "Models to test.", + "items": { + "$ref": "#/components/schemas/LlmModel" + }, + "type": "array" + }, + "providerConfig": { + "oneOf": [ + { + "$ref": "#/components/schemas/AwsBedrockProviderConfig" + }, + { + "$ref": "#/components/schemas/AzureFoundryProviderConfig" + }, + { + "$ref": "#/components/schemas/OpenAIProviderConfig" + } + ] + } + }, + "required": [ + "providerConfig" + ], + "type": "object" + }, + "TestLlmProviderResponse": { + "properties": { + "modelResults": { + "description": "Per-model test results.", + "items": { + "$ref": "#/components/schemas/ModelTestResult" + }, + "type": "array" + }, + "providerMessage": { + "description": "Message about the provider connectivity test.", + "type": "string" + }, + "providerReachable": { + "description": "Whether the LLM provider is reachable.", + "type": "boolean" + } + }, + "required": [ + "modelResults", + "providerMessage", + "providerReachable" + ], + "type": "object" + }, "TestNotification": { "allOf": [ { @@ -33508,6 +34956,7 @@ "RUNNING", "COMPLETED", "FAILED", + "CANCELLED", "DISABLED" ], "type": "string" @@ -33522,6 +34971,61 @@ "Unit": { "type": "object" }, + "UpsertKnowledgeDocumentRequestDto": { + "properties": { + "content": { + "type": "string" + }, + "filename": { + "type": "string" + }, + "pageBoundaries": { + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + }, + "scopes": { + "items": { + "type": "string" + }, + "type": "array" + }, + "title": { + "type": "string" + } + }, + "required": [ + "content", + "filename" + ], + "type": "object" + }, + "UpsertKnowledgeDocumentResponseDto": { + "properties": { + "filename": { + "type": "string" + }, + "message": { + "type": "string" + }, + "numChunks": { + "format": "int32", + "type": "integer" + }, + "success": { + "type": "boolean" + } + }, + "required": [ + "filename", + "message", + "numChunks", + "success" + ], + "type": "object" + }, "UserAssignee": { "description": "List of users", "properties": { @@ -33836,6 +35340,8 @@ "EXPORT_PDF", "CREATE_AUTOMATION", "USE_AI_ASSISTANT", + "WRITE_KNOWLEDGE_DOCUMENTS", + "READ_KNOWLEDGE_DOCUMENTS", "CREATE_FILTER_VIEW", "VIEW" ], @@ -33860,6 +35366,8 @@ "EXPORT_PDF", "CREATE_AUTOMATION", "USE_AI_ASSISTANT", + "WRITE_KNOWLEDGE_DOCUMENTS", + "READ_KNOWLEDGE_DOCUMENTS", "CREATE_FILTER_VIEW", "VIEW" ], @@ -34048,6 +35556,24 @@ ], "type": "object" }, + "VisualizationConfig": { + "description": "Visualization config for smart-function rendering.", + "properties": { + "anomalyDetection": { + "$ref": "#/components/schemas/AnomalyDetectionConfig" + }, + "clustering": { + "$ref": "#/components/schemas/ClusteringConfig" + }, + "forecast": { + "$ref": "#/components/schemas/ForecastConfig" + }, + "whatIf": { + "$ref": "#/components/schemas/WhatIfScenarioConfig" + } + }, + "type": "object" + }, "Webhook": { "allOf": [ { @@ -34291,6 +35817,71 @@ ], "type": "object" }, + "WhatIfMeasureAdjustmentConfig": { + "description": "Measure adjustments for this scenario", + "properties": { + "metricId": { + "description": "ID of the metric or fact to adjust", + "type": "string" + }, + "metricType": { + "description": "Type: metric or fact", + "type": "string" + }, + "scenarioMaql": { + "description": "Alternative MAQL expression for this scenario", + "type": "string" + } + }, + "required": [ + "metricId", + "metricType", + "scenarioMaql" + ], + "type": "object" + }, + "WhatIfScenarioConfig": { + "description": "What-if scenario configuration.", + "properties": { + "includeBaseline": { + "description": "Whether baseline (unmodified) values are included", + "type": "boolean" + }, + "scenarios": { + "description": "Scenarios with alternative measure calculations", + "items": { + "$ref": "#/components/schemas/WhatIfScenarioItem" + }, + "type": "array" + } + }, + "required": [ + "includeBaseline", + "scenarios" + ], + "type": "object" + }, + "WhatIfScenarioItem": { + "description": "Scenarios with alternative measure calculations", + "properties": { + "adjustments": { + "description": "Measure adjustments for this scenario", + "items": { + "$ref": "#/components/schemas/WhatIfMeasureAdjustmentConfig" + }, + "type": "array" + }, + "label": { + "description": "Human-readable scenario label", + "type": "string" + } + }, + "required": [ + "adjustments", + "label" + ], + "type": "object" + }, "WidgetSlidesTemplate": { "description": "Template for widget slides export.\nAvailable variables: {{currentPageNumber}}, {{dashboardDateFilters}}, {{dashboardDescription}}, {{dashboardFilters}}, {{dashboardId}}, {{dashboardName}}, {{dashboardTags}}, {{dashboardUrl}}, {{exportedAt}}, {{exportedBy}}, {{logo}}, {{totalPages}}, {{workspaceId}}, {{workspaceName}}", "nullable": true, @@ -34409,6 +36000,8 @@ "EXPORT_PDF", "CREATE_AUTOMATION", "USE_AI_ASSISTANT", + "WRITE_KNOWLEDGE_DOCUMENTS", + "READ_KNOWLEDGE_DOCUMENTS", "CREATE_FILTER_VIEW", "VIEW" ], @@ -34426,6 +36019,8 @@ "EXPORT_PDF", "CREATE_AUTOMATION", "USE_AI_ASSISTANT", + "WRITE_KNOWLEDGE_DOCUMENTS", + "READ_KNOWLEDGE_DOCUMENTS", "CREATE_FILTER_VIEW", "VIEW" ], @@ -34811,6 +36406,72 @@ ] } }, + "/api/v1/actions/ai/llmProvider/test": { + "post": { + "description": "Tests LLM provider connectivity with a full definition.", + "operationId": "testLlmProvider", + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TestLlmProviderDefinitionRequest" + } + } + }, + "required": true + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TestLlmProviderResponse" + } + } + }, + "description": "OK" + } + }, + "summary": "Test LLM Provider", + "tags": [ + "Smart Functions", + "actions" + ] + } + }, + "/api/v1/actions/ai/llmProvider/{llmProviderId}/test": { + "post": { + "description": "Tests an existing LLM provider connectivity by its ID.", + "operationId": "testLlmProviderById", + "parameters": [ + { + "in": "path", + "name": "llmProviderId", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TestLlmProviderResponse" + } + } + }, + "description": "OK" + } + }, + "summary": "Test LLM Provider By Id", + "tags": [ + "Smart Functions", + "actions" + ] + } + }, "/api/v1/actions/collectUsage": { "get": { "description": "Provides information about platform usage, like amount of users, workspaces, ...\n\n_NOTE_: The `admin` user is always excluded from this amount.", @@ -36558,6 +38219,96 @@ ] } }, + "/api/v1/actions/workspaces/{workspaceId}/ai/analyticsCatalog/generateDescription": { + "post": { + "description": "Generates a description for the specified analytics object. Returns description and a note with details if generation was not performed.", + "operationId": "generateDescription", + "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/GenerateDescriptionRequest" + } + } + }, + "required": true + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GenerateDescriptionResponse" + } + } + }, + "description": "OK" + } + }, + "summary": "Generate Description for Analytics Object", + "tags": [ + "Smart Functions", + "actions" + ] + } + }, + "/api/v1/actions/workspaces/{workspaceId}/ai/analyticsCatalog/generateTitle": { + "post": { + "description": "Generates a title for the specified analytics object. Returns title and a note with details if generation was not performed.", + "operationId": "generateTitle", + "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/GenerateTitleRequest" + } + } + }, + "required": true + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GenerateTitleResponse" + } + } + }, + "description": "OK" + } + }, + "summary": "Generate Title for Analytics Object", + "tags": [ + "Smart Functions", + "actions" + ] + } + }, "/api/v1/actions/workspaces/{workspaceId}/ai/analyticsCatalog/tags": { "get": { "description": "Returns a list of tags for this workspace", @@ -36879,6 +38630,352 @@ ] } }, + "/api/v1/actions/workspaces/{workspaceId}/ai/knowledge/documents": { + "get": { + "operationId": "listDocuments", + "parameters": [ + { + "description": "Workspace identifier", + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": "string" + } + }, + { + "in": "query", + "name": "scopes", + "required": false, + "schema": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + { + "in": "query", + "name": "size", + "required": false, + "schema": { + "default": 50, + "format": "int32", + "type": "integer" + } + }, + { + "in": "query", + "name": "pageToken", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "query", + "name": "metaInclude", + "required": false, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ListKnowledgeDocumentsResponseDto" + } + } + }, + "description": "OK" + } + }, + "tags": [ + "actions" + ] + }, + "post": { + "operationId": "createDocument", + "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/CreateKnowledgeDocumentRequestDto" + } + } + }, + "required": true + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateKnowledgeDocumentResponseDto" + } + } + }, + "description": "OK" + } + }, + "tags": [ + "actions" + ] + }, + "put": { + "operationId": "upsertDocument", + "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/UpsertKnowledgeDocumentRequestDto" + } + } + }, + "required": true + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpsertKnowledgeDocumentResponseDto" + } + } + }, + "description": "OK" + } + }, + "tags": [ + "actions" + ] + } + }, + "/api/v1/actions/workspaces/{workspaceId}/ai/knowledge/documents/{filename}": { + "delete": { + "operationId": "deleteDocument", + "parameters": [ + { + "description": "Workspace identifier", + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": "string" + } + }, + { + "in": "path", + "name": "filename", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DeleteKnowledgeDocumentResponseDto" + } + } + }, + "description": "OK" + } + }, + "tags": [ + "actions" + ] + }, + "get": { + "operationId": "getDocument", + "parameters": [ + { + "description": "Workspace identifier", + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": "string" + } + }, + { + "in": "path", + "name": "filename", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/KnowledgeDocumentMetadataDto" + } + } + }, + "description": "OK" + } + }, + "tags": [ + "actions" + ] + }, + "patch": { + "operationId": "patchDocument", + "parameters": [ + { + "description": "Workspace identifier", + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": "string" + } + }, + { + "in": "path", + "name": "filename", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PatchKnowledgeDocumentRequestDto" + } + } + }, + "required": true + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/KnowledgeDocumentMetadataDto" + } + } + }, + "description": "OK" + } + }, + "tags": [ + "actions" + ] + } + }, + "/api/v1/actions/workspaces/{workspaceId}/ai/knowledge/search": { + "get": { + "operationId": "searchKnowledge", + "parameters": [ + { + "description": "Workspace identifier", + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "pattern": "^(?!\\.)[.A-Za-z0-9_-]{1,255}$", + "type": "string" + } + }, + { + "in": "query", + "name": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "query", + "name": "limit", + "required": false, + "schema": { + "default": 10, + "format": "int32", + "type": "integer" + } + }, + { + "in": "query", + "name": "minScore", + "required": false, + "schema": { + "default": 0.0, + "format": "double", + "type": "number" + } + }, + { + "in": "query", + "name": "scopes", + "required": false, + "schema": { + "items": { + "type": "string" + }, + "type": "array" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SearchKnowledgeResponseDto" + } + } + }, + "description": "OK" + } + }, + "tags": [ + "actions" + ] + } + }, "/api/v1/actions/workspaces/{workspaceId}/ai/memory/createdBy": { "get": { "description": "Returns a list of Users who created any memory item for this workspace", @@ -40106,6 +42203,48 @@ } } }, + "/api/v1/actions/workspaces/{workspaceId}/setCertification": { + "post": { + "description": "Set or clear the certification (e.g. CERTIFIED) of a workspace entity. Requires MANAGE permission.", + "operationId": "setCertification", + "parameters": [ + { + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SetCertificationRequest" + } + } + }, + "required": true + }, + "responses": { + "204": { + "description": "No Content" + } + }, + "summary": "Set Certification", + "tags": [ + "actions", + "Certification" + ], + "x-gdc-security-info": { + "description": "Minimal permission required to use this endpoint.", + "permissions": [ + "MANAGE" + ] + } + } + }, "/api/v1/actions/workspaces/{workspaceId}/translations": { "get": { "description": "Provides a list of effective translation tags.", @@ -40417,7 +42556,67 @@ ] } }, - "/api/v1/ailake/database/instance": { + "/api/v1/ailake/database/instances": { + "get": { + "description": "(BETA) Lists database instances in the organization's AI Lake. Supports paging via size and offset query parameters. Use metaInclude=page to get total count.", + "operationId": "listAiLakeDatabaseInstances", + "parameters": [ + { + "in": "query", + "name": "size", + "required": false, + "schema": { + "default": 50, + "format": "int32", + "type": "integer" + } + }, + { + "in": "query", + "name": "offset", + "required": false, + "schema": { + "default": 0, + "format": "int32", + "type": "integer" + } + }, + { + "in": "query", + "name": "metaInclude", + "required": false, + "schema": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": true + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ListDatabaseInstancesResponse" + } + } + }, + "description": "AI Lake database instances successfully retrieved" + } + }, + "summary": "(BETA) List AI Lake Database instances", + "tags": [ + "AI Lake" + ], + "x-gdc-security-info": { + "description": "Permissions required to list AI Lake database instances.", + "permissions": [ + "MANAGE" + ] + } + }, "post": { "description": "(BETA) Creates a new database in the organization's AI Lake. Returns an operation-id in the operation-id header the client can use to poll for the progress.", "operationId": "provisionAiLakeDatabaseInstance", @@ -40463,7 +42662,7 @@ }, "operation-location": { "description": "Operation location URL that can be used for polling.", - "example": "/api/v1/ailake/operation/e9fd5d74-8a1b-46bd-ac60-bd91e9206897", + "example": "/api/v1/ailake/operations/e9fd5d74-8a1b-46bd-ac60-bd91e9206897", "required": true, "schema": { "type": "string" @@ -40485,7 +42684,7 @@ } } }, - "/api/v1/ailake/database/instance/{instanceId}": { + "/api/v1/ailake/database/instances/{instanceId}": { "delete": { "description": "(BETA) Deletes an existing database in the organization's AI Lake. Returns an operation-id in the operation-id header the client can use to poll for the progress.", "operationId": "deprovisionAiLakeDatabaseInstance", @@ -40529,7 +42728,239 @@ }, "operation-location": { "description": "Operation location URL that can be used for polling.", - "example": "/api/v1/ailake/operation/e9fd5d74-8a1b-46bd-ac60-bd91e9206897", + "example": "/api/v1/ailake/operations/e9fd5d74-8a1b-46bd-ac60-bd91e9206897", + "required": true, + "schema": { + "type": "string" + }, + "style": "simple" + } + } + } + }, + "summary": "(BETA) Delete an existing AILake Database instance", + "tags": [ + "AI Lake" + ], + "x-gdc-security-info": { + "description": "Permissions required to provision an AI Lake database instance.", + "permissions": [ + "MANAGE" + ] + } + }, + "get": { + "description": "(BETA) Retrieve details of the specified AI Lake database instance in the organization's AI Lake.", + "operationId": "getAiLakeDatabaseInstance", + "parameters": [ + { + "in": "path", + "name": "instanceId", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DatabaseInstance" + } + } + }, + "description": "AI Lake database instance successfully retrieved" + } + }, + "summary": "(BETA) Get the specified AILake Database instance", + "tags": [ + "AI Lake" + ], + "x-gdc-security-info": { + "description": "Permissions required to get an AI Lake database instance.", + "permissions": [ + "MANAGE" + ] + } + } + }, + "/api/v1/ailake/operations/{operationId}": { + "get": { + "description": "(BETA) Retrieves details of a Long Running Operation specified by the operation-id.", + "operationId": "getAiLakeOperation", + "parameters": [ + { + "description": "Operation ID", + "example": "e9fd5d74-8a1b-46bd-ac60-bd91e9206897", + "in": "path", + "name": "operationId", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "oneOf": [ + { + "$ref": "#/components/schemas/FailedOperation" + }, + { + "$ref": "#/components/schemas/PendingOperation" + }, + { + "$ref": "#/components/schemas/SucceededOperation" + } + ] + } + } + }, + "description": "AI Lake Long Running Operation details successfully retrieved" + } + }, + "summary": "(BETA) Get Long Running Operation details", + "tags": [ + "AI Lake" + ], + "x-gdc-security-info": { + "description": "Permissions required to get details of a Long Running Operation.", + "permissions": [ + "MANAGE" + ] + } + } + }, + "/api/v1/ailake/services": { + "get": { + "description": "(BETA) Lists services configured for the organization's AI Lake. Returns only non-sensitive fields (id, name). Supports paging via size and offset query parameters. Use metaInclude=page to get total count.", + "operationId": "listAiLakeServices", + "parameters": [ + { + "in": "query", + "name": "size", + "required": false, + "schema": { + "default": 50, + "format": "int32", + "type": "integer" + } + }, + { + "in": "query", + "name": "offset", + "required": false, + "schema": { + "default": 0, + "format": "int32", + "type": "integer" + } + }, + { + "in": "query", + "name": "metaInclude", + "required": false, + "schema": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": true + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ListServicesResponse" + } + } + }, + "description": "AI Lake services successfully retrieved" + } + }, + "summary": "(BETA) List AI Lake services", + "tags": [ + "AI Lake" + ], + "x-gdc-security-info": { + "description": "Permissions required to list AI Lake services.", + "permissions": [ + "MANAGE" + ] + } + } + }, + "/api/v1/ailake/services/{serviceId}/commands/{commandName}/run": { + "post": { + "description": "(BETA) Runs a specific AI Lake service command.", + "operationId": "runAiLakeServiceCommand", + "parameters": [ + { + "in": "path", + "name": "serviceId", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "commandName", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "header", + "name": "operation-id", + "required": false, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RunServiceCommandRequest" + } + } + }, + "required": true + }, + "responses": { + "202": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Unit" + } + } + }, + "description": "Accepted", + "headers": { + "operation-id": { + "description": "Operation ID to use for polling.", + "example": "e9fd5d74-8a1b-46bd-ac60-bd91e9206897", + "required": true, + "schema": { + "type": "string" + }, + "style": "simple" + }, + "operation-location": { + "description": "Operation location URL that can be used for polling.", + "example": "/api/v1/ailake/operations/e9fd5d74-8a1b-46bd-ac60-bd91e9206897", "required": true, "schema": { "type": "string" @@ -40539,98 +42970,12 @@ } } }, - "summary": "(BETA) Delete an existing AILake Database instance", + "summary": "(BETA) Run an AI Lake services command", "tags": [ "AI Lake" ], "x-gdc-security-info": { - "description": "Permissions required to provision an AI Lake database instance.", - "permissions": [ - "MANAGE" - ] - } - }, - "get": { - "description": "(BETA) Retrieve details of the specified AI Lake database instance in the organization's AI Lake.", - "operationId": "getAiLakeDatabaseInstance", - "parameters": [ - { - "in": "path", - "name": "instanceId", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/DatabaseInstance" - } - } - }, - "description": "AI Lake database instance successfully retrieved" - } - }, - "summary": "(BETA) Get the specified AILake Database instance", - "tags": [ - "AI Lake" - ], - "x-gdc-security-info": { - "description": "Permissions required to get an AI Lake database instance.", - "permissions": [ - "MANAGE" - ] - } - } - }, - "/api/v1/ailake/operation/{operationId}": { - "get": { - "description": "(BETA) Retrieves details of a Long Running Operation specified by the operation-id.", - "operationId": "getAiLakeOperation", - "parameters": [ - { - "description": "Operation ID", - "example": "e9fd5d74-8a1b-46bd-ac60-bd91e9206897", - "in": "path", - "name": "operationId", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "content": { - "application/json": { - "schema": { - "oneOf": [ - { - "$ref": "#/components/schemas/FailedOperation" - }, - { - "$ref": "#/components/schemas/PendingOperation" - }, - { - "$ref": "#/components/schemas/SucceededOperation" - } - ] - } - } - }, - "description": "AI Lake Long Running Operation details successfully retrieved" - } - }, - "summary": "(BETA) Get Long Running Operation details", - "tags": [ - "AI Lake" - ], - "x-gdc-security-info": { - "description": "Permissions required to get details of a Long Running Operation.", + "description": "Permissions required to run AI Lake service commands.", "permissions": [ "MANAGE" ] @@ -43524,7 +45869,7 @@ "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": "title==someString;provider==LLMProviderValue", + "example": "title==someString;provider==LlmEndpointProviderValue", "in": "query", "name": "filter", "schema": { @@ -43638,7 +45983,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": "title==someString;provider==LLMProviderValue", + "example": "title==someString;provider==LlmEndpointProviderValue", "in": "query", "name": "filter", "schema": { @@ -43665,7 +46010,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": "title==someString;provider==LLMProviderValue", + "example": "title==someString;provider==LlmEndpointProviderValue", "in": "query", "name": "filter", "schema": { @@ -43705,7 +46050,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": "title==someString;provider==LLMProviderValue", + "example": "title==someString;provider==LlmEndpointProviderValue", "in": "query", "name": "filter", "schema": { @@ -43760,7 +46105,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": "title==someString;provider==LLMProviderValue", + "example": "title==someString;provider==LlmEndpointProviderValue", "in": "query", "name": "filter", "schema": { @@ -43808,6 +46153,298 @@ ] } }, + "/api/v1/entities/llmProviders": { + "get": { + "operationId": "getAllEntities@LlmProviders", + "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": "name==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/json": { + "schema": { + "$ref": "#/components/schemas/JsonApiLlmProviderOutList" + } + }, + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiLlmProviderOutList" + } + } + }, + "description": "Request successfully processed" + } + }, + "summary": "Get all LLM Provider entities", + "tags": [ + "LLM Providers", + "entities", + "organization-model-controller" + ] + }, + "post": { + "description": "LLM Provider - connection configuration for LLM services", + "operationId": "createEntity@LlmProviders", + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/JsonApiLlmProviderInDocument" + } + }, + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiLlmProviderInDocument" + } + } + }, + "required": true + }, + "responses": { + "201": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/JsonApiLlmProviderOutDocument" + } + }, + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiLlmProviderOutDocument" + } + } + }, + "description": "Request successfully processed" + } + }, + "summary": "Post LLM Provider entities", + "tags": [ + "LLM Providers", + "entities", + "organization-model-controller" + ] + } + }, + "/api/v1/entities/llmProviders/{id}": { + "delete": { + "operationId": "deleteEntity@LlmProviders", + "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": "name==someString;description==someString", + "in": "query", + "name": "filter", + "schema": { + "type": "string" + } + } + ], + "responses": { + "204": { + "$ref": "#/components/responses/Deleted" + } + }, + "summary": "Delete LLM Provider entity", + "tags": [ + "LLM Providers", + "entities", + "organization-model-controller" + ] + }, + "get": { + "operationId": "getEntity@LlmProviders", + "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": "name==someString;description==someString", + "in": "query", + "name": "filter", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/JsonApiLlmProviderOutDocument" + } + }, + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiLlmProviderOutDocument" + } + } + }, + "description": "Request successfully processed" + } + }, + "summary": "Get LLM Provider entity", + "tags": [ + "LLM Providers", + "entities", + "organization-model-controller" + ] + }, + "patch": { + "operationId": "patchEntity@LlmProviders", + "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": "name==someString;description==someString", + "in": "query", + "name": "filter", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/JsonApiLlmProviderPatchDocument" + } + }, + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiLlmProviderPatchDocument" + } + } + }, + "required": true + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/JsonApiLlmProviderOutDocument" + } + }, + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiLlmProviderOutDocument" + } + } + }, + "description": "Request successfully processed" + } + }, + "summary": "Patch LLM Provider entity", + "tags": [ + "LLM Providers", + "entities", + "organization-model-controller" + ] + }, + "put": { + "operationId": "updateEntity@LlmProviders", + "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": "name==someString;description==someString", + "in": "query", + "name": "filter", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/JsonApiLlmProviderInDocument" + } + }, + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiLlmProviderInDocument" + } + } + }, + "required": true + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/JsonApiLlmProviderOutDocument" + } + }, + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiLlmProviderOutDocument" + } + } + }, + "description": "Request successfully processed" + } + }, + "summary": "PUT LLM Provider entity", + "tags": [ + "LLM Providers", + "entities", + "organization-model-controller" + ] + } + }, "/api/v1/entities/notificationChannelIdentifiers": { "get": { "operationId": "getAllEntities@NotificationChannelIdentifiers", @@ -47310,7 +49947,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": "createdBy,modifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", + "example": "createdBy,modifiedBy,certifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", "explode": false, "in": "query", "name": "include", @@ -47328,6 +49965,7 @@ "dashboardPlugins", "createdBy", "modifiedBy", + "certifiedBy", "ALL" ], "type": "string" @@ -47423,7 +50061,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": "createdBy,modifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", + "example": "createdBy,modifiedBy,certifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", "explode": false, "in": "query", "name": "include", @@ -47441,6 +50079,7 @@ "dashboardPlugins", "createdBy", "modifiedBy", + "certifiedBy", "ALL" ], "type": "string" @@ -47677,7 +50316,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": "createdBy,modifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", + "example": "createdBy,modifiedBy,certifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", "explode": false, "in": "query", "name": "include", @@ -47695,6 +50334,7 @@ "dashboardPlugins", "createdBy", "modifiedBy", + "certifiedBy", "ALL" ], "type": "string" @@ -47797,7 +50437,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": "createdBy,modifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", + "example": "createdBy,modifiedBy,certifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", "explode": false, "in": "query", "name": "include", @@ -47815,6 +50455,7 @@ "dashboardPlugins", "createdBy", "modifiedBy", + "certifiedBy", "ALL" ], "type": "string" @@ -47899,7 +50540,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": "createdBy,modifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", + "example": "createdBy,modifiedBy,certifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", "explode": false, "in": "query", "name": "include", @@ -47917,6 +50558,7 @@ "dashboardPlugins", "createdBy", "modifiedBy", + "certifiedBy", "ALL" ], "type": "string" @@ -55457,7 +58099,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": "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "example": "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", "explode": false, "in": "query", "name": "include", @@ -55473,6 +58115,7 @@ "datasets", "createdBy", "modifiedBy", + "certifiedBy", "ALL" ], "type": "string" @@ -55566,7 +58209,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": "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "example": "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", "explode": false, "in": "query", "name": "include", @@ -55582,6 +58225,7 @@ "datasets", "createdBy", "modifiedBy", + "certifiedBy", "ALL" ], "type": "string" @@ -55816,7 +58460,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": "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "example": "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", "explode": false, "in": "query", "name": "include", @@ -55832,6 +58476,7 @@ "datasets", "createdBy", "modifiedBy", + "certifiedBy", "ALL" ], "type": "string" @@ -55932,7 +58577,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": "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "example": "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", "explode": false, "in": "query", "name": "include", @@ -55948,6 +58593,7 @@ "datasets", "createdBy", "modifiedBy", + "certifiedBy", "ALL" ], "type": "string" @@ -56032,7 +58678,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": "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "example": "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", "explode": false, "in": "query", "name": "include", @@ -56048,6 +58694,7 @@ "datasets", "createdBy", "modifiedBy", + "certifiedBy", "ALL" ], "type": "string" @@ -56788,7 +59435,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": "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "example": "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", "explode": false, "in": "query", "name": "include", @@ -56804,6 +59451,7 @@ "datasets", "createdBy", "modifiedBy", + "certifiedBy", "ALL" ], "type": "string" @@ -56897,7 +59545,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": "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "example": "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", "explode": false, "in": "query", "name": "include", @@ -56913,6 +59561,7 @@ "datasets", "createdBy", "modifiedBy", + "certifiedBy", "ALL" ], "type": "string" @@ -57147,7 +59796,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": "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "example": "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", "explode": false, "in": "query", "name": "include", @@ -57163,6 +59812,7 @@ "datasets", "createdBy", "modifiedBy", + "certifiedBy", "ALL" ], "type": "string" @@ -57263,7 +59913,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": "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "example": "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", "explode": false, "in": "query", "name": "include", @@ -57279,6 +59929,7 @@ "datasets", "createdBy", "modifiedBy", + "certifiedBy", "ALL" ], "type": "string" @@ -57363,7 +60014,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": "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "example": "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", "explode": false, "in": "query", "name": "include", @@ -57379,6 +60030,7 @@ "datasets", "createdBy", "modifiedBy", + "certifiedBy", "ALL" ], "type": "string" diff --git a/schemas/gooddata-automation-client.json b/schemas/gooddata-automation-client.json index 6c6a5a1de..cb4e6ec33 100644 --- a/schemas/gooddata-automation-client.json +++ b/schemas/gooddata-automation-client.json @@ -35,6 +35,13 @@ }, "type": "array" }, + "measureDefinitionOverrides": { + "description": "(EXPERIMENTAL) Override definitions of catalog metrics for this request. Allows substituting a catalog metric's MAQL definition without modifying the stored definition.", + "items": { + "$ref": "#/components/schemas/MetricDefinitionOverride" + }, + "type": "array" + }, "measures": { "description": "Metrics to be computed.", "items": { @@ -61,6 +68,16 @@ "dataset": { "$ref": "#/components/schemas/AfmObjectIdentifierDataset" }, + "emptyValueHandling": { + "default": "EXCLUDE", + "description": "Specifies how rows with empty (null/missing) date values should be handled. INCLUDE includes empty dates in addition to the date range restriction, EXCLUDE removes rows with empty dates (default), ONLY keeps only rows with empty dates.", + "enum": [ + "INCLUDE", + "EXCLUDE", + "ONLY" + ], + "type": "string" + }, "from": { "example": "2020-07-01 18:23", "pattern": "^\\d{4}-\\d{1,2}-\\d{1,2}( \\d{1,2}:\\d{1,2})?$", @@ -76,9 +93,9 @@ } }, "required": [ + "dataset", "from", - "to", - "dataset" + "to" ], "type": "object" } @@ -548,6 +565,69 @@ }, "type": "object" }, + "AllTimeDateFilter": { + "description": "An all-time date filter that does not restrict by date range. Controls how rows with empty (null/missing) date values are handled.", + "properties": { + "allTimeDateFilter": { + "properties": { + "applyOnResult": { + "type": "boolean" + }, + "dataset": { + "$ref": "#/components/schemas/AfmObjectIdentifierDataset" + }, + "emptyValueHandling": { + "default": "INCLUDE", + "description": "Specifies how rows with empty (null/missing) date values should be handled. INCLUDE means no filtering effect (default), EXCLUDE removes rows with null dates, ONLY keeps only rows with null dates.", + "enum": [ + "INCLUDE", + "EXCLUDE", + "ONLY" + ], + "type": "string" + }, + "granularity": { + "default": "DAY", + "description": "Date granularity used to resolve the date attribute label for null value checks. Defaults to DAY if not specified.", + "enum": [ + "MINUTE", + "HOUR", + "DAY", + "WEEK", + "MONTH", + "QUARTER", + "YEAR", + "MINUTE_OF_HOUR", + "HOUR_OF_DAY", + "DAY_OF_WEEK", + "DAY_OF_MONTH", + "DAY_OF_QUARTER", + "DAY_OF_YEAR", + "WEEK_OF_YEAR", + "MONTH_OF_YEAR", + "QUARTER_OF_YEAR", + "FISCAL_MONTH", + "FISCAL_QUARTER", + "FISCAL_YEAR" + ], + "example": "DAY", + "type": "string" + }, + "localIdentifier": { + "type": "string" + } + }, + "required": [ + "dataset" + ], + "type": "object" + } + }, + "required": [ + "allTimeDateFilter" + ], + "type": "object" + }, "AnomalyDetection": { "properties": { "dataset": { @@ -1110,9 +1190,9 @@ } }, "required": [ + "measure", "operator", - "value", - "measure" + "value" ], "type": "object" } @@ -1301,6 +1381,14 @@ "dataSet": { "$ref": "#/components/schemas/IdentifierRef" }, + "emptyValueHandling": { + "enum": [ + "INCLUDE", + "EXCLUDE", + "ONLY" + ], + "type": "string" + }, "from": { "oneOf": [ { @@ -1492,6 +1580,9 @@ }, { "$ref": "#/components/schemas/RelativeDateFilter" + }, + { + "$ref": "#/components/schemas/AllTimeDateFilter" } ], "type": "object" @@ -1696,6 +1787,9 @@ { "$ref": "#/components/schemas/RelativeDateFilter" }, + { + "$ref": "#/components/schemas/AllTimeDateFilter" + }, { "$ref": "#/components/schemas/NegativeAttributeFilter" }, @@ -1949,9 +2043,9 @@ } }, "required": [ + "label", "literal", - "matchType", - "label" + "matchType" ], "type": "object" } @@ -2044,6 +2138,22 @@ ], "type": "object" }, + "MetricDefinitionOverride": { + "description": "(EXPERIMENTAL) Override for a catalog metric definition.", + "properties": { + "definition": { + "$ref": "#/components/schemas/InlineMeasureDefinition" + }, + "item": { + "$ref": "#/components/schemas/AfmObjectIdentifierCore" + } + }, + "required": [ + "definition", + "item" + ], + "type": "object" + }, "MetricRecord": { "properties": { "formattedValue": { @@ -2078,8 +2188,8 @@ } }, "required": [ - "notIn", - "label" + "label", + "notIn" ], "type": "object" } @@ -2533,9 +2643,9 @@ }, "required": [ "from", + "measure", "operator", - "to", - "measure" + "to" ], "type": "object" } @@ -2786,6 +2896,16 @@ "dataset": { "$ref": "#/components/schemas/AfmObjectIdentifierDataset" }, + "emptyValueHandling": { + "default": "EXCLUDE", + "description": "Specifies how rows with empty (null/missing) date values should be handled. INCLUDE includes empty dates in addition to the date range restriction, EXCLUDE removes rows with empty dates (default), ONLY keeps only rows with empty dates.", + "enum": [ + "INCLUDE", + "EXCLUDE", + "ONLY" + ], + "type": "string" + }, "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, @@ -2829,10 +2949,10 @@ } }, "required": [ + "dataset", "from", "granularity", - "to", - "dataset" + "to" ], "type": "object" } diff --git a/schemas/gooddata-export-client.json b/schemas/gooddata-export-client.json index 9180ea1f8..59f86d5ed 100644 --- a/schemas/gooddata-export-client.json +++ b/schemas/gooddata-export-client.json @@ -25,6 +25,13 @@ }, "type": "array" }, + "measureDefinitionOverrides": { + "description": "(EXPERIMENTAL) Override definitions of catalog metrics for this request. Allows substituting a catalog metric's MAQL definition without modifying the stored definition.", + "items": { + "$ref": "#/components/schemas/MetricDefinitionOverride" + }, + "type": "array" + }, "measures": { "description": "Metrics to be computed.", "items": { @@ -51,6 +58,16 @@ "dataset": { "$ref": "#/components/schemas/AfmObjectIdentifierDataset" }, + "emptyValueHandling": { + "default": "EXCLUDE", + "description": "Specifies how rows with empty (null/missing) date values should be handled. INCLUDE includes empty dates in addition to the date range restriction, EXCLUDE removes rows with empty dates (default), ONLY keeps only rows with empty dates.", + "enum": [ + "INCLUDE", + "EXCLUDE", + "ONLY" + ], + "type": "string" + }, "from": { "example": "2020-07-01 18:23", "pattern": "^\\d{4}-\\d{1,2}-\\d{1,2}( \\d{1,2}:\\d{1,2})?$", @@ -66,9 +83,9 @@ } }, "required": [ + "dataset", "from", - "to", - "dataset" + "to" ], "type": "object" } @@ -277,6 +294,69 @@ ], "type": "object" }, + "AllTimeDateFilter": { + "description": "An all-time date filter that does not restrict by date range. Controls how rows with empty (null/missing) date values are handled.", + "properties": { + "allTimeDateFilter": { + "properties": { + "applyOnResult": { + "type": "boolean" + }, + "dataset": { + "$ref": "#/components/schemas/AfmObjectIdentifierDataset" + }, + "emptyValueHandling": { + "default": "INCLUDE", + "description": "Specifies how rows with empty (null/missing) date values should be handled. INCLUDE means no filtering effect (default), EXCLUDE removes rows with null dates, ONLY keeps only rows with null dates.", + "enum": [ + "INCLUDE", + "EXCLUDE", + "ONLY" + ], + "type": "string" + }, + "granularity": { + "default": "DAY", + "description": "Date granularity used to resolve the date attribute label for null value checks. Defaults to DAY if not specified.", + "enum": [ + "MINUTE", + "HOUR", + "DAY", + "WEEK", + "MONTH", + "QUARTER", + "YEAR", + "MINUTE_OF_HOUR", + "HOUR_OF_DAY", + "DAY_OF_WEEK", + "DAY_OF_MONTH", + "DAY_OF_QUARTER", + "DAY_OF_YEAR", + "WEEK_OF_YEAR", + "MONTH_OF_YEAR", + "QUARTER_OF_YEAR", + "FISCAL_MONTH", + "FISCAL_QUARTER", + "FISCAL_YEAR" + ], + "example": "DAY", + "type": "string" + }, + "localIdentifier": { + "type": "string" + } + }, + "required": [ + "dataset" + ], + "type": "object" + } + }, + "required": [ + "allTimeDateFilter" + ], + "type": "object" + }, "ArithmeticMeasureDefinition": { "description": "Metric representing arithmetics between other metrics.", "properties": { @@ -574,9 +654,9 @@ } }, "required": [ + "measure", "operator", - "value", - "measure" + "value" ], "type": "object" } @@ -754,6 +834,14 @@ "dataSet": { "$ref": "#/components/schemas/IdentifierRef" }, + "emptyValueHandling": { + "enum": [ + "INCLUDE", + "EXCLUDE", + "ONLY" + ], + "type": "string" + }, "from": { "oneOf": [ { @@ -939,6 +1027,9 @@ }, { "$ref": "#/components/schemas/RelativeDateFilter" + }, + { + "$ref": "#/components/schemas/AllTimeDateFilter" } ], "type": "object" @@ -1009,6 +1100,9 @@ { "$ref": "#/components/schemas/RelativeDateFilter" }, + { + "$ref": "#/components/schemas/AllTimeDateFilter" + }, { "$ref": "#/components/schemas/NegativeAttributeFilter" }, @@ -1218,9 +1312,9 @@ } }, "required": [ + "label", "literal", - "matchType", - "label" + "matchType" ], "type": "object" } @@ -1294,6 +1388,22 @@ ], "type": "object" }, + "MetricDefinitionOverride": { + "description": "(EXPERIMENTAL) Override for a catalog metric definition.", + "properties": { + "definition": { + "$ref": "#/components/schemas/InlineMeasureDefinition" + }, + "item": { + "$ref": "#/components/schemas/AfmObjectIdentifierCore" + } + }, + "required": [ + "definition", + "item" + ], + "type": "object" + }, "NegativeAttributeFilter": { "description": "Filter able to limit element values by label and related selected negated elements.", "properties": { @@ -1313,8 +1423,8 @@ } }, "required": [ - "notIn", - "label" + "label", + "notIn" ], "type": "object" } @@ -1603,9 +1713,9 @@ }, "required": [ "from", + "measure", "operator", - "to", - "measure" + "to" ], "type": "object" } @@ -1817,6 +1927,16 @@ "dataset": { "$ref": "#/components/schemas/AfmObjectIdentifierDataset" }, + "emptyValueHandling": { + "default": "EXCLUDE", + "description": "Specifies how rows with empty (null/missing) date values should be handled. INCLUDE includes empty dates in addition to the date range restriction, EXCLUDE removes rows with empty dates (default), ONLY keeps only rows with empty dates.", + "enum": [ + "INCLUDE", + "EXCLUDE", + "ONLY" + ], + "type": "string" + }, "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, @@ -1860,10 +1980,10 @@ } }, "required": [ + "dataset", "from", "granularity", - "to", - "dataset" + "to" ], "type": "object" } diff --git a/schemas/gooddata-metadata-client.json b/schemas/gooddata-metadata-client.json index 9597ef2a6..baaa8cc58 100644 --- a/schemas/gooddata-metadata-client.json +++ b/schemas/gooddata-metadata-client.json @@ -70,6 +70,13 @@ }, "type": "array" }, + "measureDefinitionOverrides": { + "description": "(EXPERIMENTAL) Override definitions of catalog metrics for this request. Allows substituting a catalog metric's MAQL definition without modifying the stored definition.", + "items": { + "$ref": "#/components/schemas/MetricDefinitionOverride" + }, + "type": "array" + }, "measures": { "description": "Metrics to be computed.", "items": { @@ -4459,6 +4466,16 @@ "dataset": { "$ref": "#/components/schemas/AfmObjectIdentifierDataset" }, + "emptyValueHandling": { + "default": "EXCLUDE", + "description": "Specifies how rows with empty (null/missing) date values should be handled. INCLUDE includes empty dates in addition to the date range restriction, EXCLUDE removes rows with empty dates (default), ONLY keeps only rows with empty dates.", + "enum": [ + "INCLUDE", + "EXCLUDE", + "ONLY" + ], + "type": "string" + }, "from": { "example": "2020-07-01 18:23", "pattern": "^\\d{4}-\\d{1,2}-\\d{1,2}( \\d{1,2}:\\d{1,2})?$", @@ -4474,9 +4491,9 @@ } }, "required": [ + "dataset", "from", - "to", - "dataset" + "to" ], "type": "object" } @@ -4755,6 +4772,69 @@ ], "type": "object" }, + "AllTimeDateFilter": { + "description": "An all-time date filter that does not restrict by date range. Controls how rows with empty (null/missing) date values are handled.", + "properties": { + "allTimeDateFilter": { + "properties": { + "applyOnResult": { + "type": "boolean" + }, + "dataset": { + "$ref": "#/components/schemas/AfmObjectIdentifierDataset" + }, + "emptyValueHandling": { + "default": "INCLUDE", + "description": "Specifies how rows with empty (null/missing) date values should be handled. INCLUDE means no filtering effect (default), EXCLUDE removes rows with null dates, ONLY keeps only rows with null dates.", + "enum": [ + "INCLUDE", + "EXCLUDE", + "ONLY" + ], + "type": "string" + }, + "granularity": { + "default": "DAY", + "description": "Date granularity used to resolve the date attribute label for null value checks. Defaults to DAY if not specified.", + "enum": [ + "MINUTE", + "HOUR", + "DAY", + "WEEK", + "MONTH", + "QUARTER", + "YEAR", + "MINUTE_OF_HOUR", + "HOUR_OF_DAY", + "DAY_OF_WEEK", + "DAY_OF_MONTH", + "DAY_OF_QUARTER", + "DAY_OF_YEAR", + "WEEK_OF_YEAR", + "MONTH_OF_YEAR", + "QUARTER_OF_YEAR", + "FISCAL_MONTH", + "FISCAL_QUARTER", + "FISCAL_YEAR" + ], + "example": "DAY", + "type": "string" + }, + "localIdentifier": { + "type": "string" + } + }, + "required": [ + "dataset" + ], + "type": "object" + } + }, + "required": [ + "allTimeDateFilter" + ], + "type": "object" + }, "AnomalyDetection": { "properties": { "dataset": { @@ -5288,6 +5368,146 @@ ], "type": "object" }, + "AwsBedrockAccessKeyAuth": { + "allOf": [ + { + "properties": { + "accessKeyId": { + "description": "AWS Access Key ID.", + "maxLength": 255, + "nullable": true, + "type": "string", + "writeOnly": true + }, + "secretAccessKey": { + "description": "AWS Secret Access Key.", + "maxLength": 10000, + "nullable": true, + "type": "string", + "writeOnly": true + }, + "sessionToken": { + "description": "AWS Session Token (for temporary credentials).", + "maxLength": 10000, + "nullable": true, + "type": "string", + "writeOnly": true + }, + "type": { + "description": "Authentication type.", + "enum": [ + "ACCESS_KEY" + ], + "type": "string" + } + }, + "type": "object" + } + ], + "required": [ + "type" + ], + "type": "object" + }, + "AwsBedrockProviderConfig": { + "description": "Configuration for AWS Bedrock provider.", + "properties": { + "auth": { + "$ref": "#/components/schemas/BedrockProviderAuth" + }, + "region": { + "description": "AWS region for Bedrock.", + "example": "us-east-1", + "maxLength": 255, + "type": "string" + }, + "type": { + "description": "Provider type.", + "enum": [ + "AWS_BEDROCK" + ], + "type": "string" + } + }, + "required": [ + "auth", + "region", + "type" + ], + "type": "object" + }, + "AzureFoundryApiKeyAuth": { + "allOf": [ + { + "properties": { + "apiKey": { + "description": "Azure API key.", + "maxLength": 255, + "nullable": true, + "type": "string", + "writeOnly": true + }, + "type": { + "description": "Authentication type.", + "enum": [ + "API_KEY" + ], + "type": "string" + } + }, + "type": "object" + } + ], + "required": [ + "type" + ], + "type": "object" + }, + "AzureFoundryProviderAuth": { + "description": "Authentication configuration.", + "oneOf": [ + { + "$ref": "#/components/schemas/AzureFoundryApiKeyAuth" + } + ], + "type": "object" + }, + "AzureFoundryProviderConfig": { + "description": "Configuration for Azure Foundry provider.", + "properties": { + "auth": { + "$ref": "#/components/schemas/AzureFoundryProviderAuth" + }, + "endpoint": { + "description": "Azure AI inference endpoint URL.", + "example": "https://my-resource.services.ai.azure.com/models", + "maxLength": 255, + "type": "string" + }, + "type": { + "description": "Provider type.", + "enum": [ + "AZURE_FOUNDRY" + ], + "type": "string" + } + }, + "required": [ + "auth", + "endpoint", + "type" + ], + "type": "object" + }, + "BedrockProviderAuth": { + "description": "Authentication configuration.", + "oneOf": [ + { + "$ref": "#/components/schemas/AwsBedrockAccessKeyAuth" + } + ], + "type": "object" + }, "BoundedFilter": { "description": "Bounding filter for this relative date filter. This can be used to limit the range of the relative date filter to a specific date range.", "properties": { @@ -5484,9 +5704,9 @@ } }, "required": [ + "measure", "operator", - "value", - "measure" + "value" ], "type": "object" } @@ -5716,6 +5936,14 @@ "dataSet": { "$ref": "#/components/schemas/IdentifierRef" }, + "emptyValueHandling": { + "enum": [ + "INCLUDE", + "EXCLUDE", + "ONLY" + ], + "type": "string" + }, "from": { "oneOf": [ { @@ -6129,6 +6357,9 @@ }, { "$ref": "#/components/schemas/RelativeDateFilter" + }, + { + "$ref": "#/components/schemas/AllTimeDateFilter" } ], "type": "object" @@ -6216,6 +6447,27 @@ }, "DeclarativeAnalyticalDashboard": { "properties": { + "certification": { + "description": "Certification status of the entity.", + "enum": [ + "CERTIFIED" + ], + "type": "string" + }, + "certificationMessage": { + "description": "Optional message associated with the certification.", + "nullable": true, + "type": "string" + }, + "certifiedAt": { + "description": "Time when the certification was set.", + "nullable": true, + "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", + "type": "string" + }, + "certifiedBy": { + "$ref": "#/components/schemas/DeclarativeUserIdentifier" + }, "content": { "$ref": "#/components/schemas/JsonNode" }, @@ -6603,7 +6855,7 @@ }, "createdAt": { "description": "Time of the entity creation.", - "example": "[\"2023-07-20 12:30\"]", + "example": "2023-07-20 12:30", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", "type": "string" @@ -6625,7 +6877,7 @@ }, "modifiedAt": { "description": "Time of the last entity modification.", - "example": "[\"2023-07-20 12:30\"]", + "example": "2023-07-20 12:30", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", "type": "string" @@ -6991,7 +7243,7 @@ }, "createdAt": { "description": "Time of the entity creation.", - "example": "[\"2023-07-20 12:30\"]", + "example": "2023-07-20 12:30", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", "type": "string" @@ -7013,7 +7265,7 @@ }, "modifiedAt": { "description": "Time of the last entity modification.", - "example": "[\"2023-07-20 12:30\"]", + "example": "2023-07-20 12:30", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", "type": "string" @@ -7481,7 +7733,7 @@ "properties": { "createdAt": { "description": "Time of the entity creation.", - "example": "[\"2023-07-20 12:30\"]", + "example": "2023-07-20 12:30", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", "type": "string" @@ -7503,7 +7755,7 @@ }, "modifiedAt": { "description": "Time of the last entity modification.", - "example": "[\"2023-07-20 12:30\"]", + "example": "2023-07-20 12:30", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", "type": "string" @@ -8175,12 +8427,33 @@ }, "DeclarativeMetric": { "properties": { + "certification": { + "description": "Certification status of the entity.", + "enum": [ + "CERTIFIED" + ], + "type": "string" + }, + "certificationMessage": { + "description": "Optional message associated with the certification.", + "nullable": true, + "type": "string" + }, + "certifiedAt": { + "description": "Time when the certification was set.", + "nullable": true, + "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", + "type": "string" + }, + "certifiedBy": { + "$ref": "#/components/schemas/DeclarativeUserIdentifier" + }, "content": { "$ref": "#/components/schemas/JsonNode" }, "createdAt": { "description": "Time of the entity creation.", - "example": "[\"2023-07-20 12:30\"]", + "example": "2023-07-20 12:30", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", "type": "string" @@ -8212,7 +8485,7 @@ }, "modifiedAt": { "description": "Time of the last entity modification.", - "example": "[\"2023-07-20 12:30\"]", + "example": "2023-07-20 12:30", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", "type": "string" @@ -8751,6 +9024,7 @@ "ACTIVE_THEME", "ACTIVE_COLOR_PALETTE", "ACTIVE_LLM_ENDPOINT", + "ACTIVE_LLM_PROVIDER", "ACTIVE_CALENDARS", "WHITE_LABELING", "LOCALE", @@ -8793,7 +9067,8 @@ "ENABLE_NULL_JOINS", "EXPORT_CSV_CUSTOM_DELIMITER", "ENABLE_QUERY_TAGS", - "RESTRICT_BASE_UI" + "RESTRICT_BASE_UI", + "CERTIFY_PARENT_OBJECTS" ], "example": "TIMEZONE", "type": "string" @@ -8819,6 +9094,8 @@ "EXPORT_PDF", "CREATE_AUTOMATION", "USE_AI_ASSISTANT", + "WRITE_KNOWLEDGE_DOCUMENTS", + "READ_KNOWLEDGE_DOCUMENTS", "CREATE_FILTER_VIEW", "VIEW" ], @@ -9256,12 +9533,33 @@ }, "DeclarativeVisualizationObject": { "properties": { + "certification": { + "description": "Certification status of the entity.", + "enum": [ + "CERTIFIED" + ], + "type": "string" + }, + "certificationMessage": { + "description": "Optional message associated with the certification.", + "nullable": true, + "type": "string" + }, + "certifiedAt": { + "description": "Time when the certification was set.", + "nullable": true, + "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", + "type": "string" + }, + "certifiedBy": { + "$ref": "#/components/schemas/DeclarativeUserIdentifier" + }, "content": { "$ref": "#/components/schemas/JsonNode" }, "createdAt": { "description": "Time of the entity creation.", - "example": "[\"2023-07-20 12:30\"]", + "example": "2023-07-20 12:30", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", "type": "string" @@ -9288,7 +9586,7 @@ }, "modifiedAt": { "description": "Time of the last entity modification.", - "example": "[\"2023-07-20 12:30\"]", + "example": "2023-07-20 12:30", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", "type": "string" @@ -9612,6 +9910,8 @@ "EXPORT_PDF", "CREATE_AUTOMATION", "USE_AI_ASSISTANT", + "WRITE_KNOWLEDGE_DOCUMENTS", + "READ_KNOWLEDGE_DOCUMENTS", "CREATE_FILTER_VIEW", "VIEW" ], @@ -9777,6 +10077,15 @@ "$ref": "#/components/schemas/EntityIdentifier" }, "type": "array" + }, + "relation": { + "default": "DEPENDENTS", + "description": "Entity relation for graph traversal from the entry points. DEPENDENTS returns entities that depend on the entry points. DEPENDENCIES returns entities that the entry points depend on.", + "enum": [ + "DEPENDENTS", + "DEPENDENCIES" + ], + "type": "string" } }, "required": [ @@ -10110,6 +10419,9 @@ { "$ref": "#/components/schemas/RelativeDateFilter" }, + { + "$ref": "#/components/schemas/AllTimeDateFilter" + }, { "$ref": "#/components/schemas/NegativeAttributeFilter" }, @@ -10936,6 +11248,26 @@ "areRelationsValid": { "type": "boolean" }, + "certification": { + "description": "Certification status of the entity.", + "enum": [ + "CERTIFIED" + ], + "type": "string" + }, + "certificationMessage": { + "description": "Optional message associated with the certification.", + "nullable": true, + "type": "string" + }, + "certifiedAt": { + "description": "Time when the certification was set.", + "example": "2023-07-20 12:30", + "format": "date-time", + "nullable": true, + "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", + "type": "string" + }, "content": { "description": "Free-form JSON content. Maximum supported length is 250000 characters.", "example": { @@ -10949,6 +11281,7 @@ }, "createdAt": { "description": "Time of the entity creation.", + "example": "2023-07-20 12:30", "format": "date-time", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", @@ -10960,6 +11293,7 @@ }, "modifiedAt": { "description": "Time of the last entity modification.", + "example": "2023-07-20 12:30", "format": "date-time", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", @@ -11055,6 +11389,17 @@ ], "type": "object" }, + "certifiedBy": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiUserIdentifierToOneLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + }, "createdBy": { "properties": { "data": { @@ -11668,6 +12013,7 @@ }, "createdAt": { "description": "Time of the entity creation.", + "example": "2023-07-20 12:30", "format": "date-time", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", @@ -11679,6 +12025,7 @@ }, "modifiedAt": { "description": "Time of the last entity modification.", + "example": "2023-07-20 12:30", "format": "date-time", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", @@ -12691,6 +13038,7 @@ }, "createdAt": { "description": "Time of the entity creation.", + "example": "2023-07-20 12:30", "format": "date-time", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", @@ -12778,6 +13126,7 @@ }, "modifiedAt": { "description": "Time of the last entity modification.", + "example": "2023-07-20 12:30", "format": "date-time", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", @@ -14677,6 +15026,7 @@ }, "createdAt": { "description": "Time of the entity creation.", + "example": "2023-07-20 12:30", "format": "date-time", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", @@ -14688,6 +15038,7 @@ }, "modifiedAt": { "description": "Time of the last entity modification.", + "example": "2023-07-20 12:30", "format": "date-time", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", @@ -16391,6 +16742,7 @@ }, "createdAt": { "description": "Time of the entity creation.", + "example": "2023-07-20 12:30", "format": "date-time", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", @@ -16402,6 +16754,7 @@ }, "modifiedAt": { "description": "Time of the last entity modification.", + "example": "2023-07-20 12:30", "format": "date-time", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", @@ -20362,6 +20715,369 @@ ], "type": "object" }, + "JsonApiLlmProviderIn": { + "description": "LLM Provider configuration for connecting to LLM services.", + "properties": { + "attributes": { + "properties": { + "defaultModelId": { + "description": "ID of the default model to use from the models list.", + "maxLength": 255, + "nullable": true, + "type": "string" + }, + "description": { + "description": "Description of the LLM Provider.", + "maxLength": 10000, + "nullable": true, + "type": "string" + }, + "models": { + "description": "List of LLM models available for this provider.", + "items": { + "description": "LLM Model configuration (id, family) within a provider.", + "properties": { + "family": { + "description": "Family of LLM models.", + "enum": [ + "OPENAI", + "ANTHROPIC", + "META", + "MISTRAL", + "AMAZON", + "GOOGLE", + "COHERE" + ], + "type": "string" + }, + "id": { + "description": "Unique identifier of the model (e.g., gpt-5.3, claude-4.6).", + "maxLength": 255, + "type": "string" + } + }, + "required": [ + "family", + "id" + ], + "type": "object" + }, + "nullable": true, + "type": "array" + }, + "name": { + "maxLength": 255, + "nullable": true, + "type": "string" + }, + "providerConfig": { + "description": "Provider-specific configuration including authentication.", + "oneOf": [ + { + "$ref": "#/components/schemas/AwsBedrockProviderConfig" + }, + { + "$ref": "#/components/schemas/AzureFoundryProviderConfig" + }, + { + "$ref": "#/components/schemas/OpenAIProviderConfig" + } + ] + } + }, + "required": [ + "models", + "providerConfig" + ], + "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": [ + "llmProvider" + ], + "example": "llmProvider", + "type": "string" + } + }, + "required": [ + "attributes", + "id", + "type" + ], + "type": "object" + }, + "JsonApiLlmProviderInDocument": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiLlmProviderIn" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "JsonApiLlmProviderOut": { + "description": "LLM Provider configuration for connecting to LLM services.", + "properties": { + "attributes": { + "properties": { + "defaultModelId": { + "description": "ID of the default model to use from the models list.", + "maxLength": 255, + "nullable": true, + "type": "string" + }, + "description": { + "description": "Description of the LLM Provider.", + "maxLength": 10000, + "nullable": true, + "type": "string" + }, + "models": { + "description": "List of LLM models available for this provider.", + "items": { + "description": "LLM Model configuration (id, family) within a provider.", + "properties": { + "family": { + "description": "Family of LLM models.", + "enum": [ + "OPENAI", + "ANTHROPIC", + "META", + "MISTRAL", + "AMAZON", + "GOOGLE", + "COHERE" + ], + "type": "string" + }, + "id": { + "description": "Unique identifier of the model (e.g., gpt-5.3, claude-4.6).", + "maxLength": 255, + "type": "string" + } + }, + "required": [ + "family", + "id" + ], + "type": "object" + }, + "nullable": true, + "type": "array" + }, + "name": { + "maxLength": 255, + "nullable": true, + "type": "string" + }, + "providerConfig": { + "description": "Provider-specific configuration including authentication.", + "oneOf": [ + { + "$ref": "#/components/schemas/AwsBedrockProviderConfig" + }, + { + "$ref": "#/components/schemas/AzureFoundryProviderConfig" + }, + { + "$ref": "#/components/schemas/OpenAIProviderConfig" + } + ] + } + }, + "required": [ + "models", + "providerConfig" + ], + "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": [ + "llmProvider" + ], + "example": "llmProvider", + "type": "string" + } + }, + "required": [ + "attributes", + "id", + "type" + ], + "type": "object" + }, + "JsonApiLlmProviderOutDocument": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiLlmProviderOut" + }, + "links": { + "$ref": "#/components/schemas/ObjectLinks" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "JsonApiLlmProviderOutList": { + "description": "A JSON:API document with a list of resources", + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/JsonApiLlmProviderOutWithLinks" + }, + "type": "array", + "uniqueItems": true + }, + "links": { + "$ref": "#/components/schemas/ListLinks" + }, + "meta": { + "properties": { + "page": { + "$ref": "#/components/schemas/PageMetadata" + } + }, + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "JsonApiLlmProviderOutWithLinks": { + "allOf": [ + { + "$ref": "#/components/schemas/JsonApiLlmProviderOut" + }, + { + "$ref": "#/components/schemas/ObjectLinksContainer" + } + ] + }, + "JsonApiLlmProviderPatch": { + "description": "LLM Provider configuration for connecting to LLM services.", + "properties": { + "attributes": { + "properties": { + "defaultModelId": { + "description": "ID of the default model to use from the models list.", + "maxLength": 255, + "nullable": true, + "type": "string" + }, + "description": { + "description": "Description of the LLM Provider.", + "maxLength": 10000, + "nullable": true, + "type": "string" + }, + "models": { + "description": "List of LLM models available for this provider.", + "items": { + "description": "LLM Model configuration (id, family) within a provider.", + "properties": { + "family": { + "description": "Family of LLM models.", + "enum": [ + "OPENAI", + "ANTHROPIC", + "META", + "MISTRAL", + "AMAZON", + "GOOGLE", + "COHERE" + ], + "type": "string" + }, + "id": { + "description": "Unique identifier of the model (e.g., gpt-5.3, claude-4.6).", + "maxLength": 255, + "type": "string" + } + }, + "required": [ + "family", + "id" + ], + "type": "object" + }, + "nullable": true, + "type": "array" + }, + "name": { + "maxLength": 255, + "nullable": true, + "type": "string" + }, + "providerConfig": { + "description": "Provider-specific configuration including authentication.", + "oneOf": [ + { + "$ref": "#/components/schemas/AwsBedrockProviderConfig" + }, + { + "$ref": "#/components/schemas/AzureFoundryProviderConfig" + }, + { + "$ref": "#/components/schemas/OpenAIProviderConfig" + } + ] + } + }, + "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": [ + "llmProvider" + ], + "example": "llmProvider", + "type": "string" + } + }, + "required": [ + "attributes", + "id", + "type" + ], + "type": "object" + }, + "JsonApiLlmProviderPatchDocument": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiLlmProviderPatch" + } + }, + "required": [ + "data" + ], + "type": "object" + }, "JsonApiMemoryItemIn": { "description": "JSON:API representation of memoryItem entity.", "properties": { @@ -20458,6 +21174,7 @@ }, "createdAt": { "description": "Time of the entity creation.", + "example": "2023-07-20 12:30", "format": "date-time", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", @@ -20485,6 +21202,7 @@ }, "modifiedAt": { "description": "Time of the last entity modification.", + "example": "2023-07-20 12:30", "format": "date-time", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", @@ -20944,6 +21662,26 @@ "areRelationsValid": { "type": "boolean" }, + "certification": { + "description": "Certification status of the entity.", + "enum": [ + "CERTIFIED" + ], + "type": "string" + }, + "certificationMessage": { + "description": "Optional message associated with the certification.", + "nullable": true, + "type": "string" + }, + "certifiedAt": { + "description": "Time when the certification was set.", + "example": "2023-07-20 12:30", + "format": "date-time", + "nullable": true, + "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", + "type": "string" + }, "content": { "properties": { "format": { @@ -20972,6 +21710,7 @@ }, "createdAt": { "description": "Time of the entity creation.", + "example": "2023-07-20 12:30", "format": "date-time", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", @@ -20989,6 +21728,7 @@ }, "modifiedAt": { "description": "Time of the last entity modification.", + "example": "2023-07-20 12:30", "format": "date-time", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", @@ -21055,6 +21795,17 @@ ], "type": "object" }, + "certifiedBy": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiUserIdentifierToOneLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + }, "createdBy": { "properties": { "data": { @@ -22391,6 +23142,7 @@ "ACTIVE_THEME", "ACTIVE_COLOR_PALETTE", "ACTIVE_LLM_ENDPOINT", + "ACTIVE_LLM_PROVIDER", "ACTIVE_CALENDARS", "WHITE_LABELING", "LOCALE", @@ -22433,7 +23185,8 @@ "ENABLE_NULL_JOINS", "EXPORT_CSV_CUSTOM_DELIMITER", "ENABLE_QUERY_TAGS", - "RESTRICT_BASE_UI" + "RESTRICT_BASE_UI", + "CERTIFY_PARENT_OBJECTS" ], "type": "string" } @@ -22488,6 +23241,7 @@ "ACTIVE_THEME", "ACTIVE_COLOR_PALETTE", "ACTIVE_LLM_ENDPOINT", + "ACTIVE_LLM_PROVIDER", "ACTIVE_CALENDARS", "WHITE_LABELING", "LOCALE", @@ -22530,7 +23284,8 @@ "ENABLE_NULL_JOINS", "EXPORT_CSV_CUSTOM_DELIMITER", "ENABLE_QUERY_TAGS", - "RESTRICT_BASE_UI" + "RESTRICT_BASE_UI", + "CERTIFY_PARENT_OBJECTS" ], "type": "string" } @@ -22625,6 +23380,7 @@ "ACTIVE_THEME", "ACTIVE_COLOR_PALETTE", "ACTIVE_LLM_ENDPOINT", + "ACTIVE_LLM_PROVIDER", "ACTIVE_CALENDARS", "WHITE_LABELING", "LOCALE", @@ -22667,7 +23423,8 @@ "ENABLE_NULL_JOINS", "EXPORT_CSV_CUSTOM_DELIMITER", "ENABLE_QUERY_TAGS", - "RESTRICT_BASE_UI" + "RESTRICT_BASE_UI", + "CERTIFY_PARENT_OBJECTS" ], "type": "string" } @@ -24128,6 +24885,7 @@ "ACTIVE_THEME", "ACTIVE_COLOR_PALETTE", "ACTIVE_LLM_ENDPOINT", + "ACTIVE_LLM_PROVIDER", "ACTIVE_CALENDARS", "WHITE_LABELING", "LOCALE", @@ -24170,7 +24928,8 @@ "ENABLE_NULL_JOINS", "EXPORT_CSV_CUSTOM_DELIMITER", "ENABLE_QUERY_TAGS", - "RESTRICT_BASE_UI" + "RESTRICT_BASE_UI", + "CERTIFY_PARENT_OBJECTS" ], "type": "string" } @@ -24225,6 +24984,7 @@ "ACTIVE_THEME", "ACTIVE_COLOR_PALETTE", "ACTIVE_LLM_ENDPOINT", + "ACTIVE_LLM_PROVIDER", "ACTIVE_CALENDARS", "WHITE_LABELING", "LOCALE", @@ -24267,7 +25027,8 @@ "ENABLE_NULL_JOINS", "EXPORT_CSV_CUSTOM_DELIMITER", "ENABLE_QUERY_TAGS", - "RESTRICT_BASE_UI" + "RESTRICT_BASE_UI", + "CERTIFY_PARENT_OBJECTS" ], "type": "string" } @@ -24464,6 +25225,26 @@ "areRelationsValid": { "type": "boolean" }, + "certification": { + "description": "Certification status of the entity.", + "enum": [ + "CERTIFIED" + ], + "type": "string" + }, + "certificationMessage": { + "description": "Optional message associated with the certification.", + "nullable": true, + "type": "string" + }, + "certifiedAt": { + "description": "Time when the certification was set.", + "example": "2023-07-20 12:30", + "format": "date-time", + "nullable": true, + "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", + "type": "string" + }, "content": { "description": "Free-form JSON content. Maximum supported length is 250000 characters.", "example": { @@ -24477,6 +25258,7 @@ }, "createdAt": { "description": "Time of the entity creation.", + "example": "2023-07-20 12:30", "format": "date-time", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", @@ -24491,6 +25273,7 @@ }, "modifiedAt": { "description": "Time of the last entity modification.", + "example": "2023-07-20 12:30", "format": "date-time", "nullable": true, "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}", @@ -24557,6 +25340,17 @@ ], "type": "object" }, + "certifiedBy": { + "properties": { + "data": { + "$ref": "#/components/schemas/JsonApiUserIdentifierToOneLinkage" + } + }, + "required": [ + "data" + ], + "type": "object" + }, "createdBy": { "properties": { "data": { @@ -26203,6 +26997,8 @@ "EXPORT_PDF", "CREATE_AUTOMATION", "USE_AI_ASSISTANT", + "WRITE_KNOWLEDGE_DOCUMENTS", + "READ_KNOWLEDGE_DOCUMENTS", "CREATE_FILTER_VIEW", "VIEW" ], @@ -26443,6 +27239,7 @@ "ACTIVE_THEME", "ACTIVE_COLOR_PALETTE", "ACTIVE_LLM_ENDPOINT", + "ACTIVE_LLM_PROVIDER", "ACTIVE_CALENDARS", "WHITE_LABELING", "LOCALE", @@ -26485,7 +27282,8 @@ "ENABLE_NULL_JOINS", "EXPORT_CSV_CUSTOM_DELIMITER", "ENABLE_QUERY_TAGS", - "RESTRICT_BASE_UI" + "RESTRICT_BASE_UI", + "CERTIFY_PARENT_OBJECTS" ], "type": "string" } @@ -26540,6 +27338,7 @@ "ACTIVE_THEME", "ACTIVE_COLOR_PALETTE", "ACTIVE_LLM_ENDPOINT", + "ACTIVE_LLM_PROVIDER", "ACTIVE_CALENDARS", "WHITE_LABELING", "LOCALE", @@ -26582,7 +27381,8 @@ "ENABLE_NULL_JOINS", "EXPORT_CSV_CUSTOM_DELIMITER", "ENABLE_QUERY_TAGS", - "RESTRICT_BASE_UI" + "RESTRICT_BASE_UI", + "CERTIFY_PARENT_OBJECTS" ], "type": "string" } @@ -26703,6 +27503,7 @@ "ACTIVE_THEME", "ACTIVE_COLOR_PALETTE", "ACTIVE_LLM_ENDPOINT", + "ACTIVE_LLM_PROVIDER", "ACTIVE_CALENDARS", "WHITE_LABELING", "LOCALE", @@ -26745,7 +27546,8 @@ "ENABLE_NULL_JOINS", "EXPORT_CSV_CUSTOM_DELIMITER", "ENABLE_QUERY_TAGS", - "RESTRICT_BASE_UI" + "RESTRICT_BASE_UI", + "CERTIFY_PARENT_OBJECTS" ], "type": "string" } @@ -26800,6 +27602,7 @@ "ACTIVE_THEME", "ACTIVE_COLOR_PALETTE", "ACTIVE_LLM_ENDPOINT", + "ACTIVE_LLM_PROVIDER", "ACTIVE_CALENDARS", "WHITE_LABELING", "LOCALE", @@ -26842,7 +27645,8 @@ "ENABLE_NULL_JOINS", "EXPORT_CSV_CUSTOM_DELIMITER", "ENABLE_QUERY_TAGS", - "RESTRICT_BASE_UI" + "RESTRICT_BASE_UI", + "CERTIFY_PARENT_OBJECTS" ], "type": "string" } @@ -26937,6 +27741,17 @@ } ] }, + "LlmProviderAuth": { + "properties": { + "type": { + "type": "string" + } + }, + "required": [ + "type" + ], + "type": "object" + }, "LocalIdentifier": { "properties": { "format": { @@ -27018,9 +27833,9 @@ } }, "required": [ + "label", "literal", - "matchType", - "label" + "matchType" ], "type": "object" } @@ -27094,6 +27909,22 @@ ], "type": "object" }, + "MetricDefinitionOverride": { + "description": "(EXPERIMENTAL) Override for a catalog metric definition.", + "properties": { + "definition": { + "$ref": "#/components/schemas/InlineMeasureDefinition" + }, + "item": { + "$ref": "#/components/schemas/AfmObjectIdentifierCore" + } + }, + "required": [ + "definition", + "item" + ], + "type": "object" + }, "NegativeAttributeFilter": { "description": "Filter able to limit element values by label and related selected negated elements.", "properties": { @@ -27113,8 +27944,8 @@ } }, "required": [ - "notIn", - "label" + "label", + "notIn" ], "type": "object" } @@ -27212,6 +28043,75 @@ }, "type": "object" }, + "OpenAIProviderConfig": { + "description": "Configuration for OpenAI provider.", + "properties": { + "auth": { + "$ref": "#/components/schemas/OpenAiProviderAuth" + }, + "baseUrl": { + "default": "https://api.openai.com", + "description": "Custom base URL for OpenAI API.", + "maxLength": 255, + "nullable": true, + "type": "string" + }, + "organization": { + "description": "OpenAI organization ID.", + "maxLength": 255, + "nullable": true, + "type": "string" + }, + "type": { + "description": "Provider type.", + "enum": [ + "OPENAI" + ], + "type": "string" + } + }, + "required": [ + "auth", + "type" + ], + "type": "object" + }, + "OpenAiApiKeyAuth": { + "allOf": [ + { + "properties": { + "apiKey": { + "description": "OpenAI API key.", + "maxLength": 255, + "nullable": true, + "type": "string", + "writeOnly": true + }, + "type": { + "description": "Authentication type.", + "enum": [ + "API_KEY" + ], + "type": "string" + } + }, + "type": "object" + } + ], + "required": [ + "type" + ], + "type": "object" + }, + "OpenAiProviderAuth": { + "description": "Authentication configuration.", + "oneOf": [ + { + "$ref": "#/components/schemas/OpenAiApiKeyAuth" + } + ], + "type": "object" + }, "OrganizationAutomationIdentifier": { "properties": { "id": { @@ -27771,9 +28671,9 @@ }, "required": [ "from", + "measure", "operator", - "to", - "measure" + "to" ], "type": "object" } @@ -28081,6 +28981,16 @@ "dataset": { "$ref": "#/components/schemas/AfmObjectIdentifierDataset" }, + "emptyValueHandling": { + "default": "EXCLUDE", + "description": "Specifies how rows with empty (null/missing) date values should be handled. INCLUDE includes empty dates in addition to the date range restriction, EXCLUDE removes rows with empty dates (default), ONLY keeps only rows with empty dates.", + "enum": [ + "INCLUDE", + "EXCLUDE", + "ONLY" + ], + "type": "string" + }, "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, @@ -28124,10 +29034,10 @@ } }, "required": [ + "dataset", "from", "granularity", - "to", - "dataset" + "to" ], "type": "object" } @@ -28185,6 +29095,7 @@ "ACTIVE_THEME", "ACTIVE_COLOR_PALETTE", "ACTIVE_LLM_ENDPOINT", + "ACTIVE_LLM_PROVIDER", "ACTIVE_CALENDARS", "WHITE_LABELING", "LOCALE", @@ -28227,7 +29138,8 @@ "ENABLE_NULL_JOINS", "EXPORT_CSV_CUSTOM_DELIMITER", "ENABLE_QUERY_TAGS", - "RESTRICT_BASE_UI" + "RESTRICT_BASE_UI", + "CERTIFY_PARENT_OBJECTS" ], "example": "TIMEZONE", "type": "string" @@ -28252,6 +29164,8 @@ "type": "string" }, "kid": { + "maxLength": 255, + "pattern": "^[^.]", "type": "string" }, "kty": { @@ -28345,6 +29259,43 @@ }, "type": "object" }, + "SetCertificationRequest": { + "description": "Request to set or clear the certification of a workspace entity.", + "properties": { + "id": { + "description": "ID of the entity.", + "example": "total-sales", + "type": "string" + }, + "message": { + "description": "Optional message associated with the certification.", + "nullable": true, + "type": "string" + }, + "status": { + "description": "Certification status of the entity.", + "enum": [ + "CERTIFIED" + ], + "nullable": true, + "type": "string" + }, + "type": { + "description": "Type of the entity.", + "enum": [ + "metric", + "visualizationObject", + "analyticalDashboard" + ], + "type": "string" + } + }, + "required": [ + "id", + "type" + ], + "type": "object" + }, "Settings": { "description": "Additional settings.", "properties": { @@ -29039,6 +29990,8 @@ "EXPORT_PDF", "CREATE_AUTOMATION", "USE_AI_ASSISTANT", + "WRITE_KNOWLEDGE_DOCUMENTS", + "READ_KNOWLEDGE_DOCUMENTS", "CREATE_FILTER_VIEW", "VIEW" ], @@ -29063,6 +30016,8 @@ "EXPORT_PDF", "CREATE_AUTOMATION", "USE_AI_ASSISTANT", + "WRITE_KNOWLEDGE_DOCUMENTS", + "READ_KNOWLEDGE_DOCUMENTS", "CREATE_FILTER_VIEW", "VIEW" ], @@ -29337,6 +30292,8 @@ "EXPORT_PDF", "CREATE_AUTOMATION", "USE_AI_ASSISTANT", + "WRITE_KNOWLEDGE_DOCUMENTS", + "READ_KNOWLEDGE_DOCUMENTS", "CREATE_FILTER_VIEW", "VIEW" ], @@ -29354,6 +30311,8 @@ "EXPORT_PDF", "CREATE_AUTOMATION", "USE_AI_ASSISTANT", + "WRITE_KNOWLEDGE_DOCUMENTS", + "READ_KNOWLEDGE_DOCUMENTS", "CREATE_FILTER_VIEW", "VIEW" ], @@ -31506,6 +32465,48 @@ } } }, + "/api/v1/actions/workspaces/{workspaceId}/setCertification": { + "post": { + "description": "Set or clear the certification (e.g. CERTIFIED) of a workspace entity. Requires MANAGE permission.", + "operationId": "setCertification", + "parameters": [ + { + "in": "path", + "name": "workspaceId", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SetCertificationRequest" + } + } + }, + "required": true + }, + "responses": { + "204": { + "description": "No Content" + } + }, + "summary": "Set Certification", + "tags": [ + "actions", + "Certification" + ], + "x-gdc-security-info": { + "description": "Minimal permission required to use this endpoint.", + "permissions": [ + "MANAGE" + ] + } + } + }, "/api/v1/actions/workspaces/{workspaceId}/translations": { "get": { "description": "Provides a list of effective translation tags.", @@ -34704,7 +35705,7 @@ "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": "title==someString;provider==LLMProviderValue", + "example": "title==someString;provider==LlmEndpointProviderValue", "in": "query", "name": "filter", "schema": { @@ -34818,7 +35819,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": "title==someString;provider==LLMProviderValue", + "example": "title==someString;provider==LlmEndpointProviderValue", "in": "query", "name": "filter", "schema": { @@ -34845,7 +35846,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": "title==someString;provider==LLMProviderValue", + "example": "title==someString;provider==LlmEndpointProviderValue", "in": "query", "name": "filter", "schema": { @@ -34885,7 +35886,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": "title==someString;provider==LLMProviderValue", + "example": "title==someString;provider==LlmEndpointProviderValue", "in": "query", "name": "filter", "schema": { @@ -34940,7 +35941,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": "title==someString;provider==LLMProviderValue", + "example": "title==someString;provider==LlmEndpointProviderValue", "in": "query", "name": "filter", "schema": { @@ -34988,6 +35989,298 @@ ] } }, + "/api/v1/entities/llmProviders": { + "get": { + "operationId": "getAllEntities@LlmProviders", + "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": "name==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/json": { + "schema": { + "$ref": "#/components/schemas/JsonApiLlmProviderOutList" + } + }, + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiLlmProviderOutList" + } + } + }, + "description": "Request successfully processed" + } + }, + "summary": "Get all LLM Provider entities", + "tags": [ + "LLM Providers", + "entities", + "organization-model-controller" + ] + }, + "post": { + "description": "LLM Provider - connection configuration for LLM services", + "operationId": "createEntity@LlmProviders", + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/JsonApiLlmProviderInDocument" + } + }, + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiLlmProviderInDocument" + } + } + }, + "required": true + }, + "responses": { + "201": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/JsonApiLlmProviderOutDocument" + } + }, + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiLlmProviderOutDocument" + } + } + }, + "description": "Request successfully processed" + } + }, + "summary": "Post LLM Provider entities", + "tags": [ + "LLM Providers", + "entities", + "organization-model-controller" + ] + } + }, + "/api/v1/entities/llmProviders/{id}": { + "delete": { + "operationId": "deleteEntity@LlmProviders", + "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": "name==someString;description==someString", + "in": "query", + "name": "filter", + "schema": { + "type": "string" + } + } + ], + "responses": { + "204": { + "$ref": "#/components/responses/Deleted" + } + }, + "summary": "Delete LLM Provider entity", + "tags": [ + "LLM Providers", + "entities", + "organization-model-controller" + ] + }, + "get": { + "operationId": "getEntity@LlmProviders", + "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": "name==someString;description==someString", + "in": "query", + "name": "filter", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/JsonApiLlmProviderOutDocument" + } + }, + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiLlmProviderOutDocument" + } + } + }, + "description": "Request successfully processed" + } + }, + "summary": "Get LLM Provider entity", + "tags": [ + "LLM Providers", + "entities", + "organization-model-controller" + ] + }, + "patch": { + "operationId": "patchEntity@LlmProviders", + "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": "name==someString;description==someString", + "in": "query", + "name": "filter", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/JsonApiLlmProviderPatchDocument" + } + }, + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiLlmProviderPatchDocument" + } + } + }, + "required": true + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/JsonApiLlmProviderOutDocument" + } + }, + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiLlmProviderOutDocument" + } + } + }, + "description": "Request successfully processed" + } + }, + "summary": "Patch LLM Provider entity", + "tags": [ + "LLM Providers", + "entities", + "organization-model-controller" + ] + }, + "put": { + "operationId": "updateEntity@LlmProviders", + "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": "name==someString;description==someString", + "in": "query", + "name": "filter", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/JsonApiLlmProviderInDocument" + } + }, + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiLlmProviderInDocument" + } + } + }, + "required": true + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/JsonApiLlmProviderOutDocument" + } + }, + "application/vnd.gooddata.api+json": { + "schema": { + "$ref": "#/components/schemas/JsonApiLlmProviderOutDocument" + } + } + }, + "description": "Request successfully processed" + } + }, + "summary": "PUT LLM Provider entity", + "tags": [ + "LLM Providers", + "entities", + "organization-model-controller" + ] + } + }, "/api/v1/entities/notificationChannelIdentifiers": { "get": { "operationId": "getAllEntities@NotificationChannelIdentifiers", @@ -38490,7 +39783,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": "createdBy,modifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", + "example": "createdBy,modifiedBy,certifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", "explode": false, "in": "query", "name": "include", @@ -38508,6 +39801,7 @@ "dashboardPlugins", "createdBy", "modifiedBy", + "certifiedBy", "ALL" ], "type": "string" @@ -38603,7 +39897,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": "createdBy,modifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", + "example": "createdBy,modifiedBy,certifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", "explode": false, "in": "query", "name": "include", @@ -38621,6 +39915,7 @@ "dashboardPlugins", "createdBy", "modifiedBy", + "certifiedBy", "ALL" ], "type": "string" @@ -38857,7 +40152,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": "createdBy,modifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", + "example": "createdBy,modifiedBy,certifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", "explode": false, "in": "query", "name": "include", @@ -38875,6 +40170,7 @@ "dashboardPlugins", "createdBy", "modifiedBy", + "certifiedBy", "ALL" ], "type": "string" @@ -38977,7 +40273,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": "createdBy,modifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", + "example": "createdBy,modifiedBy,certifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", "explode": false, "in": "query", "name": "include", @@ -38995,6 +40291,7 @@ "dashboardPlugins", "createdBy", "modifiedBy", + "certifiedBy", "ALL" ], "type": "string" @@ -39079,7 +40376,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": "createdBy,modifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", + "example": "createdBy,modifiedBy,certifiedBy,visualizationObjects,analyticalDashboards,labels,metrics,datasets,filterContexts,dashboardPlugins", "explode": false, "in": "query", "name": "include", @@ -39097,6 +40394,7 @@ "dashboardPlugins", "createdBy", "modifiedBy", + "certifiedBy", "ALL" ], "type": "string" @@ -46637,7 +47935,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": "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "example": "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", "explode": false, "in": "query", "name": "include", @@ -46653,6 +47951,7 @@ "datasets", "createdBy", "modifiedBy", + "certifiedBy", "ALL" ], "type": "string" @@ -46746,7 +48045,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": "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "example": "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", "explode": false, "in": "query", "name": "include", @@ -46762,6 +48061,7 @@ "datasets", "createdBy", "modifiedBy", + "certifiedBy", "ALL" ], "type": "string" @@ -46996,7 +48296,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": "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "example": "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", "explode": false, "in": "query", "name": "include", @@ -47012,6 +48312,7 @@ "datasets", "createdBy", "modifiedBy", + "certifiedBy", "ALL" ], "type": "string" @@ -47112,7 +48413,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": "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "example": "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", "explode": false, "in": "query", "name": "include", @@ -47128,6 +48429,7 @@ "datasets", "createdBy", "modifiedBy", + "certifiedBy", "ALL" ], "type": "string" @@ -47212,7 +48514,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": "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "example": "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", "explode": false, "in": "query", "name": "include", @@ -47228,6 +48530,7 @@ "datasets", "createdBy", "modifiedBy", + "certifiedBy", "ALL" ], "type": "string" @@ -47968,7 +49271,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": "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "example": "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", "explode": false, "in": "query", "name": "include", @@ -47984,6 +49287,7 @@ "datasets", "createdBy", "modifiedBy", + "certifiedBy", "ALL" ], "type": "string" @@ -48077,7 +49381,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": "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "example": "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", "explode": false, "in": "query", "name": "include", @@ -48093,6 +49397,7 @@ "datasets", "createdBy", "modifiedBy", + "certifiedBy", "ALL" ], "type": "string" @@ -48327,7 +49632,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": "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "example": "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", "explode": false, "in": "query", "name": "include", @@ -48343,6 +49648,7 @@ "datasets", "createdBy", "modifiedBy", + "certifiedBy", "ALL" ], "type": "string" @@ -48443,7 +49749,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": "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "example": "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", "explode": false, "in": "query", "name": "include", @@ -48459,6 +49765,7 @@ "datasets", "createdBy", "modifiedBy", + "certifiedBy", "ALL" ], "type": "string" @@ -48543,7 +49850,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": "createdBy,modifiedBy,facts,attributes,labels,metrics,datasets", + "example": "createdBy,modifiedBy,certifiedBy,facts,attributes,labels,metrics,datasets", "explode": false, "in": "query", "name": "include", @@ -48559,6 +49866,7 @@ "datasets", "createdBy", "modifiedBy", + "certifiedBy", "ALL" ], "type": "string" diff --git a/scripts/generate_client.sh b/scripts/generate_client.sh index a83274fa7..f3ea6e587 100755 --- a/scripts/generate_client.sh +++ b/scripts/generate_client.sh @@ -127,7 +127,7 @@ docker run --rm \ -v "${ROOT_DIR}:/local" \ -u $(id -u ${USER}):$(id -g ${USER}) \ ${CONN_NETWORK_ARG} \ - openapitools/openapi-generator-cli:v6.0.1 generate \ + openapitools/openapi-generator-cli:v6.6.0 generate \ -c "/local/.openapi-generator/configs/${GD_API_CLIENT}.yaml" \ -i "${GD_API_URI_PATH}" \ -o "/local/${GD_API_CLIENT}"