From 8394d917914d07811a5ae92c06c6c09fe6ff1d91 Mon Sep 17 00:00:00 2001 From: "hotdata-automation[bot]" <267177015+hotdata-automation[bot]@users.noreply.github.com> Date: Sat, 14 Mar 2026 03:46:13 +0000 Subject: [PATCH] chore: regenerate client from OpenAPI spec --- .openapi-generator/FILES | 125 +++--------- docs/BooleanProfileDetail.md | 31 +++ docs/CategoricalProfileDetail.md | 30 +++ docs/CategoryValueInfo.md | 2 +- docs/ColumnProfileDetail.md | 3 +- docs/ColumnProfileDetailOneOf.md | 3 +- docs/ColumnProfileDetailOneOf1.md | 1 - docs/ColumnProfileDetailOneOf2.md | 1 - docs/ColumnProfileDetailOneOf3.md | 1 - docs/ColumnProfileDetailOneOf4.md | 1 - docs/ColumnProfileInfo.md | 2 +- docs/ColumnTypeSpec.md | 8 +- docs/ConnectionHealthResponse.md | 2 +- docs/ConnectionsApi.md | 186 +++++++++++++----- docs/CreateConnectionRequest.md | 6 +- docs/CreateConnectionResponse.md | 2 +- docs/CreateDatasetRequest.md | 2 +- docs/CreateSavedQueryRequest.md | 2 +- docs/CreateWorkspaceResponse.md | 30 +++ docs/DatasetSource.md | 4 +- docs/DatasetsApi.md | 60 +++++- docs/ExecuteSavedQueryRequest.md | 2 +- docs/GetResultResponse.md | 6 +- docs/InformationSchemaApi.md | 24 ++- docs/InformationSchemaResponse.md | 2 +- docs/InlineData.md | 2 +- docs/InlineDatasetSource.md | 30 +++ docs/ListQueryRunsResponse.md | 2 +- docs/ListWorkspacesResponse.md | 30 +++ docs/NumericProfileDetail.md | 32 +++ docs/QueryApi.md | 24 ++- docs/QueryResponse.md | 6 +- docs/QueryRunInfo.md | 18 +- docs/QueryRunsApi.md | 24 ++- docs/RefreshApi.md | 24 ++- docs/RefreshRequest.md | 6 +- docs/RefreshWarning.md | 4 +- docs/ResultInfo.md | 2 +- docs/ResultsApi.md | 48 +++-- docs/SavedQueriesApi.md | 84 +++++++- docs/SavedQueryDetail.md | 18 +- docs/SavedQueryVersionInfo.md | 18 +- docs/SecretsApi.md | 118 +++++++---- docs/TableInfo.md | 2 +- docs/TableProfileResponse.md | 2 +- docs/TemporalProfileDetail.md | 31 +++ docs/TextProfileDetail.md | 32 +++ docs/UpdateDatasetRequest.md | 4 +- docs/UpdateSavedQueryRequest.md | 10 +- docs/UploadDatasetSource.md | 32 +++ docs/UploadInfo.md | 2 +- docs/UploadResponse.md | 2 +- docs/UploadsApi.md | 24 ++- docs/WorkspacesApi.md | 12 +- hotdata/__init__.py | 29 ++- hotdata/api/connections_api.py | 121 ++++++------ hotdata/api/datasets_api.py | 6 + hotdata/api/information_schema_api.py | 16 +- hotdata/api/query_api.py | 16 +- hotdata/api/query_runs_api.py | 16 +- hotdata/api/refresh_api.py | 16 +- hotdata/api/results_api.py | 31 +-- hotdata/api/saved_queries_api.py | 8 + hotdata/api/secrets_api.py | 76 +++---- hotdata/api/uploads_api.py | 3 + hotdata/api/workspaces_api.py | 25 +-- hotdata/api_client.py | 1 + hotdata/configuration.py | 1 + hotdata/exceptions.py | 1 + hotdata/models/__init__.py | 15 +- hotdata/models/api_error_detail.py | 1 + hotdata/models/api_error_response.py | 1 + hotdata/models/boolean_profile_detail.py | 91 +++++++++ hotdata/models/categorical_profile_detail.py | 96 +++++++++ hotdata/models/category_value_info.py | 5 +- hotdata/models/column_info.py | 1 + hotdata/models/column_profile_detail.py | 3 +- .../models/column_profile_detail_one_of.py | 11 +- .../models/column_profile_detail_one_of1.py | 3 +- .../models/column_profile_detail_one_of2.py | 3 +- .../models/column_profile_detail_one_of3.py | 3 +- .../models/column_profile_detail_one_of4.py | 3 +- hotdata/models/column_profile_info.py | 3 +- hotdata/models/column_type_spec.py | 12 +- hotdata/models/connection_health_response.py | 3 +- hotdata/models/connection_info.py | 1 + hotdata/models/connection_refresh_result.py | 1 + hotdata/models/connection_schema_error.py | 1 + hotdata/models/create_connection_request.py | 12 +- hotdata/models/create_connection_response.py | 3 +- hotdata/models/create_dataset_request.py | 3 +- hotdata/models/create_dataset_response.py | 1 + hotdata/models/create_saved_query_request.py | 8 +- hotdata/models/create_secret_request.py | 1 + hotdata/models/create_secret_response.py | 1 + hotdata/models/create_workspace_request.py | 1 + hotdata/models/create_workspace_response.py | 94 +++++++++ hotdata/models/dataset_source.py | 49 ++--- hotdata/models/dataset_summary.py | 1 + hotdata/models/discovery_status.py | 1 + hotdata/models/error.py | 1 + hotdata/models/execute_saved_query_request.py | 5 +- hotdata/models/get_connection_response.py | 1 + hotdata/models/get_dataset_response.py | 1 + hotdata/models/get_result_response.py | 25 ++- hotdata/models/get_secret_response.py | 1 + hotdata/models/information_schema_response.py | 5 +- hotdata/models/inline_data.py | 18 +- hotdata/models/inline_dataset_source.py | 92 +++++++++ hotdata/models/list_connections_response.py | 1 + hotdata/models/list_datasets_response.py | 1 + hotdata/models/list_query_runs_response.py | 5 +- hotdata/models/list_results_response.py | 1 + hotdata/models/list_saved_queries_response.py | 1 + .../list_saved_query_versions_response.py | 1 + hotdata/models/list_secrets_response.py | 1 + hotdata/models/list_uploads_response.py | 1 + hotdata/models/list_workspaces_response.py | 98 +++++++++ hotdata/models/numeric_profile_detail.py | 92 +++++++++ hotdata/models/query_request.py | 1 + hotdata/models/query_response.py | 7 +- hotdata/models/query_run_info.py | 21 +- hotdata/models/refresh_request.py | 9 +- hotdata/models/refresh_response.py | 1 + hotdata/models/refresh_warning.py | 5 +- hotdata/models/result_info.py | 3 +- hotdata/models/saved_query_detail.py | 21 +- hotdata/models/saved_query_summary.py | 1 + hotdata/models/saved_query_version_info.py | 21 +- hotdata/models/schema_refresh_result.py | 1 + hotdata/models/secret_metadata_response.py | 1 + hotdata/models/table_info.py | 8 +- hotdata/models/table_profile_response.py | 3 +- hotdata/models/table_refresh_error.py | 1 + hotdata/models/table_refresh_result.py | 1 + hotdata/models/temporal_profile_detail.py | 90 +++++++++ hotdata/models/text_profile_detail.py | 93 +++++++++ hotdata/models/update_dataset_request.py | 7 +- hotdata/models/update_dataset_response.py | 1 + hotdata/models/update_saved_query_request.py | 16 +- hotdata/models/update_secret_request.py | 1 + hotdata/models/update_secret_response.py | 1 + hotdata/models/upload_dataset_source.py | 97 +++++++++ hotdata/models/upload_info.py | 3 +- hotdata/models/upload_response.py | 3 +- hotdata/models/workspace_detail.py | 1 + hotdata/models/workspace_list_item.py | 1 + hotdata/rest.py | 1 + pyproject.toml | 3 +- setup.py | 6 +- test/test_boolean_profile_detail.py | 55 ++++++ test/test_categorical_profile_detail.py | 61 ++++++ test/test_create_workspace_response.py | 63 ++++++ test/test_inline_dataset_source.py | 63 ++++++ test/test_list_workspaces_response.py | 71 +++++++ test/test_numeric_profile_detail.py | 57 ++++++ test/test_temporal_profile_detail.py | 55 ++++++ test/test_text_profile_detail.py | 57 ++++++ test/test_upload_dataset_source.py | 57 ++++++ 159 files changed, 2678 insertions(+), 618 deletions(-) create mode 100644 docs/BooleanProfileDetail.md create mode 100644 docs/CategoricalProfileDetail.md create mode 100644 docs/CreateWorkspaceResponse.md create mode 100644 docs/InlineDatasetSource.md create mode 100644 docs/ListWorkspacesResponse.md create mode 100644 docs/NumericProfileDetail.md create mode 100644 docs/TemporalProfileDetail.md create mode 100644 docs/TextProfileDetail.md create mode 100644 docs/UploadDatasetSource.md create mode 100644 hotdata/models/boolean_profile_detail.py create mode 100644 hotdata/models/categorical_profile_detail.py create mode 100644 hotdata/models/create_workspace_response.py create mode 100644 hotdata/models/inline_dataset_source.py create mode 100644 hotdata/models/list_workspaces_response.py create mode 100644 hotdata/models/numeric_profile_detail.py create mode 100644 hotdata/models/temporal_profile_detail.py create mode 100644 hotdata/models/text_profile_detail.py create mode 100644 hotdata/models/upload_dataset_source.py create mode 100644 test/test_boolean_profile_detail.py create mode 100644 test/test_categorical_profile_detail.py create mode 100644 test/test_create_workspace_response.py create mode 100644 test/test_inline_dataset_source.py create mode 100644 test/test_list_workspaces_response.py create mode 100644 test/test_numeric_profile_detail.py create mode 100644 test/test_temporal_profile_detail.py create mode 100644 test/test_text_profile_detail.py create mode 100644 test/test_upload_dataset_source.py diff --git a/.openapi-generator/FILES b/.openapi-generator/FILES index c9e752b..c9d6801 100644 --- a/.openapi-generator/FILES +++ b/.openapi-generator/FILES @@ -1,13 +1,11 @@ .github/workflows/python.yml .gitignore .gitlab-ci.yml -.openapi-generator-ignore -.travis.yml -README.md docs/ApiErrorDetail.md docs/ApiErrorResponse.md +docs/BooleanProfileDetail.md +docs/CategoricalProfileDetail.md docs/CategoryValueInfo.md -docs/ColumnDefinition.md docs/ColumnInfo.md docs/ColumnProfileDetail.md docs/ColumnProfileDetailOneOf.md @@ -29,11 +27,9 @@ docs/CreateDatasetResponse.md docs/CreateSavedQueryRequest.md docs/CreateSecretRequest.md docs/CreateSecretResponse.md -docs/CreateWorkspace201Response.md docs/CreateWorkspaceRequest.md +docs/CreateWorkspaceResponse.md docs/DatasetSource.md -docs/DatasetSourceOneOf.md -docs/DatasetSourceOneOf1.md docs/DatasetSummary.md docs/DatasetsApi.md docs/DiscoveryStatus.md @@ -46,6 +42,7 @@ docs/GetSecretResponse.md docs/InformationSchemaApi.md docs/InformationSchemaResponse.md docs/InlineData.md +docs/InlineDatasetSource.md docs/ListConnectionsResponse.md docs/ListDatasetsResponse.md docs/ListQueryRunsResponse.md @@ -54,7 +51,8 @@ docs/ListSavedQueriesResponse.md docs/ListSavedQueryVersionsResponse.md docs/ListSecretsResponse.md docs/ListUploadsResponse.md -docs/ListWorkspaces200Response.md +docs/ListWorkspacesResponse.md +docs/NumericProfileDetail.md docs/QueryApi.md docs/QueryRequest.md docs/QueryResponse.md @@ -77,18 +75,20 @@ docs/TableInfo.md docs/TableProfileResponse.md docs/TableRefreshError.md docs/TableRefreshResult.md +docs/TemporalProfileDetail.md +docs/TextProfileDetail.md docs/UpdateDatasetRequest.md docs/UpdateDatasetResponse.md docs/UpdateSavedQueryRequest.md docs/UpdateSecretRequest.md docs/UpdateSecretResponse.md +docs/UploadDatasetSource.md docs/UploadInfo.md docs/UploadResponse.md docs/UploadsApi.md docs/WorkspaceDetail.md docs/WorkspaceListItem.md docs/WorkspacesApi.md -git_push.sh hotdata/__init__.py hotdata/api/__init__.py hotdata/api/connections_api.py @@ -109,8 +109,9 @@ hotdata/exceptions.py hotdata/models/__init__.py hotdata/models/api_error_detail.py hotdata/models/api_error_response.py +hotdata/models/boolean_profile_detail.py +hotdata/models/categorical_profile_detail.py hotdata/models/category_value_info.py -hotdata/models/column_definition.py hotdata/models/column_info.py hotdata/models/column_profile_detail.py hotdata/models/column_profile_detail_one_of.py @@ -131,11 +132,9 @@ hotdata/models/create_dataset_response.py hotdata/models/create_saved_query_request.py hotdata/models/create_secret_request.py hotdata/models/create_secret_response.py -hotdata/models/create_workspace201_response.py hotdata/models/create_workspace_request.py +hotdata/models/create_workspace_response.py hotdata/models/dataset_source.py -hotdata/models/dataset_source_one_of.py -hotdata/models/dataset_source_one_of1.py hotdata/models/dataset_summary.py hotdata/models/discovery_status.py hotdata/models/error.py @@ -146,6 +145,7 @@ hotdata/models/get_result_response.py hotdata/models/get_secret_response.py hotdata/models/information_schema_response.py hotdata/models/inline_data.py +hotdata/models/inline_dataset_source.py hotdata/models/list_connections_response.py hotdata/models/list_datasets_response.py hotdata/models/list_query_runs_response.py @@ -154,7 +154,8 @@ hotdata/models/list_saved_queries_response.py hotdata/models/list_saved_query_versions_response.py hotdata/models/list_secrets_response.py hotdata/models/list_uploads_response.py -hotdata/models/list_workspaces200_response.py +hotdata/models/list_workspaces_response.py +hotdata/models/numeric_profile_detail.py hotdata/models/query_request.py hotdata/models/query_response.py hotdata/models/query_run_info.py @@ -171,11 +172,14 @@ hotdata/models/table_info.py hotdata/models/table_profile_response.py hotdata/models/table_refresh_error.py hotdata/models/table_refresh_result.py +hotdata/models/temporal_profile_detail.py +hotdata/models/text_profile_detail.py hotdata/models/update_dataset_request.py hotdata/models/update_dataset_response.py hotdata/models/update_saved_query_request.py hotdata/models/update_secret_request.py hotdata/models/update_secret_response.py +hotdata/models/upload_dataset_source.py hotdata/models/upload_info.py hotdata/models/upload_response.py hotdata/models/workspace_detail.py @@ -188,88 +192,13 @@ setup.cfg setup.py test-requirements.txt test/__init__.py -test/test_api_error_detail.py -test/test_api_error_response.py -test/test_category_value_info.py -test/test_column_definition.py -test/test_column_info.py -test/test_column_profile_detail.py -test/test_column_profile_detail_one_of.py -test/test_column_profile_detail_one_of1.py -test/test_column_profile_detail_one_of2.py -test/test_column_profile_detail_one_of3.py -test/test_column_profile_detail_one_of4.py -test/test_column_profile_info.py -test/test_column_type_spec.py -test/test_connection_health_response.py -test/test_connection_info.py -test/test_connection_refresh_result.py -test/test_connection_schema_error.py -test/test_connections_api.py -test/test_create_connection_request.py -test/test_create_connection_response.py -test/test_create_dataset_request.py -test/test_create_dataset_response.py -test/test_create_saved_query_request.py -test/test_create_secret_request.py -test/test_create_secret_response.py -test/test_create_workspace201_response.py -test/test_create_workspace_request.py -test/test_dataset_source.py -test/test_dataset_source_one_of.py -test/test_dataset_source_one_of1.py -test/test_dataset_summary.py -test/test_datasets_api.py -test/test_discovery_status.py -test/test_error.py -test/test_execute_saved_query_request.py -test/test_get_connection_response.py -test/test_get_dataset_response.py -test/test_get_result_response.py -test/test_get_secret_response.py -test/test_information_schema_api.py -test/test_information_schema_response.py -test/test_inline_data.py -test/test_list_connections_response.py -test/test_list_datasets_response.py -test/test_list_query_runs_response.py -test/test_list_results_response.py -test/test_list_saved_queries_response.py -test/test_list_saved_query_versions_response.py -test/test_list_secrets_response.py -test/test_list_uploads_response.py -test/test_list_workspaces200_response.py -test/test_query_api.py -test/test_query_request.py -test/test_query_response.py -test/test_query_run_info.py -test/test_query_runs_api.py -test/test_refresh_api.py -test/test_refresh_request.py -test/test_refresh_response.py -test/test_refresh_warning.py -test/test_result_info.py -test/test_results_api.py -test/test_saved_queries_api.py -test/test_saved_query_detail.py -test/test_saved_query_summary.py -test/test_saved_query_version_info.py -test/test_schema_refresh_result.py -test/test_secret_metadata_response.py -test/test_secrets_api.py -test/test_table_info.py -test/test_table_profile_response.py -test/test_table_refresh_error.py -test/test_table_refresh_result.py -test/test_update_dataset_request.py -test/test_update_dataset_response.py -test/test_update_saved_query_request.py -test/test_update_secret_request.py -test/test_update_secret_response.py -test/test_upload_info.py -test/test_upload_response.py -test/test_uploads_api.py -test/test_workspace_detail.py -test/test_workspace_list_item.py -test/test_workspaces_api.py +test/test_boolean_profile_detail.py +test/test_categorical_profile_detail.py +test/test_create_workspace_response.py +test/test_inline_dataset_source.py +test/test_list_workspaces_response.py +test/test_numeric_profile_detail.py +test/test_temporal_profile_detail.py +test/test_text_profile_detail.py +test/test_upload_dataset_source.py tox.ini diff --git a/docs/BooleanProfileDetail.md b/docs/BooleanProfileDetail.md new file mode 100644 index 0000000..3347741 --- /dev/null +++ b/docs/BooleanProfileDetail.md @@ -0,0 +1,31 @@ +# BooleanProfileDetail + +Boolean column. + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**false_count** | **int** | Number of false values | +**true_count** | **int** | Number of true values | + +## Example + +```python +from hotdata.models.boolean_profile_detail import BooleanProfileDetail + +# TODO update the JSON string below +json = "{}" +# create an instance of BooleanProfileDetail from a JSON string +boolean_profile_detail_instance = BooleanProfileDetail.from_json(json) +# print the JSON string representation of the object +print(BooleanProfileDetail.to_json()) + +# convert the object into a dict +boolean_profile_detail_dict = boolean_profile_detail_instance.to_dict() +# create an instance of BooleanProfileDetail from a dict +boolean_profile_detail_from_dict = BooleanProfileDetail.from_dict(boolean_profile_detail_dict) +``` +[[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/docs/CategoricalProfileDetail.md b/docs/CategoricalProfileDetail.md new file mode 100644 index 0000000..0e672e1 --- /dev/null +++ b/docs/CategoricalProfileDetail.md @@ -0,0 +1,30 @@ +# CategoricalProfileDetail + +Type-specific column profile detail. The `type` discriminator field determines which variant is present. Profile type is chosen based on the column's Arrow data type and cardinality: - **categorical**: Text or numeric columns with ≤200 distinct values. Lists each value with its frequency. - **text**: Text columns with >200 distinct values. Reports string length statistics. - **numeric**: Numeric columns with >200 distinct values. Reports min, max, and mean. - **temporal**: Date and timestamp columns. Reports min and max as ISO-8601 strings. - **boolean**: Boolean columns. Reports true and false counts. Low-cardinality column (≤200 distinct values). Values sorted by frequency descending. + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**values** | [**List[CategoryValueInfo]**](CategoryValueInfo.md) | Distinct values with their counts, ordered by count descending | + +## Example + +```python +from hotdata.models.categorical_profile_detail import CategoricalProfileDetail + +# TODO update the JSON string below +json = "{}" +# create an instance of CategoricalProfileDetail from a JSON string +categorical_profile_detail_instance = CategoricalProfileDetail.from_json(json) +# print the JSON string representation of the object +print(CategoricalProfileDetail.to_json()) + +# convert the object into a dict +categorical_profile_detail_dict = categorical_profile_detail_instance.to_dict() +# create an instance of CategoricalProfileDetail from a dict +categorical_profile_detail_from_dict = CategoricalProfileDetail.from_dict(categorical_profile_detail_dict) +``` +[[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/docs/CategoryValueInfo.md b/docs/CategoryValueInfo.md index 6cac967..a1153e1 100644 --- a/docs/CategoryValueInfo.md +++ b/docs/CategoryValueInfo.md @@ -7,7 +7,7 @@ A distinct value with its frequency count, used in categorical profiles. Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **count** | **int** | Number of occurrences | -**value** | **object** | The distinct value (as a string, or null) | +**value** | **str** | The distinct value (as a string, or null) | [optional] ## Example diff --git a/docs/ColumnProfileDetail.md b/docs/ColumnProfileDetail.md index cda9e1d..aaa409c 100644 --- a/docs/ColumnProfileDetail.md +++ b/docs/ColumnProfileDetail.md @@ -1,13 +1,12 @@ # ColumnProfileDetail -Type-specific column profile detail. The `type` discriminator field determines which variant is present. Profile type is chosen based on the column's Arrow data type and cardinality: - **categorical**: Text or numeric columns with ≤200 distinct values. Lists each value with its frequency. - **text**: Text columns with >200 distinct values. Reports string length statistics. - **numeric**: Numeric columns with >200 distinct values. Reports min, max, and mean. - **temporal**: Date and timestamp columns. Reports min and max as ISO-8601 strings. - **boolean**: Boolean columns. Reports true and false counts. ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**type** | **str** | | **values** | [**List[CategoryValueInfo]**](CategoryValueInfo.md) | Distinct values with their counts, ordered by count descending | +**type** | **str** | | **avg_length** | **float** | Average string length | **max_length** | **int** | Longest string length in the column | **min_length** | **int** | Shortest string length in the column | diff --git a/docs/ColumnProfileDetailOneOf.md b/docs/ColumnProfileDetailOneOf.md index d538922..5a7a08e 100644 --- a/docs/ColumnProfileDetailOneOf.md +++ b/docs/ColumnProfileDetailOneOf.md @@ -1,13 +1,12 @@ # ColumnProfileDetailOneOf -Low-cardinality column (≤200 distinct values). Applies to text and numeric columns. Values are sorted by frequency descending. ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**type** | **str** | | **values** | [**List[CategoryValueInfo]**](CategoryValueInfo.md) | Distinct values with their counts, ordered by count descending | +**type** | **str** | | ## Example diff --git a/docs/ColumnProfileDetailOneOf1.md b/docs/ColumnProfileDetailOneOf1.md index 88877b1..1b74e19 100644 --- a/docs/ColumnProfileDetailOneOf1.md +++ b/docs/ColumnProfileDetailOneOf1.md @@ -1,6 +1,5 @@ # ColumnProfileDetailOneOf1 -High-cardinality text column (>200 distinct values). ## Properties diff --git a/docs/ColumnProfileDetailOneOf2.md b/docs/ColumnProfileDetailOneOf2.md index 49f7882..4c7c77a 100644 --- a/docs/ColumnProfileDetailOneOf2.md +++ b/docs/ColumnProfileDetailOneOf2.md @@ -1,6 +1,5 @@ # ColumnProfileDetailOneOf2 -High-cardinality numeric column (>200 distinct values). ## Properties diff --git a/docs/ColumnProfileDetailOneOf3.md b/docs/ColumnProfileDetailOneOf3.md index 0bc488c..b6e6ca7 100644 --- a/docs/ColumnProfileDetailOneOf3.md +++ b/docs/ColumnProfileDetailOneOf3.md @@ -1,6 +1,5 @@ # ColumnProfileDetailOneOf3 -Date or timestamp column. ## Properties diff --git a/docs/ColumnProfileDetailOneOf4.md b/docs/ColumnProfileDetailOneOf4.md index 670ef2b..95831d6 100644 --- a/docs/ColumnProfileDetailOneOf4.md +++ b/docs/ColumnProfileDetailOneOf4.md @@ -1,6 +1,5 @@ # ColumnProfileDetailOneOf4 -Boolean column. ## Properties diff --git a/docs/ColumnProfileInfo.md b/docs/ColumnProfileInfo.md index fbb3b6d..df437b5 100644 --- a/docs/ColumnProfileInfo.md +++ b/docs/ColumnProfileInfo.md @@ -11,7 +11,7 @@ Name | Type | Description | Notes **name** | **str** | Column name | **null_count** | **int** | Number of null values | **null_percentage** | **float** | Percentage of null values (0.0 to 100.0) | -**profile** | [**ColumnProfileDetail**](ColumnProfileDetail.md) | | [optional] +**profile** | [**ColumnProfileDetail**](ColumnProfileDetail.md) | Type-specific profile detail. Null when the column is all-null or has an unsupported type. | [optional] ## Example diff --git a/docs/ColumnTypeSpec.md b/docs/ColumnTypeSpec.md index e33a216..abd7678 100644 --- a/docs/ColumnTypeSpec.md +++ b/docs/ColumnTypeSpec.md @@ -6,10 +6,10 @@ Detailed column type specification with optional properties. Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**geometry_type** | **object** | Geometry type for GEOMETRY/GEOGRAPHY columns. E.g., \"Point\", \"LineString\", \"Polygon\", \"MultiPoint\", \"MultiLineString\", \"MultiPolygon\", \"GeometryCollection\", or \"Geometry\" (any). | [optional] -**precision** | **object** | Precision for DECIMAL type (1-38) | [optional] -**scale** | **object** | Scale for DECIMAL type | [optional] -**srid** | **object** | Spatial Reference System Identifier for GEOMETRY/GEOGRAPHY types. Common values: 4326 (WGS84), 3857 (Web Mercator). | [optional] +**geometry_type** | **str** | Geometry type for GEOMETRY/GEOGRAPHY columns. E.g., \"Point\", \"LineString\", \"Polygon\", \"MultiPoint\", \"MultiLineString\", \"MultiPolygon\", \"GeometryCollection\", or \"Geometry\" (any). | [optional] +**precision** | **int** | Precision for DECIMAL type (1-38) | [optional] +**scale** | **int** | Scale for DECIMAL type | [optional] +**srid** | **int** | Spatial Reference System Identifier for GEOMETRY/GEOGRAPHY types. Common values: 4326 (WGS84), 3857 (Web Mercator). | [optional] **type** | **str** | The data type name (e.g., \"DECIMAL\", \"TIMESTAMP\", \"GEOMETRY\") | ## Example diff --git a/docs/ConnectionHealthResponse.md b/docs/ConnectionHealthResponse.md index f4aaec1..4a9e9e7 100644 --- a/docs/ConnectionHealthResponse.md +++ b/docs/ConnectionHealthResponse.md @@ -7,7 +7,7 @@ Response body for GET /connections/{connection_id}/health Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **connection_id** | **str** | | -**error** | **object** | | [optional] +**error** | **str** | | [optional] **healthy** | **bool** | | **latency_ms** | **int** | | diff --git a/docs/ConnectionsApi.md b/docs/ConnectionsApi.md index f259035..c12e2ef 100644 --- a/docs/ConnectionsApi.md +++ b/docs/ConnectionsApi.md @@ -4,18 +4,18 @@ All URIs are relative to *https://app.hotdata.dev* Method | HTTP request | Description ------------- | ------------- | ------------- -[**check_connection_health_handler**](ConnectionsApi.md#check_connection_health_handler) | **GET** /v1/connections/{connection_id}/health | Check connection health -[**create_connection_handler**](ConnectionsApi.md#create_connection_handler) | **POST** /v1/connections | Create connection -[**delete_connection_handler**](ConnectionsApi.md#delete_connection_handler) | **DELETE** /v1/connections/{connection_id} | Delete connection -[**get_connection_handler**](ConnectionsApi.md#get_connection_handler) | **GET** /v1/connections/{connection_id} | Get connection -[**get_table_profile_handler**](ConnectionsApi.md#get_table_profile_handler) | **GET** /v1/connections/{connection_id}/tables/{schema}/{table}/profile | Get table profile -[**list_connections_handler**](ConnectionsApi.md#list_connections_handler) | **GET** /v1/connections | List connections -[**purge_connection_cache_handler**](ConnectionsApi.md#purge_connection_cache_handler) | **DELETE** /v1/connections/{connection_id}/cache | Purge connection cache -[**purge_table_cache_handler**](ConnectionsApi.md#purge_table_cache_handler) | **DELETE** /v1/connections/{connection_id}/tables/{schema}/{table}/cache | Purge table cache +[**check_connection_health**](ConnectionsApi.md#check_connection_health) | **GET** /v1/connections/{connection_id}/health | Check connection health +[**create_connection**](ConnectionsApi.md#create_connection) | **POST** /v1/connections | Create connection +[**delete_connection**](ConnectionsApi.md#delete_connection) | **DELETE** /v1/connections/{connection_id} | Delete connection +[**get_connection**](ConnectionsApi.md#get_connection) | **GET** /v1/connections/{connection_id} | Get connection +[**get_table_profile**](ConnectionsApi.md#get_table_profile) | **GET** /v1/connections/{connection_id}/tables/{schema}/{table}/profile | Get table profile +[**list_connections**](ConnectionsApi.md#list_connections) | **GET** /v1/connections | List connections +[**purge_connection_cache**](ConnectionsApi.md#purge_connection_cache) | **DELETE** /v1/connections/{connection_id}/cache | Purge connection cache +[**purge_table_cache**](ConnectionsApi.md#purge_table_cache) | **DELETE** /v1/connections/{connection_id}/tables/{schema}/{table}/cache | Purge table cache -# **check_connection_health_handler** -> ConnectionHealthResponse check_connection_health_handler(connection_id) +# **check_connection_health** +> ConnectionHealthResponse check_connection_health(connection_id) Check connection health @@ -23,6 +23,7 @@ Test connectivity to the remote database. Returns health status and latency. ### Example +* Bearer Authentication (BearerAuth): ```python import hotdata @@ -36,6 +37,15 @@ configuration = hotdata.Configuration( host = "https://app.hotdata.dev" ) +# The client must configure the authentication and authorization parameters +# in accordance with the API server security policy. +# Examples for each auth method are provided below, use the example that +# satisfies your auth use case. + +# Configure Bearer authorization: BearerAuth +configuration = hotdata.Configuration( + access_token = os.environ["BEARER_TOKEN"] +) # Enter a context with an instance of the API client with hotdata.ApiClient(configuration) as api_client: @@ -45,11 +55,11 @@ with hotdata.ApiClient(configuration) as api_client: try: # Check connection health - api_response = api_instance.check_connection_health_handler(connection_id) - print("The response of ConnectionsApi->check_connection_health_handler:\n") + api_response = api_instance.check_connection_health(connection_id) + print("The response of ConnectionsApi->check_connection_health:\n") pprint(api_response) except Exception as e: - print("Exception when calling ConnectionsApi->check_connection_health_handler: %s\n" % e) + print("Exception when calling ConnectionsApi->check_connection_health: %s\n" % e) ``` @@ -67,7 +77,7 @@ Name | Type | Description | Notes ### Authorization -No authorization required +[BearerAuth](../README.md#BearerAuth) ### HTTP request headers @@ -83,8 +93,8 @@ 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_connection_handler** -> CreateConnectionResponse create_connection_handler(create_connection_request) +# **create_connection** +> CreateConnectionResponse create_connection(create_connection_request) Create connection @@ -92,6 +102,7 @@ Register a new database connection. Provide the source type and connection confi ### Example +* Bearer Authentication (BearerAuth): ```python import hotdata @@ -106,6 +117,15 @@ configuration = hotdata.Configuration( host = "https://app.hotdata.dev" ) +# The client must configure the authentication and authorization parameters +# in accordance with the API server security policy. +# Examples for each auth method are provided below, use the example that +# satisfies your auth use case. + +# Configure Bearer authorization: BearerAuth +configuration = hotdata.Configuration( + access_token = os.environ["BEARER_TOKEN"] +) # Enter a context with an instance of the API client with hotdata.ApiClient(configuration) as api_client: @@ -115,11 +135,11 @@ with hotdata.ApiClient(configuration) as api_client: try: # Create connection - api_response = api_instance.create_connection_handler(create_connection_request) - print("The response of ConnectionsApi->create_connection_handler:\n") + api_response = api_instance.create_connection(create_connection_request) + print("The response of ConnectionsApi->create_connection:\n") pprint(api_response) except Exception as e: - print("Exception when calling ConnectionsApi->create_connection_handler: %s\n" % e) + print("Exception when calling ConnectionsApi->create_connection: %s\n" % e) ``` @@ -137,7 +157,7 @@ Name | Type | Description | Notes ### Authorization -No authorization required +[BearerAuth](../README.md#BearerAuth) ### HTTP request headers @@ -154,8 +174,8 @@ No authorization required [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) -# **delete_connection_handler** -> delete_connection_handler(connection_id) +# **delete_connection** +> delete_connection(connection_id) Delete connection @@ -163,6 +183,7 @@ Delete a connection and its cached data. ### Example +* Bearer Authentication (BearerAuth): ```python import hotdata @@ -175,6 +196,15 @@ configuration = hotdata.Configuration( host = "https://app.hotdata.dev" ) +# The client must configure the authentication and authorization parameters +# in accordance with the API server security policy. +# Examples for each auth method are provided below, use the example that +# satisfies your auth use case. + +# Configure Bearer authorization: BearerAuth +configuration = hotdata.Configuration( + access_token = os.environ["BEARER_TOKEN"] +) # Enter a context with an instance of the API client with hotdata.ApiClient(configuration) as api_client: @@ -184,9 +214,9 @@ with hotdata.ApiClient(configuration) as api_client: try: # Delete connection - api_instance.delete_connection_handler(connection_id) + api_instance.delete_connection(connection_id) except Exception as e: - print("Exception when calling ConnectionsApi->delete_connection_handler: %s\n" % e) + print("Exception when calling ConnectionsApi->delete_connection: %s\n" % e) ``` @@ -204,7 +234,7 @@ void (empty response body) ### Authorization -No authorization required +[BearerAuth](../README.md#BearerAuth) ### HTTP request headers @@ -220,8 +250,8 @@ 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_connection_handler** -> GetConnectionResponse get_connection_handler(connection_id) +# **get_connection** +> GetConnectionResponse get_connection(connection_id) Get connection @@ -229,6 +259,7 @@ Get details for a specific connection, including table and sync counts. ### Example +* Bearer Authentication (BearerAuth): ```python import hotdata @@ -242,6 +273,15 @@ configuration = hotdata.Configuration( host = "https://app.hotdata.dev" ) +# The client must configure the authentication and authorization parameters +# in accordance with the API server security policy. +# Examples for each auth method are provided below, use the example that +# satisfies your auth use case. + +# Configure Bearer authorization: BearerAuth +configuration = hotdata.Configuration( + access_token = os.environ["BEARER_TOKEN"] +) # Enter a context with an instance of the API client with hotdata.ApiClient(configuration) as api_client: @@ -251,11 +291,11 @@ with hotdata.ApiClient(configuration) as api_client: try: # Get connection - api_response = api_instance.get_connection_handler(connection_id) - print("The response of ConnectionsApi->get_connection_handler:\n") + api_response = api_instance.get_connection(connection_id) + print("The response of ConnectionsApi->get_connection:\n") pprint(api_response) except Exception as e: - print("Exception when calling ConnectionsApi->get_connection_handler: %s\n" % e) + print("Exception when calling ConnectionsApi->get_connection: %s\n" % e) ``` @@ -273,7 +313,7 @@ Name | Type | Description | Notes ### Authorization -No authorization required +[BearerAuth](../README.md#BearerAuth) ### HTTP request headers @@ -289,8 +329,8 @@ 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_table_profile_handler** -> TableProfileResponse get_table_profile_handler(connection_id, var_schema, table) +# **get_table_profile** +> TableProfileResponse get_table_profile(connection_id, var_schema, table) Get table profile @@ -298,6 +338,7 @@ Get column-level statistics for a synced table. Returns per-column profiles incl ### Example +* Bearer Authentication (BearerAuth): ```python import hotdata @@ -311,6 +352,15 @@ configuration = hotdata.Configuration( host = "https://app.hotdata.dev" ) +# The client must configure the authentication and authorization parameters +# in accordance with the API server security policy. +# Examples for each auth method are provided below, use the example that +# satisfies your auth use case. + +# Configure Bearer authorization: BearerAuth +configuration = hotdata.Configuration( + access_token = os.environ["BEARER_TOKEN"] +) # Enter a context with an instance of the API client with hotdata.ApiClient(configuration) as api_client: @@ -322,11 +372,11 @@ with hotdata.ApiClient(configuration) as api_client: try: # Get table profile - api_response = api_instance.get_table_profile_handler(connection_id, var_schema, table) - print("The response of ConnectionsApi->get_table_profile_handler:\n") + api_response = api_instance.get_table_profile(connection_id, var_schema, table) + print("The response of ConnectionsApi->get_table_profile:\n") pprint(api_response) except Exception as e: - print("Exception when calling ConnectionsApi->get_table_profile_handler: %s\n" % e) + print("Exception when calling ConnectionsApi->get_table_profile: %s\n" % e) ``` @@ -346,7 +396,7 @@ Name | Type | Description | Notes ### Authorization -No authorization required +[BearerAuth](../README.md#BearerAuth) ### HTTP request headers @@ -362,8 +412,8 @@ 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_connections_handler** -> ListConnectionsResponse list_connections_handler() +# **list_connections** +> ListConnectionsResponse list_connections() List connections @@ -371,6 +421,7 @@ List all registered database connections. ### Example +* Bearer Authentication (BearerAuth): ```python import hotdata @@ -384,6 +435,15 @@ configuration = hotdata.Configuration( host = "https://app.hotdata.dev" ) +# The client must configure the authentication and authorization parameters +# in accordance with the API server security policy. +# Examples for each auth method are provided below, use the example that +# satisfies your auth use case. + +# Configure Bearer authorization: BearerAuth +configuration = hotdata.Configuration( + access_token = os.environ["BEARER_TOKEN"] +) # Enter a context with an instance of the API client with hotdata.ApiClient(configuration) as api_client: @@ -392,11 +452,11 @@ with hotdata.ApiClient(configuration) as api_client: try: # List connections - api_response = api_instance.list_connections_handler() - print("The response of ConnectionsApi->list_connections_handler:\n") + api_response = api_instance.list_connections() + print("The response of ConnectionsApi->list_connections:\n") pprint(api_response) except Exception as e: - print("Exception when calling ConnectionsApi->list_connections_handler: %s\n" % e) + print("Exception when calling ConnectionsApi->list_connections: %s\n" % e) ``` @@ -411,7 +471,7 @@ This endpoint does not need any parameter. ### Authorization -No authorization required +[BearerAuth](../README.md#BearerAuth) ### HTTP request headers @@ -426,8 +486,8 @@ 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) -# **purge_connection_cache_handler** -> purge_connection_cache_handler(connection_id) +# **purge_connection_cache** +> purge_connection_cache(connection_id) Purge connection cache @@ -435,6 +495,7 @@ Purge all cached data for a connection. The next query against these tables will ### Example +* Bearer Authentication (BearerAuth): ```python import hotdata @@ -447,6 +508,15 @@ configuration = hotdata.Configuration( host = "https://app.hotdata.dev" ) +# The client must configure the authentication and authorization parameters +# in accordance with the API server security policy. +# Examples for each auth method are provided below, use the example that +# satisfies your auth use case. + +# Configure Bearer authorization: BearerAuth +configuration = hotdata.Configuration( + access_token = os.environ["BEARER_TOKEN"] +) # Enter a context with an instance of the API client with hotdata.ApiClient(configuration) as api_client: @@ -456,9 +526,9 @@ with hotdata.ApiClient(configuration) as api_client: try: # Purge connection cache - api_instance.purge_connection_cache_handler(connection_id) + api_instance.purge_connection_cache(connection_id) except Exception as e: - print("Exception when calling ConnectionsApi->purge_connection_cache_handler: %s\n" % e) + print("Exception when calling ConnectionsApi->purge_connection_cache: %s\n" % e) ``` @@ -476,7 +546,7 @@ void (empty response body) ### Authorization -No authorization required +[BearerAuth](../README.md#BearerAuth) ### HTTP request headers @@ -492,8 +562,8 @@ 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) -# **purge_table_cache_handler** -> purge_table_cache_handler(connection_id, var_schema, table) +# **purge_table_cache** +> purge_table_cache(connection_id, var_schema, table) Purge table cache @@ -501,6 +571,7 @@ Purge the cached data for a single table. The next query will trigger a fresh sy ### Example +* Bearer Authentication (BearerAuth): ```python import hotdata @@ -513,6 +584,15 @@ configuration = hotdata.Configuration( host = "https://app.hotdata.dev" ) +# The client must configure the authentication and authorization parameters +# in accordance with the API server security policy. +# Examples for each auth method are provided below, use the example that +# satisfies your auth use case. + +# Configure Bearer authorization: BearerAuth +configuration = hotdata.Configuration( + access_token = os.environ["BEARER_TOKEN"] +) # Enter a context with an instance of the API client with hotdata.ApiClient(configuration) as api_client: @@ -524,9 +604,9 @@ with hotdata.ApiClient(configuration) as api_client: try: # Purge table cache - api_instance.purge_table_cache_handler(connection_id, var_schema, table) + api_instance.purge_table_cache(connection_id, var_schema, table) except Exception as e: - print("Exception when calling ConnectionsApi->purge_table_cache_handler: %s\n" % e) + print("Exception when calling ConnectionsApi->purge_table_cache: %s\n" % e) ``` @@ -546,7 +626,7 @@ void (empty response body) ### Authorization -No authorization required +[BearerAuth](../README.md#BearerAuth) ### HTTP request headers diff --git a/docs/CreateConnectionRequest.md b/docs/CreateConnectionRequest.md index 84f8151..006ec9a 100644 --- a/docs/CreateConnectionRequest.md +++ b/docs/CreateConnectionRequest.md @@ -6,10 +6,10 @@ Request body for POST /connections Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**config** | **object** | | +**config** | **Dict[str, object]** | Connection configuration object. Fields vary by source type (host, port, database, etc.). | **name** | **str** | | -**secret_id** | **object** | Optional reference to a secret by ID (e.g., \"secr_abc123\"). If provided, this secret will be used for authentication. Mutually exclusive with `secret_name`. | [optional] -**secret_name** | **object** | Optional reference to a secret by name. If provided, this secret will be used for authentication. Mutually exclusive with `secret_id`. | [optional] +**secret_id** | **str** | Optional reference to a secret by ID (e.g., \"secr_abc123\"). If provided, this secret will be used for authentication. Mutually exclusive with `secret_name`. | [optional] +**secret_name** | **str** | Optional reference to a secret by name. If provided, this secret will be used for authentication. Mutually exclusive with `secret_id`. | [optional] **source_type** | **str** | | ## Example diff --git a/docs/CreateConnectionResponse.md b/docs/CreateConnectionResponse.md index 7469ae2..cd5fd72 100644 --- a/docs/CreateConnectionResponse.md +++ b/docs/CreateConnectionResponse.md @@ -6,7 +6,7 @@ Response body for POST /connections Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**discovery_error** | **object** | | [optional] +**discovery_error** | **str** | | [optional] **discovery_status** | [**DiscoveryStatus**](DiscoveryStatus.md) | | **id** | **str** | | **name** | **str** | | diff --git a/docs/CreateDatasetRequest.md b/docs/CreateDatasetRequest.md index 15d4362..72e78e3 100644 --- a/docs/CreateDatasetRequest.md +++ b/docs/CreateDatasetRequest.md @@ -8,7 +8,7 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **label** | **str** | | **source** | [**DatasetSource**](DatasetSource.md) | | -**table_name** | **object** | Optional table_name - if not provided, derived from label | [optional] +**table_name** | **str** | Optional table_name - if not provided, derived from label | [optional] ## Example diff --git a/docs/CreateSavedQueryRequest.md b/docs/CreateSavedQueryRequest.md index 1933dbe..dce9643 100644 --- a/docs/CreateSavedQueryRequest.md +++ b/docs/CreateSavedQueryRequest.md @@ -6,7 +6,7 @@ Request body for POST /v1/queries Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**description** | **object** | | [optional] +**description** | **str** | | [optional] **name** | **str** | | **sql** | **str** | | **tags** | **List[str]** | | [optional] diff --git a/docs/CreateWorkspaceResponse.md b/docs/CreateWorkspaceResponse.md new file mode 100644 index 0000000..cfc8547 --- /dev/null +++ b/docs/CreateWorkspaceResponse.md @@ -0,0 +1,30 @@ +# CreateWorkspaceResponse + + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**ok** | **bool** | | +**workspace** | [**WorkspaceDetail**](WorkspaceDetail.md) | | + +## Example + +```python +from hotdata.models.create_workspace_response import CreateWorkspaceResponse + +# TODO update the JSON string below +json = "{}" +# create an instance of CreateWorkspaceResponse from a JSON string +create_workspace_response_instance = CreateWorkspaceResponse.from_json(json) +# print the JSON string representation of the object +print(CreateWorkspaceResponse.to_json()) + +# convert the object into a dict +create_workspace_response_dict = create_workspace_response_instance.to_dict() +# create an instance of CreateWorkspaceResponse from a dict +create_workspace_response_from_dict = CreateWorkspaceResponse.from_dict(create_workspace_response_dict) +``` +[[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/docs/DatasetSource.md b/docs/DatasetSource.md index aab5be5..6e6c280 100644 --- a/docs/DatasetSource.md +++ b/docs/DatasetSource.md @@ -6,8 +6,8 @@ Dataset source specification Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**columns** | [**Dict[str, ColumnDefinition]**](ColumnDefinition.md) | Optional explicit column definitions. Keys are column names, values are type specs. When provided, the schema is built from these definitions instead of being inferred. | [optional] -**format** | **object** | | [optional] +**columns** | **Dict[str, str]** | Optional explicit column definitions. Keys are column names, values are type specs. When provided, the schema is built from these definitions instead of being inferred. | [optional] +**format** | **str** | | [optional] **upload_id** | **str** | | **inline** | [**InlineData**](InlineData.md) | | diff --git a/docs/DatasetsApi.md b/docs/DatasetsApi.md index 78d5316..ee52c62 100644 --- a/docs/DatasetsApi.md +++ b/docs/DatasetsApi.md @@ -20,6 +20,7 @@ Create a new dataset from an uploaded file or inline data. The dataset becomes a ### Example +* Bearer Authentication (BearerAuth): ```python import hotdata @@ -34,6 +35,15 @@ configuration = hotdata.Configuration( host = "https://app.hotdata.dev" ) +# The client must configure the authentication and authorization parameters +# in accordance with the API server security policy. +# Examples for each auth method are provided below, use the example that +# satisfies your auth use case. + +# Configure Bearer authorization: BearerAuth +configuration = hotdata.Configuration( + access_token = os.environ["BEARER_TOKEN"] +) # Enter a context with an instance of the API client with hotdata.ApiClient(configuration) as api_client: @@ -65,7 +75,7 @@ Name | Type | Description | Notes ### Authorization -No authorization required +[BearerAuth](../README.md#BearerAuth) ### HTTP request headers @@ -89,6 +99,7 @@ Delete dataset ### Example +* Bearer Authentication (BearerAuth): ```python import hotdata @@ -101,6 +112,15 @@ configuration = hotdata.Configuration( host = "https://app.hotdata.dev" ) +# The client must configure the authentication and authorization parameters +# in accordance with the API server security policy. +# Examples for each auth method are provided below, use the example that +# satisfies your auth use case. + +# Configure Bearer authorization: BearerAuth +configuration = hotdata.Configuration( + access_token = os.environ["BEARER_TOKEN"] +) # Enter a context with an instance of the API client with hotdata.ApiClient(configuration) as api_client: @@ -130,7 +150,7 @@ void (empty response body) ### Authorization -No authorization required +[BearerAuth](../README.md#BearerAuth) ### HTTP request headers @@ -153,6 +173,7 @@ Get dataset ### Example +* Bearer Authentication (BearerAuth): ```python import hotdata @@ -166,6 +187,15 @@ configuration = hotdata.Configuration( host = "https://app.hotdata.dev" ) +# The client must configure the authentication and authorization parameters +# in accordance with the API server security policy. +# Examples for each auth method are provided below, use the example that +# satisfies your auth use case. + +# Configure Bearer authorization: BearerAuth +configuration = hotdata.Configuration( + access_token = os.environ["BEARER_TOKEN"] +) # Enter a context with an instance of the API client with hotdata.ApiClient(configuration) as api_client: @@ -197,7 +227,7 @@ Name | Type | Description | Notes ### Authorization -No authorization required +[BearerAuth](../README.md#BearerAuth) ### HTTP request headers @@ -220,6 +250,7 @@ List datasets ### Example +* Bearer Authentication (BearerAuth): ```python import hotdata @@ -233,6 +264,15 @@ configuration = hotdata.Configuration( host = "https://app.hotdata.dev" ) +# The client must configure the authentication and authorization parameters +# in accordance with the API server security policy. +# Examples for each auth method are provided below, use the example that +# satisfies your auth use case. + +# Configure Bearer authorization: BearerAuth +configuration = hotdata.Configuration( + access_token = os.environ["BEARER_TOKEN"] +) # Enter a context with an instance of the API client with hotdata.ApiClient(configuration) as api_client: @@ -266,7 +306,7 @@ Name | Type | Description | Notes ### Authorization -No authorization required +[BearerAuth](../README.md#BearerAuth) ### HTTP request headers @@ -288,6 +328,7 @@ Update dataset ### Example +* Bearer Authentication (BearerAuth): ```python import hotdata @@ -302,6 +343,15 @@ configuration = hotdata.Configuration( host = "https://app.hotdata.dev" ) +# The client must configure the authentication and authorization parameters +# in accordance with the API server security policy. +# Examples for each auth method are provided below, use the example that +# satisfies your auth use case. + +# Configure Bearer authorization: BearerAuth +configuration = hotdata.Configuration( + access_token = os.environ["BEARER_TOKEN"] +) # Enter a context with an instance of the API client with hotdata.ApiClient(configuration) as api_client: @@ -335,7 +385,7 @@ Name | Type | Description | Notes ### Authorization -No authorization required +[BearerAuth](../README.md#BearerAuth) ### HTTP request headers diff --git a/docs/ExecuteSavedQueryRequest.md b/docs/ExecuteSavedQueryRequest.md index 1b416cd..7f59891 100644 --- a/docs/ExecuteSavedQueryRequest.md +++ b/docs/ExecuteSavedQueryRequest.md @@ -6,7 +6,7 @@ Request body for POST /v1/queries/{id}/execute Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**version** | **object** | | [optional] +**version** | **int** | | [optional] ## Example diff --git a/docs/GetResultResponse.md b/docs/GetResultResponse.md index a8f0e2f..8af8616 100644 --- a/docs/GetResultResponse.md +++ b/docs/GetResultResponse.md @@ -7,11 +7,11 @@ Response body for GET /results/{id} Returns status and optionally the result dat Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **columns** | **List[str]** | | [optional] -**error_message** | **object** | | [optional] +**error_message** | **str** | | [optional] **nullable** | **List[bool]** | | [optional] **result_id** | **str** | | -**row_count** | **object** | | [optional] -**rows** | **List[List[object]]** | | [optional] +**row_count** | **int** | | [optional] +**rows** | **List[List[object]]** | Array of rows, where each row is an array of column values. | [optional] **status** | **str** | | ## Example diff --git a/docs/InformationSchemaApi.md b/docs/InformationSchemaApi.md index 0558cd4..4899bbf 100644 --- a/docs/InformationSchemaApi.md +++ b/docs/InformationSchemaApi.md @@ -4,11 +4,11 @@ All URIs are relative to *https://app.hotdata.dev* Method | HTTP request | Description ------------- | ------------- | ------------- -[**information_schema_handler**](InformationSchemaApi.md#information_schema_handler) | **GET** /v1/information_schema | List tables +[**information_schema**](InformationSchemaApi.md#information_schema) | **GET** /v1/information_schema | List tables -# **information_schema_handler** -> InformationSchemaResponse information_schema_handler(connection_id=connection_id, var_schema=var_schema, table=table, include_columns=include_columns, limit=limit, cursor=cursor) +# **information_schema** +> InformationSchemaResponse information_schema(connection_id=connection_id, var_schema=var_schema, table=table, include_columns=include_columns, limit=limit, cursor=cursor) List tables @@ -16,6 +16,7 @@ List discovered tables with optional filtering and pagination. Supports wildcard ### Example +* Bearer Authentication (BearerAuth): ```python import hotdata @@ -29,6 +30,15 @@ configuration = hotdata.Configuration( host = "https://app.hotdata.dev" ) +# The client must configure the authentication and authorization parameters +# in accordance with the API server security policy. +# Examples for each auth method are provided below, use the example that +# satisfies your auth use case. + +# Configure Bearer authorization: BearerAuth +configuration = hotdata.Configuration( + access_token = os.environ["BEARER_TOKEN"] +) # Enter a context with an instance of the API client with hotdata.ApiClient(configuration) as api_client: @@ -43,11 +53,11 @@ with hotdata.ApiClient(configuration) as api_client: try: # List tables - api_response = api_instance.information_schema_handler(connection_id=connection_id, var_schema=var_schema, table=table, include_columns=include_columns, limit=limit, cursor=cursor) - print("The response of InformationSchemaApi->information_schema_handler:\n") + api_response = api_instance.information_schema(connection_id=connection_id, var_schema=var_schema, table=table, include_columns=include_columns, limit=limit, cursor=cursor) + print("The response of InformationSchemaApi->information_schema:\n") pprint(api_response) except Exception as e: - print("Exception when calling InformationSchemaApi->information_schema_handler: %s\n" % e) + print("Exception when calling InformationSchemaApi->information_schema: %s\n" % e) ``` @@ -70,7 +80,7 @@ Name | Type | Description | Notes ### Authorization -No authorization required +[BearerAuth](../README.md#BearerAuth) ### HTTP request headers diff --git a/docs/InformationSchemaResponse.md b/docs/InformationSchemaResponse.md index 97b710f..e485cee 100644 --- a/docs/InformationSchemaResponse.md +++ b/docs/InformationSchemaResponse.md @@ -9,7 +9,7 @@ Name | Type | Description | Notes **count** | **int** | | **has_more** | **bool** | | **limit** | **int** | | -**next_cursor** | **object** | | [optional] +**next_cursor** | **str** | | [optional] **tables** | [**List[TableInfo]**](TableInfo.md) | | ## Example diff --git a/docs/InlineData.md b/docs/InlineData.md index 123eac6..a0a7bdf 100644 --- a/docs/InlineData.md +++ b/docs/InlineData.md @@ -6,7 +6,7 @@ Inline data specification Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**columns** | [**Dict[str, ColumnDefinition]**](ColumnDefinition.md) | Optional explicit column definitions. Keys are column names, values are type specs. When provided, the schema is built from these definitions instead of being inferred. | [optional] +**columns** | **Dict[str, str]** | Optional explicit column definitions. Keys are column names, values are type specs. When provided, the schema is built from these definitions instead of being inferred. | [optional] **content** | **str** | | **format** | **str** | | diff --git a/docs/InlineDatasetSource.md b/docs/InlineDatasetSource.md new file mode 100644 index 0000000..aef6220 --- /dev/null +++ b/docs/InlineDatasetSource.md @@ -0,0 +1,30 @@ +# InlineDatasetSource + +Create dataset from inline data (small payloads) + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**inline** | [**InlineData**](InlineData.md) | | + +## Example + +```python +from hotdata.models.inline_dataset_source import InlineDatasetSource + +# TODO update the JSON string below +json = "{}" +# create an instance of InlineDatasetSource from a JSON string +inline_dataset_source_instance = InlineDatasetSource.from_json(json) +# print the JSON string representation of the object +print(InlineDatasetSource.to_json()) + +# convert the object into a dict +inline_dataset_source_dict = inline_dataset_source_instance.to_dict() +# create an instance of InlineDatasetSource from a dict +inline_dataset_source_from_dict = InlineDatasetSource.from_dict(inline_dataset_source_dict) +``` +[[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/docs/ListQueryRunsResponse.md b/docs/ListQueryRunsResponse.md index 8a4679d..c19a81b 100644 --- a/docs/ListQueryRunsResponse.md +++ b/docs/ListQueryRunsResponse.md @@ -9,7 +9,7 @@ Name | Type | Description | Notes **count** | **int** | | **has_more** | **bool** | | **limit** | **int** | | -**next_cursor** | **object** | | [optional] +**next_cursor** | **str** | | [optional] **query_runs** | [**List[QueryRunInfo]**](QueryRunInfo.md) | | ## Example diff --git a/docs/ListWorkspacesResponse.md b/docs/ListWorkspacesResponse.md new file mode 100644 index 0000000..c1155ae --- /dev/null +++ b/docs/ListWorkspacesResponse.md @@ -0,0 +1,30 @@ +# ListWorkspacesResponse + + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**ok** | **bool** | | +**workspaces** | [**List[WorkspaceListItem]**](WorkspaceListItem.md) | | + +## Example + +```python +from hotdata.models.list_workspaces_response import ListWorkspacesResponse + +# TODO update the JSON string below +json = "{}" +# create an instance of ListWorkspacesResponse from a JSON string +list_workspaces_response_instance = ListWorkspacesResponse.from_json(json) +# print the JSON string representation of the object +print(ListWorkspacesResponse.to_json()) + +# convert the object into a dict +list_workspaces_response_dict = list_workspaces_response_instance.to_dict() +# create an instance of ListWorkspacesResponse from a dict +list_workspaces_response_from_dict = ListWorkspacesResponse.from_dict(list_workspaces_response_dict) +``` +[[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/docs/NumericProfileDetail.md b/docs/NumericProfileDetail.md new file mode 100644 index 0000000..d25a646 --- /dev/null +++ b/docs/NumericProfileDetail.md @@ -0,0 +1,32 @@ +# NumericProfileDetail + +High-cardinality numeric column (>200 distinct values). + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**max** | **str** | Maximum value (string to preserve precision for large integers and decimals) | +**mean** | **float** | Arithmetic mean | +**min** | **str** | Minimum value (string to preserve precision for large integers and decimals) | + +## Example + +```python +from hotdata.models.numeric_profile_detail import NumericProfileDetail + +# TODO update the JSON string below +json = "{}" +# create an instance of NumericProfileDetail from a JSON string +numeric_profile_detail_instance = NumericProfileDetail.from_json(json) +# print the JSON string representation of the object +print(NumericProfileDetail.to_json()) + +# convert the object into a dict +numeric_profile_detail_dict = numeric_profile_detail_instance.to_dict() +# create an instance of NumericProfileDetail from a dict +numeric_profile_detail_from_dict = NumericProfileDetail.from_dict(numeric_profile_detail_dict) +``` +[[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/docs/QueryApi.md b/docs/QueryApi.md index c1e5838..1d3555d 100644 --- a/docs/QueryApi.md +++ b/docs/QueryApi.md @@ -4,11 +4,11 @@ All URIs are relative to *https://app.hotdata.dev* Method | HTTP request | Description ------------- | ------------- | ------------- -[**query_handler**](QueryApi.md#query_handler) | **POST** /v1/query | Execute SQL query +[**query**](QueryApi.md#query) | **POST** /v1/query | Execute SQL query -# **query_handler** -> QueryResponse query_handler(query_request) +# **query** +> QueryResponse query(query_request) Execute SQL query @@ -16,6 +16,7 @@ Execute a SQL query against all registered connections and datasets. Use standar ### Example +* Bearer Authentication (BearerAuth): ```python import hotdata @@ -30,6 +31,15 @@ configuration = hotdata.Configuration( host = "https://app.hotdata.dev" ) +# The client must configure the authentication and authorization parameters +# in accordance with the API server security policy. +# Examples for each auth method are provided below, use the example that +# satisfies your auth use case. + +# Configure Bearer authorization: BearerAuth +configuration = hotdata.Configuration( + access_token = os.environ["BEARER_TOKEN"] +) # Enter a context with an instance of the API client with hotdata.ApiClient(configuration) as api_client: @@ -39,11 +49,11 @@ with hotdata.ApiClient(configuration) as api_client: try: # Execute SQL query - api_response = api_instance.query_handler(query_request) - print("The response of QueryApi->query_handler:\n") + api_response = api_instance.query(query_request) + print("The response of QueryApi->query:\n") pprint(api_response) except Exception as e: - print("Exception when calling QueryApi->query_handler: %s\n" % e) + print("Exception when calling QueryApi->query: %s\n" % e) ``` @@ -61,7 +71,7 @@ Name | Type | Description | Notes ### Authorization -No authorization required +[BearerAuth](../README.md#BearerAuth) ### HTTP request headers diff --git a/docs/QueryResponse.md b/docs/QueryResponse.md index 8dc8cf6..fb66678 100644 --- a/docs/QueryResponse.md +++ b/docs/QueryResponse.md @@ -10,10 +10,10 @@ Name | Type | Description | Notes **execution_time_ms** | **int** | | **nullable** | **List[bool]** | Nullable flags for each column (parallel to columns vec). True if the column allows NULL values, false if NOT NULL. | **query_run_id** | **str** | Unique identifier for the query run record (qrun...). | -**result_id** | **object** | Unique identifier for retrieving this result via GET /results/{id}. Null if catalog registration failed (see `warning` field for details). When non-null, the result is being persisted asynchronously. | [optional] +**result_id** | **str** | Unique identifier for retrieving this result via GET /results/{id}. Null if catalog registration failed (see `warning` field for details). When non-null, the result is being persisted asynchronously. | [optional] **row_count** | **int** | | -**rows** | **List[List[object]]** | | -**warning** | **object** | Warning message if result persistence could not be initiated. When present, `result_id` will be null and the result cannot be retrieved later. The query results are still returned in this response. | [optional] +**rows** | **List[List[object]]** | Array of rows, where each row is an array of column values. Values can be strings, numbers, booleans, or null. | +**warning** | **str** | Warning message if result persistence could not be initiated. When present, `result_id` will be null and the result cannot be retrieved later. The query results are still returned in this response. | [optional] ## Example diff --git a/docs/QueryRunInfo.md b/docs/QueryRunInfo.md index 0c56206..2b02c89 100644 --- a/docs/QueryRunInfo.md +++ b/docs/QueryRunInfo.md @@ -6,21 +6,21 @@ Single query run for listing Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**completed_at** | **object** | | [optional] +**completed_at** | **datetime** | | [optional] **created_at** | **datetime** | | -**error_message** | **object** | | [optional] -**execution_time_ms** | **object** | | [optional] +**error_message** | **str** | | [optional] +**execution_time_ms** | **int** | | [optional] **id** | **str** | | -**result_id** | **object** | | [optional] -**row_count** | **object** | | [optional] -**saved_query_id** | **object** | | [optional] -**saved_query_version** | **object** | | [optional] +**result_id** | **str** | | [optional] +**row_count** | **int** | | [optional] +**saved_query_id** | **str** | | [optional] +**saved_query_version** | **int** | | [optional] **snapshot_id** | **str** | | **sql_hash** | **str** | | **sql_text** | **str** | | **status** | **str** | | -**trace_id** | **object** | | [optional] -**warning_message** | **object** | | [optional] +**trace_id** | **str** | | [optional] +**warning_message** | **str** | | [optional] ## Example diff --git a/docs/QueryRunsApi.md b/docs/QueryRunsApi.md index 0f150fd..42f06e8 100644 --- a/docs/QueryRunsApi.md +++ b/docs/QueryRunsApi.md @@ -4,16 +4,17 @@ All URIs are relative to *https://app.hotdata.dev* Method | HTTP request | Description ------------- | ------------- | ------------- -[**list_query_runs_handler**](QueryRunsApi.md#list_query_runs_handler) | **GET** /v1/query-runs | List query runs +[**list_query_runs**](QueryRunsApi.md#list_query_runs) | **GET** /v1/query-runs | List query runs -# **list_query_runs_handler** -> ListQueryRunsResponse list_query_runs_handler(limit=limit, cursor=cursor) +# **list_query_runs** +> ListQueryRunsResponse list_query_runs(limit=limit, cursor=cursor) List query runs ### Example +* Bearer Authentication (BearerAuth): ```python import hotdata @@ -27,6 +28,15 @@ configuration = hotdata.Configuration( host = "https://app.hotdata.dev" ) +# The client must configure the authentication and authorization parameters +# in accordance with the API server security policy. +# Examples for each auth method are provided below, use the example that +# satisfies your auth use case. + +# Configure Bearer authorization: BearerAuth +configuration = hotdata.Configuration( + access_token = os.environ["BEARER_TOKEN"] +) # Enter a context with an instance of the API client with hotdata.ApiClient(configuration) as api_client: @@ -37,11 +47,11 @@ with hotdata.ApiClient(configuration) as api_client: try: # List query runs - api_response = api_instance.list_query_runs_handler(limit=limit, cursor=cursor) - print("The response of QueryRunsApi->list_query_runs_handler:\n") + api_response = api_instance.list_query_runs(limit=limit, cursor=cursor) + print("The response of QueryRunsApi->list_query_runs:\n") pprint(api_response) except Exception as e: - print("Exception when calling QueryRunsApi->list_query_runs_handler: %s\n" % e) + print("Exception when calling QueryRunsApi->list_query_runs: %s\n" % e) ``` @@ -60,7 +70,7 @@ Name | Type | Description | Notes ### Authorization -No authorization required +[BearerAuth](../README.md#BearerAuth) ### HTTP request headers diff --git a/docs/RefreshApi.md b/docs/RefreshApi.md index bafb878..40eef37 100644 --- a/docs/RefreshApi.md +++ b/docs/RefreshApi.md @@ -4,11 +4,11 @@ All URIs are relative to *https://app.hotdata.dev* Method | HTTP request | Description ------------- | ------------- | ------------- -[**refresh_handler**](RefreshApi.md#refresh_handler) | **POST** /v1/refresh | Refresh connection data +[**refresh**](RefreshApi.md#refresh) | **POST** /v1/refresh | Refresh connection data -# **refresh_handler** -> RefreshResponse refresh_handler(refresh_request) +# **refresh** +> RefreshResponse refresh(refresh_request) Refresh connection data @@ -21,6 +21,7 @@ Refresh schema metadata or table data. The behavior depends on the request field ### Example +* Bearer Authentication (BearerAuth): ```python import hotdata @@ -35,6 +36,15 @@ configuration = hotdata.Configuration( host = "https://app.hotdata.dev" ) +# The client must configure the authentication and authorization parameters +# in accordance with the API server security policy. +# Examples for each auth method are provided below, use the example that +# satisfies your auth use case. + +# Configure Bearer authorization: BearerAuth +configuration = hotdata.Configuration( + access_token = os.environ["BEARER_TOKEN"] +) # Enter a context with an instance of the API client with hotdata.ApiClient(configuration) as api_client: @@ -44,11 +54,11 @@ with hotdata.ApiClient(configuration) as api_client: try: # Refresh connection data - api_response = api_instance.refresh_handler(refresh_request) - print("The response of RefreshApi->refresh_handler:\n") + api_response = api_instance.refresh(refresh_request) + print("The response of RefreshApi->refresh:\n") pprint(api_response) except Exception as e: - print("Exception when calling RefreshApi->refresh_handler: %s\n" % e) + print("Exception when calling RefreshApi->refresh: %s\n" % e) ``` @@ -66,7 +76,7 @@ Name | Type | Description | Notes ### Authorization -No authorization required +[BearerAuth](../README.md#BearerAuth) ### HTTP request headers diff --git a/docs/RefreshRequest.md b/docs/RefreshRequest.md index 5fd1acd..379afa5 100644 --- a/docs/RefreshRequest.md +++ b/docs/RefreshRequest.md @@ -6,11 +6,11 @@ Request body for POST /refresh Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**connection_id** | **object** | | [optional] +**connection_id** | **str** | | [optional] **data** | **bool** | | [optional] **include_uncached** | **bool** | Controls whether uncached tables are included in connection-wide data refresh. - `false` (default): Only refresh tables that already have cached data. This is the common case for keeping existing data up-to-date. - `true`: Also sync tables that haven't been cached yet, essentially performing an initial sync for any new tables discovered since the connection was created. This field only applies to connection-wide data refresh (when `data=true` and `table_name` is not specified). It has no effect on single-table refresh or schema refresh operations. | [optional] -**schema_name** | **object** | | [optional] -**table_name** | **object** | | [optional] +**schema_name** | **str** | | [optional] +**table_name** | **str** | | [optional] ## Example diff --git a/docs/RefreshWarning.md b/docs/RefreshWarning.md index b524ee6..69491cb 100644 --- a/docs/RefreshWarning.md +++ b/docs/RefreshWarning.md @@ -7,8 +7,8 @@ Non-fatal warning that occurred during a refresh operation. Used to report issue Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **message** | **str** | | -**schema_name** | **object** | | [optional] -**table_name** | **object** | | [optional] +**schema_name** | **str** | | [optional] +**table_name** | **str** | | [optional] ## Example diff --git a/docs/ResultInfo.md b/docs/ResultInfo.md index e15dba2..748fb84 100644 --- a/docs/ResultInfo.md +++ b/docs/ResultInfo.md @@ -7,7 +7,7 @@ Summary of a persisted query result for listing Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **created_at** | **datetime** | | -**error_message** | **object** | | [optional] +**error_message** | **str** | | [optional] **id** | **str** | | **status** | **str** | | diff --git a/docs/ResultsApi.md b/docs/ResultsApi.md index b9e1e96..5a9f80d 100644 --- a/docs/ResultsApi.md +++ b/docs/ResultsApi.md @@ -4,12 +4,12 @@ All URIs are relative to *https://app.hotdata.dev* Method | HTTP request | Description ------------- | ------------- | ------------- -[**get_result_handler**](ResultsApi.md#get_result_handler) | **GET** /v1/results/{id} | Get result -[**list_results_handler**](ResultsApi.md#list_results_handler) | **GET** /v1/results | List results +[**get_result**](ResultsApi.md#get_result) | **GET** /v1/results/{id} | Get result +[**list_results**](ResultsApi.md#list_results) | **GET** /v1/results | List results -# **get_result_handler** -> GetResultResponse get_result_handler(id) +# **get_result** +> GetResultResponse get_result(id) Get result @@ -17,6 +17,7 @@ Retrieve a persisted query result by ID. If the result is still being processed, ### Example +* Bearer Authentication (BearerAuth): ```python import hotdata @@ -30,6 +31,15 @@ configuration = hotdata.Configuration( host = "https://app.hotdata.dev" ) +# The client must configure the authentication and authorization parameters +# in accordance with the API server security policy. +# Examples for each auth method are provided below, use the example that +# satisfies your auth use case. + +# Configure Bearer authorization: BearerAuth +configuration = hotdata.Configuration( + access_token = os.environ["BEARER_TOKEN"] +) # Enter a context with an instance of the API client with hotdata.ApiClient(configuration) as api_client: @@ -39,11 +49,11 @@ with hotdata.ApiClient(configuration) as api_client: try: # Get result - api_response = api_instance.get_result_handler(id) - print("The response of ResultsApi->get_result_handler:\n") + api_response = api_instance.get_result(id) + print("The response of ResultsApi->get_result:\n") pprint(api_response) except Exception as e: - print("Exception when calling ResultsApi->get_result_handler: %s\n" % e) + print("Exception when calling ResultsApi->get_result: %s\n" % e) ``` @@ -61,7 +71,7 @@ Name | Type | Description | Notes ### Authorization -No authorization required +[BearerAuth](../README.md#BearerAuth) ### HTTP request headers @@ -77,13 +87,14 @@ 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_results_handler** -> ListResultsResponse list_results_handler(limit=limit, offset=offset) +# **list_results** +> ListResultsResponse list_results(limit=limit, offset=offset) List results ### Example +* Bearer Authentication (BearerAuth): ```python import hotdata @@ -97,6 +108,15 @@ configuration = hotdata.Configuration( host = "https://app.hotdata.dev" ) +# The client must configure the authentication and authorization parameters +# in accordance with the API server security policy. +# Examples for each auth method are provided below, use the example that +# satisfies your auth use case. + +# Configure Bearer authorization: BearerAuth +configuration = hotdata.Configuration( + access_token = os.environ["BEARER_TOKEN"] +) # Enter a context with an instance of the API client with hotdata.ApiClient(configuration) as api_client: @@ -107,11 +127,11 @@ with hotdata.ApiClient(configuration) as api_client: try: # List results - api_response = api_instance.list_results_handler(limit=limit, offset=offset) - print("The response of ResultsApi->list_results_handler:\n") + api_response = api_instance.list_results(limit=limit, offset=offset) + print("The response of ResultsApi->list_results:\n") pprint(api_response) except Exception as e: - print("Exception when calling ResultsApi->list_results_handler: %s\n" % e) + print("Exception when calling ResultsApi->list_results: %s\n" % e) ``` @@ -130,7 +150,7 @@ Name | Type | Description | Notes ### Authorization -No authorization required +[BearerAuth](../README.md#BearerAuth) ### HTTP request headers diff --git a/docs/SavedQueriesApi.md b/docs/SavedQueriesApi.md index c88c8e6..abebd5d 100644 --- a/docs/SavedQueriesApi.md +++ b/docs/SavedQueriesApi.md @@ -22,6 +22,7 @@ Save a named SQL query. The SQL is stored as version 1 and automatically analyze ### Example +* Bearer Authentication (BearerAuth): ```python import hotdata @@ -36,6 +37,15 @@ configuration = hotdata.Configuration( host = "https://app.hotdata.dev" ) +# The client must configure the authentication and authorization parameters +# in accordance with the API server security policy. +# Examples for each auth method are provided below, use the example that +# satisfies your auth use case. + +# Configure Bearer authorization: BearerAuth +configuration = hotdata.Configuration( + access_token = os.environ["BEARER_TOKEN"] +) # Enter a context with an instance of the API client with hotdata.ApiClient(configuration) as api_client: @@ -67,7 +77,7 @@ Name | Type | Description | Notes ### Authorization -No authorization required +[BearerAuth](../README.md#BearerAuth) ### HTTP request headers @@ -90,6 +100,7 @@ Delete saved query ### Example +* Bearer Authentication (BearerAuth): ```python import hotdata @@ -102,6 +113,15 @@ configuration = hotdata.Configuration( host = "https://app.hotdata.dev" ) +# The client must configure the authentication and authorization parameters +# in accordance with the API server security policy. +# Examples for each auth method are provided below, use the example that +# satisfies your auth use case. + +# Configure Bearer authorization: BearerAuth +configuration = hotdata.Configuration( + access_token = os.environ["BEARER_TOKEN"] +) # Enter a context with an instance of the API client with hotdata.ApiClient(configuration) as api_client: @@ -131,7 +151,7 @@ void (empty response body) ### Authorization -No authorization required +[BearerAuth](../README.md#BearerAuth) ### HTTP request headers @@ -156,6 +176,7 @@ Execute a saved query. By default runs the latest version. Optionally specify a ### Example +* Bearer Authentication (BearerAuth): ```python import hotdata @@ -170,6 +191,15 @@ configuration = hotdata.Configuration( host = "https://app.hotdata.dev" ) +# The client must configure the authentication and authorization parameters +# in accordance with the API server security policy. +# Examples for each auth method are provided below, use the example that +# satisfies your auth use case. + +# Configure Bearer authorization: BearerAuth +configuration = hotdata.Configuration( + access_token = os.environ["BEARER_TOKEN"] +) # Enter a context with an instance of the API client with hotdata.ApiClient(configuration) as api_client: @@ -203,7 +233,7 @@ Name | Type | Description | Notes ### Authorization -No authorization required +[BearerAuth](../README.md#BearerAuth) ### HTTP request headers @@ -226,6 +256,7 @@ Get saved query ### Example +* Bearer Authentication (BearerAuth): ```python import hotdata @@ -239,6 +270,15 @@ configuration = hotdata.Configuration( host = "https://app.hotdata.dev" ) +# The client must configure the authentication and authorization parameters +# in accordance with the API server security policy. +# Examples for each auth method are provided below, use the example that +# satisfies your auth use case. + +# Configure Bearer authorization: BearerAuth +configuration = hotdata.Configuration( + access_token = os.environ["BEARER_TOKEN"] +) # Enter a context with an instance of the API client with hotdata.ApiClient(configuration) as api_client: @@ -270,7 +310,7 @@ Name | Type | Description | Notes ### Authorization -No authorization required +[BearerAuth](../README.md#BearerAuth) ### HTTP request headers @@ -293,6 +333,7 @@ List saved queries ### Example +* Bearer Authentication (BearerAuth): ```python import hotdata @@ -306,6 +347,15 @@ configuration = hotdata.Configuration( host = "https://app.hotdata.dev" ) +# The client must configure the authentication and authorization parameters +# in accordance with the API server security policy. +# Examples for each auth method are provided below, use the example that +# satisfies your auth use case. + +# Configure Bearer authorization: BearerAuth +configuration = hotdata.Configuration( + access_token = os.environ["BEARER_TOKEN"] +) # Enter a context with an instance of the API client with hotdata.ApiClient(configuration) as api_client: @@ -339,7 +389,7 @@ Name | Type | Description | Notes ### Authorization -No authorization required +[BearerAuth](../README.md#BearerAuth) ### HTTP request headers @@ -361,6 +411,7 @@ List saved query versions ### Example +* Bearer Authentication (BearerAuth): ```python import hotdata @@ -374,6 +425,15 @@ configuration = hotdata.Configuration( host = "https://app.hotdata.dev" ) +# The client must configure the authentication and authorization parameters +# in accordance with the API server security policy. +# Examples for each auth method are provided below, use the example that +# satisfies your auth use case. + +# Configure Bearer authorization: BearerAuth +configuration = hotdata.Configuration( + access_token = os.environ["BEARER_TOKEN"] +) # Enter a context with an instance of the API client with hotdata.ApiClient(configuration) as api_client: @@ -409,7 +469,7 @@ Name | Type | Description | Notes ### Authorization -No authorization required +[BearerAuth](../README.md#BearerAuth) ### HTTP request headers @@ -434,6 +494,7 @@ Update a saved query. If the SQL changes, a new version is created (previous ver ### Example +* Bearer Authentication (BearerAuth): ```python import hotdata @@ -448,6 +509,15 @@ configuration = hotdata.Configuration( host = "https://app.hotdata.dev" ) +# The client must configure the authentication and authorization parameters +# in accordance with the API server security policy. +# Examples for each auth method are provided below, use the example that +# satisfies your auth use case. + +# Configure Bearer authorization: BearerAuth +configuration = hotdata.Configuration( + access_token = os.environ["BEARER_TOKEN"] +) # Enter a context with an instance of the API client with hotdata.ApiClient(configuration) as api_client: @@ -481,7 +551,7 @@ Name | Type | Description | Notes ### Authorization -No authorization required +[BearerAuth](../README.md#BearerAuth) ### HTTP request headers diff --git a/docs/SavedQueryDetail.md b/docs/SavedQueryDetail.md index 98bc81c..407ae80 100644 --- a/docs/SavedQueryDetail.md +++ b/docs/SavedQueryDetail.md @@ -6,22 +6,22 @@ Saved query detail (includes latest version's SQL) Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**category** | **object** | | [optional] +**category** | **str** | | [optional] **created_at** | **datetime** | | **description** | **str** | | -**has_aggregation** | **object** | | [optional] -**has_group_by** | **object** | | [optional] -**has_join** | **object** | | [optional] -**has_limit** | **object** | | [optional] -**has_order_by** | **object** | | [optional] -**has_predicate** | **object** | | [optional] +**has_aggregation** | **bool** | | [optional] +**has_group_by** | **bool** | | [optional] +**has_join** | **bool** | | [optional] +**has_limit** | **bool** | | [optional] +**has_order_by** | **bool** | | [optional] +**has_predicate** | **bool** | | [optional] **id** | **str** | | **latest_version** | **int** | | **name** | **str** | | -**num_tables** | **object** | | [optional] +**num_tables** | **int** | | [optional] **sql** | **str** | | **sql_hash** | **str** | | -**table_size** | **object** | | [optional] +**table_size** | **str** | | [optional] **tags** | **List[str]** | | **updated_at** | **datetime** | | diff --git a/docs/SavedQueryVersionInfo.md b/docs/SavedQueryVersionInfo.md index ad02241..35a1986 100644 --- a/docs/SavedQueryVersionInfo.md +++ b/docs/SavedQueryVersionInfo.md @@ -6,18 +6,18 @@ Single saved query version Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**category** | **object** | | [optional] +**category** | **str** | | [optional] **created_at** | **datetime** | | -**has_aggregation** | **object** | | [optional] -**has_group_by** | **object** | | [optional] -**has_join** | **object** | | [optional] -**has_limit** | **object** | | [optional] -**has_order_by** | **object** | | [optional] -**has_predicate** | **object** | | [optional] -**num_tables** | **object** | | [optional] +**has_aggregation** | **bool** | | [optional] +**has_group_by** | **bool** | | [optional] +**has_join** | **bool** | | [optional] +**has_limit** | **bool** | | [optional] +**has_order_by** | **bool** | | [optional] +**has_predicate** | **bool** | | [optional] +**num_tables** | **int** | | [optional] **sql** | **str** | | **sql_hash** | **str** | | -**table_size** | **object** | | [optional] +**table_size** | **str** | | [optional] **version** | **int** | | ## Example diff --git a/docs/SecretsApi.md b/docs/SecretsApi.md index 12ad550..e598865 100644 --- a/docs/SecretsApi.md +++ b/docs/SecretsApi.md @@ -4,15 +4,15 @@ All URIs are relative to *https://app.hotdata.dev* Method | HTTP request | Description ------------- | ------------- | ------------- -[**create_secret_handler**](SecretsApi.md#create_secret_handler) | **POST** /v1/secrets | Create secret -[**delete_secret_handler**](SecretsApi.md#delete_secret_handler) | **DELETE** /v1/secrets/{name} | Delete secret -[**get_secret_handler**](SecretsApi.md#get_secret_handler) | **GET** /v1/secrets/{name} | Get secret -[**list_secrets_handler**](SecretsApi.md#list_secrets_handler) | **GET** /v1/secrets | List secrets -[**update_secret_handler**](SecretsApi.md#update_secret_handler) | **PUT** /v1/secrets/{name} | Update secret +[**create_secret**](SecretsApi.md#create_secret) | **POST** /v1/secrets | Create secret +[**delete_secret**](SecretsApi.md#delete_secret) | **DELETE** /v1/secrets/{name} | Delete secret +[**get_secret**](SecretsApi.md#get_secret) | **GET** /v1/secrets/{name} | Get secret +[**list_secrets**](SecretsApi.md#list_secrets) | **GET** /v1/secrets | List secrets +[**update_secret**](SecretsApi.md#update_secret) | **PUT** /v1/secrets/{name} | Update secret -# **create_secret_handler** -> CreateSecretResponse create_secret_handler(create_secret_request) +# **create_secret** +> CreateSecretResponse create_secret(create_secret_request) Create secret @@ -20,6 +20,7 @@ Store a new named secret. The value is encrypted at rest and can be referenced b ### Example +* Bearer Authentication (BearerAuth): ```python import hotdata @@ -34,6 +35,15 @@ configuration = hotdata.Configuration( host = "https://app.hotdata.dev" ) +# The client must configure the authentication and authorization parameters +# in accordance with the API server security policy. +# Examples for each auth method are provided below, use the example that +# satisfies your auth use case. + +# Configure Bearer authorization: BearerAuth +configuration = hotdata.Configuration( + access_token = os.environ["BEARER_TOKEN"] +) # Enter a context with an instance of the API client with hotdata.ApiClient(configuration) as api_client: @@ -43,11 +53,11 @@ with hotdata.ApiClient(configuration) as api_client: try: # Create secret - api_response = api_instance.create_secret_handler(create_secret_request) - print("The response of SecretsApi->create_secret_handler:\n") + api_response = api_instance.create_secret(create_secret_request) + print("The response of SecretsApi->create_secret:\n") pprint(api_response) except Exception as e: - print("Exception when calling SecretsApi->create_secret_handler: %s\n" % e) + print("Exception when calling SecretsApi->create_secret: %s\n" % e) ``` @@ -65,7 +75,7 @@ Name | Type | Description | Notes ### Authorization -No authorization required +[BearerAuth](../README.md#BearerAuth) ### HTTP request headers @@ -81,13 +91,14 @@ No authorization required [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) -# **delete_secret_handler** -> delete_secret_handler(name) +# **delete_secret** +> delete_secret(name) Delete secret ### Example +* Bearer Authentication (BearerAuth): ```python import hotdata @@ -100,6 +111,15 @@ configuration = hotdata.Configuration( host = "https://app.hotdata.dev" ) +# The client must configure the authentication and authorization parameters +# in accordance with the API server security policy. +# Examples for each auth method are provided below, use the example that +# satisfies your auth use case. + +# Configure Bearer authorization: BearerAuth +configuration = hotdata.Configuration( + access_token = os.environ["BEARER_TOKEN"] +) # Enter a context with an instance of the API client with hotdata.ApiClient(configuration) as api_client: @@ -109,9 +129,9 @@ with hotdata.ApiClient(configuration) as api_client: try: # Delete secret - api_instance.delete_secret_handler(name) + api_instance.delete_secret(name) except Exception as e: - print("Exception when calling SecretsApi->delete_secret_handler: %s\n" % e) + print("Exception when calling SecretsApi->delete_secret: %s\n" % e) ``` @@ -129,7 +149,7 @@ void (empty response body) ### Authorization -No authorization required +[BearerAuth](../README.md#BearerAuth) ### HTTP request headers @@ -145,8 +165,8 @@ 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_secret_handler** -> GetSecretResponse get_secret_handler(name) +# **get_secret** +> GetSecretResponse get_secret(name) Get secret @@ -154,6 +174,7 @@ Get metadata for a secret. The secret value is never returned. ### Example +* Bearer Authentication (BearerAuth): ```python import hotdata @@ -167,6 +188,15 @@ configuration = hotdata.Configuration( host = "https://app.hotdata.dev" ) +# The client must configure the authentication and authorization parameters +# in accordance with the API server security policy. +# Examples for each auth method are provided below, use the example that +# satisfies your auth use case. + +# Configure Bearer authorization: BearerAuth +configuration = hotdata.Configuration( + access_token = os.environ["BEARER_TOKEN"] +) # Enter a context with an instance of the API client with hotdata.ApiClient(configuration) as api_client: @@ -176,11 +206,11 @@ with hotdata.ApiClient(configuration) as api_client: try: # Get secret - api_response = api_instance.get_secret_handler(name) - print("The response of SecretsApi->get_secret_handler:\n") + api_response = api_instance.get_secret(name) + print("The response of SecretsApi->get_secret:\n") pprint(api_response) except Exception as e: - print("Exception when calling SecretsApi->get_secret_handler: %s\n" % e) + print("Exception when calling SecretsApi->get_secret: %s\n" % e) ``` @@ -198,7 +228,7 @@ Name | Type | Description | Notes ### Authorization -No authorization required +[BearerAuth](../README.md#BearerAuth) ### HTTP request headers @@ -214,8 +244,8 @@ 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_secrets_handler** -> ListSecretsResponse list_secrets_handler() +# **list_secrets** +> ListSecretsResponse list_secrets() List secrets @@ -223,6 +253,7 @@ List all stored secrets. Only metadata (name, timestamps) is returned — secret ### Example +* Bearer Authentication (BearerAuth): ```python import hotdata @@ -236,6 +267,15 @@ configuration = hotdata.Configuration( host = "https://app.hotdata.dev" ) +# The client must configure the authentication and authorization parameters +# in accordance with the API server security policy. +# Examples for each auth method are provided below, use the example that +# satisfies your auth use case. + +# Configure Bearer authorization: BearerAuth +configuration = hotdata.Configuration( + access_token = os.environ["BEARER_TOKEN"] +) # Enter a context with an instance of the API client with hotdata.ApiClient(configuration) as api_client: @@ -244,11 +284,11 @@ with hotdata.ApiClient(configuration) as api_client: try: # List secrets - api_response = api_instance.list_secrets_handler() - print("The response of SecretsApi->list_secrets_handler:\n") + api_response = api_instance.list_secrets() + print("The response of SecretsApi->list_secrets:\n") pprint(api_response) except Exception as e: - print("Exception when calling SecretsApi->list_secrets_handler: %s\n" % e) + print("Exception when calling SecretsApi->list_secrets: %s\n" % e) ``` @@ -263,7 +303,7 @@ This endpoint does not need any parameter. ### Authorization -No authorization required +[BearerAuth](../README.md#BearerAuth) ### HTTP request headers @@ -278,13 +318,14 @@ 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) -# **update_secret_handler** -> UpdateSecretResponse update_secret_handler(name, update_secret_request) +# **update_secret** +> UpdateSecretResponse update_secret(name, update_secret_request) Update secret ### Example +* Bearer Authentication (BearerAuth): ```python import hotdata @@ -299,6 +340,15 @@ configuration = hotdata.Configuration( host = "https://app.hotdata.dev" ) +# The client must configure the authentication and authorization parameters +# in accordance with the API server security policy. +# Examples for each auth method are provided below, use the example that +# satisfies your auth use case. + +# Configure Bearer authorization: BearerAuth +configuration = hotdata.Configuration( + access_token = os.environ["BEARER_TOKEN"] +) # Enter a context with an instance of the API client with hotdata.ApiClient(configuration) as api_client: @@ -309,11 +359,11 @@ with hotdata.ApiClient(configuration) as api_client: try: # Update secret - api_response = api_instance.update_secret_handler(name, update_secret_request) - print("The response of SecretsApi->update_secret_handler:\n") + api_response = api_instance.update_secret(name, update_secret_request) + print("The response of SecretsApi->update_secret:\n") pprint(api_response) except Exception as e: - print("Exception when calling SecretsApi->update_secret_handler: %s\n" % e) + print("Exception when calling SecretsApi->update_secret: %s\n" % e) ``` @@ -332,7 +382,7 @@ Name | Type | Description | Notes ### Authorization -No authorization required +[BearerAuth](../README.md#BearerAuth) ### HTTP request headers diff --git a/docs/TableInfo.md b/docs/TableInfo.md index 3fa1eca..1caec60 100644 --- a/docs/TableInfo.md +++ b/docs/TableInfo.md @@ -8,7 +8,7 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **columns** | [**List[ColumnInfo]**](ColumnInfo.md) | | [optional] **connection** | **str** | | -**last_sync** | **object** | | [optional] +**last_sync** | **str** | | [optional] **var_schema** | **str** | | **synced** | **bool** | | **table** | **str** | | diff --git a/docs/TableProfileResponse.md b/docs/TableProfileResponse.md index 480e071..8dae5db 100644 --- a/docs/TableProfileResponse.md +++ b/docs/TableProfileResponse.md @@ -10,7 +10,7 @@ Name | Type | Description | Notes **connection** | **str** | Connection name | **row_count** | **int** | Total number of rows in the table | **var_schema** | **str** | Schema name | -**synced_at** | **object** | When the table was last synced | [optional] +**synced_at** | **str** | When the table was last synced | [optional] **table** | **str** | Table name | ## Example diff --git a/docs/TemporalProfileDetail.md b/docs/TemporalProfileDetail.md new file mode 100644 index 0000000..cd98f71 --- /dev/null +++ b/docs/TemporalProfileDetail.md @@ -0,0 +1,31 @@ +# TemporalProfileDetail + +Date or timestamp column. + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**max** | **str** | Latest value as ISO-8601 string | +**min** | **str** | Earliest value as ISO-8601 string | + +## Example + +```python +from hotdata.models.temporal_profile_detail import TemporalProfileDetail + +# TODO update the JSON string below +json = "{}" +# create an instance of TemporalProfileDetail from a JSON string +temporal_profile_detail_instance = TemporalProfileDetail.from_json(json) +# print the JSON string representation of the object +print(TemporalProfileDetail.to_json()) + +# convert the object into a dict +temporal_profile_detail_dict = temporal_profile_detail_instance.to_dict() +# create an instance of TemporalProfileDetail from a dict +temporal_profile_detail_from_dict = TemporalProfileDetail.from_dict(temporal_profile_detail_dict) +``` +[[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/docs/TextProfileDetail.md b/docs/TextProfileDetail.md new file mode 100644 index 0000000..0e9cc66 --- /dev/null +++ b/docs/TextProfileDetail.md @@ -0,0 +1,32 @@ +# TextProfileDetail + +High-cardinality text column (>200 distinct values). + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**avg_length** | **float** | Average string length | +**max_length** | **int** | Longest string length in the column | +**min_length** | **int** | Shortest string length in the column | + +## Example + +```python +from hotdata.models.text_profile_detail import TextProfileDetail + +# TODO update the JSON string below +json = "{}" +# create an instance of TextProfileDetail from a JSON string +text_profile_detail_instance = TextProfileDetail.from_json(json) +# print the JSON string representation of the object +print(TextProfileDetail.to_json()) + +# convert the object into a dict +text_profile_detail_dict = text_profile_detail_instance.to_dict() +# create an instance of TextProfileDetail from a dict +text_profile_detail_from_dict = TextProfileDetail.from_dict(text_profile_detail_dict) +``` +[[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/docs/UpdateDatasetRequest.md b/docs/UpdateDatasetRequest.md index 0c395af..a97fab5 100644 --- a/docs/UpdateDatasetRequest.md +++ b/docs/UpdateDatasetRequest.md @@ -6,8 +6,8 @@ Request body for PUT /v1/datasets/{id} Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**label** | **object** | | [optional] -**table_name** | **object** | | [optional] +**label** | **str** | | [optional] +**table_name** | **str** | | [optional] ## Example diff --git a/docs/UpdateSavedQueryRequest.md b/docs/UpdateSavedQueryRequest.md index b97435d..c80e865 100644 --- a/docs/UpdateSavedQueryRequest.md +++ b/docs/UpdateSavedQueryRequest.md @@ -6,11 +6,11 @@ Request body for PUT /v1/queries/{id} Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**category_override** | **object** | Override the auto-detected category. Send `null` to clear (revert to auto). | [optional] -**description** | **object** | | [optional] -**name** | **object** | Optional new name. When omitted the existing name is preserved. | [optional] -**sql** | **object** | Optional new SQL. When omitted the existing SQL is preserved. | [optional] -**table_size_override** | **object** | User annotation for table size. Send `null` to clear. | [optional] +**category_override** | **str** | Override the auto-detected category. Send `null` to clear (revert to auto). | [optional] +**description** | **str** | | [optional] +**name** | **str** | Optional new name. When omitted the existing name is preserved. | [optional] +**sql** | **str** | Optional new SQL. When omitted the existing SQL is preserved. | [optional] +**table_size_override** | **str** | User annotation for table size. Send `null` to clear. | [optional] **tags** | **List[str]** | | [optional] ## Example diff --git a/docs/UploadDatasetSource.md b/docs/UploadDatasetSource.md new file mode 100644 index 0000000..16c2518 --- /dev/null +++ b/docs/UploadDatasetSource.md @@ -0,0 +1,32 @@ +# UploadDatasetSource + +Create dataset from a previously uploaded file + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**columns** | **Dict[str, str]** | Optional explicit column definitions. Keys are column names, values are type specs. When provided, the schema is built from these definitions instead of being inferred. | [optional] +**format** | **str** | | [optional] +**upload_id** | **str** | | + +## Example + +```python +from hotdata.models.upload_dataset_source import UploadDatasetSource + +# TODO update the JSON string below +json = "{}" +# create an instance of UploadDatasetSource from a JSON string +upload_dataset_source_instance = UploadDatasetSource.from_json(json) +# print the JSON string representation of the object +print(UploadDatasetSource.to_json()) + +# convert the object into a dict +upload_dataset_source_dict = upload_dataset_source_instance.to_dict() +# create an instance of UploadDatasetSource from a dict +upload_dataset_source_from_dict = UploadDatasetSource.from_dict(upload_dataset_source_dict) +``` +[[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/docs/UploadInfo.md b/docs/UploadInfo.md index f20fed6..3b79b22 100644 --- a/docs/UploadInfo.md +++ b/docs/UploadInfo.md @@ -6,7 +6,7 @@ Single upload info for listing Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**content_type** | **object** | | [optional] +**content_type** | **str** | | [optional] **created_at** | **datetime** | | **id** | **str** | | **size_bytes** | **int** | | diff --git a/docs/UploadResponse.md b/docs/UploadResponse.md index 7dbb53f..9a8e3a1 100644 --- a/docs/UploadResponse.md +++ b/docs/UploadResponse.md @@ -6,7 +6,7 @@ Response body for POST /v1/files Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**content_type** | **object** | | [optional] +**content_type** | **str** | | [optional] **created_at** | **datetime** | | **id** | **str** | | **size_bytes** | **int** | | diff --git a/docs/UploadsApi.md b/docs/UploadsApi.md index fb0f0e7..432faeb 100644 --- a/docs/UploadsApi.md +++ b/docs/UploadsApi.md @@ -15,6 +15,7 @@ List uploads ### Example +* Bearer Authentication (BearerAuth): ```python import hotdata @@ -28,6 +29,15 @@ configuration = hotdata.Configuration( host = "https://app.hotdata.dev" ) +# The client must configure the authentication and authorization parameters +# in accordance with the API server security policy. +# Examples for each auth method are provided below, use the example that +# satisfies your auth use case. + +# Configure Bearer authorization: BearerAuth +configuration = hotdata.Configuration( + access_token = os.environ["BEARER_TOKEN"] +) # Enter a context with an instance of the API client with hotdata.ApiClient(configuration) as api_client: @@ -59,7 +69,7 @@ Name | Type | Description | Notes ### Authorization -No authorization required +[BearerAuth](../README.md#BearerAuth) ### HTTP request headers @@ -83,6 +93,7 @@ Upload a file to be used as a dataset source. Send the raw file bytes as the req ### Example +* Bearer Authentication (BearerAuth): ```python import hotdata @@ -96,6 +107,15 @@ configuration = hotdata.Configuration( host = "https://app.hotdata.dev" ) +# The client must configure the authentication and authorization parameters +# in accordance with the API server security policy. +# Examples for each auth method are provided below, use the example that +# satisfies your auth use case. + +# Configure Bearer authorization: BearerAuth +configuration = hotdata.Configuration( + access_token = os.environ["BEARER_TOKEN"] +) # Enter a context with an instance of the API client with hotdata.ApiClient(configuration) as api_client: @@ -127,7 +147,7 @@ Name | Type | Description | Notes ### Authorization -No authorization required +[BearerAuth](../README.md#BearerAuth) ### HTTP request headers diff --git a/docs/WorkspacesApi.md b/docs/WorkspacesApi.md index 412ae28..e2806d9 100644 --- a/docs/WorkspacesApi.md +++ b/docs/WorkspacesApi.md @@ -9,7 +9,7 @@ Method | HTTP request | Description # **create_workspace** -> CreateWorkspace201Response create_workspace(create_workspace_request) +> CreateWorkspaceResponse create_workspace(create_workspace_request) Create a workspace @@ -21,8 +21,8 @@ Creates a new workspace in the specified organization. ```python import hotdata -from hotdata.models.create_workspace201_response import CreateWorkspace201Response from hotdata.models.create_workspace_request import CreateWorkspaceRequest +from hotdata.models.create_workspace_response import CreateWorkspaceResponse from hotdata.rest import ApiException from pprint import pprint @@ -68,7 +68,7 @@ Name | Type | Description | Notes ### Return type -[**CreateWorkspace201Response**](CreateWorkspace201Response.md) +[**CreateWorkspaceResponse**](CreateWorkspaceResponse.md) ### Authorization @@ -93,7 +93,7 @@ Name | Type | Description | Notes [[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_workspaces** -> ListWorkspaces200Response list_workspaces(organization_public_id=organization_public_id) +> ListWorkspacesResponse list_workspaces(organization_public_id=organization_public_id) List workspaces @@ -105,7 +105,7 @@ Lists all workspaces in the user's organization. ```python import hotdata -from hotdata.models.list_workspaces200_response import ListWorkspaces200Response +from hotdata.models.list_workspaces_response import ListWorkspacesResponse from hotdata.rest import ApiException from pprint import pprint @@ -151,7 +151,7 @@ Name | Type | Description | Notes ### Return type -[**ListWorkspaces200Response**](ListWorkspaces200Response.md) +[**ListWorkspacesResponse**](ListWorkspacesResponse.md) ### Authorization diff --git a/hotdata/__init__.py b/hotdata/__init__.py index c733d13..9f720a1 100644 --- a/hotdata/__init__.py +++ b/hotdata/__init__.py @@ -8,6 +8,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -40,8 +41,9 @@ "ApiException", "ApiErrorDetail", "ApiErrorResponse", + "BooleanProfileDetail", + "CategoricalProfileDetail", "CategoryValueInfo", - "ColumnDefinition", "ColumnInfo", "ColumnProfileDetail", "ColumnProfileDetailOneOf", @@ -62,11 +64,9 @@ "CreateSavedQueryRequest", "CreateSecretRequest", "CreateSecretResponse", - "CreateWorkspace201Response", "CreateWorkspaceRequest", + "CreateWorkspaceResponse", "DatasetSource", - "DatasetSourceOneOf", - "DatasetSourceOneOf1", "DatasetSummary", "DiscoveryStatus", "Error", @@ -77,6 +77,7 @@ "GetSecretResponse", "InformationSchemaResponse", "InlineData", + "InlineDatasetSource", "ListConnectionsResponse", "ListDatasetsResponse", "ListQueryRunsResponse", @@ -85,7 +86,8 @@ "ListSavedQueryVersionsResponse", "ListSecretsResponse", "ListUploadsResponse", - "ListWorkspaces200Response", + "ListWorkspacesResponse", + "NumericProfileDetail", "QueryRequest", "QueryResponse", "QueryRunInfo", @@ -102,11 +104,14 @@ "TableProfileResponse", "TableRefreshError", "TableRefreshResult", + "TemporalProfileDetail", + "TextProfileDetail", "UpdateDatasetRequest", "UpdateDatasetResponse", "UpdateSavedQueryRequest", "UpdateSecretRequest", "UpdateSecretResponse", + "UploadDatasetSource", "UploadInfo", "UploadResponse", "WorkspaceDetail", @@ -140,8 +145,9 @@ # import models into sdk package from hotdata.models.api_error_detail import ApiErrorDetail as ApiErrorDetail from hotdata.models.api_error_response import ApiErrorResponse as ApiErrorResponse +from hotdata.models.boolean_profile_detail import BooleanProfileDetail as BooleanProfileDetail +from hotdata.models.categorical_profile_detail import CategoricalProfileDetail as CategoricalProfileDetail from hotdata.models.category_value_info import CategoryValueInfo as CategoryValueInfo -from hotdata.models.column_definition import ColumnDefinition as ColumnDefinition from hotdata.models.column_info import ColumnInfo as ColumnInfo from hotdata.models.column_profile_detail import ColumnProfileDetail as ColumnProfileDetail from hotdata.models.column_profile_detail_one_of import ColumnProfileDetailOneOf as ColumnProfileDetailOneOf @@ -162,11 +168,9 @@ from hotdata.models.create_saved_query_request import CreateSavedQueryRequest as CreateSavedQueryRequest from hotdata.models.create_secret_request import CreateSecretRequest as CreateSecretRequest from hotdata.models.create_secret_response import CreateSecretResponse as CreateSecretResponse -from hotdata.models.create_workspace201_response import CreateWorkspace201Response as CreateWorkspace201Response from hotdata.models.create_workspace_request import CreateWorkspaceRequest as CreateWorkspaceRequest +from hotdata.models.create_workspace_response import CreateWorkspaceResponse as CreateWorkspaceResponse from hotdata.models.dataset_source import DatasetSource as DatasetSource -from hotdata.models.dataset_source_one_of import DatasetSourceOneOf as DatasetSourceOneOf -from hotdata.models.dataset_source_one_of1 import DatasetSourceOneOf1 as DatasetSourceOneOf1 from hotdata.models.dataset_summary import DatasetSummary as DatasetSummary from hotdata.models.discovery_status import DiscoveryStatus as DiscoveryStatus from hotdata.models.error import Error as Error @@ -177,6 +181,7 @@ from hotdata.models.get_secret_response import GetSecretResponse as GetSecretResponse from hotdata.models.information_schema_response import InformationSchemaResponse as InformationSchemaResponse from hotdata.models.inline_data import InlineData as InlineData +from hotdata.models.inline_dataset_source import InlineDatasetSource as InlineDatasetSource from hotdata.models.list_connections_response import ListConnectionsResponse as ListConnectionsResponse from hotdata.models.list_datasets_response import ListDatasetsResponse as ListDatasetsResponse from hotdata.models.list_query_runs_response import ListQueryRunsResponse as ListQueryRunsResponse @@ -185,7 +190,8 @@ from hotdata.models.list_saved_query_versions_response import ListSavedQueryVersionsResponse as ListSavedQueryVersionsResponse from hotdata.models.list_secrets_response import ListSecretsResponse as ListSecretsResponse from hotdata.models.list_uploads_response import ListUploadsResponse as ListUploadsResponse -from hotdata.models.list_workspaces200_response import ListWorkspaces200Response as ListWorkspaces200Response +from hotdata.models.list_workspaces_response import ListWorkspacesResponse as ListWorkspacesResponse +from hotdata.models.numeric_profile_detail import NumericProfileDetail as NumericProfileDetail from hotdata.models.query_request import QueryRequest as QueryRequest from hotdata.models.query_response import QueryResponse as QueryResponse from hotdata.models.query_run_info import QueryRunInfo as QueryRunInfo @@ -202,11 +208,14 @@ from hotdata.models.table_profile_response import TableProfileResponse as TableProfileResponse from hotdata.models.table_refresh_error import TableRefreshError as TableRefreshError from hotdata.models.table_refresh_result import TableRefreshResult as TableRefreshResult +from hotdata.models.temporal_profile_detail import TemporalProfileDetail as TemporalProfileDetail +from hotdata.models.text_profile_detail import TextProfileDetail as TextProfileDetail from hotdata.models.update_dataset_request import UpdateDatasetRequest as UpdateDatasetRequest from hotdata.models.update_dataset_response import UpdateDatasetResponse as UpdateDatasetResponse from hotdata.models.update_saved_query_request import UpdateSavedQueryRequest as UpdateSavedQueryRequest from hotdata.models.update_secret_request import UpdateSecretRequest as UpdateSecretRequest from hotdata.models.update_secret_response import UpdateSecretResponse as UpdateSecretResponse +from hotdata.models.upload_dataset_source import UploadDatasetSource as UploadDatasetSource from hotdata.models.upload_info import UploadInfo as UploadInfo from hotdata.models.upload_response import UploadResponse as UploadResponse from hotdata.models.workspace_detail import WorkspaceDetail as WorkspaceDetail diff --git a/hotdata/api/connections_api.py b/hotdata/api/connections_api.py index ee7eab3..4a46b9c 100644 --- a/hotdata/api/connections_api.py +++ b/hotdata/api/connections_api.py @@ -4,6 +4,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -43,7 +44,7 @@ def __init__(self, api_client=None) -> None: @validate_call - def check_connection_health_handler( + def check_connection_health( self, connection_id: Annotated[StrictStr, Field(description="Connection ID")], _request_timeout: Union[ @@ -87,7 +88,7 @@ def check_connection_health_handler( :return: Returns the result object. """ # noqa: E501 - _param = self._check_connection_health_handler_serialize( + _param = self._check_connection_health_serialize( connection_id=connection_id, _request_auth=_request_auth, _content_type=_content_type, @@ -111,7 +112,7 @@ def check_connection_health_handler( @validate_call - def check_connection_health_handler_with_http_info( + def check_connection_health_with_http_info( self, connection_id: Annotated[StrictStr, Field(description="Connection ID")], _request_timeout: Union[ @@ -155,7 +156,7 @@ def check_connection_health_handler_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._check_connection_health_handler_serialize( + _param = self._check_connection_health_serialize( connection_id=connection_id, _request_auth=_request_auth, _content_type=_content_type, @@ -179,7 +180,7 @@ def check_connection_health_handler_with_http_info( @validate_call - def check_connection_health_handler_without_preload_content( + def check_connection_health_without_preload_content( self, connection_id: Annotated[StrictStr, Field(description="Connection ID")], _request_timeout: Union[ @@ -223,7 +224,7 @@ def check_connection_health_handler_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._check_connection_health_handler_serialize( + _param = self._check_connection_health_serialize( connection_id=connection_id, _request_auth=_request_auth, _content_type=_content_type, @@ -242,7 +243,7 @@ def check_connection_health_handler_without_preload_content( return response_data.response - def _check_connection_health_handler_serialize( + def _check_connection_health_serialize( self, connection_id, _request_auth, @@ -285,6 +286,7 @@ def _check_connection_health_handler_serialize( # authentication setting _auth_settings: List[str] = [ + 'BearerAuth' ] return self.api_client.param_serialize( @@ -306,7 +308,7 @@ def _check_connection_health_handler_serialize( @validate_call - def create_connection_handler( + def create_connection( self, create_connection_request: CreateConnectionRequest, _request_timeout: Union[ @@ -350,7 +352,7 @@ def create_connection_handler( :return: Returns the result object. """ # noqa: E501 - _param = self._create_connection_handler_serialize( + _param = self._create_connection_serialize( create_connection_request=create_connection_request, _request_auth=_request_auth, _content_type=_content_type, @@ -375,7 +377,7 @@ def create_connection_handler( @validate_call - def create_connection_handler_with_http_info( + def create_connection_with_http_info( self, create_connection_request: CreateConnectionRequest, _request_timeout: Union[ @@ -419,7 +421,7 @@ def create_connection_handler_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._create_connection_handler_serialize( + _param = self._create_connection_serialize( create_connection_request=create_connection_request, _request_auth=_request_auth, _content_type=_content_type, @@ -444,7 +446,7 @@ def create_connection_handler_with_http_info( @validate_call - def create_connection_handler_without_preload_content( + def create_connection_without_preload_content( self, create_connection_request: CreateConnectionRequest, _request_timeout: Union[ @@ -488,7 +490,7 @@ def create_connection_handler_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._create_connection_handler_serialize( + _param = self._create_connection_serialize( create_connection_request=create_connection_request, _request_auth=_request_auth, _content_type=_content_type, @@ -508,7 +510,7 @@ def create_connection_handler_without_preload_content( return response_data.response - def _create_connection_handler_serialize( + def _create_connection_serialize( self, create_connection_request, _request_auth, @@ -564,6 +566,7 @@ def _create_connection_handler_serialize( # authentication setting _auth_settings: List[str] = [ + 'BearerAuth' ] return self.api_client.param_serialize( @@ -585,7 +588,7 @@ def _create_connection_handler_serialize( @validate_call - def delete_connection_handler( + def delete_connection( self, connection_id: Annotated[StrictStr, Field(description="Connection ID")], _request_timeout: Union[ @@ -629,7 +632,7 @@ def delete_connection_handler( :return: Returns the result object. """ # noqa: E501 - _param = self._delete_connection_handler_serialize( + _param = self._delete_connection_serialize( connection_id=connection_id, _request_auth=_request_auth, _content_type=_content_type, @@ -653,7 +656,7 @@ def delete_connection_handler( @validate_call - def delete_connection_handler_with_http_info( + def delete_connection_with_http_info( self, connection_id: Annotated[StrictStr, Field(description="Connection ID")], _request_timeout: Union[ @@ -697,7 +700,7 @@ def delete_connection_handler_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._delete_connection_handler_serialize( + _param = self._delete_connection_serialize( connection_id=connection_id, _request_auth=_request_auth, _content_type=_content_type, @@ -721,7 +724,7 @@ def delete_connection_handler_with_http_info( @validate_call - def delete_connection_handler_without_preload_content( + def delete_connection_without_preload_content( self, connection_id: Annotated[StrictStr, Field(description="Connection ID")], _request_timeout: Union[ @@ -765,7 +768,7 @@ def delete_connection_handler_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._delete_connection_handler_serialize( + _param = self._delete_connection_serialize( connection_id=connection_id, _request_auth=_request_auth, _content_type=_content_type, @@ -784,7 +787,7 @@ def delete_connection_handler_without_preload_content( return response_data.response - def _delete_connection_handler_serialize( + def _delete_connection_serialize( self, connection_id, _request_auth, @@ -827,6 +830,7 @@ def _delete_connection_handler_serialize( # authentication setting _auth_settings: List[str] = [ + 'BearerAuth' ] return self.api_client.param_serialize( @@ -848,7 +852,7 @@ def _delete_connection_handler_serialize( @validate_call - def get_connection_handler( + def get_connection( self, connection_id: Annotated[StrictStr, Field(description="Connection ID")], _request_timeout: Union[ @@ -892,7 +896,7 @@ def get_connection_handler( :return: Returns the result object. """ # noqa: E501 - _param = self._get_connection_handler_serialize( + _param = self._get_connection_serialize( connection_id=connection_id, _request_auth=_request_auth, _content_type=_content_type, @@ -916,7 +920,7 @@ def get_connection_handler( @validate_call - def get_connection_handler_with_http_info( + def get_connection_with_http_info( self, connection_id: Annotated[StrictStr, Field(description="Connection ID")], _request_timeout: Union[ @@ -960,7 +964,7 @@ def get_connection_handler_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._get_connection_handler_serialize( + _param = self._get_connection_serialize( connection_id=connection_id, _request_auth=_request_auth, _content_type=_content_type, @@ -984,7 +988,7 @@ def get_connection_handler_with_http_info( @validate_call - def get_connection_handler_without_preload_content( + def get_connection_without_preload_content( self, connection_id: Annotated[StrictStr, Field(description="Connection ID")], _request_timeout: Union[ @@ -1028,7 +1032,7 @@ def get_connection_handler_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._get_connection_handler_serialize( + _param = self._get_connection_serialize( connection_id=connection_id, _request_auth=_request_auth, _content_type=_content_type, @@ -1047,7 +1051,7 @@ def get_connection_handler_without_preload_content( return response_data.response - def _get_connection_handler_serialize( + def _get_connection_serialize( self, connection_id, _request_auth, @@ -1090,6 +1094,7 @@ def _get_connection_handler_serialize( # authentication setting _auth_settings: List[str] = [ + 'BearerAuth' ] return self.api_client.param_serialize( @@ -1111,7 +1116,7 @@ def _get_connection_handler_serialize( @validate_call - def get_table_profile_handler( + def get_table_profile( self, connection_id: Annotated[StrictStr, Field(description="Connection ID")], var_schema: Annotated[StrictStr, Field(description="Schema name")], @@ -1161,7 +1166,7 @@ def get_table_profile_handler( :return: Returns the result object. """ # noqa: E501 - _param = self._get_table_profile_handler_serialize( + _param = self._get_table_profile_serialize( connection_id=connection_id, var_schema=var_schema, table=table, @@ -1187,7 +1192,7 @@ def get_table_profile_handler( @validate_call - def get_table_profile_handler_with_http_info( + def get_table_profile_with_http_info( self, connection_id: Annotated[StrictStr, Field(description="Connection ID")], var_schema: Annotated[StrictStr, Field(description="Schema name")], @@ -1237,7 +1242,7 @@ def get_table_profile_handler_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._get_table_profile_handler_serialize( + _param = self._get_table_profile_serialize( connection_id=connection_id, var_schema=var_schema, table=table, @@ -1263,7 +1268,7 @@ def get_table_profile_handler_with_http_info( @validate_call - def get_table_profile_handler_without_preload_content( + def get_table_profile_without_preload_content( self, connection_id: Annotated[StrictStr, Field(description="Connection ID")], var_schema: Annotated[StrictStr, Field(description="Schema name")], @@ -1313,7 +1318,7 @@ def get_table_profile_handler_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._get_table_profile_handler_serialize( + _param = self._get_table_profile_serialize( connection_id=connection_id, var_schema=var_schema, table=table, @@ -1334,7 +1339,7 @@ def get_table_profile_handler_without_preload_content( return response_data.response - def _get_table_profile_handler_serialize( + def _get_table_profile_serialize( self, connection_id, var_schema, @@ -1383,6 +1388,7 @@ def _get_table_profile_handler_serialize( # authentication setting _auth_settings: List[str] = [ + 'BearerAuth' ] return self.api_client.param_serialize( @@ -1404,7 +1410,7 @@ def _get_table_profile_handler_serialize( @validate_call - def list_connections_handler( + def list_connections( self, _request_timeout: Union[ None, @@ -1445,7 +1451,7 @@ def list_connections_handler( :return: Returns the result object. """ # noqa: E501 - _param = self._list_connections_handler_serialize( + _param = self._list_connections_serialize( _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1467,7 +1473,7 @@ def list_connections_handler( @validate_call - def list_connections_handler_with_http_info( + def list_connections_with_http_info( self, _request_timeout: Union[ None, @@ -1508,7 +1514,7 @@ def list_connections_handler_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._list_connections_handler_serialize( + _param = self._list_connections_serialize( _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1530,7 +1536,7 @@ def list_connections_handler_with_http_info( @validate_call - def list_connections_handler_without_preload_content( + def list_connections_without_preload_content( self, _request_timeout: Union[ None, @@ -1571,7 +1577,7 @@ def list_connections_handler_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._list_connections_handler_serialize( + _param = self._list_connections_serialize( _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1588,7 +1594,7 @@ def list_connections_handler_without_preload_content( return response_data.response - def _list_connections_handler_serialize( + def _list_connections_serialize( self, _request_auth, _content_type, @@ -1628,6 +1634,7 @@ def _list_connections_handler_serialize( # authentication setting _auth_settings: List[str] = [ + 'BearerAuth' ] return self.api_client.param_serialize( @@ -1649,7 +1656,7 @@ def _list_connections_handler_serialize( @validate_call - def purge_connection_cache_handler( + def purge_connection_cache( self, connection_id: Annotated[StrictStr, Field(description="Connection ID")], _request_timeout: Union[ @@ -1693,7 +1700,7 @@ def purge_connection_cache_handler( :return: Returns the result object. """ # noqa: E501 - _param = self._purge_connection_cache_handler_serialize( + _param = self._purge_connection_cache_serialize( connection_id=connection_id, _request_auth=_request_auth, _content_type=_content_type, @@ -1717,7 +1724,7 @@ def purge_connection_cache_handler( @validate_call - def purge_connection_cache_handler_with_http_info( + def purge_connection_cache_with_http_info( self, connection_id: Annotated[StrictStr, Field(description="Connection ID")], _request_timeout: Union[ @@ -1761,7 +1768,7 @@ def purge_connection_cache_handler_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._purge_connection_cache_handler_serialize( + _param = self._purge_connection_cache_serialize( connection_id=connection_id, _request_auth=_request_auth, _content_type=_content_type, @@ -1785,7 +1792,7 @@ def purge_connection_cache_handler_with_http_info( @validate_call - def purge_connection_cache_handler_without_preload_content( + def purge_connection_cache_without_preload_content( self, connection_id: Annotated[StrictStr, Field(description="Connection ID")], _request_timeout: Union[ @@ -1829,7 +1836,7 @@ def purge_connection_cache_handler_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._purge_connection_cache_handler_serialize( + _param = self._purge_connection_cache_serialize( connection_id=connection_id, _request_auth=_request_auth, _content_type=_content_type, @@ -1848,7 +1855,7 @@ def purge_connection_cache_handler_without_preload_content( return response_data.response - def _purge_connection_cache_handler_serialize( + def _purge_connection_cache_serialize( self, connection_id, _request_auth, @@ -1891,6 +1898,7 @@ def _purge_connection_cache_handler_serialize( # authentication setting _auth_settings: List[str] = [ + 'BearerAuth' ] return self.api_client.param_serialize( @@ -1912,7 +1920,7 @@ def _purge_connection_cache_handler_serialize( @validate_call - def purge_table_cache_handler( + def purge_table_cache( self, connection_id: Annotated[StrictStr, Field(description="Connection ID")], var_schema: Annotated[StrictStr, Field(description="Schema name")], @@ -1962,7 +1970,7 @@ def purge_table_cache_handler( :return: Returns the result object. """ # noqa: E501 - _param = self._purge_table_cache_handler_serialize( + _param = self._purge_table_cache_serialize( connection_id=connection_id, var_schema=var_schema, table=table, @@ -1988,7 +1996,7 @@ def purge_table_cache_handler( @validate_call - def purge_table_cache_handler_with_http_info( + def purge_table_cache_with_http_info( self, connection_id: Annotated[StrictStr, Field(description="Connection ID")], var_schema: Annotated[StrictStr, Field(description="Schema name")], @@ -2038,7 +2046,7 @@ def purge_table_cache_handler_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._purge_table_cache_handler_serialize( + _param = self._purge_table_cache_serialize( connection_id=connection_id, var_schema=var_schema, table=table, @@ -2064,7 +2072,7 @@ def purge_table_cache_handler_with_http_info( @validate_call - def purge_table_cache_handler_without_preload_content( + def purge_table_cache_without_preload_content( self, connection_id: Annotated[StrictStr, Field(description="Connection ID")], var_schema: Annotated[StrictStr, Field(description="Schema name")], @@ -2114,7 +2122,7 @@ def purge_table_cache_handler_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._purge_table_cache_handler_serialize( + _param = self._purge_table_cache_serialize( connection_id=connection_id, var_schema=var_schema, table=table, @@ -2135,7 +2143,7 @@ def purge_table_cache_handler_without_preload_content( return response_data.response - def _purge_table_cache_handler_serialize( + def _purge_table_cache_serialize( self, connection_id, var_schema, @@ -2184,6 +2192,7 @@ def _purge_table_cache_handler_serialize( # authentication setting _auth_settings: List[str] = [ + 'BearerAuth' ] return self.api_client.param_serialize( diff --git a/hotdata/api/datasets_api.py b/hotdata/api/datasets_api.py index 9386711..f52bdc2 100644 --- a/hotdata/api/datasets_api.py +++ b/hotdata/api/datasets_api.py @@ -4,6 +4,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -302,6 +303,7 @@ def _create_dataset_serialize( # authentication setting _auth_settings: List[str] = [ + 'BearerAuth' ] return self.api_client.param_serialize( @@ -562,6 +564,7 @@ def _delete_dataset_serialize( # authentication setting _auth_settings: List[str] = [ + 'BearerAuth' ] return self.api_client.param_serialize( @@ -822,6 +825,7 @@ def _get_dataset_serialize( # authentication setting _auth_settings: List[str] = [ + 'BearerAuth' ] return self.api_client.param_serialize( @@ -1098,6 +1102,7 @@ def _list_datasets_serialize( # authentication setting _auth_settings: List[str] = [ + 'BearerAuth' ] return self.api_client.param_serialize( @@ -1389,6 +1394,7 @@ def _update_dataset_serialize( # authentication setting _auth_settings: List[str] = [ + 'BearerAuth' ] return self.api_client.param_serialize( diff --git a/hotdata/api/information_schema_api.py b/hotdata/api/information_schema_api.py index 5eccb50..b50e406 100644 --- a/hotdata/api/information_schema_api.py +++ b/hotdata/api/information_schema_api.py @@ -4,6 +4,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -39,7 +40,7 @@ def __init__(self, api_client=None) -> None: @validate_call - def information_schema_handler( + def information_schema( self, connection_id: Annotated[Optional[StrictStr], Field(description="Filter by connection ID")] = None, var_schema: Annotated[Optional[StrictStr], Field(description="Filter by schema name (supports % wildcards)")] = None, @@ -98,7 +99,7 @@ def information_schema_handler( :return: Returns the result object. """ # noqa: E501 - _param = self._information_schema_handler_serialize( + _param = self._information_schema_serialize( connection_id=connection_id, var_schema=var_schema, table=table, @@ -127,7 +128,7 @@ def information_schema_handler( @validate_call - def information_schema_handler_with_http_info( + def information_schema_with_http_info( self, connection_id: Annotated[Optional[StrictStr], Field(description="Filter by connection ID")] = None, var_schema: Annotated[Optional[StrictStr], Field(description="Filter by schema name (supports % wildcards)")] = None, @@ -186,7 +187,7 @@ def information_schema_handler_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._information_schema_handler_serialize( + _param = self._information_schema_serialize( connection_id=connection_id, var_schema=var_schema, table=table, @@ -215,7 +216,7 @@ def information_schema_handler_with_http_info( @validate_call - def information_schema_handler_without_preload_content( + def information_schema_without_preload_content( self, connection_id: Annotated[Optional[StrictStr], Field(description="Filter by connection ID")] = None, var_schema: Annotated[Optional[StrictStr], Field(description="Filter by schema name (supports % wildcards)")] = None, @@ -274,7 +275,7 @@ def information_schema_handler_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._information_schema_handler_serialize( + _param = self._information_schema_serialize( connection_id=connection_id, var_schema=var_schema, table=table, @@ -298,7 +299,7 @@ def information_schema_handler_without_preload_content( return response_data.response - def _information_schema_handler_serialize( + def _information_schema_serialize( self, connection_id, var_schema, @@ -368,6 +369,7 @@ def _information_schema_handler_serialize( # authentication setting _auth_settings: List[str] = [ + 'BearerAuth' ] return self.api_client.param_serialize( diff --git a/hotdata/api/query_api.py b/hotdata/api/query_api.py index 30f87ed..471897c 100644 --- a/hotdata/api/query_api.py +++ b/hotdata/api/query_api.py @@ -4,6 +4,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -37,7 +38,7 @@ def __init__(self, api_client=None) -> None: @validate_call - def query_handler( + def query( self, query_request: QueryRequest, _request_timeout: Union[ @@ -81,7 +82,7 @@ def query_handler( :return: Returns the result object. """ # noqa: E501 - _param = self._query_handler_serialize( + _param = self._query_serialize( query_request=query_request, _request_auth=_request_auth, _content_type=_content_type, @@ -106,7 +107,7 @@ def query_handler( @validate_call - def query_handler_with_http_info( + def query_with_http_info( self, query_request: QueryRequest, _request_timeout: Union[ @@ -150,7 +151,7 @@ def query_handler_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._query_handler_serialize( + _param = self._query_serialize( query_request=query_request, _request_auth=_request_auth, _content_type=_content_type, @@ -175,7 +176,7 @@ def query_handler_with_http_info( @validate_call - def query_handler_without_preload_content( + def query_without_preload_content( self, query_request: QueryRequest, _request_timeout: Union[ @@ -219,7 +220,7 @@ def query_handler_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._query_handler_serialize( + _param = self._query_serialize( query_request=query_request, _request_auth=_request_auth, _content_type=_content_type, @@ -239,7 +240,7 @@ def query_handler_without_preload_content( return response_data.response - def _query_handler_serialize( + def _query_serialize( self, query_request, _request_auth, @@ -295,6 +296,7 @@ def _query_handler_serialize( # authentication setting _auth_settings: List[str] = [ + 'BearerAuth' ] return self.api_client.param_serialize( diff --git a/hotdata/api/query_runs_api.py b/hotdata/api/query_runs_api.py index 6ab1225..49eb0ba 100644 --- a/hotdata/api/query_runs_api.py +++ b/hotdata/api/query_runs_api.py @@ -4,6 +4,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -39,7 +40,7 @@ def __init__(self, api_client=None) -> None: @validate_call - def list_query_runs_handler( + def list_query_runs( self, limit: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Maximum number of results")] = None, cursor: Annotated[Optional[StrictStr], Field(description="Pagination cursor")] = None, @@ -85,7 +86,7 @@ def list_query_runs_handler( :return: Returns the result object. """ # noqa: E501 - _param = self._list_query_runs_handler_serialize( + _param = self._list_query_runs_serialize( limit=limit, cursor=cursor, _request_auth=_request_auth, @@ -109,7 +110,7 @@ def list_query_runs_handler( @validate_call - def list_query_runs_handler_with_http_info( + def list_query_runs_with_http_info( self, limit: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Maximum number of results")] = None, cursor: Annotated[Optional[StrictStr], Field(description="Pagination cursor")] = None, @@ -155,7 +156,7 @@ def list_query_runs_handler_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._list_query_runs_handler_serialize( + _param = self._list_query_runs_serialize( limit=limit, cursor=cursor, _request_auth=_request_auth, @@ -179,7 +180,7 @@ def list_query_runs_handler_with_http_info( @validate_call - def list_query_runs_handler_without_preload_content( + def list_query_runs_without_preload_content( self, limit: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Maximum number of results")] = None, cursor: Annotated[Optional[StrictStr], Field(description="Pagination cursor")] = None, @@ -225,7 +226,7 @@ def list_query_runs_handler_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._list_query_runs_handler_serialize( + _param = self._list_query_runs_serialize( limit=limit, cursor=cursor, _request_auth=_request_auth, @@ -244,7 +245,7 @@ def list_query_runs_handler_without_preload_content( return response_data.response - def _list_query_runs_handler_serialize( + def _list_query_runs_serialize( self, limit, cursor, @@ -294,6 +295,7 @@ def _list_query_runs_handler_serialize( # authentication setting _auth_settings: List[str] = [ + 'BearerAuth' ] return self.api_client.param_serialize( diff --git a/hotdata/api/refresh_api.py b/hotdata/api/refresh_api.py index 5199bb5..5bb5f61 100644 --- a/hotdata/api/refresh_api.py +++ b/hotdata/api/refresh_api.py @@ -4,6 +4,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -37,7 +38,7 @@ def __init__(self, api_client=None) -> None: @validate_call - def refresh_handler( + def refresh( self, refresh_request: RefreshRequest, _request_timeout: Union[ @@ -81,7 +82,7 @@ def refresh_handler( :return: Returns the result object. """ # noqa: E501 - _param = self._refresh_handler_serialize( + _param = self._refresh_serialize( refresh_request=refresh_request, _request_auth=_request_auth, _content_type=_content_type, @@ -106,7 +107,7 @@ def refresh_handler( @validate_call - def refresh_handler_with_http_info( + def refresh_with_http_info( self, refresh_request: RefreshRequest, _request_timeout: Union[ @@ -150,7 +151,7 @@ def refresh_handler_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._refresh_handler_serialize( + _param = self._refresh_serialize( refresh_request=refresh_request, _request_auth=_request_auth, _content_type=_content_type, @@ -175,7 +176,7 @@ def refresh_handler_with_http_info( @validate_call - def refresh_handler_without_preload_content( + def refresh_without_preload_content( self, refresh_request: RefreshRequest, _request_timeout: Union[ @@ -219,7 +220,7 @@ def refresh_handler_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._refresh_handler_serialize( + _param = self._refresh_serialize( refresh_request=refresh_request, _request_auth=_request_auth, _content_type=_content_type, @@ -239,7 +240,7 @@ def refresh_handler_without_preload_content( return response_data.response - def _refresh_handler_serialize( + def _refresh_serialize( self, refresh_request, _request_auth, @@ -295,6 +296,7 @@ def _refresh_handler_serialize( # authentication setting _auth_settings: List[str] = [ + 'BearerAuth' ] return self.api_client.param_serialize( diff --git a/hotdata/api/results_api.py b/hotdata/api/results_api.py index 3bcdb9d..c388b64 100644 --- a/hotdata/api/results_api.py +++ b/hotdata/api/results_api.py @@ -4,6 +4,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -40,7 +41,7 @@ def __init__(self, api_client=None) -> None: @validate_call - def get_result_handler( + def get_result( self, id: Annotated[StrictStr, Field(description="Result ID")], _request_timeout: Union[ @@ -84,7 +85,7 @@ def get_result_handler( :return: Returns the result object. """ # noqa: E501 - _param = self._get_result_handler_serialize( + _param = self._get_result_serialize( id=id, _request_auth=_request_auth, _content_type=_content_type, @@ -108,7 +109,7 @@ def get_result_handler( @validate_call - def get_result_handler_with_http_info( + def get_result_with_http_info( self, id: Annotated[StrictStr, Field(description="Result ID")], _request_timeout: Union[ @@ -152,7 +153,7 @@ def get_result_handler_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._get_result_handler_serialize( + _param = self._get_result_serialize( id=id, _request_auth=_request_auth, _content_type=_content_type, @@ -176,7 +177,7 @@ def get_result_handler_with_http_info( @validate_call - def get_result_handler_without_preload_content( + def get_result_without_preload_content( self, id: Annotated[StrictStr, Field(description="Result ID")], _request_timeout: Union[ @@ -220,7 +221,7 @@ def get_result_handler_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._get_result_handler_serialize( + _param = self._get_result_serialize( id=id, _request_auth=_request_auth, _content_type=_content_type, @@ -239,7 +240,7 @@ def get_result_handler_without_preload_content( return response_data.response - def _get_result_handler_serialize( + def _get_result_serialize( self, id, _request_auth, @@ -282,6 +283,7 @@ def _get_result_handler_serialize( # authentication setting _auth_settings: List[str] = [ + 'BearerAuth' ] return self.api_client.param_serialize( @@ -303,7 +305,7 @@ def _get_result_handler_serialize( @validate_call - def list_results_handler( + def list_results( self, limit: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Maximum number of results (default: 100, max: 1000)")] = None, offset: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Pagination offset (default: 0)")] = None, @@ -349,7 +351,7 @@ def list_results_handler( :return: Returns the result object. """ # noqa: E501 - _param = self._list_results_handler_serialize( + _param = self._list_results_serialize( limit=limit, offset=offset, _request_auth=_request_auth, @@ -373,7 +375,7 @@ def list_results_handler( @validate_call - def list_results_handler_with_http_info( + def list_results_with_http_info( self, limit: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Maximum number of results (default: 100, max: 1000)")] = None, offset: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Pagination offset (default: 0)")] = None, @@ -419,7 +421,7 @@ def list_results_handler_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._list_results_handler_serialize( + _param = self._list_results_serialize( limit=limit, offset=offset, _request_auth=_request_auth, @@ -443,7 +445,7 @@ def list_results_handler_with_http_info( @validate_call - def list_results_handler_without_preload_content( + def list_results_without_preload_content( self, limit: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Maximum number of results (default: 100, max: 1000)")] = None, offset: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Pagination offset (default: 0)")] = None, @@ -489,7 +491,7 @@ def list_results_handler_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._list_results_handler_serialize( + _param = self._list_results_serialize( limit=limit, offset=offset, _request_auth=_request_auth, @@ -508,7 +510,7 @@ def list_results_handler_without_preload_content( return response_data.response - def _list_results_handler_serialize( + def _list_results_serialize( self, limit, offset, @@ -558,6 +560,7 @@ def _list_results_handler_serialize( # authentication setting _auth_settings: List[str] = [ + 'BearerAuth' ] return self.api_client.param_serialize( diff --git a/hotdata/api/saved_queries_api.py b/hotdata/api/saved_queries_api.py index 69d5e1f..e9bc997 100644 --- a/hotdata/api/saved_queries_api.py +++ b/hotdata/api/saved_queries_api.py @@ -4,6 +4,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -300,6 +301,7 @@ def _create_saved_query_serialize( # authentication setting _auth_settings: List[str] = [ + 'BearerAuth' ] return self.api_client.param_serialize( @@ -560,6 +562,7 @@ def _delete_saved_query_serialize( # authentication setting _auth_settings: List[str] = [ + 'BearerAuth' ] return self.api_client.param_serialize( @@ -851,6 +854,7 @@ def _execute_saved_query_serialize( # authentication setting _auth_settings: List[str] = [ + 'BearerAuth' ] return self.api_client.param_serialize( @@ -1111,6 +1115,7 @@ def _get_saved_query_serialize( # authentication setting _auth_settings: List[str] = [ + 'BearerAuth' ] return self.api_client.param_serialize( @@ -1387,6 +1392,7 @@ def _list_saved_queries_serialize( # authentication setting _auth_settings: List[str] = [ + 'BearerAuth' ] return self.api_client.param_serialize( @@ -1681,6 +1687,7 @@ def _list_saved_query_versions_serialize( # authentication setting _auth_settings: List[str] = [ + 'BearerAuth' ] return self.api_client.param_serialize( @@ -1975,6 +1982,7 @@ def _update_saved_query_serialize( # authentication setting _auth_settings: List[str] = [ + 'BearerAuth' ] return self.api_client.param_serialize( diff --git a/hotdata/api/secrets_api.py b/hotdata/api/secrets_api.py index 166ef06..65f6ac8 100644 --- a/hotdata/api/secrets_api.py +++ b/hotdata/api/secrets_api.py @@ -4,6 +4,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -43,7 +44,7 @@ def __init__(self, api_client=None) -> None: @validate_call - def create_secret_handler( + def create_secret( self, create_secret_request: CreateSecretRequest, _request_timeout: Union[ @@ -87,7 +88,7 @@ def create_secret_handler( :return: Returns the result object. """ # noqa: E501 - _param = self._create_secret_handler_serialize( + _param = self._create_secret_serialize( create_secret_request=create_secret_request, _request_auth=_request_auth, _content_type=_content_type, @@ -111,7 +112,7 @@ def create_secret_handler( @validate_call - def create_secret_handler_with_http_info( + def create_secret_with_http_info( self, create_secret_request: CreateSecretRequest, _request_timeout: Union[ @@ -155,7 +156,7 @@ def create_secret_handler_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._create_secret_handler_serialize( + _param = self._create_secret_serialize( create_secret_request=create_secret_request, _request_auth=_request_auth, _content_type=_content_type, @@ -179,7 +180,7 @@ def create_secret_handler_with_http_info( @validate_call - def create_secret_handler_without_preload_content( + def create_secret_without_preload_content( self, create_secret_request: CreateSecretRequest, _request_timeout: Union[ @@ -223,7 +224,7 @@ def create_secret_handler_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._create_secret_handler_serialize( + _param = self._create_secret_serialize( create_secret_request=create_secret_request, _request_auth=_request_auth, _content_type=_content_type, @@ -242,7 +243,7 @@ def create_secret_handler_without_preload_content( return response_data.response - def _create_secret_handler_serialize( + def _create_secret_serialize( self, create_secret_request, _request_auth, @@ -298,6 +299,7 @@ def _create_secret_handler_serialize( # authentication setting _auth_settings: List[str] = [ + 'BearerAuth' ] return self.api_client.param_serialize( @@ -319,7 +321,7 @@ def _create_secret_handler_serialize( @validate_call - def delete_secret_handler( + def delete_secret( self, name: Annotated[StrictStr, Field(description="Secret name")], _request_timeout: Union[ @@ -362,7 +364,7 @@ def delete_secret_handler( :return: Returns the result object. """ # noqa: E501 - _param = self._delete_secret_handler_serialize( + _param = self._delete_secret_serialize( name=name, _request_auth=_request_auth, _content_type=_content_type, @@ -386,7 +388,7 @@ def delete_secret_handler( @validate_call - def delete_secret_handler_with_http_info( + def delete_secret_with_http_info( self, name: Annotated[StrictStr, Field(description="Secret name")], _request_timeout: Union[ @@ -429,7 +431,7 @@ def delete_secret_handler_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._delete_secret_handler_serialize( + _param = self._delete_secret_serialize( name=name, _request_auth=_request_auth, _content_type=_content_type, @@ -453,7 +455,7 @@ def delete_secret_handler_with_http_info( @validate_call - def delete_secret_handler_without_preload_content( + def delete_secret_without_preload_content( self, name: Annotated[StrictStr, Field(description="Secret name")], _request_timeout: Union[ @@ -496,7 +498,7 @@ def delete_secret_handler_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._delete_secret_handler_serialize( + _param = self._delete_secret_serialize( name=name, _request_auth=_request_auth, _content_type=_content_type, @@ -515,7 +517,7 @@ def delete_secret_handler_without_preload_content( return response_data.response - def _delete_secret_handler_serialize( + def _delete_secret_serialize( self, name, _request_auth, @@ -558,6 +560,7 @@ def _delete_secret_handler_serialize( # authentication setting _auth_settings: List[str] = [ + 'BearerAuth' ] return self.api_client.param_serialize( @@ -579,7 +582,7 @@ def _delete_secret_handler_serialize( @validate_call - def get_secret_handler( + def get_secret( self, name: Annotated[StrictStr, Field(description="Secret name")], _request_timeout: Union[ @@ -623,7 +626,7 @@ def get_secret_handler( :return: Returns the result object. """ # noqa: E501 - _param = self._get_secret_handler_serialize( + _param = self._get_secret_serialize( name=name, _request_auth=_request_auth, _content_type=_content_type, @@ -647,7 +650,7 @@ def get_secret_handler( @validate_call - def get_secret_handler_with_http_info( + def get_secret_with_http_info( self, name: Annotated[StrictStr, Field(description="Secret name")], _request_timeout: Union[ @@ -691,7 +694,7 @@ def get_secret_handler_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._get_secret_handler_serialize( + _param = self._get_secret_serialize( name=name, _request_auth=_request_auth, _content_type=_content_type, @@ -715,7 +718,7 @@ def get_secret_handler_with_http_info( @validate_call - def get_secret_handler_without_preload_content( + def get_secret_without_preload_content( self, name: Annotated[StrictStr, Field(description="Secret name")], _request_timeout: Union[ @@ -759,7 +762,7 @@ def get_secret_handler_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._get_secret_handler_serialize( + _param = self._get_secret_serialize( name=name, _request_auth=_request_auth, _content_type=_content_type, @@ -778,7 +781,7 @@ def get_secret_handler_without_preload_content( return response_data.response - def _get_secret_handler_serialize( + def _get_secret_serialize( self, name, _request_auth, @@ -821,6 +824,7 @@ def _get_secret_handler_serialize( # authentication setting _auth_settings: List[str] = [ + 'BearerAuth' ] return self.api_client.param_serialize( @@ -842,7 +846,7 @@ def _get_secret_handler_serialize( @validate_call - def list_secrets_handler( + def list_secrets( self, _request_timeout: Union[ None, @@ -883,7 +887,7 @@ def list_secrets_handler( :return: Returns the result object. """ # noqa: E501 - _param = self._list_secrets_handler_serialize( + _param = self._list_secrets_serialize( _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -905,7 +909,7 @@ def list_secrets_handler( @validate_call - def list_secrets_handler_with_http_info( + def list_secrets_with_http_info( self, _request_timeout: Union[ None, @@ -946,7 +950,7 @@ def list_secrets_handler_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._list_secrets_handler_serialize( + _param = self._list_secrets_serialize( _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -968,7 +972,7 @@ def list_secrets_handler_with_http_info( @validate_call - def list_secrets_handler_without_preload_content( + def list_secrets_without_preload_content( self, _request_timeout: Union[ None, @@ -1009,7 +1013,7 @@ def list_secrets_handler_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._list_secrets_handler_serialize( + _param = self._list_secrets_serialize( _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1026,7 +1030,7 @@ def list_secrets_handler_without_preload_content( return response_data.response - def _list_secrets_handler_serialize( + def _list_secrets_serialize( self, _request_auth, _content_type, @@ -1066,6 +1070,7 @@ def _list_secrets_handler_serialize( # authentication setting _auth_settings: List[str] = [ + 'BearerAuth' ] return self.api_client.param_serialize( @@ -1087,7 +1092,7 @@ def _list_secrets_handler_serialize( @validate_call - def update_secret_handler( + def update_secret( self, name: Annotated[StrictStr, Field(description="Secret name")], update_secret_request: UpdateSecretRequest, @@ -1133,7 +1138,7 @@ def update_secret_handler( :return: Returns the result object. """ # noqa: E501 - _param = self._update_secret_handler_serialize( + _param = self._update_secret_serialize( name=name, update_secret_request=update_secret_request, _request_auth=_request_auth, @@ -1158,7 +1163,7 @@ def update_secret_handler( @validate_call - def update_secret_handler_with_http_info( + def update_secret_with_http_info( self, name: Annotated[StrictStr, Field(description="Secret name")], update_secret_request: UpdateSecretRequest, @@ -1204,7 +1209,7 @@ def update_secret_handler_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._update_secret_handler_serialize( + _param = self._update_secret_serialize( name=name, update_secret_request=update_secret_request, _request_auth=_request_auth, @@ -1229,7 +1234,7 @@ def update_secret_handler_with_http_info( @validate_call - def update_secret_handler_without_preload_content( + def update_secret_without_preload_content( self, name: Annotated[StrictStr, Field(description="Secret name")], update_secret_request: UpdateSecretRequest, @@ -1275,7 +1280,7 @@ def update_secret_handler_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._update_secret_handler_serialize( + _param = self._update_secret_serialize( name=name, update_secret_request=update_secret_request, _request_auth=_request_auth, @@ -1295,7 +1300,7 @@ def update_secret_handler_without_preload_content( return response_data.response - def _update_secret_handler_serialize( + def _update_secret_serialize( self, name, update_secret_request, @@ -1354,6 +1359,7 @@ def _update_secret_handler_serialize( # authentication setting _auth_settings: List[str] = [ + 'BearerAuth' ] return self.api_client.param_serialize( diff --git a/hotdata/api/uploads_api.py b/hotdata/api/uploads_api.py index 48341e8..b98eb43 100644 --- a/hotdata/api/uploads_api.py +++ b/hotdata/api/uploads_api.py @@ -4,6 +4,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -278,6 +279,7 @@ def _list_uploads_serialize( # authentication setting _auth_settings: List[str] = [ + 'BearerAuth' ] return self.api_client.param_serialize( @@ -555,6 +557,7 @@ def _upload_file_serialize( # authentication setting _auth_settings: List[str] = [ + 'BearerAuth' ] return self.api_client.param_serialize( diff --git a/hotdata/api/workspaces_api.py b/hotdata/api/workspaces_api.py index 8a8a96a..d8f3209 100644 --- a/hotdata/api/workspaces_api.py +++ b/hotdata/api/workspaces_api.py @@ -4,6 +4,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -18,9 +19,9 @@ from pydantic import Field, StrictStr from typing import Optional from typing_extensions import Annotated -from hotdata.models.create_workspace201_response import CreateWorkspace201Response from hotdata.models.create_workspace_request import CreateWorkspaceRequest -from hotdata.models.list_workspaces200_response import ListWorkspaces200Response +from hotdata.models.create_workspace_response import CreateWorkspaceResponse +from hotdata.models.list_workspaces_response import ListWorkspacesResponse from hotdata.api_client import ApiClient, RequestSerialized from hotdata.api_response import ApiResponse @@ -56,7 +57,7 @@ def create_workspace( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> CreateWorkspace201Response: + ) -> CreateWorkspaceResponse: """Create a workspace Creates a new workspace in the specified organization. @@ -94,7 +95,7 @@ def create_workspace( ) _response_types_map: Dict[str, Optional[str]] = { - '201': "CreateWorkspace201Response", + '201': "CreateWorkspaceResponse", '400': "Error", '401': "Error", '403': "Error", @@ -128,7 +129,7 @@ def create_workspace_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[CreateWorkspace201Response]: + ) -> ApiResponse[CreateWorkspaceResponse]: """Create a workspace Creates a new workspace in the specified organization. @@ -166,7 +167,7 @@ def create_workspace_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '201': "CreateWorkspace201Response", + '201': "CreateWorkspaceResponse", '400': "Error", '401': "Error", '403': "Error", @@ -238,7 +239,7 @@ def create_workspace_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '201': "CreateWorkspace201Response", + '201': "CreateWorkspaceResponse", '400': "Error", '401': "Error", '403': "Error", @@ -345,7 +346,7 @@ def list_workspaces( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ListWorkspaces200Response: + ) -> ListWorkspacesResponse: """List workspaces Lists all workspaces in the user's organization. @@ -383,7 +384,7 @@ def list_workspaces( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "ListWorkspaces200Response", + '200': "ListWorkspacesResponse", '401': "Error", '403': "Error", '404': "Error", @@ -415,7 +416,7 @@ def list_workspaces_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[ListWorkspaces200Response]: + ) -> ApiResponse[ListWorkspacesResponse]: """List workspaces Lists all workspaces in the user's organization. @@ -453,7 +454,7 @@ def list_workspaces_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "ListWorkspaces200Response", + '200': "ListWorkspacesResponse", '401': "Error", '403': "Error", '404': "Error", @@ -523,7 +524,7 @@ def list_workspaces_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "ListWorkspaces200Response", + '200': "ListWorkspacesResponse", '401': "Error", '403': "Error", '404': "Error", diff --git a/hotdata/api_client.py b/hotdata/api_client.py index edb4128..7af72f2 100644 --- a/hotdata/api_client.py +++ b/hotdata/api_client.py @@ -4,6 +4,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/hotdata/configuration.py b/hotdata/configuration.py index 35694e6..73e30ac 100644 --- a/hotdata/configuration.py +++ b/hotdata/configuration.py @@ -4,6 +4,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/hotdata/exceptions.py b/hotdata/exceptions.py index 4a3422c..74bf2f9 100644 --- a/hotdata/exceptions.py +++ b/hotdata/exceptions.py @@ -4,6 +4,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/hotdata/models/__init__.py b/hotdata/models/__init__.py index 68a083b..afea775 100644 --- a/hotdata/models/__init__.py +++ b/hotdata/models/__init__.py @@ -7,6 +7,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -15,8 +16,9 @@ # import models into model package from hotdata.models.api_error_detail import ApiErrorDetail from hotdata.models.api_error_response import ApiErrorResponse +from hotdata.models.boolean_profile_detail import BooleanProfileDetail +from hotdata.models.categorical_profile_detail import CategoricalProfileDetail from hotdata.models.category_value_info import CategoryValueInfo -from hotdata.models.column_definition import ColumnDefinition from hotdata.models.column_info import ColumnInfo from hotdata.models.column_profile_detail import ColumnProfileDetail from hotdata.models.column_profile_detail_one_of import ColumnProfileDetailOneOf @@ -37,11 +39,9 @@ from hotdata.models.create_saved_query_request import CreateSavedQueryRequest from hotdata.models.create_secret_request import CreateSecretRequest from hotdata.models.create_secret_response import CreateSecretResponse -from hotdata.models.create_workspace201_response import CreateWorkspace201Response from hotdata.models.create_workspace_request import CreateWorkspaceRequest +from hotdata.models.create_workspace_response import CreateWorkspaceResponse from hotdata.models.dataset_source import DatasetSource -from hotdata.models.dataset_source_one_of import DatasetSourceOneOf -from hotdata.models.dataset_source_one_of1 import DatasetSourceOneOf1 from hotdata.models.dataset_summary import DatasetSummary from hotdata.models.discovery_status import DiscoveryStatus from hotdata.models.error import Error @@ -52,6 +52,7 @@ from hotdata.models.get_secret_response import GetSecretResponse from hotdata.models.information_schema_response import InformationSchemaResponse from hotdata.models.inline_data import InlineData +from hotdata.models.inline_dataset_source import InlineDatasetSource from hotdata.models.list_connections_response import ListConnectionsResponse from hotdata.models.list_datasets_response import ListDatasetsResponse from hotdata.models.list_query_runs_response import ListQueryRunsResponse @@ -60,7 +61,8 @@ from hotdata.models.list_saved_query_versions_response import ListSavedQueryVersionsResponse from hotdata.models.list_secrets_response import ListSecretsResponse from hotdata.models.list_uploads_response import ListUploadsResponse -from hotdata.models.list_workspaces200_response import ListWorkspaces200Response +from hotdata.models.list_workspaces_response import ListWorkspacesResponse +from hotdata.models.numeric_profile_detail import NumericProfileDetail from hotdata.models.query_request import QueryRequest from hotdata.models.query_response import QueryResponse from hotdata.models.query_run_info import QueryRunInfo @@ -77,11 +79,14 @@ from hotdata.models.table_profile_response import TableProfileResponse from hotdata.models.table_refresh_error import TableRefreshError from hotdata.models.table_refresh_result import TableRefreshResult +from hotdata.models.temporal_profile_detail import TemporalProfileDetail +from hotdata.models.text_profile_detail import TextProfileDetail from hotdata.models.update_dataset_request import UpdateDatasetRequest from hotdata.models.update_dataset_response import UpdateDatasetResponse from hotdata.models.update_saved_query_request import UpdateSavedQueryRequest from hotdata.models.update_secret_request import UpdateSecretRequest from hotdata.models.update_secret_response import UpdateSecretResponse +from hotdata.models.upload_dataset_source import UploadDatasetSource from hotdata.models.upload_info import UploadInfo from hotdata.models.upload_response import UploadResponse from hotdata.models.workspace_detail import WorkspaceDetail diff --git a/hotdata/models/api_error_detail.py b/hotdata/models/api_error_detail.py index e1556e6..5df9a8f 100644 --- a/hotdata/models/api_error_detail.py +++ b/hotdata/models/api_error_detail.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/hotdata/models/api_error_response.py b/hotdata/models/api_error_response.py index 05db177..4ea2502 100644 --- a/hotdata/models/api_error_response.py +++ b/hotdata/models/api_error_response.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/hotdata/models/boolean_profile_detail.py b/hotdata/models/boolean_profile_detail.py new file mode 100644 index 0000000..f34cb77 --- /dev/null +++ b/hotdata/models/boolean_profile_detail.py @@ -0,0 +1,91 @@ +# coding: utf-8 + +""" + HotData API + + Powerful data platform API for datasets, queries, and analytics. + + The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + +from pydantic import BaseModel, ConfigDict, Field +from typing import Any, ClassVar, Dict, List +from typing_extensions import Annotated +from typing import Optional, Set +from typing_extensions import Self + +class BooleanProfileDetail(BaseModel): + """ + Boolean column. + """ # noqa: E501 + false_count: Annotated[int, Field(strict=True, ge=0)] = Field(description="Number of false values") + true_count: Annotated[int, Field(strict=True, ge=0)] = Field(description="Number of true values") + __properties: ClassVar[List[str]] = ["false_count", "true_count"] + + model_config = ConfigDict( + populate_by_name=True, + validate_assignment=True, + protected_namespaces=(), + ) + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return json.dumps(self.to_dict()) + + @classmethod + def from_json(cls, json_str: str) -> Optional[Self]: + """Create an instance of BooleanProfileDetail from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + excluded_fields: Set[str] = set([ + ]) + + _dict = self.model_dump( + by_alias=True, + exclude=excluded_fields, + exclude_none=True, + ) + return _dict + + @classmethod + def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: + """Create an instance of BooleanProfileDetail from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "false_count": obj.get("false_count"), + "true_count": obj.get("true_count") + }) + return _obj + + diff --git a/hotdata/models/categorical_profile_detail.py b/hotdata/models/categorical_profile_detail.py new file mode 100644 index 0000000..ca22cd2 --- /dev/null +++ b/hotdata/models/categorical_profile_detail.py @@ -0,0 +1,96 @@ +# coding: utf-8 + +""" + HotData API + + Powerful data platform API for datasets, queries, and analytics. + + The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + +from pydantic import BaseModel, ConfigDict, Field +from typing import Any, ClassVar, Dict, List +from hotdata.models.category_value_info import CategoryValueInfo +from typing import Optional, Set +from typing_extensions import Self + +class CategoricalProfileDetail(BaseModel): + """ + Type-specific column profile detail. The `type` discriminator field determines which variant is present. Profile type is chosen based on the column's Arrow data type and cardinality: - **categorical**: Text or numeric columns with ≤200 distinct values. Lists each value with its frequency. - **text**: Text columns with >200 distinct values. Reports string length statistics. - **numeric**: Numeric columns with >200 distinct values. Reports min, max, and mean. - **temporal**: Date and timestamp columns. Reports min and max as ISO-8601 strings. - **boolean**: Boolean columns. Reports true and false counts. Low-cardinality column (≤200 distinct values). Values sorted by frequency descending. + """ # noqa: E501 + values: List[CategoryValueInfo] = Field(description="Distinct values with their counts, ordered by count descending") + __properties: ClassVar[List[str]] = ["values"] + + model_config = ConfigDict( + populate_by_name=True, + validate_assignment=True, + protected_namespaces=(), + ) + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return json.dumps(self.to_dict()) + + @classmethod + def from_json(cls, json_str: str) -> Optional[Self]: + """Create an instance of CategoricalProfileDetail from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + excluded_fields: Set[str] = set([ + ]) + + _dict = self.model_dump( + by_alias=True, + exclude=excluded_fields, + exclude_none=True, + ) + # override the default output from pydantic by calling `to_dict()` of each item in values (list) + _items = [] + if self.values: + for _item_values in self.values: + if _item_values: + _items.append(_item_values.to_dict()) + _dict['values'] = _items + return _dict + + @classmethod + def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: + """Create an instance of CategoricalProfileDetail from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "values": [CategoryValueInfo.from_dict(_item) for _item in obj["values"]] if obj.get("values") is not None else None + }) + return _obj + + diff --git a/hotdata/models/category_value_info.py b/hotdata/models/category_value_info.py index d0e9a4f..9bed8ee 100644 --- a/hotdata/models/category_value_info.py +++ b/hotdata/models/category_value_info.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -17,7 +18,7 @@ import re # noqa: F401 import json -from pydantic import BaseModel, ConfigDict, Field +from pydantic import BaseModel, ConfigDict, Field, StrictStr from typing import Any, ClassVar, Dict, List, Optional from typing_extensions import Annotated from typing import Optional, Set @@ -28,7 +29,7 @@ class CategoryValueInfo(BaseModel): A distinct value with its frequency count, used in categorical profiles. """ # noqa: E501 count: Annotated[int, Field(strict=True, ge=0)] = Field(description="Number of occurrences") - value: Optional[Any] = Field(description="The distinct value (as a string, or null)") + value: Optional[StrictStr] = Field(default=None, description="The distinct value (as a string, or null)") __properties: ClassVar[List[str]] = ["count", "value"] model_config = ConfigDict( diff --git a/hotdata/models/column_info.py b/hotdata/models/column_info.py index 7a51367..35c4436 100644 --- a/hotdata/models/column_info.py +++ b/hotdata/models/column_info.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/hotdata/models/column_profile_detail.py b/hotdata/models/column_profile_detail.py index 599371d..f2a4617 100644 --- a/hotdata/models/column_profile_detail.py +++ b/hotdata/models/column_profile_detail.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -30,7 +31,7 @@ class ColumnProfileDetail(BaseModel): """ - Type-specific column profile detail. The `type` discriminator field determines which variant is present. Profile type is chosen based on the column's Arrow data type and cardinality: - **categorical**: Text or numeric columns with ≤200 distinct values. Lists each value with its frequency. - **text**: Text columns with >200 distinct values. Reports string length statistics. - **numeric**: Numeric columns with >200 distinct values. Reports min, max, and mean. - **temporal**: Date and timestamp columns. Reports min and max as ISO-8601 strings. - **boolean**: Boolean columns. Reports true and false counts. + ColumnProfileDetail """ # data type: ColumnProfileDetailOneOf oneof_schema_1_validator: Optional[ColumnProfileDetailOneOf] = None diff --git a/hotdata/models/column_profile_detail_one_of.py b/hotdata/models/column_profile_detail_one_of.py index 59f7f0e..fb000d5 100644 --- a/hotdata/models/column_profile_detail_one_of.py +++ b/hotdata/models/column_profile_detail_one_of.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -25,11 +26,11 @@ class ColumnProfileDetailOneOf(BaseModel): """ - Low-cardinality column (≤200 distinct values). Applies to text and numeric columns. Values are sorted by frequency descending. + ColumnProfileDetailOneOf """ # noqa: E501 - type: StrictStr values: List[CategoryValueInfo] = Field(description="Distinct values with their counts, ordered by count descending") - __properties: ClassVar[List[str]] = ["type", "values"] + type: StrictStr + __properties: ClassVar[List[str]] = ["values", "type"] @field_validator('type') def type_validate_enum(cls, value): @@ -96,8 +97,8 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: return cls.model_validate(obj) _obj = cls.model_validate({ - "type": obj.get("type"), - "values": [CategoryValueInfo.from_dict(_item) for _item in obj["values"]] if obj.get("values") is not None else None + "values": [CategoryValueInfo.from_dict(_item) for _item in obj["values"]] if obj.get("values") is not None else None, + "type": obj.get("type") }) return _obj diff --git a/hotdata/models/column_profile_detail_one_of1.py b/hotdata/models/column_profile_detail_one_of1.py index de4fd0b..55507dd 100644 --- a/hotdata/models/column_profile_detail_one_of1.py +++ b/hotdata/models/column_profile_detail_one_of1.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -25,7 +26,7 @@ class ColumnProfileDetailOneOf1(BaseModel): """ - High-cardinality text column (>200 distinct values). + ColumnProfileDetailOneOf1 """ # noqa: E501 avg_length: Union[StrictFloat, StrictInt] = Field(description="Average string length") max_length: Annotated[int, Field(strict=True, ge=0)] = Field(description="Longest string length in the column") diff --git a/hotdata/models/column_profile_detail_one_of2.py b/hotdata/models/column_profile_detail_one_of2.py index feaacbe..1cf3dff 100644 --- a/hotdata/models/column_profile_detail_one_of2.py +++ b/hotdata/models/column_profile_detail_one_of2.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -24,7 +25,7 @@ class ColumnProfileDetailOneOf2(BaseModel): """ - High-cardinality numeric column (>200 distinct values). + ColumnProfileDetailOneOf2 """ # noqa: E501 max: StrictStr = Field(description="Maximum value (string to preserve precision for large integers and decimals)") mean: Union[StrictFloat, StrictInt] = Field(description="Arithmetic mean") diff --git a/hotdata/models/column_profile_detail_one_of3.py b/hotdata/models/column_profile_detail_one_of3.py index aaab045..acbcac9 100644 --- a/hotdata/models/column_profile_detail_one_of3.py +++ b/hotdata/models/column_profile_detail_one_of3.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -24,7 +25,7 @@ class ColumnProfileDetailOneOf3(BaseModel): """ - Date or timestamp column. + ColumnProfileDetailOneOf3 """ # noqa: E501 max: StrictStr = Field(description="Latest value as ISO-8601 string") min: StrictStr = Field(description="Earliest value as ISO-8601 string") diff --git a/hotdata/models/column_profile_detail_one_of4.py b/hotdata/models/column_profile_detail_one_of4.py index 0afb5e6..7d46879 100644 --- a/hotdata/models/column_profile_detail_one_of4.py +++ b/hotdata/models/column_profile_detail_one_of4.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -25,7 +26,7 @@ class ColumnProfileDetailOneOf4(BaseModel): """ - Boolean column. + ColumnProfileDetailOneOf4 """ # noqa: E501 false_count: Annotated[int, Field(strict=True, ge=0)] = Field(description="Number of false values") true_count: Annotated[int, Field(strict=True, ge=0)] = Field(description="Number of true values") diff --git a/hotdata/models/column_profile_info.py b/hotdata/models/column_profile_info.py index bd87672..2f676f0 100644 --- a/hotdata/models/column_profile_info.py +++ b/hotdata/models/column_profile_info.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -33,7 +34,7 @@ class ColumnProfileInfo(BaseModel): name: StrictStr = Field(description="Column name") null_count: Annotated[int, Field(strict=True, ge=0)] = Field(description="Number of null values") null_percentage: Union[StrictFloat, StrictInt] = Field(description="Percentage of null values (0.0 to 100.0)") - profile: Optional[ColumnProfileDetail] = None + profile: Optional[ColumnProfileDetail] = Field(default=None, description="Type-specific profile detail. Null when the column is all-null or has an unsupported type.") __properties: ClassVar[List[str]] = ["cardinality", "data_type", "name", "null_count", "null_percentage", "profile"] model_config = ConfigDict( diff --git a/hotdata/models/column_type_spec.py b/hotdata/models/column_type_spec.py index 9ba3eff..28b6d16 100644 --- a/hotdata/models/column_type_spec.py +++ b/hotdata/models/column_type_spec.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -17,8 +18,9 @@ import re # noqa: F401 import json -from pydantic import BaseModel, ConfigDict, Field, StrictStr +from pydantic import BaseModel, ConfigDict, Field, StrictInt, StrictStr from typing import Any, ClassVar, Dict, List, Optional +from typing_extensions import Annotated from typing import Optional, Set from typing_extensions import Self @@ -26,10 +28,10 @@ class ColumnTypeSpec(BaseModel): """ Detailed column type specification with optional properties. """ # noqa: E501 - geometry_type: Optional[Any] = Field(default=None, description="Geometry type for GEOMETRY/GEOGRAPHY columns. E.g., \"Point\", \"LineString\", \"Polygon\", \"MultiPoint\", \"MultiLineString\", \"MultiPolygon\", \"GeometryCollection\", or \"Geometry\" (any).") - precision: Optional[Any] = Field(default=None, description="Precision for DECIMAL type (1-38)") - scale: Optional[Any] = Field(default=None, description="Scale for DECIMAL type") - srid: Optional[Any] = Field(default=None, description="Spatial Reference System Identifier for GEOMETRY/GEOGRAPHY types. Common values: 4326 (WGS84), 3857 (Web Mercator).") + geometry_type: Optional[StrictStr] = Field(default=None, description="Geometry type for GEOMETRY/GEOGRAPHY columns. E.g., \"Point\", \"LineString\", \"Polygon\", \"MultiPoint\", \"MultiLineString\", \"MultiPolygon\", \"GeometryCollection\", or \"Geometry\" (any).") + precision: Optional[Annotated[int, Field(strict=True, ge=0)]] = Field(default=None, description="Precision for DECIMAL type (1-38)") + scale: Optional[StrictInt] = Field(default=None, description="Scale for DECIMAL type") + srid: Optional[StrictInt] = Field(default=None, description="Spatial Reference System Identifier for GEOMETRY/GEOGRAPHY types. Common values: 4326 (WGS84), 3857 (Web Mercator).") type: StrictStr = Field(description="The data type name (e.g., \"DECIMAL\", \"TIMESTAMP\", \"GEOMETRY\")") __properties: ClassVar[List[str]] = ["geometry_type", "precision", "scale", "srid", "type"] diff --git a/hotdata/models/connection_health_response.py b/hotdata/models/connection_health_response.py index 730d37d..0dc0473 100644 --- a/hotdata/models/connection_health_response.py +++ b/hotdata/models/connection_health_response.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -28,7 +29,7 @@ class ConnectionHealthResponse(BaseModel): Response body for GET /connections/{connection_id}/health """ # noqa: E501 connection_id: StrictStr - error: Optional[Any] = None + error: Optional[StrictStr] = None healthy: StrictBool latency_ms: Annotated[int, Field(strict=True, ge=0)] __properties: ClassVar[List[str]] = ["connection_id", "error", "healthy", "latency_ms"] diff --git a/hotdata/models/connection_info.py b/hotdata/models/connection_info.py index eb14101..93df4c0 100644 --- a/hotdata/models/connection_info.py +++ b/hotdata/models/connection_info.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/hotdata/models/connection_refresh_result.py b/hotdata/models/connection_refresh_result.py index e2e7f51..04d6029 100644 --- a/hotdata/models/connection_refresh_result.py +++ b/hotdata/models/connection_refresh_result.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/hotdata/models/connection_schema_error.py b/hotdata/models/connection_schema_error.py index 08f3480..c2d0d7d 100644 --- a/hotdata/models/connection_schema_error.py +++ b/hotdata/models/connection_schema_error.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/hotdata/models/create_connection_request.py b/hotdata/models/create_connection_request.py index 657cf74..42b7b2c 100644 --- a/hotdata/models/create_connection_request.py +++ b/hotdata/models/create_connection_request.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -26,10 +27,10 @@ class CreateConnectionRequest(BaseModel): """ Request body for POST /connections """ # noqa: E501 - config: Optional[Any] + config: Dict[str, Any] = Field(description="Connection configuration object. Fields vary by source type (host, port, database, etc.).") name: StrictStr - secret_id: Optional[Any] = Field(default=None, description="Optional reference to a secret by ID (e.g., \"secr_abc123\"). If provided, this secret will be used for authentication. Mutually exclusive with `secret_name`.") - secret_name: Optional[Any] = Field(default=None, description="Optional reference to a secret by name. If provided, this secret will be used for authentication. Mutually exclusive with `secret_id`.") + secret_id: Optional[StrictStr] = Field(default=None, description="Optional reference to a secret by ID (e.g., \"secr_abc123\"). If provided, this secret will be used for authentication. Mutually exclusive with `secret_name`.") + secret_name: Optional[StrictStr] = Field(default=None, description="Optional reference to a secret by name. If provided, this secret will be used for authentication. Mutually exclusive with `secret_id`.") source_type: StrictStr __properties: ClassVar[List[str]] = ["config", "name", "secret_id", "secret_name", "source_type"] @@ -72,11 +73,6 @@ def to_dict(self) -> Dict[str, Any]: exclude=excluded_fields, exclude_none=True, ) - # set to None if config (nullable) is None - # and model_fields_set contains the field - if self.config is None and "config" in self.model_fields_set: - _dict['config'] = None - # set to None if secret_id (nullable) is None # and model_fields_set contains the field if self.secret_id is None and "secret_id" in self.model_fields_set: diff --git a/hotdata/models/create_connection_response.py b/hotdata/models/create_connection_response.py index ecd98d0..050e248 100644 --- a/hotdata/models/create_connection_response.py +++ b/hotdata/models/create_connection_response.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -28,7 +29,7 @@ class CreateConnectionResponse(BaseModel): """ Response body for POST /connections """ # noqa: E501 - discovery_error: Optional[Any] = None + discovery_error: Optional[StrictStr] = None discovery_status: DiscoveryStatus id: StrictStr name: StrictStr diff --git a/hotdata/models/create_dataset_request.py b/hotdata/models/create_dataset_request.py index da0a0ab..f3cbb1c 100644 --- a/hotdata/models/create_dataset_request.py +++ b/hotdata/models/create_dataset_request.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -29,7 +30,7 @@ class CreateDatasetRequest(BaseModel): """ # noqa: E501 label: StrictStr source: DatasetSource - table_name: Optional[Any] = Field(default=None, description="Optional table_name - if not provided, derived from label") + table_name: Optional[StrictStr] = Field(default=None, description="Optional table_name - if not provided, derived from label") __properties: ClassVar[List[str]] = ["label", "source", "table_name"] model_config = ConfigDict( diff --git a/hotdata/models/create_dataset_response.py b/hotdata/models/create_dataset_response.py index 425325c..f51520d 100644 --- a/hotdata/models/create_dataset_response.py +++ b/hotdata/models/create_dataset_response.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/hotdata/models/create_saved_query_request.py b/hotdata/models/create_saved_query_request.py index 218ff60..8000cf1 100644 --- a/hotdata/models/create_saved_query_request.py +++ b/hotdata/models/create_saved_query_request.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -26,7 +27,7 @@ class CreateSavedQueryRequest(BaseModel): """ Request body for POST /v1/queries """ # noqa: E501 - description: Optional[Any] = None + description: Optional[StrictStr] = None name: StrictStr sql: StrictStr tags: Optional[List[StrictStr]] = None @@ -76,6 +77,11 @@ def to_dict(self) -> Dict[str, Any]: if self.description is None and "description" in self.model_fields_set: _dict['description'] = None + # set to None if tags (nullable) is None + # and model_fields_set contains the field + if self.tags is None and "tags" in self.model_fields_set: + _dict['tags'] = None + return _dict @classmethod diff --git a/hotdata/models/create_secret_request.py b/hotdata/models/create_secret_request.py index 28900f2..78152e0 100644 --- a/hotdata/models/create_secret_request.py +++ b/hotdata/models/create_secret_request.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/hotdata/models/create_secret_response.py b/hotdata/models/create_secret_response.py index 000c448..1d44b6b 100644 --- a/hotdata/models/create_secret_response.py +++ b/hotdata/models/create_secret_response.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/hotdata/models/create_workspace_request.py b/hotdata/models/create_workspace_request.py index d7ebd9c..4615362 100644 --- a/hotdata/models/create_workspace_request.py +++ b/hotdata/models/create_workspace_request.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/hotdata/models/create_workspace_response.py b/hotdata/models/create_workspace_response.py new file mode 100644 index 0000000..bd9821e --- /dev/null +++ b/hotdata/models/create_workspace_response.py @@ -0,0 +1,94 @@ +# coding: utf-8 + +""" + HotData API + + Powerful data platform API for datasets, queries, and analytics. + + The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + +from pydantic import BaseModel, ConfigDict, StrictBool +from typing import Any, ClassVar, Dict, List +from hotdata.models.workspace_detail import WorkspaceDetail +from typing import Optional, Set +from typing_extensions import Self + +class CreateWorkspaceResponse(BaseModel): + """ + CreateWorkspaceResponse + """ # noqa: E501 + ok: StrictBool + workspace: WorkspaceDetail + __properties: ClassVar[List[str]] = ["ok", "workspace"] + + model_config = ConfigDict( + populate_by_name=True, + validate_assignment=True, + protected_namespaces=(), + ) + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return json.dumps(self.to_dict()) + + @classmethod + def from_json(cls, json_str: str) -> Optional[Self]: + """Create an instance of CreateWorkspaceResponse from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + excluded_fields: Set[str] = set([ + ]) + + _dict = self.model_dump( + by_alias=True, + exclude=excluded_fields, + exclude_none=True, + ) + # override the default output from pydantic by calling `to_dict()` of workspace + if self.workspace: + _dict['workspace'] = self.workspace.to_dict() + return _dict + + @classmethod + def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: + """Create an instance of CreateWorkspaceResponse from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "ok": obj.get("ok"), + "workspace": WorkspaceDetail.from_dict(obj["workspace"]) if obj.get("workspace") is not None else None + }) + return _obj + + diff --git a/hotdata/models/dataset_source.py b/hotdata/models/dataset_source.py index cbc2c0d..d9f29ed 100644 --- a/hotdata/models/dataset_source.py +++ b/hotdata/models/dataset_source.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -17,24 +18,24 @@ import pprint from pydantic import BaseModel, ConfigDict, Field, StrictStr, ValidationError, field_validator from typing import Any, List, Optional -from hotdata.models.dataset_source_one_of import DatasetSourceOneOf -from hotdata.models.dataset_source_one_of1 import DatasetSourceOneOf1 +from hotdata.models.inline_dataset_source import InlineDatasetSource +from hotdata.models.upload_dataset_source import UploadDatasetSource from pydantic import StrictStr, Field from typing import Union, List, Set, Optional, Dict from typing_extensions import Literal, Self -DATASETSOURCE_ONE_OF_SCHEMAS = ["DatasetSourceOneOf", "DatasetSourceOneOf1"] +DATASETSOURCE_ONE_OF_SCHEMAS = ["InlineDatasetSource", "UploadDatasetSource"] class DatasetSource(BaseModel): """ Dataset source specification """ - # data type: DatasetSourceOneOf - oneof_schema_1_validator: Optional[DatasetSourceOneOf] = None - # data type: DatasetSourceOneOf1 - oneof_schema_2_validator: Optional[DatasetSourceOneOf1] = None - actual_instance: Optional[Union[DatasetSourceOneOf, DatasetSourceOneOf1]] = None - one_of_schemas: Set[str] = { "DatasetSourceOneOf", "DatasetSourceOneOf1" } + # data type: UploadDatasetSource + oneof_schema_1_validator: Optional[UploadDatasetSource] = None + # data type: InlineDatasetSource + oneof_schema_2_validator: Optional[InlineDatasetSource] = None + actual_instance: Optional[Union[InlineDatasetSource, UploadDatasetSource]] = None + one_of_schemas: Set[str] = { "InlineDatasetSource", "UploadDatasetSource" } model_config = ConfigDict( validate_assignment=True, @@ -57,22 +58,22 @@ def actual_instance_must_validate_oneof(cls, v): instance = DatasetSource.model_construct() error_messages = [] match = 0 - # validate data type: DatasetSourceOneOf - if not isinstance(v, DatasetSourceOneOf): - error_messages.append(f"Error! Input type `{type(v)}` is not `DatasetSourceOneOf`") + # validate data type: UploadDatasetSource + if not isinstance(v, UploadDatasetSource): + error_messages.append(f"Error! Input type `{type(v)}` is not `UploadDatasetSource`") else: match += 1 - # validate data type: DatasetSourceOneOf1 - if not isinstance(v, DatasetSourceOneOf1): - error_messages.append(f"Error! Input type `{type(v)}` is not `DatasetSourceOneOf1`") + # validate data type: InlineDatasetSource + if not isinstance(v, InlineDatasetSource): + error_messages.append(f"Error! Input type `{type(v)}` is not `InlineDatasetSource`") else: match += 1 if match > 1: # more than 1 match - raise ValueError("Multiple matches found when setting `actual_instance` in DatasetSource with oneOf schemas: DatasetSourceOneOf, DatasetSourceOneOf1. Details: " + ", ".join(error_messages)) + raise ValueError("Multiple matches found when setting `actual_instance` in DatasetSource with oneOf schemas: InlineDatasetSource, UploadDatasetSource. Details: " + ", ".join(error_messages)) elif match == 0: # no match - raise ValueError("No match found when setting `actual_instance` in DatasetSource with oneOf schemas: DatasetSourceOneOf, DatasetSourceOneOf1. Details: " + ", ".join(error_messages)) + raise ValueError("No match found when setting `actual_instance` in DatasetSource with oneOf schemas: InlineDatasetSource, UploadDatasetSource. Details: " + ", ".join(error_messages)) else: return v @@ -87,25 +88,25 @@ def from_json(cls, json_str: str) -> Self: error_messages = [] match = 0 - # deserialize data into DatasetSourceOneOf + # deserialize data into UploadDatasetSource try: - instance.actual_instance = DatasetSourceOneOf.from_json(json_str) + instance.actual_instance = UploadDatasetSource.from_json(json_str) match += 1 except (ValidationError, ValueError) as e: error_messages.append(str(e)) - # deserialize data into DatasetSourceOneOf1 + # deserialize data into InlineDatasetSource try: - instance.actual_instance = DatasetSourceOneOf1.from_json(json_str) + instance.actual_instance = InlineDatasetSource.from_json(json_str) match += 1 except (ValidationError, ValueError) as e: error_messages.append(str(e)) if match > 1: # more than 1 match - raise ValueError("Multiple matches found when deserializing the JSON string into DatasetSource with oneOf schemas: DatasetSourceOneOf, DatasetSourceOneOf1. Details: " + ", ".join(error_messages)) + raise ValueError("Multiple matches found when deserializing the JSON string into DatasetSource with oneOf schemas: InlineDatasetSource, UploadDatasetSource. Details: " + ", ".join(error_messages)) elif match == 0: # no match - raise ValueError("No match found when deserializing the JSON string into DatasetSource with oneOf schemas: DatasetSourceOneOf, DatasetSourceOneOf1. Details: " + ", ".join(error_messages)) + raise ValueError("No match found when deserializing the JSON string into DatasetSource with oneOf schemas: InlineDatasetSource, UploadDatasetSource. Details: " + ", ".join(error_messages)) else: return instance @@ -119,7 +120,7 @@ def to_json(self) -> str: else: return json.dumps(self.actual_instance) - def to_dict(self) -> Optional[Union[Dict[str, Any], DatasetSourceOneOf, DatasetSourceOneOf1]]: + def to_dict(self) -> Optional[Union[Dict[str, Any], InlineDatasetSource, UploadDatasetSource]]: """Returns the dict representation of the actual instance""" if self.actual_instance is None: return None diff --git a/hotdata/models/dataset_summary.py b/hotdata/models/dataset_summary.py index 0b9c4f9..e0c6d9b 100644 --- a/hotdata/models/dataset_summary.py +++ b/hotdata/models/dataset_summary.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/hotdata/models/discovery_status.py b/hotdata/models/discovery_status.py index eab26d0..18e5bcc 100644 --- a/hotdata/models/discovery_status.py +++ b/hotdata/models/discovery_status.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/hotdata/models/error.py b/hotdata/models/error.py index df5d525..08a2c52 100644 --- a/hotdata/models/error.py +++ b/hotdata/models/error.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/hotdata/models/execute_saved_query_request.py b/hotdata/models/execute_saved_query_request.py index a319ee8..520bb9c 100644 --- a/hotdata/models/execute_saved_query_request.py +++ b/hotdata/models/execute_saved_query_request.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -17,7 +18,7 @@ import re # noqa: F401 import json -from pydantic import BaseModel, ConfigDict +from pydantic import BaseModel, ConfigDict, StrictInt from typing import Any, ClassVar, Dict, List, Optional from typing import Optional, Set from typing_extensions import Self @@ -26,7 +27,7 @@ class ExecuteSavedQueryRequest(BaseModel): """ Request body for POST /v1/queries/{id}/execute """ # noqa: E501 - version: Optional[Any] = None + version: Optional[StrictInt] = None __properties: ClassVar[List[str]] = ["version"] model_config = ConfigDict( diff --git a/hotdata/models/get_connection_response.py b/hotdata/models/get_connection_response.py index 5691d81..ef55ba4 100644 --- a/hotdata/models/get_connection_response.py +++ b/hotdata/models/get_connection_response.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/hotdata/models/get_dataset_response.py b/hotdata/models/get_dataset_response.py index d9d46b3..ae8cd94 100644 --- a/hotdata/models/get_dataset_response.py +++ b/hotdata/models/get_dataset_response.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/hotdata/models/get_result_response.py b/hotdata/models/get_result_response.py index ea30cd0..611b924 100644 --- a/hotdata/models/get_result_response.py +++ b/hotdata/models/get_result_response.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -17,8 +18,9 @@ import re # noqa: F401 import json -from pydantic import BaseModel, ConfigDict, StrictBool, StrictStr +from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictStr from typing import Any, ClassVar, Dict, List, Optional +from typing_extensions import Annotated from typing import Optional, Set from typing_extensions import Self @@ -27,11 +29,11 @@ class GetResultResponse(BaseModel): Response body for GET /results/{id} Returns status and optionally the result data """ # noqa: E501 columns: Optional[List[StrictStr]] = None - error_message: Optional[Any] = None + error_message: Optional[StrictStr] = None nullable: Optional[List[StrictBool]] = None result_id: StrictStr - row_count: Optional[Any] = None - rows: Optional[List[List[Any]]] = None + row_count: Optional[Annotated[int, Field(strict=True, ge=0)]] = None + rows: Optional[List[List[Any]]] = Field(default=None, description="Array of rows, where each row is an array of column values.") status: StrictStr __properties: ClassVar[List[str]] = ["columns", "error_message", "nullable", "result_id", "row_count", "rows", "status"] @@ -74,16 +76,31 @@ def to_dict(self) -> Dict[str, Any]: exclude=excluded_fields, exclude_none=True, ) + # set to None if columns (nullable) is None + # and model_fields_set contains the field + if self.columns is None and "columns" in self.model_fields_set: + _dict['columns'] = None + # set to None if error_message (nullable) is None # and model_fields_set contains the field if self.error_message is None and "error_message" in self.model_fields_set: _dict['error_message'] = None + # set to None if nullable (nullable) is None + # and model_fields_set contains the field + if self.nullable is None and "nullable" in self.model_fields_set: + _dict['nullable'] = None + # set to None if row_count (nullable) is None # and model_fields_set contains the field if self.row_count is None and "row_count" in self.model_fields_set: _dict['row_count'] = None + # set to None if rows (nullable) is None + # and model_fields_set contains the field + if self.rows is None and "rows" in self.model_fields_set: + _dict['rows'] = None + return _dict @classmethod diff --git a/hotdata/models/get_secret_response.py b/hotdata/models/get_secret_response.py index b87bc51..b0529f2 100644 --- a/hotdata/models/get_secret_response.py +++ b/hotdata/models/get_secret_response.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/hotdata/models/information_schema_response.py b/hotdata/models/information_schema_response.py index 62b992d..ce275f8 100644 --- a/hotdata/models/information_schema_response.py +++ b/hotdata/models/information_schema_response.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -17,7 +18,7 @@ import re # noqa: F401 import json -from pydantic import BaseModel, ConfigDict, Field, StrictBool +from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictStr from typing import Any, ClassVar, Dict, List, Optional from typing_extensions import Annotated from hotdata.models.table_info import TableInfo @@ -31,7 +32,7 @@ class InformationSchemaResponse(BaseModel): count: Annotated[int, Field(strict=True, ge=0)] has_more: StrictBool limit: Annotated[int, Field(strict=True, ge=0)] - next_cursor: Optional[Any] = None + next_cursor: Optional[StrictStr] = None tables: List[TableInfo] __properties: ClassVar[List[str]] = ["count", "has_more", "limit", "next_cursor", "tables"] diff --git a/hotdata/models/inline_data.py b/hotdata/models/inline_data.py index 05aef50..0120af6 100644 --- a/hotdata/models/inline_data.py +++ b/hotdata/models/inline_data.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -19,7 +20,6 @@ from pydantic import BaseModel, ConfigDict, Field, StrictStr from typing import Any, ClassVar, Dict, List, Optional -from hotdata.models.column_definition import ColumnDefinition from typing import Optional, Set from typing_extensions import Self @@ -27,7 +27,7 @@ class InlineData(BaseModel): """ Inline data specification """ # noqa: E501 - columns: Optional[Dict[str, ColumnDefinition]] = Field(default=None, description="Optional explicit column definitions. Keys are column names, values are type specs. When provided, the schema is built from these definitions instead of being inferred.") + columns: Optional[Dict[str, StrictStr]] = Field(default=None, description="Optional explicit column definitions. Keys are column names, values are type specs. When provided, the schema is built from these definitions instead of being inferred.") content: StrictStr format: StrictStr __properties: ClassVar[List[str]] = ["columns", "content", "format"] @@ -71,13 +71,6 @@ def to_dict(self) -> Dict[str, Any]: exclude=excluded_fields, exclude_none=True, ) - # override the default output from pydantic by calling `to_dict()` of each value in columns (dict) - _field_dict = {} - if self.columns: - for _key_columns in self.columns: - if self.columns[_key_columns]: - _field_dict[_key_columns] = self.columns[_key_columns].to_dict() - _dict['columns'] = _field_dict return _dict @classmethod @@ -90,12 +83,7 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: return cls.model_validate(obj) _obj = cls.model_validate({ - "columns": dict( - (_k, ColumnDefinition.from_dict(_v)) - for _k, _v in obj["columns"].items() - ) - if obj.get("columns") is not None - else None, + "columns": obj.get("columns"), "content": obj.get("content"), "format": obj.get("format") }) diff --git a/hotdata/models/inline_dataset_source.py b/hotdata/models/inline_dataset_source.py new file mode 100644 index 0000000..9ee85ef --- /dev/null +++ b/hotdata/models/inline_dataset_source.py @@ -0,0 +1,92 @@ +# coding: utf-8 + +""" + HotData API + + Powerful data platform API for datasets, queries, and analytics. + + The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + +from pydantic import BaseModel, ConfigDict +from typing import Any, ClassVar, Dict, List +from hotdata.models.inline_data import InlineData +from typing import Optional, Set +from typing_extensions import Self + +class InlineDatasetSource(BaseModel): + """ + Create dataset from inline data (small payloads) + """ # noqa: E501 + inline: InlineData + __properties: ClassVar[List[str]] = ["inline"] + + model_config = ConfigDict( + populate_by_name=True, + validate_assignment=True, + protected_namespaces=(), + ) + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return json.dumps(self.to_dict()) + + @classmethod + def from_json(cls, json_str: str) -> Optional[Self]: + """Create an instance of InlineDatasetSource from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + excluded_fields: Set[str] = set([ + ]) + + _dict = self.model_dump( + by_alias=True, + exclude=excluded_fields, + exclude_none=True, + ) + # override the default output from pydantic by calling `to_dict()` of inline + if self.inline: + _dict['inline'] = self.inline.to_dict() + return _dict + + @classmethod + def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: + """Create an instance of InlineDatasetSource from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "inline": InlineData.from_dict(obj["inline"]) if obj.get("inline") is not None else None + }) + return _obj + + diff --git a/hotdata/models/list_connections_response.py b/hotdata/models/list_connections_response.py index 2868930..4a43d1f 100644 --- a/hotdata/models/list_connections_response.py +++ b/hotdata/models/list_connections_response.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/hotdata/models/list_datasets_response.py b/hotdata/models/list_datasets_response.py index 574cfb8..a2df479 100644 --- a/hotdata/models/list_datasets_response.py +++ b/hotdata/models/list_datasets_response.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/hotdata/models/list_query_runs_response.py b/hotdata/models/list_query_runs_response.py index d5089e4..ef4e53c 100644 --- a/hotdata/models/list_query_runs_response.py +++ b/hotdata/models/list_query_runs_response.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -17,7 +18,7 @@ import re # noqa: F401 import json -from pydantic import BaseModel, ConfigDict, Field, StrictBool +from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictStr from typing import Any, ClassVar, Dict, List, Optional from typing_extensions import Annotated from hotdata.models.query_run_info import QueryRunInfo @@ -31,7 +32,7 @@ class ListQueryRunsResponse(BaseModel): count: Annotated[int, Field(strict=True, ge=0)] has_more: StrictBool limit: Annotated[int, Field(strict=True, ge=0)] - next_cursor: Optional[Any] = None + next_cursor: Optional[StrictStr] = None query_runs: List[QueryRunInfo] __properties: ClassVar[List[str]] = ["count", "has_more", "limit", "next_cursor", "query_runs"] diff --git a/hotdata/models/list_results_response.py b/hotdata/models/list_results_response.py index 3f0d74f..35a2683 100644 --- a/hotdata/models/list_results_response.py +++ b/hotdata/models/list_results_response.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/hotdata/models/list_saved_queries_response.py b/hotdata/models/list_saved_queries_response.py index b929926..29ab470 100644 --- a/hotdata/models/list_saved_queries_response.py +++ b/hotdata/models/list_saved_queries_response.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/hotdata/models/list_saved_query_versions_response.py b/hotdata/models/list_saved_query_versions_response.py index 2b01442..1f81a8d 100644 --- a/hotdata/models/list_saved_query_versions_response.py +++ b/hotdata/models/list_saved_query_versions_response.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/hotdata/models/list_secrets_response.py b/hotdata/models/list_secrets_response.py index b3173b7..2cb7b0e 100644 --- a/hotdata/models/list_secrets_response.py +++ b/hotdata/models/list_secrets_response.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/hotdata/models/list_uploads_response.py b/hotdata/models/list_uploads_response.py index f6d0277..8fefa4f 100644 --- a/hotdata/models/list_uploads_response.py +++ b/hotdata/models/list_uploads_response.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/hotdata/models/list_workspaces_response.py b/hotdata/models/list_workspaces_response.py new file mode 100644 index 0000000..b1aec18 --- /dev/null +++ b/hotdata/models/list_workspaces_response.py @@ -0,0 +1,98 @@ +# coding: utf-8 + +""" + HotData API + + Powerful data platform API for datasets, queries, and analytics. + + The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + +from pydantic import BaseModel, ConfigDict, StrictBool +from typing import Any, ClassVar, Dict, List +from hotdata.models.workspace_list_item import WorkspaceListItem +from typing import Optional, Set +from typing_extensions import Self + +class ListWorkspacesResponse(BaseModel): + """ + ListWorkspacesResponse + """ # noqa: E501 + ok: StrictBool + workspaces: List[WorkspaceListItem] + __properties: ClassVar[List[str]] = ["ok", "workspaces"] + + model_config = ConfigDict( + populate_by_name=True, + validate_assignment=True, + protected_namespaces=(), + ) + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return json.dumps(self.to_dict()) + + @classmethod + def from_json(cls, json_str: str) -> Optional[Self]: + """Create an instance of ListWorkspacesResponse from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + excluded_fields: Set[str] = set([ + ]) + + _dict = self.model_dump( + by_alias=True, + exclude=excluded_fields, + exclude_none=True, + ) + # override the default output from pydantic by calling `to_dict()` of each item in workspaces (list) + _items = [] + if self.workspaces: + for _item_workspaces in self.workspaces: + if _item_workspaces: + _items.append(_item_workspaces.to_dict()) + _dict['workspaces'] = _items + return _dict + + @classmethod + def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: + """Create an instance of ListWorkspacesResponse from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "ok": obj.get("ok"), + "workspaces": [WorkspaceListItem.from_dict(_item) for _item in obj["workspaces"]] if obj.get("workspaces") is not None else None + }) + return _obj + + diff --git a/hotdata/models/numeric_profile_detail.py b/hotdata/models/numeric_profile_detail.py new file mode 100644 index 0000000..946cb88 --- /dev/null +++ b/hotdata/models/numeric_profile_detail.py @@ -0,0 +1,92 @@ +# coding: utf-8 + +""" + HotData API + + Powerful data platform API for datasets, queries, and analytics. + + The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + +from pydantic import BaseModel, ConfigDict, Field, StrictFloat, StrictInt, StrictStr +from typing import Any, ClassVar, Dict, List, Union +from typing import Optional, Set +from typing_extensions import Self + +class NumericProfileDetail(BaseModel): + """ + High-cardinality numeric column (>200 distinct values). + """ # noqa: E501 + max: StrictStr = Field(description="Maximum value (string to preserve precision for large integers and decimals)") + mean: Union[StrictFloat, StrictInt] = Field(description="Arithmetic mean") + min: StrictStr = Field(description="Minimum value (string to preserve precision for large integers and decimals)") + __properties: ClassVar[List[str]] = ["max", "mean", "min"] + + model_config = ConfigDict( + populate_by_name=True, + validate_assignment=True, + protected_namespaces=(), + ) + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return json.dumps(self.to_dict()) + + @classmethod + def from_json(cls, json_str: str) -> Optional[Self]: + """Create an instance of NumericProfileDetail from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + excluded_fields: Set[str] = set([ + ]) + + _dict = self.model_dump( + by_alias=True, + exclude=excluded_fields, + exclude_none=True, + ) + return _dict + + @classmethod + def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: + """Create an instance of NumericProfileDetail from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "max": obj.get("max"), + "mean": obj.get("mean"), + "min": obj.get("min") + }) + return _obj + + diff --git a/hotdata/models/query_request.py b/hotdata/models/query_request.py index 7c726d3..abf06b8 100644 --- a/hotdata/models/query_request.py +++ b/hotdata/models/query_request.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/hotdata/models/query_response.py b/hotdata/models/query_response.py index a105b38..679bff9 100644 --- a/hotdata/models/query_response.py +++ b/hotdata/models/query_response.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -31,10 +32,10 @@ class QueryResponse(BaseModel): execution_time_ms: Annotated[int, Field(strict=True, ge=0)] nullable: List[StrictBool] = Field(description="Nullable flags for each column (parallel to columns vec). True if the column allows NULL values, false if NOT NULL.") query_run_id: StrictStr = Field(description="Unique identifier for the query run record (qrun...).") - result_id: Optional[Any] = Field(default=None, description="Unique identifier for retrieving this result via GET /results/{id}. Null if catalog registration failed (see `warning` field for details). When non-null, the result is being persisted asynchronously.") + result_id: Optional[StrictStr] = Field(default=None, description="Unique identifier for retrieving this result via GET /results/{id}. Null if catalog registration failed (see `warning` field for details). When non-null, the result is being persisted asynchronously.") row_count: Annotated[int, Field(strict=True, ge=0)] - rows: List[List[Any]] - warning: Optional[Any] = Field(default=None, description="Warning message if result persistence could not be initiated. When present, `result_id` will be null and the result cannot be retrieved later. The query results are still returned in this response.") + rows: List[List[Any]] = Field(description="Array of rows, where each row is an array of column values. Values can be strings, numbers, booleans, or null.") + warning: Optional[StrictStr] = Field(default=None, description="Warning message if result persistence could not be initiated. When present, `result_id` will be null and the result cannot be retrieved later. The query results are still returned in this response.") __properties: ClassVar[List[str]] = ["columns", "execution_time_ms", "nullable", "query_run_id", "result_id", "row_count", "rows", "warning"] model_config = ConfigDict( diff --git a/hotdata/models/query_run_info.py b/hotdata/models/query_run_info.py index c3287f6..cd01211 100644 --- a/hotdata/models/query_run_info.py +++ b/hotdata/models/query_run_info.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -18,7 +19,7 @@ import json from datetime import datetime -from pydantic import BaseModel, ConfigDict, StrictStr +from pydantic import BaseModel, ConfigDict, StrictInt, StrictStr from typing import Any, ClassVar, Dict, List, Optional from typing import Optional, Set from typing_extensions import Self @@ -27,21 +28,21 @@ class QueryRunInfo(BaseModel): """ Single query run for listing """ # noqa: E501 - completed_at: Optional[Any] = None + completed_at: Optional[datetime] = None created_at: datetime - error_message: Optional[Any] = None - execution_time_ms: Optional[Any] = None + error_message: Optional[StrictStr] = None + execution_time_ms: Optional[StrictInt] = None id: StrictStr - result_id: Optional[Any] = None - row_count: Optional[Any] = None - saved_query_id: Optional[Any] = None - saved_query_version: Optional[Any] = None + result_id: Optional[StrictStr] = None + row_count: Optional[StrictInt] = None + saved_query_id: Optional[StrictStr] = None + saved_query_version: Optional[StrictInt] = None snapshot_id: StrictStr sql_hash: StrictStr sql_text: StrictStr status: StrictStr - trace_id: Optional[Any] = None - warning_message: Optional[Any] = None + trace_id: Optional[StrictStr] = None + warning_message: Optional[StrictStr] = None __properties: ClassVar[List[str]] = ["completed_at", "created_at", "error_message", "execution_time_ms", "id", "result_id", "row_count", "saved_query_id", "saved_query_version", "snapshot_id", "sql_hash", "sql_text", "status", "trace_id", "warning_message"] model_config = ConfigDict( diff --git a/hotdata/models/refresh_request.py b/hotdata/models/refresh_request.py index 342de71..0cbf574 100644 --- a/hotdata/models/refresh_request.py +++ b/hotdata/models/refresh_request.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -17,7 +18,7 @@ import re # noqa: F401 import json -from pydantic import BaseModel, ConfigDict, Field, StrictBool +from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictStr from typing import Any, ClassVar, Dict, List, Optional from typing import Optional, Set from typing_extensions import Self @@ -26,11 +27,11 @@ class RefreshRequest(BaseModel): """ Request body for POST /refresh """ # noqa: E501 - connection_id: Optional[Any] = None + connection_id: Optional[StrictStr] = None data: Optional[StrictBool] = None include_uncached: Optional[StrictBool] = Field(default=None, description="Controls whether uncached tables are included in connection-wide data refresh. - `false` (default): Only refresh tables that already have cached data. This is the common case for keeping existing data up-to-date. - `true`: Also sync tables that haven't been cached yet, essentially performing an initial sync for any new tables discovered since the connection was created. This field only applies to connection-wide data refresh (when `data=true` and `table_name` is not specified). It has no effect on single-table refresh or schema refresh operations.") - schema_name: Optional[Any] = None - table_name: Optional[Any] = None + schema_name: Optional[StrictStr] = None + table_name: Optional[StrictStr] = None __properties: ClassVar[List[str]] = ["connection_id", "data", "include_uncached", "schema_name", "table_name"] model_config = ConfigDict( diff --git a/hotdata/models/refresh_response.py b/hotdata/models/refresh_response.py index ffeb282..095c42f 100644 --- a/hotdata/models/refresh_response.py +++ b/hotdata/models/refresh_response.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/hotdata/models/refresh_warning.py b/hotdata/models/refresh_warning.py index d50cab8..2b03724 100644 --- a/hotdata/models/refresh_warning.py +++ b/hotdata/models/refresh_warning.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -27,8 +28,8 @@ class RefreshWarning(BaseModel): Non-fatal warning that occurred during a refresh operation. Used to report issues like failed deletion scheduling that don't prevent the refresh from succeeding. """ # noqa: E501 message: StrictStr - schema_name: Optional[Any] = None - table_name: Optional[Any] = None + schema_name: Optional[StrictStr] = None + table_name: Optional[StrictStr] = None __properties: ClassVar[List[str]] = ["message", "schema_name", "table_name"] model_config = ConfigDict( diff --git a/hotdata/models/result_info.py b/hotdata/models/result_info.py index 0143316..5af6723 100644 --- a/hotdata/models/result_info.py +++ b/hotdata/models/result_info.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -28,7 +29,7 @@ class ResultInfo(BaseModel): Summary of a persisted query result for listing """ # noqa: E501 created_at: datetime - error_message: Optional[Any] = None + error_message: Optional[StrictStr] = None id: StrictStr status: StrictStr __properties: ClassVar[List[str]] = ["created_at", "error_message", "id", "status"] diff --git a/hotdata/models/saved_query_detail.py b/hotdata/models/saved_query_detail.py index c4cbac9..4b21272 100644 --- a/hotdata/models/saved_query_detail.py +++ b/hotdata/models/saved_query_detail.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -18,7 +19,7 @@ import json from datetime import datetime -from pydantic import BaseModel, ConfigDict, StrictInt, StrictStr +from pydantic import BaseModel, ConfigDict, StrictBool, StrictInt, StrictStr from typing import Any, ClassVar, Dict, List, Optional from typing import Optional, Set from typing_extensions import Self @@ -27,22 +28,22 @@ class SavedQueryDetail(BaseModel): """ Saved query detail (includes latest version's SQL) """ # noqa: E501 - category: Optional[Any] = None + category: Optional[StrictStr] = None created_at: datetime description: StrictStr - has_aggregation: Optional[Any] = None - has_group_by: Optional[Any] = None - has_join: Optional[Any] = None - has_limit: Optional[Any] = None - has_order_by: Optional[Any] = None - has_predicate: Optional[Any] = None + has_aggregation: Optional[StrictBool] = None + has_group_by: Optional[StrictBool] = None + has_join: Optional[StrictBool] = None + has_limit: Optional[StrictBool] = None + has_order_by: Optional[StrictBool] = None + has_predicate: Optional[StrictBool] = None id: StrictStr latest_version: StrictInt name: StrictStr - num_tables: Optional[Any] = None + num_tables: Optional[StrictInt] = None sql: StrictStr sql_hash: StrictStr - table_size: Optional[Any] = None + table_size: Optional[StrictStr] = None tags: List[StrictStr] updated_at: datetime __properties: ClassVar[List[str]] = ["category", "created_at", "description", "has_aggregation", "has_group_by", "has_join", "has_limit", "has_order_by", "has_predicate", "id", "latest_version", "name", "num_tables", "sql", "sql_hash", "table_size", "tags", "updated_at"] diff --git a/hotdata/models/saved_query_summary.py b/hotdata/models/saved_query_summary.py index df80a03..6ea52f6 100644 --- a/hotdata/models/saved_query_summary.py +++ b/hotdata/models/saved_query_summary.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/hotdata/models/saved_query_version_info.py b/hotdata/models/saved_query_version_info.py index 6ed69ee..0658bda 100644 --- a/hotdata/models/saved_query_version_info.py +++ b/hotdata/models/saved_query_version_info.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -18,7 +19,7 @@ import json from datetime import datetime -from pydantic import BaseModel, ConfigDict, StrictInt, StrictStr +from pydantic import BaseModel, ConfigDict, StrictBool, StrictInt, StrictStr from typing import Any, ClassVar, Dict, List, Optional from typing import Optional, Set from typing_extensions import Self @@ -27,18 +28,18 @@ class SavedQueryVersionInfo(BaseModel): """ Single saved query version """ # noqa: E501 - category: Optional[Any] = None + category: Optional[StrictStr] = None created_at: datetime - has_aggregation: Optional[Any] = None - has_group_by: Optional[Any] = None - has_join: Optional[Any] = None - has_limit: Optional[Any] = None - has_order_by: Optional[Any] = None - has_predicate: Optional[Any] = None - num_tables: Optional[Any] = None + has_aggregation: Optional[StrictBool] = None + has_group_by: Optional[StrictBool] = None + has_join: Optional[StrictBool] = None + has_limit: Optional[StrictBool] = None + has_order_by: Optional[StrictBool] = None + has_predicate: Optional[StrictBool] = None + num_tables: Optional[StrictInt] = None sql: StrictStr sql_hash: StrictStr - table_size: Optional[Any] = None + table_size: Optional[StrictStr] = None version: StrictInt __properties: ClassVar[List[str]] = ["category", "created_at", "has_aggregation", "has_group_by", "has_join", "has_limit", "has_order_by", "has_predicate", "num_tables", "sql", "sql_hash", "table_size", "version"] diff --git a/hotdata/models/schema_refresh_result.py b/hotdata/models/schema_refresh_result.py index 8d0df5f..39701e2 100644 --- a/hotdata/models/schema_refresh_result.py +++ b/hotdata/models/schema_refresh_result.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/hotdata/models/secret_metadata_response.py b/hotdata/models/secret_metadata_response.py index 9cc56a5..f36087c 100644 --- a/hotdata/models/secret_metadata_response.py +++ b/hotdata/models/secret_metadata_response.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/hotdata/models/table_info.py b/hotdata/models/table_info.py index ac29e31..cb9927c 100644 --- a/hotdata/models/table_info.py +++ b/hotdata/models/table_info.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -29,7 +30,7 @@ class TableInfo(BaseModel): """ # noqa: E501 columns: Optional[List[ColumnInfo]] = None connection: StrictStr - last_sync: Optional[Any] = None + last_sync: Optional[StrictStr] = None var_schema: StrictStr = Field(alias="schema") synced: StrictBool table: StrictStr @@ -81,6 +82,11 @@ def to_dict(self) -> Dict[str, Any]: if _item_columns: _items.append(_item_columns.to_dict()) _dict['columns'] = _items + # set to None if columns (nullable) is None + # and model_fields_set contains the field + if self.columns is None and "columns" in self.model_fields_set: + _dict['columns'] = None + # set to None if last_sync (nullable) is None # and model_fields_set contains the field if self.last_sync is None and "last_sync" in self.model_fields_set: diff --git a/hotdata/models/table_profile_response.py b/hotdata/models/table_profile_response.py index 55f9b73..879e5c3 100644 --- a/hotdata/models/table_profile_response.py +++ b/hotdata/models/table_profile_response.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -32,7 +33,7 @@ class TableProfileResponse(BaseModel): connection: StrictStr = Field(description="Connection name") row_count: Annotated[int, Field(strict=True, ge=0)] = Field(description="Total number of rows in the table") var_schema: StrictStr = Field(description="Schema name", alias="schema") - synced_at: Optional[Any] = Field(default=None, description="When the table was last synced") + synced_at: Optional[StrictStr] = Field(default=None, description="When the table was last synced") table: StrictStr = Field(description="Table name") __properties: ClassVar[List[str]] = ["columns", "connection", "row_count", "schema", "synced_at", "table"] diff --git a/hotdata/models/table_refresh_error.py b/hotdata/models/table_refresh_error.py index 0b8a639..abeae62 100644 --- a/hotdata/models/table_refresh_error.py +++ b/hotdata/models/table_refresh_error.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/hotdata/models/table_refresh_result.py b/hotdata/models/table_refresh_result.py index 7c1d893..35b64da 100644 --- a/hotdata/models/table_refresh_result.py +++ b/hotdata/models/table_refresh_result.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/hotdata/models/temporal_profile_detail.py b/hotdata/models/temporal_profile_detail.py new file mode 100644 index 0000000..3b0aea4 --- /dev/null +++ b/hotdata/models/temporal_profile_detail.py @@ -0,0 +1,90 @@ +# coding: utf-8 + +""" + HotData API + + Powerful data platform API for datasets, queries, and analytics. + + The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + +from pydantic import BaseModel, ConfigDict, Field, StrictStr +from typing import Any, ClassVar, Dict, List +from typing import Optional, Set +from typing_extensions import Self + +class TemporalProfileDetail(BaseModel): + """ + Date or timestamp column. + """ # noqa: E501 + max: StrictStr = Field(description="Latest value as ISO-8601 string") + min: StrictStr = Field(description="Earliest value as ISO-8601 string") + __properties: ClassVar[List[str]] = ["max", "min"] + + model_config = ConfigDict( + populate_by_name=True, + validate_assignment=True, + protected_namespaces=(), + ) + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return json.dumps(self.to_dict()) + + @classmethod + def from_json(cls, json_str: str) -> Optional[Self]: + """Create an instance of TemporalProfileDetail from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + excluded_fields: Set[str] = set([ + ]) + + _dict = self.model_dump( + by_alias=True, + exclude=excluded_fields, + exclude_none=True, + ) + return _dict + + @classmethod + def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: + """Create an instance of TemporalProfileDetail from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "max": obj.get("max"), + "min": obj.get("min") + }) + return _obj + + diff --git a/hotdata/models/text_profile_detail.py b/hotdata/models/text_profile_detail.py new file mode 100644 index 0000000..0111543 --- /dev/null +++ b/hotdata/models/text_profile_detail.py @@ -0,0 +1,93 @@ +# coding: utf-8 + +""" + HotData API + + Powerful data platform API for datasets, queries, and analytics. + + The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + +from pydantic import BaseModel, ConfigDict, Field, StrictFloat, StrictInt +from typing import Any, ClassVar, Dict, List, Union +from typing_extensions import Annotated +from typing import Optional, Set +from typing_extensions import Self + +class TextProfileDetail(BaseModel): + """ + High-cardinality text column (>200 distinct values). + """ # noqa: E501 + avg_length: Union[StrictFloat, StrictInt] = Field(description="Average string length") + max_length: Annotated[int, Field(strict=True, ge=0)] = Field(description="Longest string length in the column") + min_length: Annotated[int, Field(strict=True, ge=0)] = Field(description="Shortest string length in the column") + __properties: ClassVar[List[str]] = ["avg_length", "max_length", "min_length"] + + model_config = ConfigDict( + populate_by_name=True, + validate_assignment=True, + protected_namespaces=(), + ) + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return json.dumps(self.to_dict()) + + @classmethod + def from_json(cls, json_str: str) -> Optional[Self]: + """Create an instance of TextProfileDetail from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + excluded_fields: Set[str] = set([ + ]) + + _dict = self.model_dump( + by_alias=True, + exclude=excluded_fields, + exclude_none=True, + ) + return _dict + + @classmethod + def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: + """Create an instance of TextProfileDetail from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "avg_length": obj.get("avg_length"), + "max_length": obj.get("max_length"), + "min_length": obj.get("min_length") + }) + return _obj + + diff --git a/hotdata/models/update_dataset_request.py b/hotdata/models/update_dataset_request.py index f2a4445..ad397ad 100644 --- a/hotdata/models/update_dataset_request.py +++ b/hotdata/models/update_dataset_request.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -17,7 +18,7 @@ import re # noqa: F401 import json -from pydantic import BaseModel, ConfigDict +from pydantic import BaseModel, ConfigDict, StrictStr from typing import Any, ClassVar, Dict, List, Optional from typing import Optional, Set from typing_extensions import Self @@ -26,8 +27,8 @@ class UpdateDatasetRequest(BaseModel): """ Request body for PUT /v1/datasets/{id} """ # noqa: E501 - label: Optional[Any] = None - table_name: Optional[Any] = None + label: Optional[StrictStr] = None + table_name: Optional[StrictStr] = None __properties: ClassVar[List[str]] = ["label", "table_name"] model_config = ConfigDict( diff --git a/hotdata/models/update_dataset_response.py b/hotdata/models/update_dataset_response.py index 0d88ce3..672ee99 100644 --- a/hotdata/models/update_dataset_response.py +++ b/hotdata/models/update_dataset_response.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/hotdata/models/update_saved_query_request.py b/hotdata/models/update_saved_query_request.py index 479f115..96635f6 100644 --- a/hotdata/models/update_saved_query_request.py +++ b/hotdata/models/update_saved_query_request.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -26,11 +27,11 @@ class UpdateSavedQueryRequest(BaseModel): """ Request body for PUT /v1/queries/{id} """ # noqa: E501 - category_override: Optional[Any] = Field(default=None, description="Override the auto-detected category. Send `null` to clear (revert to auto).") - description: Optional[Any] = None - name: Optional[Any] = Field(default=None, description="Optional new name. When omitted the existing name is preserved.") - sql: Optional[Any] = Field(default=None, description="Optional new SQL. When omitted the existing SQL is preserved.") - table_size_override: Optional[Any] = Field(default=None, description="User annotation for table size. Send `null` to clear.") + category_override: Optional[StrictStr] = Field(default=None, description="Override the auto-detected category. Send `null` to clear (revert to auto).") + description: Optional[StrictStr] = None + name: Optional[StrictStr] = Field(default=None, description="Optional new name. When omitted the existing name is preserved.") + sql: Optional[StrictStr] = Field(default=None, description="Optional new SQL. When omitted the existing SQL is preserved.") + table_size_override: Optional[StrictStr] = Field(default=None, description="User annotation for table size. Send `null` to clear.") tags: Optional[List[StrictStr]] = None __properties: ClassVar[List[str]] = ["category_override", "description", "name", "sql", "table_size_override", "tags"] @@ -98,6 +99,11 @@ def to_dict(self) -> Dict[str, Any]: if self.table_size_override is None and "table_size_override" in self.model_fields_set: _dict['table_size_override'] = None + # set to None if tags (nullable) is None + # and model_fields_set contains the field + if self.tags is None and "tags" in self.model_fields_set: + _dict['tags'] = None + return _dict @classmethod diff --git a/hotdata/models/update_secret_request.py b/hotdata/models/update_secret_request.py index 4a20feb..60031ca 100644 --- a/hotdata/models/update_secret_request.py +++ b/hotdata/models/update_secret_request.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/hotdata/models/update_secret_response.py b/hotdata/models/update_secret_response.py index 3769bd2..fe8b2dc 100644 --- a/hotdata/models/update_secret_response.py +++ b/hotdata/models/update_secret_response.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/hotdata/models/upload_dataset_source.py b/hotdata/models/upload_dataset_source.py new file mode 100644 index 0000000..5e4361b --- /dev/null +++ b/hotdata/models/upload_dataset_source.py @@ -0,0 +1,97 @@ +# coding: utf-8 + +""" + HotData API + + Powerful data platform API for datasets, queries, and analytics. + + The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + +from pydantic import BaseModel, ConfigDict, Field, StrictStr +from typing import Any, ClassVar, Dict, List, Optional +from typing import Optional, Set +from typing_extensions import Self + +class UploadDatasetSource(BaseModel): + """ + Create dataset from a previously uploaded file + """ # noqa: E501 + columns: Optional[Dict[str, StrictStr]] = Field(default=None, description="Optional explicit column definitions. Keys are column names, values are type specs. When provided, the schema is built from these definitions instead of being inferred.") + format: Optional[StrictStr] = None + upload_id: StrictStr + __properties: ClassVar[List[str]] = ["columns", "format", "upload_id"] + + model_config = ConfigDict( + populate_by_name=True, + validate_assignment=True, + protected_namespaces=(), + ) + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return json.dumps(self.to_dict()) + + @classmethod + def from_json(cls, json_str: str) -> Optional[Self]: + """Create an instance of UploadDatasetSource from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + excluded_fields: Set[str] = set([ + ]) + + _dict = self.model_dump( + by_alias=True, + exclude=excluded_fields, + exclude_none=True, + ) + # set to None if format (nullable) is None + # and model_fields_set contains the field + if self.format is None and "format" in self.model_fields_set: + _dict['format'] = None + + return _dict + + @classmethod + def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: + """Create an instance of UploadDatasetSource from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "columns": obj.get("columns"), + "format": obj.get("format"), + "upload_id": obj.get("upload_id") + }) + return _obj + + diff --git a/hotdata/models/upload_info.py b/hotdata/models/upload_info.py index 3f30d62..2b96c3f 100644 --- a/hotdata/models/upload_info.py +++ b/hotdata/models/upload_info.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -27,7 +28,7 @@ class UploadInfo(BaseModel): """ Single upload info for listing """ # noqa: E501 - content_type: Optional[Any] = None + content_type: Optional[StrictStr] = None created_at: datetime id: StrictStr size_bytes: StrictInt diff --git a/hotdata/models/upload_response.py b/hotdata/models/upload_response.py index df6a115..c32b3c4 100644 --- a/hotdata/models/upload_response.py +++ b/hotdata/models/upload_response.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -27,7 +28,7 @@ class UploadResponse(BaseModel): """ Response body for POST /v1/files """ # noqa: E501 - content_type: Optional[Any] = None + content_type: Optional[StrictStr] = None created_at: datetime id: StrictStr size_bytes: StrictInt diff --git a/hotdata/models/workspace_detail.py b/hotdata/models/workspace_detail.py index 5bede09..3612304 100644 --- a/hotdata/models/workspace_detail.py +++ b/hotdata/models/workspace_detail.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/hotdata/models/workspace_list_item.py b/hotdata/models/workspace_list_item.py index fe779b5..547bd2e 100644 --- a/hotdata/models/workspace_list_item.py +++ b/hotdata/models/workspace_list_item.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/hotdata/rest.py b/hotdata/rest.py index a366782..60b03c2 100644 --- a/hotdata/rest.py +++ b/hotdata/rest.py @@ -6,6 +6,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/pyproject.toml b/pyproject.toml index 4da5b48..6282c2a 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -3,8 +3,9 @@ name = "hotdata" version = "1.0.0" description = "HotData API" authors = [ - {name = "OpenAPI Generator Community",email = "team@openapitools.org"}, + {name = "HotData",email = "developers@hotdata.dev"}, ] +license = { text = "MIT" } readme = "README.md" keywords = ["OpenAPI", "OpenAPI-Generator", "HotData API"] requires-python = ">=3.9" diff --git a/setup.py b/setup.py index b95fd12..716a551 100644 --- a/setup.py +++ b/setup.py @@ -4,6 +4,7 @@ Powerful data platform API for datasets, queries, and analytics. The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -32,13 +33,14 @@ name=NAME, version=VERSION, description="HotData API", - author="OpenAPI Generator community", - author_email="team@openapitools.org", + author="HotData", + author_email="developers@hotdata.dev", url="", keywords=["OpenAPI", "OpenAPI-Generator", "HotData API"], install_requires=REQUIRES, packages=find_packages(exclude=["test", "tests"]), include_package_data=True, + license="MIT", long_description_content_type='text/markdown', long_description="""\ Powerful data platform API for datasets, queries, and analytics. diff --git a/test/test_boolean_profile_detail.py b/test/test_boolean_profile_detail.py new file mode 100644 index 0000000..8f241a8 --- /dev/null +++ b/test/test_boolean_profile_detail.py @@ -0,0 +1,55 @@ +# coding: utf-8 + +""" + HotData API + + Powerful data platform API for datasets, queries, and analytics. + + The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest + +from hotdata.models.boolean_profile_detail import BooleanProfileDetail + +class TestBooleanProfileDetail(unittest.TestCase): + """BooleanProfileDetail unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> BooleanProfileDetail: + """Test BooleanProfileDetail + include_optional is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `BooleanProfileDetail` + """ + model = BooleanProfileDetail() + if include_optional: + return BooleanProfileDetail( + false_count = 0, + true_count = 0 + ) + else: + return BooleanProfileDetail( + false_count = 0, + true_count = 0, + ) + """ + + def testBooleanProfileDetail(self): + """Test BooleanProfileDetail""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main() diff --git a/test/test_categorical_profile_detail.py b/test/test_categorical_profile_detail.py new file mode 100644 index 0000000..d09747b --- /dev/null +++ b/test/test_categorical_profile_detail.py @@ -0,0 +1,61 @@ +# coding: utf-8 + +""" + HotData API + + Powerful data platform API for datasets, queries, and analytics. + + The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest + +from hotdata.models.categorical_profile_detail import CategoricalProfileDetail + +class TestCategoricalProfileDetail(unittest.TestCase): + """CategoricalProfileDetail unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> CategoricalProfileDetail: + """Test CategoricalProfileDetail + include_optional is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `CategoricalProfileDetail` + """ + model = CategoricalProfileDetail() + if include_optional: + return CategoricalProfileDetail( + values = [ + hotdata.models.category_value_info.CategoryValueInfo( + count = 0, + value = '', ) + ] + ) + else: + return CategoricalProfileDetail( + values = [ + hotdata.models.category_value_info.CategoryValueInfo( + count = 0, + value = '', ) + ], + ) + """ + + def testCategoricalProfileDetail(self): + """Test CategoricalProfileDetail""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main() diff --git a/test/test_create_workspace_response.py b/test/test_create_workspace_response.py new file mode 100644 index 0000000..9c10ae7 --- /dev/null +++ b/test/test_create_workspace_response.py @@ -0,0 +1,63 @@ +# coding: utf-8 + +""" + HotData API + + Powerful data platform API for datasets, queries, and analytics. + + The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest + +from hotdata.models.create_workspace_response import CreateWorkspaceResponse + +class TestCreateWorkspaceResponse(unittest.TestCase): + """CreateWorkspaceResponse unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> CreateWorkspaceResponse: + """Test CreateWorkspaceResponse + include_optional is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `CreateWorkspaceResponse` + """ + model = CreateWorkspaceResponse() + if include_optional: + return CreateWorkspaceResponse( + ok = True, + workspace = hotdata.models.workspace_detail.WorkspaceDetail( + public_id = 'ws_abc123', + name = 'production-analytics', + provision_status = 'pending', + namespace = 'workspace-ws_abc123', ) + ) + else: + return CreateWorkspaceResponse( + ok = True, + workspace = hotdata.models.workspace_detail.WorkspaceDetail( + public_id = 'ws_abc123', + name = 'production-analytics', + provision_status = 'pending', + namespace = 'workspace-ws_abc123', ), + ) + """ + + def testCreateWorkspaceResponse(self): + """Test CreateWorkspaceResponse""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main() diff --git a/test/test_inline_dataset_source.py b/test/test_inline_dataset_source.py new file mode 100644 index 0000000..3b8fcd2 --- /dev/null +++ b/test/test_inline_dataset_source.py @@ -0,0 +1,63 @@ +# coding: utf-8 + +""" + HotData API + + Powerful data platform API for datasets, queries, and analytics. + + The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest + +from hotdata.models.inline_dataset_source import InlineDatasetSource + +class TestInlineDatasetSource(unittest.TestCase): + """InlineDatasetSource unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> InlineDatasetSource: + """Test InlineDatasetSource + include_optional is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `InlineDatasetSource` + """ + model = InlineDatasetSource() + if include_optional: + return InlineDatasetSource( + inline = hotdata.models.inline_data.InlineData( + columns = { + 'key' : '' + }, + content = '', + format = '', ) + ) + else: + return InlineDatasetSource( + inline = hotdata.models.inline_data.InlineData( + columns = { + 'key' : '' + }, + content = '', + format = '', ), + ) + """ + + def testInlineDatasetSource(self): + """Test InlineDatasetSource""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main() diff --git a/test/test_list_workspaces_response.py b/test/test_list_workspaces_response.py new file mode 100644 index 0000000..0865902 --- /dev/null +++ b/test/test_list_workspaces_response.py @@ -0,0 +1,71 @@ +# coding: utf-8 + +""" + HotData API + + Powerful data platform API for datasets, queries, and analytics. + + The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest + +from hotdata.models.list_workspaces_response import ListWorkspacesResponse + +class TestListWorkspacesResponse(unittest.TestCase): + """ListWorkspacesResponse unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> ListWorkspacesResponse: + """Test ListWorkspacesResponse + include_optional is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `ListWorkspacesResponse` + """ + model = ListWorkspacesResponse() + if include_optional: + return ListWorkspacesResponse( + ok = True, + workspaces = [ + hotdata.models.workspace_list_item.WorkspaceListItem( + public_id = 'ws_abc123', + name = 'production-analytics', + active = True, + favorite = True, + provision_status = 'provisioned', + namespace = 'workspace-ws_abc123', ) + ] + ) + else: + return ListWorkspacesResponse( + ok = True, + workspaces = [ + hotdata.models.workspace_list_item.WorkspaceListItem( + public_id = 'ws_abc123', + name = 'production-analytics', + active = True, + favorite = True, + provision_status = 'provisioned', + namespace = 'workspace-ws_abc123', ) + ], + ) + """ + + def testListWorkspacesResponse(self): + """Test ListWorkspacesResponse""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main() diff --git a/test/test_numeric_profile_detail.py b/test/test_numeric_profile_detail.py new file mode 100644 index 0000000..e336278 --- /dev/null +++ b/test/test_numeric_profile_detail.py @@ -0,0 +1,57 @@ +# coding: utf-8 + +""" + HotData API + + Powerful data platform API for datasets, queries, and analytics. + + The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest + +from hotdata.models.numeric_profile_detail import NumericProfileDetail + +class TestNumericProfileDetail(unittest.TestCase): + """NumericProfileDetail unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> NumericProfileDetail: + """Test NumericProfileDetail + include_optional is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `NumericProfileDetail` + """ + model = NumericProfileDetail() + if include_optional: + return NumericProfileDetail( + max = '', + mean = 1.337, + min = '' + ) + else: + return NumericProfileDetail( + max = '', + mean = 1.337, + min = '', + ) + """ + + def testNumericProfileDetail(self): + """Test NumericProfileDetail""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main() diff --git a/test/test_temporal_profile_detail.py b/test/test_temporal_profile_detail.py new file mode 100644 index 0000000..16dba1b --- /dev/null +++ b/test/test_temporal_profile_detail.py @@ -0,0 +1,55 @@ +# coding: utf-8 + +""" + HotData API + + Powerful data platform API for datasets, queries, and analytics. + + The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest + +from hotdata.models.temporal_profile_detail import TemporalProfileDetail + +class TestTemporalProfileDetail(unittest.TestCase): + """TemporalProfileDetail unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> TemporalProfileDetail: + """Test TemporalProfileDetail + include_optional is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `TemporalProfileDetail` + """ + model = TemporalProfileDetail() + if include_optional: + return TemporalProfileDetail( + max = '', + min = '' + ) + else: + return TemporalProfileDetail( + max = '', + min = '', + ) + """ + + def testTemporalProfileDetail(self): + """Test TemporalProfileDetail""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main() diff --git a/test/test_text_profile_detail.py b/test/test_text_profile_detail.py new file mode 100644 index 0000000..10e8487 --- /dev/null +++ b/test/test_text_profile_detail.py @@ -0,0 +1,57 @@ +# coding: utf-8 + +""" + HotData API + + Powerful data platform API for datasets, queries, and analytics. + + The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest + +from hotdata.models.text_profile_detail import TextProfileDetail + +class TestTextProfileDetail(unittest.TestCase): + """TextProfileDetail unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> TextProfileDetail: + """Test TextProfileDetail + include_optional is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `TextProfileDetail` + """ + model = TextProfileDetail() + if include_optional: + return TextProfileDetail( + avg_length = 1.337, + max_length = 0, + min_length = 0 + ) + else: + return TextProfileDetail( + avg_length = 1.337, + max_length = 0, + min_length = 0, + ) + """ + + def testTextProfileDetail(self): + """Test TextProfileDetail""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main() diff --git a/test/test_upload_dataset_source.py b/test/test_upload_dataset_source.py new file mode 100644 index 0000000..2386c20 --- /dev/null +++ b/test/test_upload_dataset_source.py @@ -0,0 +1,57 @@ +# coding: utf-8 + +""" + HotData API + + Powerful data platform API for datasets, queries, and analytics. + + The version of the OpenAPI document: 1.0.0 + Contact: developers@hotdata.dev + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest + +from hotdata.models.upload_dataset_source import UploadDatasetSource + +class TestUploadDatasetSource(unittest.TestCase): + """UploadDatasetSource unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> UploadDatasetSource: + """Test UploadDatasetSource + include_optional is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `UploadDatasetSource` + """ + model = UploadDatasetSource() + if include_optional: + return UploadDatasetSource( + columns = { + 'key' : '' + }, + format = '', + upload_id = '' + ) + else: + return UploadDatasetSource( + upload_id = '', + ) + """ + + def testUploadDatasetSource(self): + """Test UploadDatasetSource""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main()