diff --git a/.env.example b/.env.example new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/.env.example @@ -0,0 +1 @@ + diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..c41779a --- /dev/null +++ b/.gitignore @@ -0,0 +1,23 @@ +# Byte-compiled / optimized / DLL files +__pycache__/ +*.py[cod] +*$py.class + +# Installer logs +pip-log.txt +pip-delete-this-directory.txt + +# Environments +.env +.venv +env/ +venv/ +ENV/ +env.bak/ +venv.bak/ + +# Devcontainer +.devcontainer/ + +dist/ +.vscode diff --git a/.manifest.json b/.manifest.json new file mode 100644 index 0000000..5d0b15e --- /dev/null +++ b/.manifest.json @@ -0,0 +1,305 @@ +{ + "liblabVersion": "2.5.0", + "date": "2024-10-02T17:01:27.810Z", + "config": { + "apiId": 1240, + "sdkName": "geobeyond-sdk", + "sdkVersion": "1.0.0", + "liblabVersion": "2", + "deliveryMethods": ["zip"], + "languages": ["python"], + "apiVersion": "1.0.0", + "apiName": "geo-beyond-api", + "specFilePath": "bundledSpec.json", + "languageOptions": { + "csharp": { + "packageId": "", + "githubRepoName": "", + "ignoreFiles": [], + "liblabVersion": "2", + "sdkVersion": "1.0.0" + }, + "go": { + "goModuleName": "github.com/swagger-api/swagger-petstore", + "githubRepoName": "", + "ignoreFiles": [], + "liblabVersion": "2", + "sdkVersion": "1.0.0" + }, + "python": { + "alwaysInitializeOptionals": false, + "pypiPackageName": "geobeyond", + "githubRepoName": "liblab-python", + "ignoreFiles": [], + "liblabVersion": "2", + "sdkVersion": "1.0.0" + }, + "typescript": { + "bundle": true, + "exportClassDefault": false, + "httpClient": "fetch", + "npmName": "geobeyond", + "npmOrg": "", + "githubRepoName": "", + "ignoreFiles": [], + "liblabVersion": "2", + "sdkVersion": "1.0.0", + "generateEnumAs": "enum" + } + }, + "publishing": { + "githubOrg": "geobeyond" + }, + "devContainer": true, + "generateEnv": true, + "includeOptionalSnippetParameters": true, + "inferServiceNames": false, + "injectedModels": [], + "license": { + "type": "MIT", + "name": "MIT", + "url": "https://opensource.org/licenses/MIT", + "path": "MIT.ejs" + }, + "responseHeaders": false, + "retry": { + "enabled": true, + "maxAttempts": 3, + "retryDelay": 150, + "maxDelay": 5000, + "retryDelayJitter": 50, + "backOffFactor": 2, + "httpCodesToRetry": [408, 429, 500, 502, 503, 504], + "httpMethodsToRetry": ["GET", "POST", "PUT", "DELETE", "PATCH", "HEAD", "OPTIONS"] + }, + "multiTenant": true, + "includeWatermark": true, + "alwaysInitializeOptionals": false, + "pypiPackageName": "geobeyond", + "githubRepoName": "liblab-python", + "ignoreFiles": [], + "language": "python", + "deliveryMethod": "zip", + "hooks": { + "enabled": false, + "sourceDir": "" + }, + "usesFormData": false, + "authentication": {}, + "environmentVariables": [], + "fileOutput": "/tmp", + "httpLibrary": { + "name": "axios", + "packages": { + "axios": "^1.7.7" + }, + "languages": ["typescript"] + }, + "auth": [], + "customQueries": { + "paths": [], + "rawQueries": [], + "queriesData": [] + } + }, + "files": [ + "src/geobeyond_sdk/models/utils/base_model.py", + "src/geobeyond_sdk/models/utils/json_map.py", + "src/geobeyond_sdk/models/__init__.py", + "src/geobeyond_sdk/services/__init__.py", + "src/geobeyond_sdk/services/utils/__init__.py", + "src/geobeyond_sdk/__init__.py", + "src/geobeyond_sdk/net/__init__.py", + "src/geobeyond_sdk/net/headers/__init__.py", + "src/geobeyond_sdk/net/transport/__init__.py", + "src/geobeyond_sdk/hooks/__init__.py", + "src/geobeyond_sdk/net/environment/__init__.py", + "src/geobeyond_sdk/net/request_chain/__init__.py", + "src/geobeyond_sdk/net/request_chain/handlers/__init__.py", + "src/geobeyond_sdk/models/utils/__init__.py", + "src/geobeyond_sdk/net/transport/request.py", + "src/geobeyond_sdk/net/transport/response.py", + "src/geobeyond_sdk/net/transport/request_error.py", + "src/geobeyond_sdk/sdk.py", + "src/geobeyond_sdk/net/transport/serializer.py", + "src/geobeyond_sdk/services/utils/validator.py", + "src/geobeyond_sdk/services/utils/base_service.py", + "pyproject.toml", + ".gitignore", + "src/geobeyond_sdk/models/utils/cast_models.py", + "src/geobeyond_sdk/net/transport/utils.py", + "src/geobeyond_sdk/hooks/hook.py", + "install.sh", + "install.cmd", + "examples/install.sh", + "examples/install.cmd", + "src/geobeyond_sdk/net/headers/base_header.py", + "src/geobeyond_sdk/net/environment/environment.py", + "src/geobeyond_sdk/net/request_chain/request_chain.py", + "src/geobeyond_sdk/net/request_chain/handlers/base_handler.py", + "src/geobeyond_sdk/net/request_chain/handlers/http_handler.py", + "src/geobeyond_sdk/net/request_chain/handlers/hook_handler.py", + "src/geobeyond_sdk/net/request_chain/handlers/retry_handler.py", + "examples/sample.py", + ".env.example", + "/examples/.env.example", + "src/geobeyond_sdk/services/utils/default_headers.py", + "./LICENSE", + ".devcontainer/devcontainer.json", + "documentation/models/LandingPage.md", + "documentation/models/GetLandingPageF.md", + "documentation/models/Lang.md", + "documentation/models/Ui.md", + "documentation/models/ProcessList.md", + "documentation/models/Collection.md", + "documentation/models/GetDutchMetadataFeaturesProperties.md", + "documentation/models/Queryables.md", + "documentation/models/GetDutchCastlesFeaturesProperties.md", + "documentation/models/GetDutchGeorefStationsFeaturesProperties.md", + "documentation/models/GetDutchWindmillsFeaturesProperties.md", + "documentation/models/GetLakesFeaturesProperties.md", + "documentation/models/Tiles.md", + "documentation/models/TileMatrixSets.md", + "documentation/models/GetLakesTilesF.md", + "documentation/models/GetMapF.md", + "documentation/models/GetObsFeaturesProperties.md", + "documentation/models/GetOgrAddressesGpkgFeaturesProperties.md", + "documentation/models/GetOgrAddressesSqliteFeaturesProperties.md", + "documentation/models/GetOgrGeojsonLakesFeaturesProperties.md", + "documentation/models/GetOgrGpkgPoiFeaturesProperties.md", + "documentation/models/GetOgrGpkgWalesRailwayLinesFeaturesProperties.md", + "documentation/models/GetOgrGpkgWalesStationsFeaturesProperties.md", + "documentation/models/GetUnescoPoisItalyFeaturesProperties.md", + "documentation/models/GetUtahCityLocationsFeaturesProperties.md", + "documentation/models/Link.md", + "documentation/models/Link3.md", + "documentation/models/Metadata.md", + "documentation/models/JobControlOptions.md", + "documentation/models/TransmissionMode.md", + "documentation/models/Queryable.md", + "documentation/models/NdArray.md", + "documentation/models/ReferenceSystemConnection.md", + "documentation/models/Domain.md", + "documentation/models/ReferenceSystem.md", + "documentation/models/Link2.md", + "documentation/models/Tilematrixsetlink.md", + "documentation/models/Subscriber.md", + "documentation/models/StatusCode.md", + "src/geobeyond_sdk/models/utils/one_of_base_model.py", + "src/geobeyond_sdk/models/query_cube_icoads_sst_bbox.py", + "src/geobeyond_sdk/models/geometry_geo_json.py", + "src/geobeyond_sdk/services/stac.py", + "documentation/models/FeatureCollectionGeoJson.md", + "documentation/models/CoverageJson.md", + "documentation/models/Execute.md", + "documentation/models/StatusInfo.md", + "documentation/models/ProcessSummary.md", + "documentation/models/AdditionalParameter.md", + "documentation/models/PointGeoJson.md", + "documentation/models/MultipointGeoJson.md", + "documentation/models/LinestringGeoJson.md", + "documentation/models/MultilinestringGeoJson.md", + "documentation/models/PolygonGeoJson.md", + "documentation/models/MultipolygonGeoJson.md", + "documentation/models/GeometrycollectionGeoJson.md", + "src/geobeyond_sdk/models/get_landing_page_f.py", + "src/geobeyond_sdk/models/lang.py", + "src/geobeyond_sdk/models/ui.py", + "src/geobeyond_sdk/models/get_dutch_metadata_features_properties.py", + "src/geobeyond_sdk/models/get_dutch_castles_features_properties.py", + "src/geobeyond_sdk/models/get_dutch_georef_stations_features_properties.py", + "src/geobeyond_sdk/models/get_dutch_windmills_features_properties.py", + "src/geobeyond_sdk/models/get_lakes_features_properties.py", + "src/geobeyond_sdk/models/tile_matrix_sets.py", + "src/geobeyond_sdk/models/get_lakes_tiles_f.py", + "src/geobeyond_sdk/models/get_map_f.py", + "src/geobeyond_sdk/models/get_obs_features_properties.py", + "src/geobeyond_sdk/models/get_ogr_addresses_gpkg_features_properties.py", + "src/geobeyond_sdk/models/get_ogr_addresses_sqlite_features_properties.py", + "src/geobeyond_sdk/models/get_ogr_geojson_lakes_features_properties.py", + "src/geobeyond_sdk/models/get_ogr_gpkg_poi_features_properties.py", + "src/geobeyond_sdk/models/get_ogr_gpkg_wales_railway_lines_features_properties.py", + "src/geobeyond_sdk/models/get_ogr_gpkg_wales_stations_features_properties.py", + "src/geobeyond_sdk/models/get_unesco_pois_italy_features_properties.py", + "src/geobeyond_sdk/models/get_utah_city_locations_features_properties.py", + "src/geobeyond_sdk/models/job_control_options.py", + "src/geobeyond_sdk/models/transmission_mode.py", + "src/geobeyond_sdk/models/status_code.py", + "documentation/services/StacService.md", + "documentation/models/FeatureGeoJson.md", + "src/geobeyond_sdk/models/landing_page.py", + "src/geobeyond_sdk/models/process_list.py", + "src/geobeyond_sdk/models/collection.py", + "src/geobeyond_sdk/models/queryables.py", + "src/geobeyond_sdk/models/tiles.py", + "src/geobeyond_sdk/models/link.py", + "src/geobeyond_sdk/models/link_3.py", + "src/geobeyond_sdk/models/metadata.py", + "src/geobeyond_sdk/models/queryable.py", + "src/geobeyond_sdk/models/nd_array.py", + "src/geobeyond_sdk/models/reference_system_connection.py", + "src/geobeyond_sdk/models/domain.py", + "src/geobeyond_sdk/models/reference_system.py", + "src/geobeyond_sdk/models/link_2.py", + "src/geobeyond_sdk/models/tilematrixsetlink.py", + "src/geobeyond_sdk/models/subscriber.py", + "src/geobeyond_sdk/services/gdps_temperature.py", + "src/geobeyond_sdk/services/mapserver_world_map.py", + "src/geobeyond_sdk/services/hello_world.py", + "documentation/services/GdpsTemperatureService.md", + "documentation/services/MapserverWorldMapService.md", + "documentation/services/HelloWorldService.md", + "documentation/services/IcoadsSstService.md", + "src/geobeyond_sdk/models/additional_parameter.py", + "src/geobeyond_sdk/services/icoads_sst.py", + "documentation/services/JobsService.md", + "documentation/models/Extent.md", + "src/geobeyond_sdk/models/feature_collection_geo_json.py", + "src/geobeyond_sdk/models/execute.py", + "src/geobeyond_sdk/models/status_info.py", + "src/geobeyond_sdk/models/point_geo_json.py", + "src/geobeyond_sdk/models/multipoint_geo_json.py", + "src/geobeyond_sdk/models/linestring_geo_json.py", + "src/geobeyond_sdk/models/multilinestring_geo_json.py", + "src/geobeyond_sdk/models/polygon_geo_json.py", + "src/geobeyond_sdk/models/multipolygon_geo_json.py", + "src/geobeyond_sdk/models/geometrycollection_geo_json.py", + "documentation/services/ServerService.md", + "src/geobeyond_sdk/models/coverage_json.py", + "src/geobeyond_sdk/models/process_summary.py", + "src/geobeyond_sdk/services/jobs.py", + "src/geobeyond_sdk/models/feature_geo_json.py", + "documentation/services/DutchMetadataService.md", + "documentation/services/DutchCastlesService.md", + "documentation/services/DutchGeorefStationsService.md", + "documentation/services/DutchWindmillsService.md", + "documentation/services/ObsService.md", + "documentation/services/OgrAddressesGpkgService.md", + "documentation/services/OgrAddressesSqliteService.md", + "documentation/services/OgrGeojsonLakesService.md", + "documentation/services/OgrGpkgPoiService.md", + "documentation/services/OgrGpkgWalesRailwayLinesService.md", + "documentation/services/OgrGpkgWalesStationsService.md", + "documentation/services/UnescoPoisItalyService.md", + "documentation/services/UtahCityLocationsService.md", + "src/geobeyond_sdk/services/server.py", + "documentation/services/LakesService.md", + "README.md", + "PyPI_README.md", + "src/geobeyond_sdk/services/dutch_metadata.py", + "src/geobeyond_sdk/services/dutch_castles.py", + "src/geobeyond_sdk/services/dutch_georef_stations.py", + "src/geobeyond_sdk/services/dutch_windmills.py", + "src/geobeyond_sdk/services/obs.py", + "src/geobeyond_sdk/services/ogr_addresses_gpkg.py", + "src/geobeyond_sdk/services/ogr_addresses_sqlite.py", + "src/geobeyond_sdk/services/ogr_geojson_lakes.py", + "src/geobeyond_sdk/services/ogr_gpkg_poi.py", + "src/geobeyond_sdk/services/ogr_gpkg_wales_railway_lines.py", + "src/geobeyond_sdk/services/ogr_gpkg_wales_stations.py", + "src/geobeyond_sdk/services/unesco_pois_italy.py", + "src/geobeyond_sdk/services/utah_city_locations.py", + "src/geobeyond_sdk/services/lakes.py", + "src/geobeyond_sdk/models/extent.py" + ] +} diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..db5ca62 --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2024 + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/PyPI_README.md b/PyPI_README.md new file mode 100644 index 0000000..3913bbe --- /dev/null +++ b/PyPI_README.md @@ -0,0 +1,204 @@ +# GeobeyondSdk Python SDK 1.0.0 + +Welcome to the GeobeyondSdk SDK documentation. This guide will help you get started with integrating and using the GeobeyondSdk SDK in your project. + +## Versions + +- API version: `0.18.0` +- SDK version: `1.0.0` + +## About the API + +pygeoapi provides an API to geospatial data + +## Table of Contents + +- [Setup & Configuration](#setup--configuration) + - [Supported Language Versions](#supported-language-versions) + - [Installation](#installation) +- [Setting a Custom Timeout](#setting-a-custom-timeout) +- [Sample Usage](#sample-usage) +- [Services](#services) +- [Models](#models) + - [Using Union Types](#using-union-types) +- [License](#license) + +## Setup & Configuration + +### Supported Language Versions + +This SDK is compatible with the following versions: `Python >= 3.7` + +### Installation + +To get started with the SDK, we recommend installing using `pip`: + +```bash +pip install geobeyond +``` + +## Setting a Custom Timeout + +You can set a custom timeout for the SDK's HTTP requests as follows: + +```py +from geobeyond_sdk import GeobeyondSdk + +sdk = GeobeyondSdk(timeout=10000) +``` + +# Sample Usage + +Below is a comprehensive example demonstrating how to authenticate and call a simple endpoint: + +```py +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.server.get_landing_page( + f="json", + lang="en-US" +) + +print(result) + +``` + +## Services + +The SDK provides various services to interact with the API. + +
+Below is a list of all available services: + +| Name | +| :--------------------------- | +| server | +| dutch_metadata | +| dutch_castles | +| dutch_georef_stations | +| dutch_windmills | +| gdps_temperature | +| icoads_sst | +| lakes | +| mapserver_world_map | +| obs | +| ogr_addresses_gpkg | +| ogr_addresses_sqlite | +| ogr_geojson_lakes | +| ogr_gpkg_poi | +| ogr_gpkg_wales_railway_lines | +| ogr_gpkg_wales_stations | +| unesco_pois_italy | +| utah_city_locations | +| jobs | +| hello_world | +| stac | + +
+ +## Models + +The SDK includes several models that represent the data structures used in API requests and responses. These models help in organizing and managing the data efficiently. + +
+Below is a list of all available models: + +| Name | Description | +| :-------------------------------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| LandingPage | | +| GetLandingPageF | | +| Lang | | +| Ui | | +| ProcessList | | +| Collection | | +| FeatureCollectionGeoJson | | +| GetDutchMetadataFeaturesProperties | | +| FeatureGeoJson | | +| Queryables | | +| GetDutchCastlesFeaturesProperties | | +| GetDutchGeorefStationsFeaturesProperties | | +| GetDutchWindmillsFeaturesProperties | | +| CoverageJson | A geospatial coverage interchange format based on JavaScript Object Notation (JSON) | +| GetLakesFeaturesProperties | | +| Tiles | | +| TileMatrixSets | | +| GetLakesTilesF | | +| GetMapF | | +| GetObsFeaturesProperties | | +| GetOgrAddressesGpkgFeaturesProperties | | +| GetOgrAddressesSqliteFeaturesProperties | | +| GetOgrGeojsonLakesFeaturesProperties | | +| GetOgrGpkgPoiFeaturesProperties | | +| GetOgrGpkgWalesRailwayLinesFeaturesProperties | | +| GetOgrGpkgWalesStationsFeaturesProperties | | +| GetUnescoPoisItalyFeaturesProperties | | +| GetUtahCityLocationsFeaturesProperties | | +| Execute | | +| StatusInfo | | +| Link | | +| ProcessSummary | | +| Link3 | | +| Metadata | | +| JobControlOptions | | +| TransmissionMode | | +| AdditionalParameter | | +| Extent | The extent of the features in the collection. In the Core only spatial and temporal extents are specified. Extensions may add additional members to represent other extents, for example, thermal or pressure ranges. | +| PointGeoJson | | +| MultipointGeoJson | | +| LinestringGeoJson | | +| MultilinestringGeoJson | | +| PolygonGeoJson | | +| MultipolygonGeoJson | | +| GeometrycollectionGeoJson | | +| Queryable | | +| NdArray | Object representing a multidimensional (>= 0D) array with named axes, encoded as a flat one-dimensional array in row-major order | +| ReferenceSystemConnection | Reference System Connection object: connects coordinates to reference systems | +| Domain | A Domain, which defines a set of positions and their extent in one or more referencing systems | +| ReferenceSystem | | +| Link2 | | +| Tilematrixsetlink | | +| Subscriber | Optional URIs for callbacks for this job. Support for this parameter is not required and the parameter may be removed from the API definition, if conformance class **'callback'** is not listed in the conformance declaration under `/conformance`. | +| StatusCode | | + +
+ +### Using Union Types + +Union types allow you to specify that a variable can have more than one type. This is particularly useful when a function can accept multiple types of inputs. The Union type hint is used for this purpose. + +#### Example Function with Union Types + +You can call service method with an instance of `TypeA`, `TypeB`, or a dictionary that can be converted to an instance of either type. + +```python +# Model Definition +ParamType = Union[TypeA, TypeB] + +# Service Method +def service_method(param: ParamType): +... + +## Usage +type_a = TypeA(key="value") +type_b = TypeB(key="value") + +sdk.service.service_method(type_a) +sdk.service.service_method(type_b) +sdk.service.service_method({"key": "value"}) +``` + +You cannot create an instance of a `Union` type itself. Instead, pass an instance of one of the types in the `Union`, or a dictionary that can be converted to one of those types. + +## License + +This SDK is licensed under the MIT License. + +See the [LICENSE](LICENSE) file for more details. + + diff --git a/README.md b/README.md index 5580535..9066f00 100644 --- a/README.md +++ b/README.md @@ -1,28 +1,204 @@ -# Template repo for Python SDK -This template helps developers get started with publishing the Python SDK to PyPI Registry. +# GeobeyondSdk Python SDK 1.0.0 -## Prerequisites -The user will need the following: +Welcome to the GeobeyondSdk SDK documentation. This guide will help you get started with integrating and using the GeobeyondSdk SDK in your project. -- An account with PyPI Registry with an API token that can upload packages into the desired project +## Versions -## Contents -This repository contains the following: +- API version: `0.18.0` +- SDK version: `1.0.0` -- A `README` that contains the instructions -- A GitHub Action workflow to publish the Python SDK to PyPI Registry. +## About the API +pygeoapi provides an API to geospatial data -## Instructions +## Table of Contents -1. Create a new target Python SDK Repo by clicking the **Use this template** button at the top of this repository. +- [Setup & Configuration](#setup--configuration) + - [Supported Language Versions](#supported-language-versions) + - [Installation](#installation) +- [Setting a Custom Timeout](#setting-a-custom-timeout) +- [Sample Usage](#sample-usage) +- [Services](#services) +- [Models](#models) + - [Using Union Types](#using-union-types) +- [License](#license) -2. Set the PyPI Registry's account Username as an actions secret `PYPI_USERNAME` and set the PyPI Registry's API token as an actions secret `PYPI_PASSWORD` in the target SDK Repo. +## Setup & Configuration -3. Run the GitHub Action `Generate SDKs using liblab` in the Control Repo that builds the SDK, and raises a PR against this target SDK Repo. +### Supported Language Versions -4. Review and merge the PR. +This SDK is compatible with the following versions: `Python >= 3.7` -5. Create a release in the target SDK Repo. +### Installation -6. The GitHub Action `Publish to PyPI Registry` in the target SDK Repo publishes the package to PyPI registry. +To get started with the SDK, we recommend installing using `pip`: + +```bash +pip install geobeyond +``` + +## Setting a Custom Timeout + +You can set a custom timeout for the SDK's HTTP requests as follows: + +```py +from geobeyond_sdk import GeobeyondSdk + +sdk = GeobeyondSdk(timeout=10000) +``` + +# Sample Usage + +Below is a comprehensive example demonstrating how to authenticate and call a simple endpoint: + +```py +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.server.get_landing_page( + f="json", + lang="en-US" +) + +print(result) + +``` + +## Services + +The SDK provides various services to interact with the API. + +
+Below is a list of all available services with links to their detailed documentation: + +| Name | +| :------------------------------------------------------------------------------------------- | +| [ServerService](documentation/services/ServerService.md) | +| [DutchMetadataService](documentation/services/DutchMetadataService.md) | +| [DutchCastlesService](documentation/services/DutchCastlesService.md) | +| [DutchGeorefStationsService](documentation/services/DutchGeorefStationsService.md) | +| [DutchWindmillsService](documentation/services/DutchWindmillsService.md) | +| [GdpsTemperatureService](documentation/services/GdpsTemperatureService.md) | +| [IcoadsSstService](documentation/services/IcoadsSstService.md) | +| [LakesService](documentation/services/LakesService.md) | +| [MapserverWorldMapService](documentation/services/MapserverWorldMapService.md) | +| [ObsService](documentation/services/ObsService.md) | +| [OgrAddressesGpkgService](documentation/services/OgrAddressesGpkgService.md) | +| [OgrAddressesSqliteService](documentation/services/OgrAddressesSqliteService.md) | +| [OgrGeojsonLakesService](documentation/services/OgrGeojsonLakesService.md) | +| [OgrGpkgPoiService](documentation/services/OgrGpkgPoiService.md) | +| [OgrGpkgWalesRailwayLinesService](documentation/services/OgrGpkgWalesRailwayLinesService.md) | +| [OgrGpkgWalesStationsService](documentation/services/OgrGpkgWalesStationsService.md) | +| [UnescoPoisItalyService](documentation/services/UnescoPoisItalyService.md) | +| [UtahCityLocationsService](documentation/services/UtahCityLocationsService.md) | +| [JobsService](documentation/services/JobsService.md) | +| [HelloWorldService](documentation/services/HelloWorldService.md) | +| [StacService](documentation/services/StacService.md) | + +
+ +## Models + +The SDK includes several models that represent the data structures used in API requests and responses. These models help in organizing and managing the data efficiently. + +
+Below is a list of all available models with links to their detailed documentation: + +| Name | Description | +| :--------------------------------------------------------------------------------------------------------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| [LandingPage](documentation/models/LandingPage.md) | | +| [GetLandingPageF](documentation/models/GetLandingPageF.md) | | +| [Lang](documentation/models/Lang.md) | | +| [Ui](documentation/models/Ui.md) | | +| [ProcessList](documentation/models/ProcessList.md) | | +| [Collection](documentation/models/Collection.md) | | +| [FeatureCollectionGeoJson](documentation/models/FeatureCollectionGeoJson.md) | | +| [GetDutchMetadataFeaturesProperties](documentation/models/GetDutchMetadataFeaturesProperties.md) | | +| [FeatureGeoJson](documentation/models/FeatureGeoJson.md) | | +| [Queryables](documentation/models/Queryables.md) | | +| [GetDutchCastlesFeaturesProperties](documentation/models/GetDutchCastlesFeaturesProperties.md) | | +| [GetDutchGeorefStationsFeaturesProperties](documentation/models/GetDutchGeorefStationsFeaturesProperties.md) | | +| [GetDutchWindmillsFeaturesProperties](documentation/models/GetDutchWindmillsFeaturesProperties.md) | | +| [CoverageJson](documentation/models/CoverageJson.md) | A geospatial coverage interchange format based on JavaScript Object Notation (JSON) | +| [GetLakesFeaturesProperties](documentation/models/GetLakesFeaturesProperties.md) | | +| [Tiles](documentation/models/Tiles.md) | | +| [TileMatrixSets](documentation/models/TileMatrixSets.md) | | +| [GetLakesTilesF](documentation/models/GetLakesTilesF.md) | | +| [GetMapF](documentation/models/GetMapF.md) | | +| [GetObsFeaturesProperties](documentation/models/GetObsFeaturesProperties.md) | | +| [GetOgrAddressesGpkgFeaturesProperties](documentation/models/GetOgrAddressesGpkgFeaturesProperties.md) | | +| [GetOgrAddressesSqliteFeaturesProperties](documentation/models/GetOgrAddressesSqliteFeaturesProperties.md) | | +| [GetOgrGeojsonLakesFeaturesProperties](documentation/models/GetOgrGeojsonLakesFeaturesProperties.md) | | +| [GetOgrGpkgPoiFeaturesProperties](documentation/models/GetOgrGpkgPoiFeaturesProperties.md) | | +| [GetOgrGpkgWalesRailwayLinesFeaturesProperties](documentation/models/GetOgrGpkgWalesRailwayLinesFeaturesProperties.md) | | +| [GetOgrGpkgWalesStationsFeaturesProperties](documentation/models/GetOgrGpkgWalesStationsFeaturesProperties.md) | | +| [GetUnescoPoisItalyFeaturesProperties](documentation/models/GetUnescoPoisItalyFeaturesProperties.md) | | +| [GetUtahCityLocationsFeaturesProperties](documentation/models/GetUtahCityLocationsFeaturesProperties.md) | | +| [Execute](documentation/models/Execute.md) | | +| [StatusInfo](documentation/models/StatusInfo.md) | | +| [Link](documentation/models/Link.md) | | +| [ProcessSummary](documentation/models/ProcessSummary.md) | | +| [Link_3](documentation/models/Link3.md) | | +| [Metadata](documentation/models/Metadata.md) | | +| [JobControlOptions](documentation/models/JobControlOptions.md) | | +| [TransmissionMode](documentation/models/TransmissionMode.md) | | +| [AdditionalParameter](documentation/models/AdditionalParameter.md) | | +| [Extent](documentation/models/Extent.md) | The extent of the features in the collection. In the Core only spatial and temporal extents are specified. Extensions may add additional members to represent other extents, for example, thermal or pressure ranges. | +| [PointGeoJson](documentation/models/PointGeoJson.md) | | +| [MultipointGeoJson](documentation/models/MultipointGeoJson.md) | | +| [LinestringGeoJson](documentation/models/LinestringGeoJson.md) | | +| [MultilinestringGeoJson](documentation/models/MultilinestringGeoJson.md) | | +| [PolygonGeoJson](documentation/models/PolygonGeoJson.md) | | +| [MultipolygonGeoJson](documentation/models/MultipolygonGeoJson.md) | | +| [GeometrycollectionGeoJson](documentation/models/GeometrycollectionGeoJson.md) | | +| [Queryable](documentation/models/Queryable.md) | | +| [NdArray](documentation/models/NdArray.md) | Object representing a multidimensional (>= 0D) array with named axes, encoded as a flat one-dimensional array in row-major order | +| [ReferenceSystemConnection](documentation/models/ReferenceSystemConnection.md) | Reference System Connection object: connects coordinates to reference systems | +| [Domain](documentation/models/Domain.md) | A Domain, which defines a set of positions and their extent in one or more referencing systems | +| [ReferenceSystem](documentation/models/ReferenceSystem.md) | | +| [Link_2](documentation/models/Link2.md) | | +| [Tilematrixsetlink](documentation/models/Tilematrixsetlink.md) | | +| [Subscriber](documentation/models/Subscriber.md) | Optional URIs for callbacks for this job. Support for this parameter is not required and the parameter may be removed from the API definition, if conformance class **'callback'** is not listed in the conformance declaration under `/conformance`. | +| [StatusCode](documentation/models/StatusCode.md) | | + +
+ +### Using Union Types + +Union types allow you to specify that a variable can have more than one type. This is particularly useful when a function can accept multiple types of inputs. The Union type hint is used for this purpose. + +#### Example Function with Union Types + +You can call service method with an instance of `TypeA`, `TypeB`, or a dictionary that can be converted to an instance of either type. + +```python +# Model Definition +ParamType = Union[TypeA, TypeB] + +# Service Method +def service_method(param: ParamType): +... + +## Usage +type_a = TypeA(key="value") +type_b = TypeB(key="value") + +sdk.service.service_method(type_a) +sdk.service.service_method(type_b) +sdk.service.service_method({"key": "value"}) +``` + +You cannot create an instance of a `Union` type itself. Instead, pass an instance of one of the types in the `Union`, or a dictionary that can be converted to one of those types. + +## License + +This SDK is licensed under the MIT License. + +See the [LICENSE](LICENSE) file for more details. + + diff --git a/documentation/models/AdditionalParameter.md b/documentation/models/AdditionalParameter.md new file mode 100644 index 0000000..06e2984 --- /dev/null +++ b/documentation/models/AdditionalParameter.md @@ -0,0 +1,12 @@ +# AdditionalParameter + +**Properties** + +| Name | Type | Required | Description | +| :---- | :---------- | :------- | :---------- | +| name | str | ✅ | | +| value | List[Value] | ✅ | | + +# Value + + diff --git a/documentation/models/Collection.md b/documentation/models/Collection.md new file mode 100644 index 0000000..f843fe3 --- /dev/null +++ b/documentation/models/Collection.md @@ -0,0 +1,15 @@ +# Collection + +**Properties** + +| Name | Type | Required | Description | +| :---------- | :--------- | :------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| id\_ | str | ✅ | identifier of the collection used, for example, in URIs | +| links | List[Link] | ✅ | | +| title | str | ❌ | human readable title of the collection | +| description | str | ❌ | a description of the features in the collection | +| extent | Extent | ❌ | The extent of the features in the collection. In the Core only spatial and temporal extents are specified. Extensions may add additional members to represent other extents, for example, thermal or pressure ranges. | +| item_type | str | ❌ | indicator about the type of the items in the collection (the default value is 'feature'). | +| crs | List[str] | ❌ | the list of coordinate reference systems supported by the service | + + diff --git a/documentation/models/CoverageJson.md b/documentation/models/CoverageJson.md new file mode 100644 index 0000000..22105ea --- /dev/null +++ b/documentation/models/CoverageJson.md @@ -0,0 +1,26 @@ +# CoverageJson + +A geospatial coverage interchange format based on JavaScript Object Notation (JSON) + +**Properties** + +| Name | Type | Required | Description | +| :---------- | :------------------------------ | :------- | :------------------- | +| type\_ | any | ✅ | Coverage domain type | +| domain_type | str | ❌ | | +| coverages | List[Coverages] | ❌ | | +| parameters | any | ❌ | | +| ranges | dict | ❌ | | +| referencing | List[ReferenceSystemConnection] | ❌ | | + +# Coverages + +**Properties** + +| Name | Type | Required | Description | +| :----- | :----- | :------- | :--------------------------------------------------------------------------------------------- | +| type\_ | any | ✅ | Coverage domain type | +| domain | Domain | ✅ | A Domain, which defines a set of positions and their extent in one or more referencing systems | +| ranges | any | ✅ | | + + diff --git a/documentation/models/Domain.md b/documentation/models/Domain.md new file mode 100644 index 0000000..4c97d8b --- /dev/null +++ b/documentation/models/Domain.md @@ -0,0 +1,14 @@ +# Domain + +A Domain, which defines a set of positions and their extent in one or more referencing systems + +**Properties** + +| Name | Type | Required | Description | +| :---------- | :------------------------------ | :------- | :---------- | +| type\_ | any | ✅ | | +| axes | dict | ✅ | | +| domain_type | str | ❌ | | +| referencing | List[ReferenceSystemConnection] | ❌ | | + + diff --git a/documentation/models/Execute.md b/documentation/models/Execute.md new file mode 100644 index 0000000..7b0c746 --- /dev/null +++ b/documentation/models/Execute.md @@ -0,0 +1,21 @@ +# Execute + +**Properties** + +| Name | Type | Required | Description | +| :--------- | :--------- | :------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| inputs | any | ❌ | | +| outputs | any | ❌ | | +| response | Response | ❌ | | +| subscriber | Subscriber | ❌ | Optional URIs for callbacks for this job. Support for this parameter is not required and the parameter may be removed from the API definition, if conformance class **'callback'** is not listed in the conformance declaration under `/conformance`. | + +# Response + +**Properties** + +| Name | Type | Required | Description | +| :------- | :--- | :------- | :---------- | +| RAW | str | ✅ | "raw" | +| DOCUMENT | str | ✅ | "document" | + + diff --git a/documentation/models/Extent.md b/documentation/models/Extent.md new file mode 100644 index 0000000..711cf32 --- /dev/null +++ b/documentation/models/Extent.md @@ -0,0 +1,58 @@ +# Extent + +The extent of the features in the collection. In the Core only spatial and temporal extents are specified. Extensions may add additional members to represent other extents, for example, thermal or pressure ranges. + +**Properties** + +| Name | Type | Required | Description | +| :------- | :------- | :------- | :----------------------------------------------------- | +| spatial | Spatial | ❌ | The spatial extent of the features in the collection. | +| temporal | Temporal | ❌ | The temporal extent of the features in the collection. | + +# Spatial + +The spatial extent of the features in the collection. + +**Properties** + +| Name | Type | Required | Description | +| :--- | :---------------- | :------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| bbox | List[SpatialBbox] | ❌ | One or more bounding boxes that describe the spatial extent of the dataset. In the Core only a single bounding box is supported. Extensions may support additional areas. If multiple areas are provided, the union of the bounding boxes describes the spatial extent. | +| crs | Crs | ❌ | Coordinate reference system of the coordinates in the spatial extent (property `bbox`). The default reference system is WGS 84 longitude/latitude. In the Core this is the only supported coordinate reference system. Extensions may support additional coordinate reference systems and add additional enum values. | + +# SpatialBbox + +Each bounding box is provided as four or six numbers, depending on whether the coordinate reference system includes a vertical axis (height or depth): _ Lower left corner, coordinate axis 1 _ Lower left corner, coordinate axis 2 _ Minimum value, coordinate axis 3 (optional) _ Upper right corner, coordinate axis 1 _ Upper right corner, coordinate axis 2 _ Maximum value, coordinate axis 3 (optional) The coordinate reference system of the values is WGS 84 longitude/latitude (http://www.opengis.net/def/crs/OGC/1.3/CRS84) unless a different coordinate reference system is specified in `crs`. For WGS 84 longitude/latitude the values are in most cases the sequence of minimum longitude, minimum latitude, maximum longitude and maximum latitude. However, in cases where the box spans the antimeridian the first value (west-most box edge) is larger than the third value (east-most box edge). If the vertical axis is included, the third and the sixth number are the bottom and the top of the 3-dimensional bounding box. If a feature has multiple spatial geometry properties, it is the decision of the server whether only a single spatial geometry property is used to determine the extent or all relevant geometries. + +# Crs + +Coordinate reference system of the coordinates in the spatial extent (property `bbox`). The default reference system is WGS 84 longitude/latitude. In the Core this is the only supported coordinate reference system. Extensions may support additional coordinate reference systems and add additional enum values. + +**Properties** + +| Name | Type | Required | Description | +| :--------------------------------- | :--- | :------- | :--------------------------------------------- | +| HTTPWWWOPENGISNETDEFCRSOGC1_3CRS84 | str | ✅ | "http://www.opengis.net/def/crs/OGC/1.3/CRS84" | + +# Temporal + +The temporal extent of the features in the collection. + +**Properties** + +| Name | Type | Required | Description | +| :------- | :-------------- | :------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| interval | List[List[str]] | ❌ | One or more time intervals that describe the temporal extent of the dataset. The value `null` is supported and indicates an unbounded interval end. In the Core only a single time interval is supported. Extensions may support multiple intervals. If multiple intervals are provided, the union of the intervals describes the temporal extent. | +| trs | Trs | ❌ | Coordinate reference system of the coordinates in the temporal extent (property `interval`). The default reference system is the Gregorian calendar. In the Core this is the only supported temporal coordinate reference system. Extensions may support additional temporal coordinate reference systems and add additional enum values. | + +# Trs + +Coordinate reference system of the coordinates in the temporal extent (property `interval`). The default reference system is the Gregorian calendar. In the Core this is the only supported temporal coordinate reference system. Extensions may support additional temporal coordinate reference systems and add additional enum values. + +**Properties** + +| Name | Type | Required | Description | +| :---------------------------------------- | :--- | :------- | :---------------------------------------------------- | +| HTTPWWWOPENGISNETDEFUOMISO8601_0GREGORIAN | str | ✅ | "http://www.opengis.net/def/uom/ISO-8601/0/Gregorian" | + + diff --git a/documentation/models/FeatureCollectionGeoJson.md b/documentation/models/FeatureCollectionGeoJson.md new file mode 100644 index 0000000..583e8eb --- /dev/null +++ b/documentation/models/FeatureCollectionGeoJson.md @@ -0,0 +1,22 @@ +# FeatureCollectionGeoJson + +**Properties** + +| Name | Type | Required | Description | +| :-------------- | :--------------------------- | :------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| type\_ | FeatureCollectionGeoJsonType | ✅ | | +| features | List[FeatureGeoJson] | ✅ | | +| links | List[Link] | ❌ | | +| time_stamp | str | ❌ | This property indicates the time and date when the response was generated. | +| number_matched | int | ❌ | The number of features of the feature type that match the selection parameters like `bbox`. | +| number_returned | int | ❌ | The number of features in the feature collection. A server may omit this information in a response, if the information about the number of features is not known or difficult to compute. If the value is provided, the value shall be identical to the number of items in the "features" array. | + +# FeatureCollectionGeoJsonType + +**Properties** + +| Name | Type | Required | Description | +| :---------------- | :--- | :------- | :------------------ | +| FEATURECOLLECTION | str | ✅ | "FeatureCollection" | + + diff --git a/documentation/models/FeatureGeoJson.md b/documentation/models/FeatureGeoJson.md new file mode 100644 index 0000000..c2dd8a5 --- /dev/null +++ b/documentation/models/FeatureGeoJson.md @@ -0,0 +1,23 @@ +# FeatureGeoJson + +**Properties** + +| Name | Type | Required | Description | +| :--------- | :----------------- | :------- | :---------- | +| type\_ | FeatureGeoJsonType | ✅ | | +| geometry | GeometryGeoJson | ✅ | | +| properties | dict | ✅ | | +| id\_ | Id | ❌ | | +| links | List[Link] | ❌ | | + +# FeatureGeoJsonType + +**Properties** + +| Name | Type | Required | Description | +| :------ | :--- | :------- | :---------- | +| FEATURE | str | ✅ | "Feature" | + +# Id + + diff --git a/documentation/models/GeometrycollectionGeoJson.md b/documentation/models/GeometrycollectionGeoJson.md new file mode 100644 index 0000000..d56ce5f --- /dev/null +++ b/documentation/models/GeometrycollectionGeoJson.md @@ -0,0 +1,18 @@ +# GeometrycollectionGeoJson + +**Properties** + +| Name | Type | Required | Description | +| :--------- | :---------------------------- | :------- | :---------- | +| type\_ | GeometrycollectionGeoJsonType | ✅ | | +| geometries | List[GeometryGeoJson] | ✅ | | + +# GeometrycollectionGeoJsonType + +**Properties** + +| Name | Type | Required | Description | +| :----------------- | :--- | :------- | :------------------- | +| GEOMETRYCOLLECTION | str | ✅ | "GeometryCollection" | + + diff --git a/documentation/models/GetDutchCastlesFeaturesProperties.md b/documentation/models/GetDutchCastlesFeaturesProperties.md new file mode 100644 index 0000000..38e88f1 --- /dev/null +++ b/documentation/models/GetDutchCastlesFeaturesProperties.md @@ -0,0 +1,23 @@ +# GetDutchCastlesFeaturesProperties + +**Properties** + +| Name | Type | Required | Description | +| :--------- | :--- | :------- | :----------- | +| GMLID | str | ✅ | "gml_id" | +| GID | str | ✅ | "gid" | +| CCHIN | str | ✅ | "cchin" | +| NAAM | str | ✅ | "naam" | +| PLAATS | str | ✅ | "plaats" | +| INFOLINK | str | ✅ | "info_link" | +| DATERING | str | ✅ | "datering" | +| RIJKSMONNR | str | ✅ | "rijksmonnr" | +| PROVINCIE | str | ✅ | "provincie" | +| FOTOTHUMB | str | ✅ | "foto_thumb" | +| FOTOGROOT | str | ✅ | "foto_groot" | +| BIJSCHRIFT | str | ✅ | "bijschrift" | +| ZICHTBAAR | str | ✅ | "zichtbaar" | +| LEGENDA | str | ✅ | "legenda" | +| TYPERING | str | ✅ | "typering" | + + diff --git a/documentation/models/GetDutchGeorefStationsFeaturesProperties.md b/documentation/models/GetDutchGeorefStationsFeaturesProperties.md new file mode 100644 index 0000000..ee0f5ca --- /dev/null +++ b/documentation/models/GetDutchGeorefStationsFeaturesProperties.md @@ -0,0 +1,26 @@ +# GetDutchGeorefStationsFeaturesProperties + +**Properties** + +| Name | Type | Required | Description | +| :-------- | :--- | :------- | :---------- | +| GMLID | str | ✅ | "gml_id" | +| GID | str | ✅ | "gid" | +| BLAD | str | ✅ | "blad" | +| PUNT | str | ✅ | "punt" | +| STATION | str | ✅ | "station" | +| JAAR | str | ✅ | "jaar" | +| MAAND | str | ✅ | "maand" | +| DAG | str | ✅ | "dag" | +| OMSCHREXT | str | ✅ | "omschrext" | +| OMSCHRINT | str | ✅ | "omschrint" | +| XRD | str | ✅ | "xrd" | +| YRD | str | ✅ | "yrd" | +| PHI | str | ✅ | "phi" | +| LAMBDA | str | ✅ | "lambda" | +| H | str | ✅ | "h" | +| GPS | str | ✅ | "gps" | +| PEILMERK | str | ✅ | "peilmerk" | +| FUUID | str | ✅ | "fuuid" | + + diff --git a/documentation/models/GetDutchMetadataFeaturesProperties.md b/documentation/models/GetDutchMetadataFeaturesProperties.md new file mode 100644 index 0000000..41c94fc --- /dev/null +++ b/documentation/models/GetDutchMetadataFeaturesProperties.md @@ -0,0 +1,18 @@ +# GetDutchMetadataFeaturesProperties + +**Properties** + +| Name | Type | Required | Description | +| :---------- | :--- | :------- | :------------ | +| CREATED | str | ✅ | "created" | +| UPDATED | str | ✅ | "updated" | +| TYPE | str | ✅ | "type" | +| TITLE | str | ✅ | "title" | +| DESCRIPTION | str | ✅ | "description" | +| PROVIDERS | str | ✅ | "providers" | +| EXTERNALIDS | str | ✅ | "externalIds" | +| THEMES | str | ✅ | "themes" | +| EXTENT | str | ✅ | "extent" | +| Q | str | ✅ | "q" | + + diff --git a/documentation/models/GetDutchWindmillsFeaturesProperties.md b/documentation/models/GetDutchWindmillsFeaturesProperties.md new file mode 100644 index 0000000..13581a0 --- /dev/null +++ b/documentation/models/GetDutchWindmillsFeaturesProperties.md @@ -0,0 +1,24 @@ +# GetDutchWindmillsFeaturesProperties + +**Properties** + +| Name | Type | Required | Description | +| :--------- | :--- | :------- | :----------- | +| GMLID | str | ✅ | "gml_id" | +| GID | str | ✅ | "gid" | +| NAAM | str | ✅ | "NAAM" | +| PLAATS | str | ✅ | "PLAATS" | +| CATEGORIE | str | ✅ | "CATEGORIE" | +| FUNCTIE | str | ✅ | "FUNCTIE" | +| TYPE | str | ✅ | "TYPE" | +| STAAT | str | ✅ | "STAAT" | +| RMONNUMMER | str | ✅ | "RMONNUMMER" | +| TBGCNUMMER | str | ✅ | "TBGCNUMMER" | +| INFOLINK | str | ✅ | "INFOLINK" | +| THUMBNAIL | str | ✅ | "THUMBNAIL" | +| HFDFUNCTIE | str | ✅ | "HFDFUNCTIE" | +| FOTOGRAAF | str | ✅ | "FOTOGRAAF" | +| FOTOGROOT | str | ✅ | "FOTO_GROOT" | +| BOUWJAAR | str | ✅ | "BOUWJAAR" | + + diff --git a/documentation/models/GetLakesFeaturesProperties.md b/documentation/models/GetLakesFeaturesProperties.md new file mode 100644 index 0000000..8206f19 --- /dev/null +++ b/documentation/models/GetLakesFeaturesProperties.md @@ -0,0 +1,14 @@ +# GetLakesFeaturesProperties + +**Properties** + +| Name | Type | Required | Description | +| :----------- | :--- | :------- | :------------- | +| ID | str | ✅ | "id" | +| SCALERANK | str | ✅ | "scalerank" | +| NAME | str | ✅ | "name" | +| NAMEALT | str | ✅ | "name_alt" | +| ADMIN | str | ✅ | "admin" | +| FEATURECLASS | str | ✅ | "featureclass" | + + diff --git a/documentation/models/GetLakesTilesF.md b/documentation/models/GetLakesTilesF.md new file mode 100644 index 0000000..49f32c3 --- /dev/null +++ b/documentation/models/GetLakesTilesF.md @@ -0,0 +1,9 @@ +# GetLakesTilesF + +**Properties** + +| Name | Type | Required | Description | +| :--- | :--- | :------- | :---------- | +| PBF | str | ✅ | "pbf" | + + diff --git a/documentation/models/GetLandingPageF.md b/documentation/models/GetLandingPageF.md new file mode 100644 index 0000000..6fcfba4 --- /dev/null +++ b/documentation/models/GetLandingPageF.md @@ -0,0 +1,11 @@ +# GetLandingPageF + +**Properties** + +| Name | Type | Required | Description | +| :----- | :--- | :------- | :---------- | +| JSON | str | ✅ | "json" | +| HTML | str | ✅ | "html" | +| JSONLD | str | ✅ | "jsonld" | + + diff --git a/documentation/models/GetMapF.md b/documentation/models/GetMapF.md new file mode 100644 index 0000000..b5e93b7 --- /dev/null +++ b/documentation/models/GetMapF.md @@ -0,0 +1,9 @@ +# GetMapF + +**Properties** + +| Name | Type | Required | Description | +| :--- | :--- | :------- | :---------- | +| PNG | str | ✅ | "png" | + + diff --git a/documentation/models/GetObsFeaturesProperties.md b/documentation/models/GetObsFeaturesProperties.md new file mode 100644 index 0000000..ca8d018 --- /dev/null +++ b/documentation/models/GetObsFeaturesProperties.md @@ -0,0 +1,12 @@ +# GetObsFeaturesProperties + +**Properties** + +| Name | Type | Required | Description | +| :------- | :--- | :------- | :---------- | +| ID | str | ✅ | "id" | +| STNID | str | ✅ | "stn_id" | +| DATETIME | str | ✅ | "datetime" | +| VALUE | str | ✅ | "value" | + + diff --git a/documentation/models/GetOgrAddressesGpkgFeaturesProperties.md b/documentation/models/GetOgrAddressesGpkgFeaturesProperties.md new file mode 100644 index 0000000..ab7ef1e --- /dev/null +++ b/documentation/models/GetOgrAddressesGpkgFeaturesProperties.md @@ -0,0 +1,15 @@ +# GetOgrAddressesGpkgFeaturesProperties + +**Properties** + +| Name | Type | Required | Description | +| :--------- | :--- | :------- | :----------- | +| ID | str | ✅ | "id" | +| STRAATNAAM | str | ✅ | "straatnaam" | +| HUISNUMMER | str | ✅ | "huisnummer" | +| HUISLETTER | str | ✅ | "huisletter" | +| WOONPLAATS | str | ✅ | "woonplaats" | +| POSTCODE | str | ✅ | "postcode" | +| TOEVOEGING | str | ✅ | "toevoeging" | + + diff --git a/documentation/models/GetOgrAddressesSqliteFeaturesProperties.md b/documentation/models/GetOgrAddressesSqliteFeaturesProperties.md new file mode 100644 index 0000000..c41d005 --- /dev/null +++ b/documentation/models/GetOgrAddressesSqliteFeaturesProperties.md @@ -0,0 +1,15 @@ +# GetOgrAddressesSqliteFeaturesProperties + +**Properties** + +| Name | Type | Required | Description | +| :--------- | :--- | :------- | :----------- | +| ID | str | ✅ | "id" | +| STRAATNAAM | str | ✅ | "straatnaam" | +| HUISNUMMER | str | ✅ | "huisnummer" | +| HUISLETTER | str | ✅ | "huisletter" | +| WOONPLAATS | str | ✅ | "woonplaats" | +| POSTCODE | str | ✅ | "postcode" | +| TOEVOEGING | str | ✅ | "toevoeging" | + + diff --git a/documentation/models/GetOgrGeojsonLakesFeaturesProperties.md b/documentation/models/GetOgrGeojsonLakesFeaturesProperties.md new file mode 100644 index 0000000..356936c --- /dev/null +++ b/documentation/models/GetOgrGeojsonLakesFeaturesProperties.md @@ -0,0 +1,14 @@ +# GetOgrGeojsonLakesFeaturesProperties + +**Properties** + +| Name | Type | Required | Description | +| :----------- | :--- | :------- | :------------- | +| ID | str | ✅ | "id" | +| SCALERANK | str | ✅ | "scalerank" | +| NAME | str | ✅ | "name" | +| NAMEALT | str | ✅ | "name_alt" | +| ADMIN | str | ✅ | "admin" | +| FEATURECLASS | str | ✅ | "featureclass" | + + diff --git a/documentation/models/GetOgrGpkgPoiFeaturesProperties.md b/documentation/models/GetOgrGpkgPoiFeaturesProperties.md new file mode 100644 index 0000000..4270c75 --- /dev/null +++ b/documentation/models/GetOgrGpkgPoiFeaturesProperties.md @@ -0,0 +1,12 @@ +# GetOgrGpkgPoiFeaturesProperties + +**Properties** + +| Name | Type | Required | Description | +| :----- | :--- | :------- | :---------- | +| GID | str | ✅ | "gid" | +| OSMID | str | ✅ | "osm_id" | +| FCLASS | str | ✅ | "fclass" | +| NAME | str | ✅ | "name" | + + diff --git a/documentation/models/GetOgrGpkgWalesRailwayLinesFeaturesProperties.md b/documentation/models/GetOgrGpkgWalesRailwayLinesFeaturesProperties.md new file mode 100644 index 0000000..cccf072 --- /dev/null +++ b/documentation/models/GetOgrGpkgWalesRailwayLinesFeaturesProperties.md @@ -0,0 +1,10 @@ +# GetOgrGpkgWalesRailwayLinesFeaturesProperties + +**Properties** + +| Name | Type | Required | Description | +| :--- | :--- | :------- | :---------- | +| ID | str | ✅ | "id" | +| TYPE | str | ✅ | "type" | + + diff --git a/documentation/models/GetOgrGpkgWalesStationsFeaturesProperties.md b/documentation/models/GetOgrGpkgWalesStationsFeaturesProperties.md new file mode 100644 index 0000000..24ecab5 --- /dev/null +++ b/documentation/models/GetOgrGpkgWalesStationsFeaturesProperties.md @@ -0,0 +1,11 @@ +# GetOgrGpkgWalesStationsFeaturesProperties + +**Properties** + +| Name | Type | Required | Description | +| :--- | :--- | :------- | :---------- | +| ID | str | ✅ | "id" | +| TYPE | str | ✅ | "type" | +| NAME | str | ✅ | "name" | + + diff --git a/documentation/models/GetUnescoPoisItalyFeaturesProperties.md b/documentation/models/GetUnescoPoisItalyFeaturesProperties.md new file mode 100644 index 0000000..03f7f03 --- /dev/null +++ b/documentation/models/GetUnescoPoisItalyFeaturesProperties.md @@ -0,0 +1,15 @@ +# GetUnescoPoisItalyFeaturesProperties + +**Properties** + +| Name | Type | Required | Description | +| :--------- | :--- | :------- | :----------- | +| GMLID | str | ✅ | "gml_id" | +| CODUNESCO | str | ✅ | "cod_unesco" | +| SITO | str | ✅ | "sito" | +| SERIALE | str | ✅ | "seriale" | +| CODCOMPON | str | ✅ | "cod_compon" | +| COMPONENTE | str | ✅ | "componente" | +| TIPOAREA | str | ✅ | "tipo_area" | + + diff --git a/documentation/models/GetUtahCityLocationsFeaturesProperties.md b/documentation/models/GetUtahCityLocationsFeaturesProperties.md new file mode 100644 index 0000000..e4c65a2 --- /dev/null +++ b/documentation/models/GetUtahCityLocationsFeaturesProperties.md @@ -0,0 +1,16 @@ +# GetUtahCityLocationsFeaturesProperties + +**Properties** + +| Name | Type | Required | Description | +| :------- | :--- | :------- | :----------- | +| GMLID | str | ✅ | "gml_id" | +| NAME | str | ✅ | "NAME" | +| COSEAT | str | ✅ | "CO_SEAT" | +| POP1999 | str | ✅ | "POP_1999" | +| POPSYM99 | str | ✅ | "POP_SYM_99" | +| POP2000 | str | ✅ | "POP_2000" | +| POPSYM00 | str | ✅ | "POP_SYM_00" | +| STATE | str | ✅ | "STATE" | + + diff --git a/documentation/models/JobControlOptions.md b/documentation/models/JobControlOptions.md new file mode 100644 index 0000000..58a2d52 --- /dev/null +++ b/documentation/models/JobControlOptions.md @@ -0,0 +1,11 @@ +# JobControlOptions + +**Properties** + +| Name | Type | Required | Description | +| :----------- | :--- | :------- | :-------------- | +| SYNCEXECUTE | str | ✅ | "sync-execute" | +| ASYNCEXECUTE | str | ✅ | "async-execute" | +| DISMISS | str | ✅ | "dismiss" | + + diff --git a/documentation/models/LandingPage.md b/documentation/models/LandingPage.md new file mode 100644 index 0000000..69144cc --- /dev/null +++ b/documentation/models/LandingPage.md @@ -0,0 +1,11 @@ +# LandingPage + +**Properties** + +| Name | Type | Required | Description | +| :---------- | :--------- | :------- | :---------- | +| links | List[Link] | ✅ | | +| title | str | ❌ | | +| description | str | ❌ | | + + diff --git a/documentation/models/Lang.md b/documentation/models/Lang.md new file mode 100644 index 0000000..ae9bbb7 --- /dev/null +++ b/documentation/models/Lang.md @@ -0,0 +1,9 @@ +# Lang + +**Properties** + +| Name | Type | Required | Description | +| :--- | :--- | :------- | :---------- | +| ENUS | str | ✅ | "en-US" | + + diff --git a/documentation/models/LinestringGeoJson.md b/documentation/models/LinestringGeoJson.md new file mode 100644 index 0000000..c3953e3 --- /dev/null +++ b/documentation/models/LinestringGeoJson.md @@ -0,0 +1,18 @@ +# LinestringGeoJson + +**Properties** + +| Name | Type | Required | Description | +| :---------- | :-------------------- | :------- | :---------- | +| type\_ | LinestringGeoJsonType | ✅ | | +| coordinates | List[List[float]] | ✅ | | + +# LinestringGeoJsonType + +**Properties** + +| Name | Type | Required | Description | +| :--------- | :--- | :------- | :----------- | +| LINESTRING | str | ✅ | "LineString" | + + diff --git a/documentation/models/Link.md b/documentation/models/Link.md new file mode 100644 index 0000000..48c36fe --- /dev/null +++ b/documentation/models/Link.md @@ -0,0 +1,14 @@ +# Link + +**Properties** + +| Name | Type | Required | Description | +| :------- | :--- | :------- | :---------- | +| href | str | ✅ | | +| rel | str | ❌ | | +| type\_ | str | ❌ | | +| hreflang | str | ❌ | | +| title | str | ❌ | | +| length | int | ❌ | | + + diff --git a/documentation/models/Link2.md b/documentation/models/Link2.md new file mode 100644 index 0000000..79d1114 --- /dev/null +++ b/documentation/models/Link2.md @@ -0,0 +1,16 @@ +# Link_2 + +**Properties** + +| Name | Type | Required | Description | +| :-------- | :--- | :------- | :----------------------------------------------------------------------------------------------- | +| href | str | ✅ | Supplies the URI to a remote resource (or resource fragment). | +| rel | str | ✅ | The type or semantics of the relation. | +| type\_ | str | ❌ | A hint indicating what the media type of the result of dereferencing the link should be. | +| templated | bool | ❌ | This flag set to true if the link is a URL template. | +| var_base | str | ❌ | A base path to retrieve semantic information about the variables used in URL template. | +| hreflang | str | ❌ | A hint indicating what the language of the result of dereferencing the link should be. | +| title | str | ❌ | Used to label the destination of a link such that it can be used as a human-readable identifier. | +| length | int | ❌ | | + + diff --git a/documentation/models/Link3.md b/documentation/models/Link3.md new file mode 100644 index 0000000..0ff81ce --- /dev/null +++ b/documentation/models/Link3.md @@ -0,0 +1,13 @@ +# Link_3 + +**Properties** + +| Name | Type | Required | Description | +| :------- | :--- | :------- | :---------- | +| href | str | ✅ | | +| rel | str | ❌ | | +| type\_ | str | ❌ | | +| hreflang | str | ❌ | | +| title | str | ❌ | | + + diff --git a/documentation/models/Metadata.md b/documentation/models/Metadata.md new file mode 100644 index 0000000..72e5d74 --- /dev/null +++ b/documentation/models/Metadata.md @@ -0,0 +1,11 @@ +# Metadata + +**Properties** + +| Name | Type | Required | Description | +| :---- | :--- | :------- | :---------- | +| title | str | ❌ | | +| role | str | ❌ | | +| href | str | ❌ | | + + diff --git a/documentation/models/MultilinestringGeoJson.md b/documentation/models/MultilinestringGeoJson.md new file mode 100644 index 0000000..5b6375b --- /dev/null +++ b/documentation/models/MultilinestringGeoJson.md @@ -0,0 +1,18 @@ +# MultilinestringGeoJson + +**Properties** + +| Name | Type | Required | Description | +| :---------- | :------------------------- | :------- | :---------- | +| type\_ | MultilinestringGeoJsonType | ✅ | | +| coordinates | List[List[List[float]]] | ✅ | | + +# MultilinestringGeoJsonType + +**Properties** + +| Name | Type | Required | Description | +| :-------------- | :--- | :------- | :---------------- | +| MULTILINESTRING | str | ✅ | "MultiLineString" | + + diff --git a/documentation/models/MultipointGeoJson.md b/documentation/models/MultipointGeoJson.md new file mode 100644 index 0000000..0d1bfc5 --- /dev/null +++ b/documentation/models/MultipointGeoJson.md @@ -0,0 +1,18 @@ +# MultipointGeoJson + +**Properties** + +| Name | Type | Required | Description | +| :---------- | :-------------------- | :------- | :---------- | +| type\_ | MultipointGeoJsonType | ✅ | | +| coordinates | List[List[float]] | ✅ | | + +# MultipointGeoJsonType + +**Properties** + +| Name | Type | Required | Description | +| :--------- | :--- | :------- | :----------- | +| MULTIPOINT | str | ✅ | "MultiPoint" | + + diff --git a/documentation/models/MultipolygonGeoJson.md b/documentation/models/MultipolygonGeoJson.md new file mode 100644 index 0000000..4b63932 --- /dev/null +++ b/documentation/models/MultipolygonGeoJson.md @@ -0,0 +1,18 @@ +# MultipolygonGeoJson + +**Properties** + +| Name | Type | Required | Description | +| :---------- | :---------------------------- | :------- | :---------- | +| type\_ | MultipolygonGeoJsonType | ✅ | | +| coordinates | List[List[List[List[float]]]] | ✅ | | + +# MultipolygonGeoJsonType + +**Properties** + +| Name | Type | Required | Description | +| :----------- | :--- | :------- | :------------- | +| MULTIPOLYGON | str | ✅ | "MultiPolygon" | + + diff --git a/documentation/models/NdArray.md b/documentation/models/NdArray.md new file mode 100644 index 0000000..fa296e9 --- /dev/null +++ b/documentation/models/NdArray.md @@ -0,0 +1,15 @@ +# NdArray + +Object representing a multidimensional (>= 0D) array with named axes, encoded as a flat one-dimensional array in row-major order + +**Properties** + +| Name | Type | Required | Description | +| :--------- | :---------- | :------- | :---------- | +| type\_ | any | ✅ | | +| data_type | any | ✅ | | +| values | List[float] | ✅ | | +| shape | List[float] | ❌ | | +| axis_names | List[str] | ❌ | | + + diff --git a/documentation/models/PointGeoJson.md b/documentation/models/PointGeoJson.md new file mode 100644 index 0000000..c86ed8b --- /dev/null +++ b/documentation/models/PointGeoJson.md @@ -0,0 +1,18 @@ +# PointGeoJson + +**Properties** + +| Name | Type | Required | Description | +| :---------- | :--------------- | :------- | :---------- | +| type\_ | PointGeoJsonType | ✅ | | +| coordinates | List[float] | ✅ | | + +# PointGeoJsonType + +**Properties** + +| Name | Type | Required | Description | +| :---- | :--- | :------- | :---------- | +| POINT | str | ✅ | "Point" | + + diff --git a/documentation/models/PolygonGeoJson.md b/documentation/models/PolygonGeoJson.md new file mode 100644 index 0000000..9a84742 --- /dev/null +++ b/documentation/models/PolygonGeoJson.md @@ -0,0 +1,18 @@ +# PolygonGeoJson + +**Properties** + +| Name | Type | Required | Description | +| :---------- | :---------------------- | :------- | :---------- | +| type\_ | PolygonGeoJsonType | ✅ | | +| coordinates | List[List[List[float]]] | ✅ | | + +# PolygonGeoJsonType + +**Properties** + +| Name | Type | Required | Description | +| :------ | :--- | :------- | :---------- | +| POLYGON | str | ✅ | "Polygon" | + + diff --git a/documentation/models/ProcessList.md b/documentation/models/ProcessList.md new file mode 100644 index 0000000..0a7399d --- /dev/null +++ b/documentation/models/ProcessList.md @@ -0,0 +1,10 @@ +# ProcessList + +**Properties** + +| Name | Type | Required | Description | +| :-------- | :------------------- | :------- | :---------- | +| processes | List[ProcessSummary] | ✅ | | +| links | List[Link3] | ✅ | | + + diff --git a/documentation/models/ProcessSummary.md b/documentation/models/ProcessSummary.md new file mode 100644 index 0000000..825b01d --- /dev/null +++ b/documentation/models/ProcessSummary.md @@ -0,0 +1,29 @@ +# ProcessSummary + +**Properties** + +| Name | Type | Required | Description | +| :-------------------- | :---------------------- | :------- | :---------- | +| id\_ | str | ✅ | | +| version | str | ✅ | | +| title | str | ❌ | | +| description | str | ❌ | | +| keywords | List[str] | ❌ | | +| metadata | List[Metadata] | ❌ | | +| additional_parameters | AdditionalParameters | ❌ | | +| job_control_options | List[JobControlOptions] | ❌ | | +| output_transmission | List[TransmissionMode] | ❌ | | +| links | List[Link3] | ❌ | | + +# AdditionalParameters + +**Properties** + +| Name | Type | Required | Description | +| :--------- | :------------------------ | :------- | :---------- | +| title | str | ❌ | | +| role | str | ❌ | | +| href | str | ❌ | | +| parameters | List[AdditionalParameter] | ❌ | | + + diff --git a/documentation/models/Queryable.md b/documentation/models/Queryable.md new file mode 100644 index 0000000..c5beaab --- /dev/null +++ b/documentation/models/Queryable.md @@ -0,0 +1,14 @@ +# Queryable + +**Properties** + +| Name | Type | Required | Description | +| :---------- | :--- | :------- | :-------------------------------------------------- | +| queryable | str | ✅ | the token that may be used in a CQL predicate | +| type\_ | str | ✅ | the data type of the queryable | +| description | str | ❌ | a human-readable narrative describing the queryable | +| language | str | ❌ | the language used for the title and description | +| title | str | ❌ | a human readable title for the queryable | +| type_ref | str | ❌ | a reference to the formal definition of the type | + + diff --git a/documentation/models/Queryables.md b/documentation/models/Queryables.md new file mode 100644 index 0000000..4d03e0c --- /dev/null +++ b/documentation/models/Queryables.md @@ -0,0 +1,9 @@ +# Queryables + +**Properties** + +| Name | Type | Required | Description | +| :--------- | :-------------- | :------- | :---------- | +| queryables | List[Queryable] | ✅ | | + + diff --git a/documentation/models/ReferenceSystem.md b/documentation/models/ReferenceSystem.md new file mode 100644 index 0000000..3832816 --- /dev/null +++ b/documentation/models/ReferenceSystem.md @@ -0,0 +1,9 @@ +# ReferenceSystem + +**Properties** + +| Name | Type | Required | Description | +| :----- | :--- | :------- | :---------- | +| type\_ | str | ✅ | | + + diff --git a/documentation/models/ReferenceSystemConnection.md b/documentation/models/ReferenceSystemConnection.md new file mode 100644 index 0000000..f7edaa6 --- /dev/null +++ b/documentation/models/ReferenceSystemConnection.md @@ -0,0 +1,12 @@ +# ReferenceSystemConnection + +Reference System Connection object: connects coordinates to reference systems + +**Properties** + +| Name | Type | Required | Description | +| :---------- | :-------------- | :------- | :---------- | +| coordinates | List[str] | ✅ | | +| system | ReferenceSystem | ✅ | | + + diff --git a/documentation/models/StatusCode.md b/documentation/models/StatusCode.md new file mode 100644 index 0000000..b340097 --- /dev/null +++ b/documentation/models/StatusCode.md @@ -0,0 +1,13 @@ +# StatusCode + +**Properties** + +| Name | Type | Required | Description | +| :--------- | :--- | :------- | :----------- | +| ACCEPTED | str | ✅ | "accepted" | +| RUNNING | str | ✅ | "running" | +| SUCCESSFUL | str | ✅ | "successful" | +| FAILED | str | ✅ | "failed" | +| DISMISSED | str | ✅ | "dismissed" | + + diff --git a/documentation/models/StatusInfo.md b/documentation/models/StatusInfo.md new file mode 100644 index 0000000..08fc8b1 --- /dev/null +++ b/documentation/models/StatusInfo.md @@ -0,0 +1,27 @@ +# StatusInfo + +**Properties** + +| Name | Type | Required | Description | +| :--------- | :------------- | :------- | :---------- | +| type\_ | StatusInfoType | ✅ | | +| job_id | str | ✅ | | +| status | StatusCode | ✅ | | +| process_id | str | ❌ | | +| message | str | ❌ | | +| created | str | ❌ | | +| started | str | ❌ | | +| finished | str | ❌ | | +| updated | str | ❌ | | +| progress | int | ❌ | | +| links | List[Link3] | ❌ | | + +# StatusInfoType + +**Properties** + +| Name | Type | Required | Description | +| :------ | :--- | :------- | :---------- | +| PROCESS | str | ✅ | "process" | + + diff --git a/documentation/models/Subscriber.md b/documentation/models/Subscriber.md new file mode 100644 index 0000000..6335fde --- /dev/null +++ b/documentation/models/Subscriber.md @@ -0,0 +1,13 @@ +# Subscriber + +Optional URIs for callbacks for this job. Support for this parameter is not required and the parameter may be removed from the API definition, if conformance class **'callback'** is not listed in the conformance declaration under `/conformance`. + +**Properties** + +| Name | Type | Required | Description | +| :-------------- | :--- | :------- | :---------- | +| success_uri | str | ❌ | | +| in_progress_uri | str | ❌ | | +| failed_uri | str | ❌ | | + + diff --git a/documentation/models/TileMatrixSets.md b/documentation/models/TileMatrixSets.md new file mode 100644 index 0000000..f844964 --- /dev/null +++ b/documentation/models/TileMatrixSets.md @@ -0,0 +1,12 @@ +# TileMatrixSets + +**Properties** + +| Name | Type | Required | Description | +| :--------------------- | :--- | :------- | :----------------------- | +| WEBMERCATORQUAD | str | ✅ | "WebMercatorQuad" | +| WORLDCRS84QUAD | str | ✅ | "WorldCRS84Quad" | +| GNOSISGLOBALGRID | str | ✅ | "GNOSISGlobalGrid" | +| WORLDMERCATORWGS84QUAD | str | ✅ | "WorldMercatorWGS84Quad" | + + diff --git a/documentation/models/Tilematrixsetlink.md b/documentation/models/Tilematrixsetlink.md new file mode 100644 index 0000000..f11cb7f --- /dev/null +++ b/documentation/models/Tilematrixsetlink.md @@ -0,0 +1,10 @@ +# Tilematrixsetlink + +**Properties** + +| Name | Type | Required | Description | +| :------------------ | :--- | :------- | :---------- | +| tile_matrix_set | str | ✅ | | +| tile_matrix_set_uri | str | ❌ | | + + diff --git a/documentation/models/Tiles.md b/documentation/models/Tiles.md new file mode 100644 index 0000000..884db31 --- /dev/null +++ b/documentation/models/Tiles.md @@ -0,0 +1,10 @@ +# Tiles + +**Properties** + +| Name | Type | Required | Description | +| :-------------------- | :---------------------- | :------- | :---------- | +| links | List[Link2] | ✅ | | +| tile_matrix_set_links | List[Tilematrixsetlink] | ✅ | | + + diff --git a/documentation/models/TransmissionMode.md b/documentation/models/TransmissionMode.md new file mode 100644 index 0000000..eb234fe --- /dev/null +++ b/documentation/models/TransmissionMode.md @@ -0,0 +1,10 @@ +# TransmissionMode + +**Properties** + +| Name | Type | Required | Description | +| :-------- | :--- | :------- | :---------- | +| VALUE | str | ✅ | "value" | +| REFERENCE | str | ✅ | "reference" | + + diff --git a/documentation/models/Ui.md b/documentation/models/Ui.md new file mode 100644 index 0000000..4557a45 --- /dev/null +++ b/documentation/models/Ui.md @@ -0,0 +1,10 @@ +# Ui + +**Properties** + +| Name | Type | Required | Description | +| :------ | :--- | :------- | :---------- | +| SWAGGER | str | ✅ | "swagger" | +| REDOC | str | ✅ | "redoc" | + + diff --git a/documentation/services/DutchCastlesService.md b/documentation/services/DutchCastlesService.md new file mode 100644 index 0000000..46cf076 --- /dev/null +++ b/documentation/services/DutchCastlesService.md @@ -0,0 +1,314 @@ +# DutchCastlesService + +A list of all methods in the `DutchCastlesService` service. Click on the method name to view detailed information about that method. + +| Methods | Description | +| :---------------------------------------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------- | +| [describe_dutch_castles_collection](#describe_dutch_castles_collection) | Locations of castles within the Netherlands from Rijksdienst voor het Cultureel Erfgoed (RCE) INSPIRE WFS. Uses GeoServer WFS v2 backend via OGRProvider. | +| [get_dutch_castles_features](#get_dutch_castles_features) | Locations of castles within the Netherlands from Rijksdienst voor het Cultureel Erfgoed (RCE) INSPIRE WFS. Uses GeoServer WFS v2 backend via OGRProvider. | +| [options_dutch_castles_features](#options_dutch_castles_features) | Locations of castles within the Netherlands from Rijksdienst voor het Cultureel Erfgoed (RCE) INSPIRE WFS. Uses GeoServer WFS v2 backend via OGRProvider. | +| [get_dutch_castles_feature](#get_dutch_castles_feature) | Locations of castles within the Netherlands from Rijksdienst voor het Cultureel Erfgoed (RCE) INSPIRE WFS. Uses GeoServer WFS v2 backend via OGRProvider. | +| [options_dutch_castles_feature](#options_dutch_castles_feature) | Locations of castles within the Netherlands from Rijksdienst voor het Cultureel Erfgoed (RCE) INSPIRE WFS. Uses GeoServer WFS v2 backend via OGRProvider. | +| [get_dutch_castles_queryables](#get_dutch_castles_queryables) | Locations of castles within the Netherlands from Rijksdienst voor het Cultureel Erfgoed (RCE) INSPIRE WFS. Uses GeoServer WFS v2 backend via OGRProvider. | +| [get_dutch_castles_schema](#get_dutch_castles_schema) | Locations of castles within the Netherlands from Rijksdienst voor het Cultureel Erfgoed (RCE) INSPIRE WFS. Uses GeoServer WFS v2 backend via OGRProvider. | + +## describe_dutch_castles_collection + +Locations of castles within the Netherlands from Rijksdienst voor het Cultureel Erfgoed (RCE) INSPIRE WFS. Uses GeoServer WFS v2 backend via OGRProvider. + +- HTTP Method: `GET` +- Endpoint: `/collections/dutch_castles` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Collection` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.dutch_castles.describe_dutch_castles_collection( + f="json", + lang="en-US" +) + +print(result) +``` + +## get_dutch_castles_features + +Locations of castles within the Netherlands from Rijksdienst voor het Cultureel Erfgoed (RCE) INSPIRE WFS. Uses GeoServer WFS v2 backend via OGRProvider. + +- HTTP Method: `GET` +- Endpoint: `/collections/dutch_castles/items` + +**Parameters** + +| Name | Type | Required | Description | +| :------------------------- | :---------------------------------------------------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | +| bbox | List[float] | ❌ | Only features that have a geometry that intersects the bounding box are selected.The bounding box is provided as four or six numbers, depending on whether the coordinate reference system includes a vertical axis (height or depth). | +| limit | int | ❌ | The optional limit parameter limits the number of items that are presented in the response document. Only items are counted that are on the first level of the collection in the response document. Nested objects contained within the explicitly requested items shall not be counted. Minimum = 1. Maximum = 10000. Default = 10. | +| crs | str | ❌ | Indicates the coordinate reference system for the results. | +| bbox_crs | str | ❌ | Indicates the coordinate reference system for the given bbox coordinates. | +| properties | [List[GetDutchCastlesFeaturesProperties]](../models/GetDutchCastlesFeaturesProperties.md) | ❌ | The properties that should be included for each feature. The parameter value is a comma-separated list of property names. | +| vendor_specific_parameters | dict | ❌ | Additional "free-form" parameters that are not explicitly defined | +| skip_geometry | bool | ❌ | This option can be used to skip response geometries for each feature. | +| sortby | List[str] | ❌ | Specifies a comma-separated list of property names by which the response shall be sorted. If the property name is preceded by a plus (+) sign it indicates an ascending sort for that property. If the property name is preceded by a minus (-) sign it indicates a descending sort for that property. If the property is not preceded by a plus or minus, then the default sort order implied is ascending (+). | +| offset | int | ❌ | The optional offset parameter indicates the index within the result set from which the server shall begin presenting results in the response document. The first element has an index of 0 (default). | +| gml_id | str | ❌ | | +| gid | int | ❌ | | +| cchin | str | ❌ | | +| naam | str | ❌ | | +| plaats | str | ❌ | | +| info_link | str | ❌ | | +| datering | str | ❌ | | +| rijksmonnr | str | ❌ | | +| provincie | str | ❌ | | +| foto_thumb | str | ❌ | | +| foto_groot | str | ❌ | | +| bijschrift | str | ❌ | | +| zichtbaar | str | ❌ | | +| legenda | str | ❌ | | +| typering | str | ❌ | | + +**Return Type** + +`FeatureCollectionGeoJson` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang, dict + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) +bbox=[ + 9.33 +] +properties=[ + "gml_id" +] +vendor_specific_parameters=dict( + {} +) +sortby=[ + "bRsp*b&" +] + +result = sdk.dutch_castles.get_dutch_castles_features( + f="json", + lang="en-US", + bbox=bbox, + limit=10, + crs="crs", + bbox_crs="bbox-crs", + properties=properties, + vendor_specific_parameters=vendor_specific_parameters, + skip_geometry=True, + sortby=sortby, + offset=3, + gml_id="gml_id", + gid=4, + cchin="cchin", + naam="naam", + plaats="plaats", + info_link="info_link", + datering="datering", + rijksmonnr="rijksmonnr", + provincie="provincie", + foto_thumb="foto_thumb", + foto_groot="foto_groot", + bijschrift="bijschrift", + zichtbaar="zichtbaar", + legenda="legenda", + typering="typering" +) + +print(result) +``` + +## options_dutch_castles_features + +Locations of castles within the Netherlands from Rijksdienst voor het Cultureel Erfgoed (RCE) INSPIRE WFS. Uses GeoServer WFS v2 backend via OGRProvider. + +- HTTP Method: `OPTIONS` +- Endpoint: `/collections/dutch_castles/items` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.dutch_castles.options_dutch_castles_features() + +print(result) +``` + +## get_dutch_castles_feature + +Locations of castles within the Netherlands from Rijksdienst voor het Cultureel Erfgoed (RCE) INSPIRE WFS. Uses GeoServer WFS v2 backend via OGRProvider. + +- HTTP Method: `GET` +- Endpoint: `/collections/dutch_castles/items/{featureId}` + +**Parameters** + +| Name | Type | Required | Description | +| :--------- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| feature_id | str | ✅ | local identifier of a feature | +| crs | str | ❌ | Indicates the coordinate reference system for the results. | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`FeatureGeoJson` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.dutch_castles.get_dutch_castles_feature( + feature_id="featureId", + crs="crs", + f="json", + lang="en-US" +) + +print(result) +``` + +## options_dutch_castles_feature + +Locations of castles within the Netherlands from Rijksdienst voor het Cultureel Erfgoed (RCE) INSPIRE WFS. Uses GeoServer WFS v2 backend via OGRProvider. + +- HTTP Method: `OPTIONS` +- Endpoint: `/collections/dutch_castles/items/{featureId}` + +**Parameters** + +| Name | Type | Required | Description | +| :--------- | :--- | :------- | :---------------------------- | +| feature_id | str | ✅ | local identifier of a feature | + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.dutch_castles.options_dutch_castles_feature(feature_id="featureId") + +print(result) +``` + +## get_dutch_castles_queryables + +Locations of castles within the Netherlands from Rijksdienst voor het Cultureel Erfgoed (RCE) INSPIRE WFS. Uses GeoServer WFS v2 backend via OGRProvider. + +- HTTP Method: `GET` +- Endpoint: `/collections/dutch_castles/queryables` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Queryables` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.dutch_castles.get_dutch_castles_queryables( + f="json", + lang="en-US" +) + +print(result) +``` + +## get_dutch_castles_schema + +Locations of castles within the Netherlands from Rijksdienst voor het Cultureel Erfgoed (RCE) INSPIRE WFS. Uses GeoServer WFS v2 backend via OGRProvider. + +- HTTP Method: `GET` +- Endpoint: `/collections/dutch_castles/schema` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Queryables` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.dutch_castles.get_dutch_castles_schema( + f="json", + lang="en-US" +) + +print(result) +``` + + diff --git a/documentation/services/DutchGeorefStationsService.md b/documentation/services/DutchGeorefStationsService.md new file mode 100644 index 0000000..d16192e --- /dev/null +++ b/documentation/services/DutchGeorefStationsService.md @@ -0,0 +1,320 @@ +# DutchGeorefStationsService + +A list of all methods in the `DutchGeorefStationsService` service. Click on the method name to view detailed information about that method. + +| Methods | Description | +| :-------------------------------------------------------------------------------------- | :---------------------------------------------------------------------------------------------------------------------------- | +| [describe_dutch_georef_stations_collection](#describe_dutch_georef_stations_collection) | Locations of RD/GNSS-reference stations from Dutch Kadaster PDOK a.k.a RDInfo. Uses MapServer WFS v2 backend via OGRProvider. | +| [get_dutch_georef_stations_features](#get_dutch_georef_stations_features) | Locations of RD/GNSS-reference stations from Dutch Kadaster PDOK a.k.a RDInfo. Uses MapServer WFS v2 backend via OGRProvider. | +| [options_dutch_georef_stations_features](#options_dutch_georef_stations_features) | Locations of RD/GNSS-reference stations from Dutch Kadaster PDOK a.k.a RDInfo. Uses MapServer WFS v2 backend via OGRProvider. | +| [get_dutch_georef_stations_feature](#get_dutch_georef_stations_feature) | Locations of RD/GNSS-reference stations from Dutch Kadaster PDOK a.k.a RDInfo. Uses MapServer WFS v2 backend via OGRProvider. | +| [options_dutch_georef_stations_feature](#options_dutch_georef_stations_feature) | Locations of RD/GNSS-reference stations from Dutch Kadaster PDOK a.k.a RDInfo. Uses MapServer WFS v2 backend via OGRProvider. | +| [get_dutch_georef_stations_queryables](#get_dutch_georef_stations_queryables) | Locations of RD/GNSS-reference stations from Dutch Kadaster PDOK a.k.a RDInfo. Uses MapServer WFS v2 backend via OGRProvider. | +| [get_dutch_georef_stations_schema](#get_dutch_georef_stations_schema) | Locations of RD/GNSS-reference stations from Dutch Kadaster PDOK a.k.a RDInfo. Uses MapServer WFS v2 backend via OGRProvider. | + +## describe_dutch_georef_stations_collection + +Locations of RD/GNSS-reference stations from Dutch Kadaster PDOK a.k.a RDInfo. Uses MapServer WFS v2 backend via OGRProvider. + +- HTTP Method: `GET` +- Endpoint: `/collections/dutch_georef_stations` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Collection` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.dutch_georef_stations.describe_dutch_georef_stations_collection( + f="json", + lang="en-US" +) + +print(result) +``` + +## get_dutch_georef_stations_features + +Locations of RD/GNSS-reference stations from Dutch Kadaster PDOK a.k.a RDInfo. Uses MapServer WFS v2 backend via OGRProvider. + +- HTTP Method: `GET` +- Endpoint: `/collections/dutch_georef_stations/items` + +**Parameters** + +| Name | Type | Required | Description | +| :------------------------- | :------------------------------------------------------------------------------------------------------ | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | +| bbox | List[float] | ❌ | Only features that have a geometry that intersects the bounding box are selected.The bounding box is provided as four or six numbers, depending on whether the coordinate reference system includes a vertical axis (height or depth). | +| limit | int | ❌ | The optional limit parameter limits the number of items that are presented in the response document. Only items are counted that are on the first level of the collection in the response document. Nested objects contained within the explicitly requested items shall not be counted. Minimum = 1. Maximum = 10000. Default = 10. | +| crs | str | ❌ | Indicates the coordinate reference system for the results. | +| bbox_crs | str | ❌ | Indicates the coordinate reference system for the given bbox coordinates. | +| properties | [List[GetDutchGeorefStationsFeaturesProperties]](../models/GetDutchGeorefStationsFeaturesProperties.md) | ❌ | The properties that should be included for each feature. The parameter value is a comma-separated list of property names. | +| vendor_specific_parameters | dict | ❌ | Additional "free-form" parameters that are not explicitly defined | +| skip_geometry | bool | ❌ | This option can be used to skip response geometries for each feature. | +| sortby | List[str] | ❌ | Specifies a comma-separated list of property names by which the response shall be sorted. If the property name is preceded by a plus (+) sign it indicates an ascending sort for that property. If the property name is preceded by a minus (-) sign it indicates a descending sort for that property. If the property is not preceded by a plus or minus, then the default sort order implied is ascending (+). | +| offset | int | ❌ | The optional offset parameter indicates the index within the result set from which the server shall begin presenting results in the response document. The first element has an index of 0 (default). | +| gml_id | str | ❌ | | +| gid | int | ❌ | | +| blad | str | ❌ | | +| punt | int | ❌ | | +| station | str | ❌ | | +| jaar | int | ❌ | | +| maand | str | ❌ | | +| dag | str | ❌ | | +| omschrext | str | ❌ | | +| omschrint | str | ❌ | | +| xrd | float | ❌ | | +| yrd | float | ❌ | | +| phi | str | ❌ | | +| lambda\_ | str | ❌ | | +| h | float | ❌ | | +| gps | int | ❌ | | +| peilmerk | str | ❌ | | +| fuuid | str | ❌ | | + +**Return Type** + +`FeatureCollectionGeoJson` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang, dict + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) +bbox=[ + 5.32 +] +properties=[ + "gml_id" +] +vendor_specific_parameters=dict( + {} +) +sortby=[ + "gF Z'>:" +] + +result = sdk.dutch_georef_stations.get_dutch_georef_stations_features( + f="json", + lang="en-US", + bbox=bbox, + limit=10, + crs="crs", + bbox_crs="bbox-crs", + properties=properties, + vendor_specific_parameters=vendor_specific_parameters, + skip_geometry=True, + sortby=sortby, + offset=10, + gml_id="gml_id", + gid=9, + blad="blad", + punt=10, + station="station", + jaar=5, + maand="maand", + dag="dag", + omschrext="omschrext", + omschrint="omschrint", + xrd=5.33, + yrd=9.68, + phi="phi", + lambda_="lambda", + h=0.35, + gps=2, + peilmerk="peilmerk", + fuuid="fuuid" +) + +print(result) +``` + +## options_dutch_georef_stations_features + +Locations of RD/GNSS-reference stations from Dutch Kadaster PDOK a.k.a RDInfo. Uses MapServer WFS v2 backend via OGRProvider. + +- HTTP Method: `OPTIONS` +- Endpoint: `/collections/dutch_georef_stations/items` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.dutch_georef_stations.options_dutch_georef_stations_features() + +print(result) +``` + +## get_dutch_georef_stations_feature + +Locations of RD/GNSS-reference stations from Dutch Kadaster PDOK a.k.a RDInfo. Uses MapServer WFS v2 backend via OGRProvider. + +- HTTP Method: `GET` +- Endpoint: `/collections/dutch_georef_stations/items/{featureId}` + +**Parameters** + +| Name | Type | Required | Description | +| :--------- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| feature_id | str | ✅ | local identifier of a feature | +| crs | str | ❌ | Indicates the coordinate reference system for the results. | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`FeatureGeoJson` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.dutch_georef_stations.get_dutch_georef_stations_feature( + feature_id="featureId", + crs="crs", + f="json", + lang="en-US" +) + +print(result) +``` + +## options_dutch_georef_stations_feature + +Locations of RD/GNSS-reference stations from Dutch Kadaster PDOK a.k.a RDInfo. Uses MapServer WFS v2 backend via OGRProvider. + +- HTTP Method: `OPTIONS` +- Endpoint: `/collections/dutch_georef_stations/items/{featureId}` + +**Parameters** + +| Name | Type | Required | Description | +| :--------- | :--- | :------- | :---------------------------- | +| feature_id | str | ✅ | local identifier of a feature | + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.dutch_georef_stations.options_dutch_georef_stations_feature(feature_id="featureId") + +print(result) +``` + +## get_dutch_georef_stations_queryables + +Locations of RD/GNSS-reference stations from Dutch Kadaster PDOK a.k.a RDInfo. Uses MapServer WFS v2 backend via OGRProvider. + +- HTTP Method: `GET` +- Endpoint: `/collections/dutch_georef_stations/queryables` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Queryables` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.dutch_georef_stations.get_dutch_georef_stations_queryables( + f="json", + lang="en-US" +) + +print(result) +``` + +## get_dutch_georef_stations_schema + +Locations of RD/GNSS-reference stations from Dutch Kadaster PDOK a.k.a RDInfo. Uses MapServer WFS v2 backend via OGRProvider. + +- HTTP Method: `GET` +- Endpoint: `/collections/dutch_georef_stations/schema` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Queryables` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.dutch_georef_stations.get_dutch_georef_stations_schema( + f="json", + lang="en-US" +) + +print(result) +``` + + diff --git a/documentation/services/DutchMetadataService.md b/documentation/services/DutchMetadataService.md new file mode 100644 index 0000000..8f6a1cc --- /dev/null +++ b/documentation/services/DutchMetadataService.md @@ -0,0 +1,309 @@ +# DutchMetadataService + +A list of all methods in the `DutchMetadataService` service. Click on the method name to view detailed information about that method. + +| Methods | Description | +| :------------------------------------------------------------------------ | :------------------------------------------------------- | +| [describe_dutch_metadata_collection](#describe_dutch_metadata_collection) | Sample metadata records from Dutch Nationaal georegister | +| [get_dutch_metadata_features](#get_dutch_metadata_features) | Sample metadata records from Dutch Nationaal georegister | +| [options_dutch_metadata_features](#options_dutch_metadata_features) | Sample metadata records from Dutch Nationaal georegister | +| [get_dutch_metadata_feature](#get_dutch_metadata_feature) | Sample metadata records from Dutch Nationaal georegister | +| [options_dutch_metadata_feature](#options_dutch_metadata_feature) | Sample metadata records from Dutch Nationaal georegister | +| [get_dutch_metadata_queryables](#get_dutch_metadata_queryables) | Sample metadata records from Dutch Nationaal georegister | +| [get_dutch_metadata_schema](#get_dutch_metadata_schema) | Sample metadata records from Dutch Nationaal georegister | + +## describe_dutch_metadata_collection + +Sample metadata records from Dutch Nationaal georegister + +- HTTP Method: `GET` +- Endpoint: `/collections/dutch-metadata` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Collection` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.dutch_metadata.describe_dutch_metadata_collection( + f="json", + lang="en-US" +) + +print(result) +``` + +## get_dutch_metadata_features + +Sample metadata records from Dutch Nationaal georegister + +- HTTP Method: `GET` +- Endpoint: `/collections/dutch-metadata/items` + +**Parameters** + +| Name | Type | Required | Description | +| :------------------------- | :------------------------------------------------------------------------------------------ | :------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | +| bbox | List[float] | ❌ | Only features that have a geometry that intersects the bounding box are selected.The bounding box is provided as four or six numbers, depending on whether the coordinate reference system includes a vertical axis (height or depth). | +| limit | int | ❌ | The optional limit parameter limits the number of items that are presented in the response document. Only items are counted that are on the first level of the collection in the response document. Nested objects contained within the explicitly requested items shall not be counted. Minimum = 1. Maximum = 10000. Default = 10. | +| crs | str | ❌ | Indicates the coordinate reference system for the results. | +| bbox_crs | str | ❌ | Indicates the coordinate reference system for the given bbox coordinates. | +| properties | [List[GetDutchMetadataFeaturesProperties]](../models/GetDutchMetadataFeaturesProperties.md) | ❌ | The properties that should be included for each feature. The parameter value is a comma-separated list of property names. | +| vendor_specific_parameters | dict | ❌ | Additional "free-form" parameters that are not explicitly defined | +| skip_geometry | bool | ❌ | This option can be used to skip response geometries for each feature. | +| sortby | List[str] | ❌ | Specifies a comma-separated list of property names by which the response shall be sorted. If the property name is preceded by a plus (+) sign it indicates an ascending sort for that property. If the property name is preceded by a minus (-) sign it indicates a descending sort for that property. If the property is not preceded by a plus or minus, then the default sort order implied is ascending (+). | +| offset | int | ❌ | The optional offset parameter indicates the index within the result set from which the server shall begin presenting results in the response document. The first element has an index of 0 (default). | +| q | List[str] | ❌ | The optional q parameter supports keyword searching. Only records whose text fields contain one or more of the specified search terms are selected. The specific set of text keys/fields/properties of a record to which the q operator is applied is up to the description of the server. Implementations should, however, apply the q operator to the title, description and keywords keys/fields/properties. | +| datetime\_ | str | ❌ | Either a date-time or an interval. Date and time expressions adhere to RFC 3339. Intervals may be bounded or half-bounded (double-dots at start or end). Examples: _ A date-time: "2018-02-12T23:20:50Z" _ A bounded interval: "2018-02-12T00:00:00Z/2018-03-18T12:31:12Z" \* Half-bounded intervals: "2018-02-12T00:00:00Z/.." or "../2018-03-18T12:31:12Z" Only features that have a temporal property that intersects the value of `datetime` are selected. If a feature has multiple temporal properties, it is the decision of the server whether only a single temporal property is used to determine the extent or all relevant temporal properties. | +| created | str | ❌ | | +| updated | str | ❌ | | +| type\_ | str | ❌ | | +| title | str | ❌ | | +| description | str | ❌ | | +| providers | str | ❌ | | +| external_ids | str | ❌ | | +| themes | str | ❌ | | +| extent | str | ❌ | | + +**Return Type** + +`FeatureCollectionGeoJson` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang, dict + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) +bbox=[ + 1.2 +] +properties=[ + "created" +] +vendor_specific_parameters=dict( + {} +) +sortby=[ + "|hWP@M289R" +] +q=[ + "q" +] + +result = sdk.dutch_metadata.get_dutch_metadata_features( + f="json", + lang="en-US", + bbox=bbox, + limit=10, + crs="crs", + bbox_crs="bbox-crs", + properties=properties, + vendor_specific_parameters=vendor_specific_parameters, + skip_geometry=True, + sortby=sortby, + offset=8, + q=q, + datetime_="datetime", + created="created", + updated="updated", + type_="type", + title="title", + description="description", + providers="providers", + external_ids="externalIds", + themes="themes", + extent="extent" +) + +print(result) +``` + +## options_dutch_metadata_features + +Sample metadata records from Dutch Nationaal georegister + +- HTTP Method: `OPTIONS` +- Endpoint: `/collections/dutch-metadata/items` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.dutch_metadata.options_dutch_metadata_features() + +print(result) +``` + +## get_dutch_metadata_feature + +Sample metadata records from Dutch Nationaal georegister + +- HTTP Method: `GET` +- Endpoint: `/collections/dutch-metadata/items/{featureId}` + +**Parameters** + +| Name | Type | Required | Description | +| :--------- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| feature_id | str | ✅ | local identifier of a feature | +| crs | str | ❌ | Indicates the coordinate reference system for the results. | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`FeatureGeoJson` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.dutch_metadata.get_dutch_metadata_feature( + feature_id="featureId", + crs="crs", + f="json", + lang="en-US" +) + +print(result) +``` + +## options_dutch_metadata_feature + +Sample metadata records from Dutch Nationaal georegister + +- HTTP Method: `OPTIONS` +- Endpoint: `/collections/dutch-metadata/items/{featureId}` + +**Parameters** + +| Name | Type | Required | Description | +| :--------- | :--- | :------- | :---------------------------- | +| feature_id | str | ✅ | local identifier of a feature | + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.dutch_metadata.options_dutch_metadata_feature(feature_id="featureId") + +print(result) +``` + +## get_dutch_metadata_queryables + +Sample metadata records from Dutch Nationaal georegister + +- HTTP Method: `GET` +- Endpoint: `/collections/dutch-metadata/queryables` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Queryables` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.dutch_metadata.get_dutch_metadata_queryables( + f="json", + lang="en-US" +) + +print(result) +``` + +## get_dutch_metadata_schema + +Sample metadata records from Dutch Nationaal georegister + +- HTTP Method: `GET` +- Endpoint: `/collections/dutch-metadata/schema` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Queryables` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.dutch_metadata.get_dutch_metadata_schema( + f="json", + lang="en-US" +) + +print(result) +``` + + diff --git a/documentation/services/DutchWindmillsService.md b/documentation/services/DutchWindmillsService.md new file mode 100644 index 0000000..93e0150 --- /dev/null +++ b/documentation/services/DutchWindmillsService.md @@ -0,0 +1,316 @@ +# DutchWindmillsService + +A list of all methods in the `DutchWindmillsService` service. Click on the method name to view detailed information about that method. + +| Methods | Description | +| :-------------------------------------------------------------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------- | +| [describe_dutch_windmills_collection](#describe_dutch_windmills_collection) | Locations of windmills within the Netherlands from Rijksdienst voor het Cultureel Erfgoed (RCE) INSPIRE WFS. Uses GeoServer WFS v2 backend via OGRProvider. | +| [get_dutch_windmills_features](#get_dutch_windmills_features) | Locations of windmills within the Netherlands from Rijksdienst voor het Cultureel Erfgoed (RCE) INSPIRE WFS. Uses GeoServer WFS v2 backend via OGRProvider. | +| [options_dutch_windmills_features](#options_dutch_windmills_features) | Locations of windmills within the Netherlands from Rijksdienst voor het Cultureel Erfgoed (RCE) INSPIRE WFS. Uses GeoServer WFS v2 backend via OGRProvider. | +| [get_dutch_windmills_feature](#get_dutch_windmills_feature) | Locations of windmills within the Netherlands from Rijksdienst voor het Cultureel Erfgoed (RCE) INSPIRE WFS. Uses GeoServer WFS v2 backend via OGRProvider. | +| [options_dutch_windmills_feature](#options_dutch_windmills_feature) | Locations of windmills within the Netherlands from Rijksdienst voor het Cultureel Erfgoed (RCE) INSPIRE WFS. Uses GeoServer WFS v2 backend via OGRProvider. | +| [get_dutch_windmills_queryables](#get_dutch_windmills_queryables) | Locations of windmills within the Netherlands from Rijksdienst voor het Cultureel Erfgoed (RCE) INSPIRE WFS. Uses GeoServer WFS v2 backend via OGRProvider. | +| [get_dutch_windmills_schema](#get_dutch_windmills_schema) | Locations of windmills within the Netherlands from Rijksdienst voor het Cultureel Erfgoed (RCE) INSPIRE WFS. Uses GeoServer WFS v2 backend via OGRProvider. | + +## describe_dutch_windmills_collection + +Locations of windmills within the Netherlands from Rijksdienst voor het Cultureel Erfgoed (RCE) INSPIRE WFS. Uses GeoServer WFS v2 backend via OGRProvider. + +- HTTP Method: `GET` +- Endpoint: `/collections/dutch_windmills` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Collection` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.dutch_windmills.describe_dutch_windmills_collection( + f="json", + lang="en-US" +) + +print(result) +``` + +## get_dutch_windmills_features + +Locations of windmills within the Netherlands from Rijksdienst voor het Cultureel Erfgoed (RCE) INSPIRE WFS. Uses GeoServer WFS v2 backend via OGRProvider. + +- HTTP Method: `GET` +- Endpoint: `/collections/dutch_windmills/items` + +**Parameters** + +| Name | Type | Required | Description | +| :------------------------- | :-------------------------------------------------------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | +| bbox | List[float] | ❌ | Only features that have a geometry that intersects the bounding box are selected.The bounding box is provided as four or six numbers, depending on whether the coordinate reference system includes a vertical axis (height or depth). | +| limit | int | ❌ | The optional limit parameter limits the number of items that are presented in the response document. Only items are counted that are on the first level of the collection in the response document. Nested objects contained within the explicitly requested items shall not be counted. Minimum = 1. Maximum = 10000. Default = 10. | +| crs | str | ❌ | Indicates the coordinate reference system for the results. | +| bbox_crs | str | ❌ | Indicates the coordinate reference system for the given bbox coordinates. | +| properties | [List[GetDutchWindmillsFeaturesProperties]](../models/GetDutchWindmillsFeaturesProperties.md) | ❌ | The properties that should be included for each feature. The parameter value is a comma-separated list of property names. | +| vendor_specific_parameters | dict | ❌ | Additional "free-form" parameters that are not explicitly defined | +| skip_geometry | bool | ❌ | This option can be used to skip response geometries for each feature. | +| sortby | List[str] | ❌ | Specifies a comma-separated list of property names by which the response shall be sorted. If the property name is preceded by a plus (+) sign it indicates an ascending sort for that property. If the property name is preceded by a minus (-) sign it indicates a descending sort for that property. If the property is not preceded by a plus or minus, then the default sort order implied is ascending (+). | +| offset | int | ❌ | The optional offset parameter indicates the index within the result set from which the server shall begin presenting results in the response document. The first element has an index of 0 (default). | +| gml_id | str | ❌ | | +| gid | int | ❌ | | +| naam | str | ❌ | | +| plaats | str | ❌ | | +| categorie | str | ❌ | | +| functie | str | ❌ | | +| type\_ | str | ❌ | | +| staat | str | ❌ | | +| rmonnummer | str | ❌ | | +| tbgcnummer | str | ❌ | | +| infolink | str | ❌ | | +| thumbnail | str | ❌ | | +| hfdfunctie | str | ❌ | | +| fotograaf | str | ❌ | | +| foto_groot | str | ❌ | | +| bouwjaar | str | ❌ | | + +**Return Type** + +`FeatureCollectionGeoJson` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang, dict + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) +bbox=[ + 0.61 +] +properties=[ + "gml_id" +] +vendor_specific_parameters=dict( + {} +) +sortby=[ + "o-" +] + +result = sdk.dutch_windmills.get_dutch_windmills_features( + f="json", + lang="en-US", + bbox=bbox, + limit=10, + crs="crs", + bbox_crs="bbox-crs", + properties=properties, + vendor_specific_parameters=vendor_specific_parameters, + skip_geometry=False, + sortby=sortby, + offset=3, + gml_id="gml_id", + gid=8, + naam="NAAM", + plaats="PLAATS", + categorie="CATEGORIE", + functie="FUNCTIE", + type_="TYPE", + staat="STAAT", + rmonnummer="RMONNUMMER", + tbgcnummer="TBGCNUMMER", + infolink="INFOLINK", + thumbnail="THUMBNAIL", + hfdfunctie="HFDFUNCTIE", + fotograaf="FOTOGRAAF", + foto_groot="FOTO_GROOT", + bouwjaar="BOUWJAAR" +) + +print(result) +``` + +## options_dutch_windmills_features + +Locations of windmills within the Netherlands from Rijksdienst voor het Cultureel Erfgoed (RCE) INSPIRE WFS. Uses GeoServer WFS v2 backend via OGRProvider. + +- HTTP Method: `OPTIONS` +- Endpoint: `/collections/dutch_windmills/items` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.dutch_windmills.options_dutch_windmills_features() + +print(result) +``` + +## get_dutch_windmills_feature + +Locations of windmills within the Netherlands from Rijksdienst voor het Cultureel Erfgoed (RCE) INSPIRE WFS. Uses GeoServer WFS v2 backend via OGRProvider. + +- HTTP Method: `GET` +- Endpoint: `/collections/dutch_windmills/items/{featureId}` + +**Parameters** + +| Name | Type | Required | Description | +| :--------- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| feature_id | str | ✅ | local identifier of a feature | +| crs | str | ❌ | Indicates the coordinate reference system for the results. | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`FeatureGeoJson` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.dutch_windmills.get_dutch_windmills_feature( + feature_id="featureId", + crs="crs", + f="json", + lang="en-US" +) + +print(result) +``` + +## options_dutch_windmills_feature + +Locations of windmills within the Netherlands from Rijksdienst voor het Cultureel Erfgoed (RCE) INSPIRE WFS. Uses GeoServer WFS v2 backend via OGRProvider. + +- HTTP Method: `OPTIONS` +- Endpoint: `/collections/dutch_windmills/items/{featureId}` + +**Parameters** + +| Name | Type | Required | Description | +| :--------- | :--- | :------- | :---------------------------- | +| feature_id | str | ✅ | local identifier of a feature | + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.dutch_windmills.options_dutch_windmills_feature(feature_id="featureId") + +print(result) +``` + +## get_dutch_windmills_queryables + +Locations of windmills within the Netherlands from Rijksdienst voor het Cultureel Erfgoed (RCE) INSPIRE WFS. Uses GeoServer WFS v2 backend via OGRProvider. + +- HTTP Method: `GET` +- Endpoint: `/collections/dutch_windmills/queryables` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Queryables` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.dutch_windmills.get_dutch_windmills_queryables( + f="json", + lang="en-US" +) + +print(result) +``` + +## get_dutch_windmills_schema + +Locations of windmills within the Netherlands from Rijksdienst voor het Cultureel Erfgoed (RCE) INSPIRE WFS. Uses GeoServer WFS v2 backend via OGRProvider. + +- HTTP Method: `GET` +- Endpoint: `/collections/dutch_windmills/schema` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Queryables` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.dutch_windmills.get_dutch_windmills_schema( + f="json", + lang="en-US" +) + +print(result) +``` + + diff --git a/documentation/services/GdpsTemperatureService.md b/documentation/services/GdpsTemperatureService.md new file mode 100644 index 0000000..ccd2a2e --- /dev/null +++ b/documentation/services/GdpsTemperatureService.md @@ -0,0 +1,91 @@ +# GdpsTemperatureService + +A list of all methods in the `GdpsTemperatureService` service. Click on the method name to view detailed information about that method. + +| Methods | Description | +| :---------------------------------------------------------------------------- | :-------------------------------------------- | +| [describe_gdps_temperature_collection](#describe_gdps_temperature_collection) | Global Deterministic Prediction System sample | +| [get_gdps_temperature_coverage](#get_gdps_temperature_coverage) | Global Deterministic Prediction System sample | + +## describe_gdps_temperature_collection + +Global Deterministic Prediction System sample + +- HTTP Method: `GET` +- Endpoint: `/collections/gdps-temperature` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Collection` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.gdps_temperature.describe_gdps_temperature_collection( + f="json", + lang="en-US" +) + +print(result) +``` + +## get_gdps_temperature_coverage + +Global Deterministic Prediction System sample + +- HTTP Method: `GET` +- Endpoint: `/collections/gdps-temperature/coverage` + +**Parameters** + +| Name | Type | Required | Description | +| :------- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| bbox | List[float] | ❌ | Only features that have a geometry that intersects the bounding box are selected.The bounding box is provided as four or six numbers, depending on whether the coordinate reference system includes a vertical axis (height or depth). | +| bbox_crs | str | ❌ | Indicates the coordinate reference system for the given bbox coordinates. | + +**Return Type** + +`FeatureCollectionGeoJson` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import Lang, GetLandingPageF + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) +bbox=[ + 9.62 +] + +result = sdk.gdps_temperature.get_gdps_temperature_coverage( + lang="en-US", + f="json", + bbox=bbox, + bbox_crs="bbox-crs" +) + +print(result) +``` + + diff --git a/documentation/services/HelloWorldService.md b/documentation/services/HelloWorldService.md new file mode 100644 index 0000000..9d909c8 --- /dev/null +++ b/documentation/services/HelloWorldService.md @@ -0,0 +1,83 @@ +# HelloWorldService + +A list of all methods in the `HelloWorldService` service. Click on the method name to view detailed information about that method. + +| Methods | Description | +| :------------------------------------------------------------ | :------------------------------------------------------------------------------------------------------------------------------------------------- | +| [describe_hello_world_process](#describe_hello_world_process) | An example process that takes a name as input, and echoes it back as output. Intended to demonstrate a simple process with a single literal input. | +| [execute_hello_world_job](#execute_hello_world_job) | An example process that takes a name as input, and echoes it back as output. Intended to demonstrate a simple process with a single literal input. | + +## describe_hello_world_process + +An example process that takes a name as input, and echoes it back as output. Intended to demonstrate a simple process with a single literal input. + +- HTTP Method: `GET` +- Endpoint: `/processes/hello-world` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.hello_world.describe_hello_world_process(f="json") + +print(result) +``` + +## execute_hello_world_job + +An example process that takes a name as input, and echoes it back as output. Intended to demonstrate a simple process with a single literal input. + +- HTTP Method: `POST` +- Endpoint: `/processes/hello-world/execution` + +**Parameters** + +| Name | Type | Required | Description | +| :----------- | :------------------------------ | :------- | :---------------- | +| request_body | [Execute](../models/Execute.md) | ✅ | The request body. | + +**Return Type** + +`StatusInfo` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import Execute + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +request_body = Execute( + inputs="", + outputs="", + response="raw", + subscriber={ + "success_uri": "successUri", + "in_progress_uri": "inProgressUri", + "failed_uri": "failedUri" + } +) + +result = sdk.hello_world.execute_hello_world_job(request_body=request_body) + +print(result) +``` + + diff --git a/documentation/services/IcoadsSstService.md b/documentation/services/IcoadsSstService.md new file mode 100644 index 0000000..651b97f --- /dev/null +++ b/documentation/services/IcoadsSstService.md @@ -0,0 +1,137 @@ +# IcoadsSstService + +A list of all methods in the `IcoadsSstService` service. Click on the method name to view detailed information about that method. + +| Methods | Description | +| :---------------------------------------------------------------- | :------------------------------------------------------------- | +| [describe_icoads_sst_collection](#describe_icoads_sst_collection) | International Comprehensive Ocean-Atmosphere Data Set (ICOADS) | +| [query_cube_icoads_sst](#query_cube_icoads_sst) | International Comprehensive Ocean-Atmosphere Data Set (ICOADS) | +| [query_position_icoads_sst](#query_position_icoads_sst) | International Comprehensive Ocean-Atmosphere Data Set (ICOADS) | + +## describe_icoads_sst_collection + +International Comprehensive Ocean-Atmosphere Data Set (ICOADS) + +- HTTP Method: `GET` +- Endpoint: `/collections/icoads-sst` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Collection` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.icoads_sst.describe_icoads_sst_collection( + f="json", + lang="en-US" +) + +print(result) +``` + +## query_cube_icoads_sst + +International Comprehensive Ocean-Atmosphere Data Set (ICOADS) + +- HTTP Method: `GET` +- Endpoint: `/collections/icoads-sst/cube` + +**Parameters** + +| Name | Type | Required | Description | +| :------------- | :------------------------------------------------------------ | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| bbox | [QueryCubeIcoadsSstBbox](../models/QueryCubeIcoadsSstBbox.md) | ❌ | Only features that have a geometry that intersects the bounding box are selected. The bounding box is provided as four or six numbers, depending on whether the coordinate reference system includes a vertical axis (height or depth): _ Lower left corner, coordinate axis 1 _ Lower left corner, coordinate axis 2 _ Minimum value, coordinate axis 3 (optional) _ Upper right corner, coordinate axis 1 _ Upper right corner, coordinate axis 2 _ Maximum value, coordinate axis 3 (optional) The coordinate reference system of the values is WGS 84 longitude/latitude (http://www.opengis.net/def/crs/OGC/1.3/CRS84) unless a different coordinate reference system is specified in the parameter `bbox-crs`. For WGS 84 longitude/latitude the values are in most cases the sequence of minimum longitude, minimum latitude, maximum longitude and maximum latitude. However, in cases where the box spans the antimeridian the first value (west-most box edge) is larger than the third value (east-most box edge). If the vertical axis is included, the third and the sixth number are the bottom and the top of the 3-dimensional bounding box. If a feature has multiple spatial geometry properties, it is the decision of the server whether only a single spatial geometry property is used to determine the extent or all relevant geometries. | +| datetime\_ | str | ❌ | Either a date-time or an interval. Date and time expressions adhere to RFC 3339. Intervals may be bounded or half-bounded (double-dots at start or end). Examples: _ A date-time: "2018-02-12T23:20:50Z" _ A bounded interval: "2018-02-12T00:00:00Z/2018-03-18T12:31:12Z" \* Half-bounded intervals: "2018-02-12T00:00:00Z/.." or "../2018-03-18T12:31:12Z" Only features that have a temporal property that intersects the value of `datetime` are selected. If a feature has multiple temporal properties, it is the decision of the server whether only a single temporal property is used to determine the extent or all relevant temporal properties. | +| parameter_name | str | ❌ | comma delimited list of parameters to retrieve data for. Valid parameters are listed in the collections metadata | +| z | str | ❌ | Define the vertical level to return data from i.e. z=level for instance if the 850hPa pressure level is being queried z=850 or a range to return data for all levels between and including 2 defined levels i.e. z=minimum value/maximum value for instance if all values between and including 10m and 100m z=10/100 finally a list of height values can be specified i.e. z=value1,value2,value3 for instance if values at 2m, 10m and 80m are required z=2,10,80 An Arithmetic sequence using Recurring height intervals, the difference is the number of recurrences is defined at the start and the amount to increment the height by is defined at the end i.e. z=Rn/min height/height interval so if the request was for 20 height levels 50m apart starting at 100m: z=R20/100/50 When not specified data from all available heights SHOULD be returned | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | + +**Return Type** + +`CoverageJson` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) +bbox=[ + 4.58 +] + +result = sdk.icoads_sst.query_cube_icoads_sst( + bbox=bbox, + datetime_="datetime", + parameter_name="parameter-name", + z="z", + f="json" +) + +print(result) +``` + +## query_position_icoads_sst + +International Comprehensive Ocean-Atmosphere Data Set (ICOADS) + +- HTTP Method: `GET` +- Endpoint: `/collections/icoads-sst/position` + +**Parameters** + +| Name | Type | Required | Description | +| :------------- | :---------------------------------------------- | :------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| coords | str | ✅ | location(s) to return data for, the coordinates are defined by a Well Known Text (wkt) string. to retrieve a single location : POINT(x y) i.e. POINT(0 51.48) for Greenwich, London And for a list of locations MULTIPOINT((x y),(x1 y1),(x2 y2),(x3 y3)) i.e. MULTIPOINT((38.9 -77),(48.85 2.35),(39.92 116.38),(-35.29 149.1),(51.5 -0.1)) see http://portal.opengeospatial.org/files/?artifact_id=25355 and https://en.wikipedia.org/wiki/Well-known_text_representation_of_geometry the coordinate values will depend on the CRS parameter, if this is not defined the values will be assumed to WGS84 values (i.e x=longitude and y=latitude) | +| datetime\_ | str | ❌ | Either a date-time or an interval. Date and time expressions adhere to RFC 3339. Intervals may be bounded or half-bounded (double-dots at start or end). Examples: _ A date-time: "2018-02-12T23:20:50Z" _ A bounded interval: "2018-02-12T00:00:00Z/2018-03-18T12:31:12Z" \* Half-bounded intervals: "2018-02-12T00:00:00Z/.." or "../2018-03-18T12:31:12Z" Only features that have a temporal property that intersects the value of `datetime` are selected. If a feature has multiple temporal properties, it is the decision of the server whether only a single temporal property is used to determine the extent or all relevant temporal properties. | +| parameter_name | str | ❌ | comma delimited list of parameters to retrieve data for. Valid parameters are listed in the collections metadata | +| z | str | ❌ | Define the vertical level to return data from i.e. z=level for instance if the 850hPa pressure level is being queried z=850 or a range to return data for all levels between and including 2 defined levels i.e. z=minimum value/maximum value for instance if all values between and including 10m and 100m z=10/100 finally a list of height values can be specified i.e. z=value1,value2,value3 for instance if values at 2m, 10m and 80m are required z=2,10,80 An Arithmetic sequence using Recurring height intervals, the difference is the number of recurrences is defined at the start and the amount to increment the height by is defined at the end i.e. z=Rn/min height/height interval so if the request was for 20 height levels 50m apart starting at 100m: z=R20/100/50 When not specified data from all available heights SHOULD be returned | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | + +**Return Type** + +`CoverageJson` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.icoads_sst.query_position_icoads_sst( + coords="coords", + datetime_="datetime", + parameter_name="parameter-name", + z="z", + f="json" +) + +print(result) +``` + + diff --git a/documentation/services/JobsService.md b/documentation/services/JobsService.md new file mode 100644 index 0000000..81ff0eb --- /dev/null +++ b/documentation/services/JobsService.md @@ -0,0 +1,128 @@ +# JobsService + +A list of all methods in the `JobsService` service. Click on the method name to view detailed information about that method. + +| Methods | Description | +| :---------------------------------- | :---------------------- | +| [get_jobs](#get_jobs) | Retrieve a list of jobs | +| [get_job](#get_job) | Retrieve job details | +| [delete_job](#delete_job) | Cancel / delete job | +| [get_job_results](#get_job_results) | Retrieve job results | + +## get_jobs + +Retrieve a list of jobs + +- HTTP Method: `GET` +- Endpoint: `/jobs` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.jobs.get_jobs() + +print(result) +``` + +## get_job + +Retrieve job details + +- HTTP Method: `GET` +- Endpoint: `/jobs/{jobId}` + +**Parameters** + +| Name | Type | Required | Description | +| :----- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------- | +| job_id | str | ✅ | job identifier | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.jobs.get_job( + job_id="jobId", + f="json" +) + +print(result) +``` + +## delete_job + +Cancel / delete job + +- HTTP Method: `DELETE` +- Endpoint: `/jobs/{jobId}` + +**Parameters** + +| Name | Type | Required | Description | +| :----- | :--- | :------- | :------------- | +| job_id | str | ✅ | job identifier | + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.jobs.delete_job(job_id="jobId") + +print(result) +``` + +## get_job_results + +Retrieve job results + +- HTTP Method: `GET` +- Endpoint: `/jobs/{jobId}/results` + +**Parameters** + +| Name | Type | Required | Description | +| :----- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------- | +| job_id | str | ✅ | job identifier | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.jobs.get_job_results( + job_id="jobId", + f="json" +) + +print(result) +``` + + diff --git a/documentation/services/LakesService.md b/documentation/services/LakesService.md new file mode 100644 index 0000000..8aa8821 --- /dev/null +++ b/documentation/services/LakesService.md @@ -0,0 +1,378 @@ +# LakesService + +A list of all methods in the `LakesService` service. Click on the method name to view detailed information about that method. + +| Methods | Description | +| :------------------------------------------------------ | :-------------------------------- | +| [describe_lakes_collection](#describe_lakes_collection) | lakes of the world, public domain | +| [get_lakes_features](#get_lakes_features) | lakes of the world, public domain | +| [options_lakes_features](#options_lakes_features) | lakes of the world, public domain | +| [get_lakes_feature](#get_lakes_feature) | lakes of the world, public domain | +| [options_lakes_feature](#options_lakes_feature) | lakes of the world, public domain | +| [get_lakes_queryables](#get_lakes_queryables) | lakes of the world, public domain | +| [get_lakes_schema](#get_lakes_schema) | lakes of the world, public domain | +| [describe_lakes_tiles](#describe_lakes_tiles) | lakes of the world, public domain | +| [get_lakes_tiles](#get_lakes_tiles) | lakes of the world, public domain | + +## describe_lakes_collection + +lakes of the world, public domain + +- HTTP Method: `GET` +- Endpoint: `/collections/lakes` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Collection` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.lakes.describe_lakes_collection( + f="json", + lang="en-US" +) + +print(result) +``` + +## get_lakes_features + +lakes of the world, public domain + +- HTTP Method: `GET` +- Endpoint: `/collections/lakes/items` + +**Parameters** + +| Name | Type | Required | Description | +| :------------------------- | :-------------------------------------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | +| bbox | List[float] | ❌ | Only features that have a geometry that intersects the bounding box are selected.The bounding box is provided as four or six numbers, depending on whether the coordinate reference system includes a vertical axis (height or depth). | +| limit | int | ❌ | The optional limit parameter limits the number of items that are presented in the response document. Only items are counted that are on the first level of the collection in the response document. Nested objects contained within the explicitly requested items shall not be counted. Minimum = 1. Maximum = 10000. Default = 10. | +| crs | str | ❌ | Indicates the coordinate reference system for the results. | +| bbox_crs | str | ❌ | Indicates the coordinate reference system for the given bbox coordinates. | +| properties | [List[GetLakesFeaturesProperties]](../models/GetLakesFeaturesProperties.md) | ❌ | The properties that should be included for each feature. The parameter value is a comma-separated list of property names. | +| vendor_specific_parameters | dict | ❌ | Additional "free-form" parameters that are not explicitly defined | +| skip_geometry | bool | ❌ | This option can be used to skip response geometries for each feature. | +| sortby | List[str] | ❌ | Specifies a comma-separated list of property names by which the response shall be sorted. If the property name is preceded by a plus (+) sign it indicates an ascending sort for that property. If the property name is preceded by a minus (-) sign it indicates a descending sort for that property. If the property is not preceded by a plus or minus, then the default sort order implied is ascending (+). | +| offset | int | ❌ | The optional offset parameter indicates the index within the result set from which the server shall begin presenting results in the response document. The first element has an index of 0 (default). | +| id\_ | int | ❌ | | +| scalerank | int | ❌ | | +| name | str | ❌ | | +| name_alt | str | ❌ | | +| admin | str | ❌ | | +| featureclass | str | ❌ | | + +**Return Type** + +`FeatureCollectionGeoJson` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang, dict + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) +bbox=[ + 6.52 +] +properties=[ + "id" +] +vendor_specific_parameters=dict( + {} +) +sortby=[ + "gq" +] + +result = sdk.lakes.get_lakes_features( + f="json", + lang="en-US", + bbox=bbox, + limit=10, + crs="crs", + bbox_crs="bbox-crs", + properties=properties, + vendor_specific_parameters=vendor_specific_parameters, + skip_geometry=True, + sortby=sortby, + offset=7, + id_=8, + scalerank=6, + name="name", + name_alt="name_alt", + admin="admin", + featureclass="featureclass" +) + +print(result) +``` + +## options_lakes_features + +lakes of the world, public domain + +- HTTP Method: `OPTIONS` +- Endpoint: `/collections/lakes/items` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.lakes.options_lakes_features() + +print(result) +``` + +## get_lakes_feature + +lakes of the world, public domain + +- HTTP Method: `GET` +- Endpoint: `/collections/lakes/items/{featureId}` + +**Parameters** + +| Name | Type | Required | Description | +| :--------- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| feature_id | str | ✅ | local identifier of a feature | +| crs | str | ❌ | Indicates the coordinate reference system for the results. | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`FeatureGeoJson` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.lakes.get_lakes_feature( + feature_id="featureId", + crs="crs", + f="json", + lang="en-US" +) + +print(result) +``` + +## options_lakes_feature + +lakes of the world, public domain + +- HTTP Method: `OPTIONS` +- Endpoint: `/collections/lakes/items/{featureId}` + +**Parameters** + +| Name | Type | Required | Description | +| :--------- | :--- | :------- | :---------------------------- | +| feature_id | str | ✅ | local identifier of a feature | + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.lakes.options_lakes_feature(feature_id="featureId") + +print(result) +``` + +## get_lakes_queryables + +lakes of the world, public domain + +- HTTP Method: `GET` +- Endpoint: `/collections/lakes/queryables` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Queryables` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.lakes.get_lakes_queryables( + f="json", + lang="en-US" +) + +print(result) +``` + +## get_lakes_schema + +lakes of the world, public domain + +- HTTP Method: `GET` +- Endpoint: `/collections/lakes/schema` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Queryables` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.lakes.get_lakes_schema( + f="json", + lang="en-US" +) + +print(result) +``` + +## describe_lakes_tiles + +lakes of the world, public domain + +- HTTP Method: `GET` +- Endpoint: `/collections/lakes/tiles` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Tiles` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.lakes.describe_lakes_tiles( + f="json", + lang="en-US" +) + +print(result) +``` + +## get_lakes_tiles + +lakes of the world, public domain + +- HTTP Method: `GET` +- Endpoint: `/collections/lakes/tiles/{tileMatrixSetId}/{tileMatrix}/{tileRow}/{tileCol}` + +**Parameters** + +| Name | Type | Required | Description | +| :----------------- | :-------------------------------------------- | :------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| tile_matrix_set_id | [TileMatrixSets](../models/TileMatrixSets.md) | ✅ | Identifier for a supported TileMatrixSet | +| tile_matrix | str | ✅ | Identifier selecting one of the scales defined in the TileMatrixSet and representing the scaleDenominator the tile. For example, Ireland is fully within the Tile at WebMercatorQuad tileMatrix=5, tileRow=10 and tileCol=15. | +| tile_row | int | ✅ | Row index of the tile on the selected TileMatrix. It cannot exceed the MatrixWidth-1 for the selected TileMatrix. For example, Ireland is fully within the Tile at WebMercatorQuad tileMatrix=5, tileRow=10 and tileCol=15. | +| tile_col | int | ✅ | Column index of the tile on the selected TileMatrix. It cannot exceed the MatrixHeight-1 for the selected TileMatrix. For example, Ireland is fully within the Tile at WebMercatorQuad tileMatrix=5, tileRow=10 and tileCol=15. | +| f | [GetLakesTilesF](../models/GetLakesTilesF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. | + +**Return Type** + +`any` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import TileMatrixSets, GetLakesTilesF + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.lakes.get_lakes_tiles( + tile_matrix_set_id="WebMercatorQuad", + tile_matrix="tileMatrix", + tile_row=7, + tile_col=6, + f="pbf" +) + +print(result) +``` + + diff --git a/documentation/services/MapserverWorldMapService.md b/documentation/services/MapserverWorldMapService.md new file mode 100644 index 0000000..92d473a --- /dev/null +++ b/documentation/services/MapserverWorldMapService.md @@ -0,0 +1,97 @@ +# MapserverWorldMapService + +A list of all methods in the `MapserverWorldMapService` service. Click on the method name to view detailed information about that method. + +| Methods | Description | +| :---------------------------------------------------------------------------------- | :------------------------------- | +| [describe_mapserver_world_map_collection](#describe_mapserver_world_map_collection) | MapServer demo WMS world map | +| [get_map](#get_map) | MapServer demo WMS world map map | + +## describe_mapserver_world_map_collection + +MapServer demo WMS world map + +- HTTP Method: `GET` +- Endpoint: `/collections/mapserver_world_map` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Collection` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.mapserver_world_map.describe_mapserver_world_map_collection( + f="json", + lang="en-US" +) + +print(result) +``` + +## get_map + +MapServer demo WMS world map map + +- HTTP Method: `GET` +- Endpoint: `/collections/mapserver_world_map/map` + +**Parameters** + +| Name | Type | Required | Description | +| :---------- | :------------------------------ | :------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| bbox | List[float] | ❌ | Only features that have a geometry that intersects the bounding box are selected.The bounding box is provided as four or six numbers, depending on whether the coordinate reference system includes a vertical axis (height or depth). | +| datetime\_ | str | ❌ | Either a date-time or an interval. Date and time expressions adhere to RFC 3339. Intervals may be bounded or half-bounded (double-dots at start or end). Examples: _ A date-time: "2018-02-12T23:20:50Z" _ A bounded interval: "2018-02-12T00:00:00Z/2018-03-18T12:31:12Z" \* Half-bounded intervals: "2018-02-12T00:00:00Z/.." or "../2018-03-18T12:31:12Z" Only features that have a temporal property that intersects the value of `datetime` are selected. If a feature has multiple temporal properties, it is the decision of the server whether only a single temporal property is used to determine the extent or all relevant temporal properties. | +| width | int | ❌ | Response image width | +| height | int | ❌ | Response image height | +| transparent | bool | ❌ | Background transparency of map (default=true). | +| bbox_crs | int | ❌ | Indicates the EPSG for the given bbox coordinates. | +| f | [GetMapF](../models/GetMapF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | + +**Return Type** + +`any` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetMapF + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) +bbox=[ + 8.78 +] + +result = sdk.mapserver_world_map.get_map( + bbox=bbox, + datetime_="datetime", + width=0, + height=10, + transparent=True, + bbox_crs=4326, + f="png" +) + +print(result) +``` + + diff --git a/documentation/services/ObsService.md b/documentation/services/ObsService.md new file mode 100644 index 0000000..f36b028 --- /dev/null +++ b/documentation/services/ObsService.md @@ -0,0 +1,292 @@ +# ObsService + +A list of all methods in the `ObsService` service. Click on the method name to view detailed information about that method. + +| Methods | Description | +| :-------------------------------------------------- | :----------- | +| [describe_obs_collection](#describe_obs_collection) | Observations | +| [get_obs_features](#get_obs_features) | Observations | +| [options_obs_features](#options_obs_features) | Observations | +| [get_obs_feature](#get_obs_feature) | Observations | +| [options_obs_feature](#options_obs_feature) | Observations | +| [get_obs_queryables](#get_obs_queryables) | Observations | +| [get_obs_schema](#get_obs_schema) | Observations | + +## describe_obs_collection + +Observations + +- HTTP Method: `GET` +- Endpoint: `/collections/obs` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Collection` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.obs.describe_obs_collection( + f="json", + lang="en-US" +) + +print(result) +``` + +## get_obs_features + +Observations + +- HTTP Method: `GET` +- Endpoint: `/collections/obs/items` + +**Parameters** + +| Name | Type | Required | Description | +| :------------------------- | :---------------------------------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | +| bbox | List[float] | ❌ | Only features that have a geometry that intersects the bounding box are selected.The bounding box is provided as four or six numbers, depending on whether the coordinate reference system includes a vertical axis (height or depth). | +| limit | int | ❌ | The optional limit parameter limits the number of items that are presented in the response document. Only items are counted that are on the first level of the collection in the response document. Nested objects contained within the explicitly requested items shall not be counted. Minimum = 1. Maximum = 10000. Default = 10. | +| crs | str | ❌ | Indicates the coordinate reference system for the results. | +| bbox_crs | str | ❌ | Indicates the coordinate reference system for the given bbox coordinates. | +| properties | [List[GetObsFeaturesProperties]](../models/GetObsFeaturesProperties.md) | ❌ | The properties that should be included for each feature. The parameter value is a comma-separated list of property names. | +| vendor_specific_parameters | dict | ❌ | Additional "free-form" parameters that are not explicitly defined | +| skip_geometry | bool | ❌ | This option can be used to skip response geometries for each feature. | +| sortby | List[str] | ❌ | Specifies a comma-separated list of property names by which the response shall be sorted. If the property name is preceded by a plus (+) sign it indicates an ascending sort for that property. If the property name is preceded by a minus (-) sign it indicates a descending sort for that property. If the property is not preceded by a plus or minus, then the default sort order implied is ascending (+). | +| offset | int | ❌ | The optional offset parameter indicates the index within the result set from which the server shall begin presenting results in the response document. The first element has an index of 0 (default). | +| id\_ | str | ❌ | | +| stn_id | int | ❌ | | +| datetime\_ | str | ❌ | | +| value | float | ❌ | | + +**Return Type** + +`FeatureCollectionGeoJson` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang, dict + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) +bbox=[ + 8.05 +] +properties=[ + "id" +] +vendor_specific_parameters=dict( + {} +) +sortby=[ + "SG>" +] + +result = sdk.obs.get_obs_features( + f="json", + lang="en-US", + bbox=bbox, + limit=10, + crs="crs", + bbox_crs="bbox-crs", + properties=properties, + vendor_specific_parameters=vendor_specific_parameters, + skip_geometry=True, + sortby=sortby, + offset=10, + id_="id", + stn_id=6, + datetime_="datetime", + value=7.39 +) + +print(result) +``` + +## options_obs_features + +Observations + +- HTTP Method: `OPTIONS` +- Endpoint: `/collections/obs/items` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.obs.options_obs_features() + +print(result) +``` + +## get_obs_feature + +Observations + +- HTTP Method: `GET` +- Endpoint: `/collections/obs/items/{featureId}` + +**Parameters** + +| Name | Type | Required | Description | +| :--------- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| feature_id | str | ✅ | local identifier of a feature | +| crs | str | ❌ | Indicates the coordinate reference system for the results. | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`FeatureGeoJson` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.obs.get_obs_feature( + feature_id="featureId", + crs="crs", + f="json", + lang="en-US" +) + +print(result) +``` + +## options_obs_feature + +Observations + +- HTTP Method: `OPTIONS` +- Endpoint: `/collections/obs/items/{featureId}` + +**Parameters** + +| Name | Type | Required | Description | +| :--------- | :--- | :------- | :---------------------------- | +| feature_id | str | ✅ | local identifier of a feature | + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.obs.options_obs_feature(feature_id="featureId") + +print(result) +``` + +## get_obs_queryables + +Observations + +- HTTP Method: `GET` +- Endpoint: `/collections/obs/queryables` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Queryables` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.obs.get_obs_queryables( + f="json", + lang="en-US" +) + +print(result) +``` + +## get_obs_schema + +Observations + +- HTTP Method: `GET` +- Endpoint: `/collections/obs/schema` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Queryables` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.obs.get_obs_schema( + f="json", + lang="en-US" +) + +print(result) +``` + + diff --git a/documentation/services/OgrAddressesGpkgService.md b/documentation/services/OgrAddressesGpkgService.md new file mode 100644 index 0000000..5a609f4 --- /dev/null +++ b/documentation/services/OgrAddressesGpkgService.md @@ -0,0 +1,298 @@ +# OgrAddressesGpkgService + +A list of all methods in the `OgrAddressesGpkgService` service. Click on the method name to view detailed information about that method. + +| Methods | Description | +| :-------------------------------------------------------------------------------- | :---------------------- | +| [describe_ogr_addresses_gpkg_collection](#describe_ogr_addresses_gpkg_collection) | Dutch addresses subset. | +| [get_ogr_addresses_gpkg_features](#get_ogr_addresses_gpkg_features) | Dutch addresses subset. | +| [options_ogr_addresses_gpkg_features](#options_ogr_addresses_gpkg_features) | Dutch addresses subset. | +| [get_ogr_addresses_gpkg_feature](#get_ogr_addresses_gpkg_feature) | Dutch addresses subset. | +| [options_ogr_addresses_gpkg_feature](#options_ogr_addresses_gpkg_feature) | Dutch addresses subset. | +| [get_ogr_addresses_gpkg_queryables](#get_ogr_addresses_gpkg_queryables) | Dutch addresses subset. | +| [get_ogr_addresses_gpkg_schema](#get_ogr_addresses_gpkg_schema) | Dutch addresses subset. | + +## describe_ogr_addresses_gpkg_collection + +Dutch addresses subset. + +- HTTP Method: `GET` +- Endpoint: `/collections/ogr_addresses_gpkg` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Collection` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.ogr_addresses_gpkg.describe_ogr_addresses_gpkg_collection( + f="json", + lang="en-US" +) + +print(result) +``` + +## get_ogr_addresses_gpkg_features + +Dutch addresses subset. + +- HTTP Method: `GET` +- Endpoint: `/collections/ogr_addresses_gpkg/items` + +**Parameters** + +| Name | Type | Required | Description | +| :------------------------- | :------------------------------------------------------------------------------------------------ | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | +| bbox | List[float] | ❌ | Only features that have a geometry that intersects the bounding box are selected.The bounding box is provided as four or six numbers, depending on whether the coordinate reference system includes a vertical axis (height or depth). | +| limit | int | ❌ | The optional limit parameter limits the number of items that are presented in the response document. Only items are counted that are on the first level of the collection in the response document. Nested objects contained within the explicitly requested items shall not be counted. Minimum = 1. Maximum = 10000. Default = 10. | +| crs | str | ❌ | Indicates the coordinate reference system for the results. | +| bbox_crs | str | ❌ | Indicates the coordinate reference system for the given bbox coordinates. | +| properties | [List[GetOgrAddressesGpkgFeaturesProperties]](../models/GetOgrAddressesGpkgFeaturesProperties.md) | ❌ | The properties that should be included for each feature. The parameter value is a comma-separated list of property names. | +| vendor_specific_parameters | dict | ❌ | Additional "free-form" parameters that are not explicitly defined | +| skip_geometry | bool | ❌ | This option can be used to skip response geometries for each feature. | +| sortby | List[str] | ❌ | Specifies a comma-separated list of property names by which the response shall be sorted. If the property name is preceded by a plus (+) sign it indicates an ascending sort for that property. If the property name is preceded by a minus (-) sign it indicates a descending sort for that property. If the property is not preceded by a plus or minus, then the default sort order implied is ascending (+). | +| offset | int | ❌ | The optional offset parameter indicates the index within the result set from which the server shall begin presenting results in the response document. The first element has an index of 0 (default). | +| id\_ | str | ❌ | | +| straatnaam | str | ❌ | | +| huisnummer | str | ❌ | | +| huisletter | str | ❌ | | +| woonplaats | str | ❌ | | +| postcode | str | ❌ | | +| toevoeging | str | ❌ | | + +**Return Type** + +`FeatureCollectionGeoJson` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang, dict + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) +bbox=[ + 4.73 +] +properties=[ + "id" +] +vendor_specific_parameters=dict( + {} +) +sortby=[ + "-g)]C" +] + +result = sdk.ogr_addresses_gpkg.get_ogr_addresses_gpkg_features( + f="json", + lang="en-US", + bbox=bbox, + limit=10, + crs="crs", + bbox_crs="bbox-crs", + properties=properties, + vendor_specific_parameters=vendor_specific_parameters, + skip_geometry=True, + sortby=sortby, + offset=4, + id_="id", + straatnaam="straatnaam", + huisnummer="huisnummer", + huisletter="huisletter", + woonplaats="woonplaats", + postcode="postcode", + toevoeging="toevoeging" +) + +print(result) +``` + +## options_ogr_addresses_gpkg_features + +Dutch addresses subset. + +- HTTP Method: `OPTIONS` +- Endpoint: `/collections/ogr_addresses_gpkg/items` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.ogr_addresses_gpkg.options_ogr_addresses_gpkg_features() + +print(result) +``` + +## get_ogr_addresses_gpkg_feature + +Dutch addresses subset. + +- HTTP Method: `GET` +- Endpoint: `/collections/ogr_addresses_gpkg/items/{featureId}` + +**Parameters** + +| Name | Type | Required | Description | +| :--------- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| feature_id | str | ✅ | local identifier of a feature | +| crs | str | ❌ | Indicates the coordinate reference system for the results. | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`FeatureGeoJson` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.ogr_addresses_gpkg.get_ogr_addresses_gpkg_feature( + feature_id="featureId", + crs="crs", + f="json", + lang="en-US" +) + +print(result) +``` + +## options_ogr_addresses_gpkg_feature + +Dutch addresses subset. + +- HTTP Method: `OPTIONS` +- Endpoint: `/collections/ogr_addresses_gpkg/items/{featureId}` + +**Parameters** + +| Name | Type | Required | Description | +| :--------- | :--- | :------- | :---------------------------- | +| feature_id | str | ✅ | local identifier of a feature | + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.ogr_addresses_gpkg.options_ogr_addresses_gpkg_feature(feature_id="featureId") + +print(result) +``` + +## get_ogr_addresses_gpkg_queryables + +Dutch addresses subset. + +- HTTP Method: `GET` +- Endpoint: `/collections/ogr_addresses_gpkg/queryables` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Queryables` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.ogr_addresses_gpkg.get_ogr_addresses_gpkg_queryables( + f="json", + lang="en-US" +) + +print(result) +``` + +## get_ogr_addresses_gpkg_schema + +Dutch addresses subset. + +- HTTP Method: `GET` +- Endpoint: `/collections/ogr_addresses_gpkg/schema` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Queryables` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.ogr_addresses_gpkg.get_ogr_addresses_gpkg_schema( + f="json", + lang="en-US" +) + +print(result) +``` + + diff --git a/documentation/services/OgrAddressesSqliteService.md b/documentation/services/OgrAddressesSqliteService.md new file mode 100644 index 0000000..2f3813d --- /dev/null +++ b/documentation/services/OgrAddressesSqliteService.md @@ -0,0 +1,298 @@ +# OgrAddressesSqliteService + +A list of all methods in the `OgrAddressesSqliteService` service. Click on the method name to view detailed information about that method. + +| Methods | Description | +| :------------------------------------------------------------------------------------ | :---------------------- | +| [describe_ogr_addresses_sqlite_collection](#describe_ogr_addresses_sqlite_collection) | Dutch addresses subset. | +| [get_ogr_addresses_sqlite_features](#get_ogr_addresses_sqlite_features) | Dutch addresses subset. | +| [options_ogr_addresses_sqlite_features](#options_ogr_addresses_sqlite_features) | Dutch addresses subset. | +| [get_ogr_addresses_sqlite_feature](#get_ogr_addresses_sqlite_feature) | Dutch addresses subset. | +| [options_ogr_addresses_sqlite_feature](#options_ogr_addresses_sqlite_feature) | Dutch addresses subset. | +| [get_ogr_addresses_sqlite_queryables](#get_ogr_addresses_sqlite_queryables) | Dutch addresses subset. | +| [get_ogr_addresses_sqlite_schema](#get_ogr_addresses_sqlite_schema) | Dutch addresses subset. | + +## describe_ogr_addresses_sqlite_collection + +Dutch addresses subset. + +- HTTP Method: `GET` +- Endpoint: `/collections/ogr_addresses_sqlite` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Collection` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.ogr_addresses_sqlite.describe_ogr_addresses_sqlite_collection( + f="json", + lang="en-US" +) + +print(result) +``` + +## get_ogr_addresses_sqlite_features + +Dutch addresses subset. + +- HTTP Method: `GET` +- Endpoint: `/collections/ogr_addresses_sqlite/items` + +**Parameters** + +| Name | Type | Required | Description | +| :------------------------- | :---------------------------------------------------------------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | +| bbox | List[float] | ❌ | Only features that have a geometry that intersects the bounding box are selected.The bounding box is provided as four or six numbers, depending on whether the coordinate reference system includes a vertical axis (height or depth). | +| limit | int | ❌ | The optional limit parameter limits the number of items that are presented in the response document. Only items are counted that are on the first level of the collection in the response document. Nested objects contained within the explicitly requested items shall not be counted. Minimum = 1. Maximum = 10000. Default = 10. | +| crs | str | ❌ | Indicates the coordinate reference system for the results. | +| bbox_crs | str | ❌ | Indicates the coordinate reference system for the given bbox coordinates. | +| properties | [List[GetOgrAddressesSqliteFeaturesProperties]](../models/GetOgrAddressesSqliteFeaturesProperties.md) | ❌ | The properties that should be included for each feature. The parameter value is a comma-separated list of property names. | +| vendor_specific_parameters | dict | ❌ | Additional "free-form" parameters that are not explicitly defined | +| skip_geometry | bool | ❌ | This option can be used to skip response geometries for each feature. | +| sortby | List[str] | ❌ | Specifies a comma-separated list of property names by which the response shall be sorted. If the property name is preceded by a plus (+) sign it indicates an ascending sort for that property. If the property name is preceded by a minus (-) sign it indicates a descending sort for that property. If the property is not preceded by a plus or minus, then the default sort order implied is ascending (+). | +| offset | int | ❌ | The optional offset parameter indicates the index within the result set from which the server shall begin presenting results in the response document. The first element has an index of 0 (default). | +| id\_ | str | ❌ | | +| straatnaam | str | ❌ | | +| huisnummer | str | ❌ | | +| huisletter | str | ❌ | | +| woonplaats | str | ❌ | | +| postcode | str | ❌ | | +| toevoeging | str | ❌ | | + +**Return Type** + +`FeatureCollectionGeoJson` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang, dict + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) +bbox=[ + 7.89 +] +properties=[ + "id" +] +vendor_specific_parameters=dict( + {} +) +sortby=[ + "Crv?5/Sf>" +] + +result = sdk.ogr_addresses_sqlite.get_ogr_addresses_sqlite_features( + f="json", + lang="en-US", + bbox=bbox, + limit=10, + crs="crs", + bbox_crs="bbox-crs", + properties=properties, + vendor_specific_parameters=vendor_specific_parameters, + skip_geometry=True, + sortby=sortby, + offset=7, + id_="id", + straatnaam="straatnaam", + huisnummer="huisnummer", + huisletter="huisletter", + woonplaats="woonplaats", + postcode="postcode", + toevoeging="toevoeging" +) + +print(result) +``` + +## options_ogr_addresses_sqlite_features + +Dutch addresses subset. + +- HTTP Method: `OPTIONS` +- Endpoint: `/collections/ogr_addresses_sqlite/items` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.ogr_addresses_sqlite.options_ogr_addresses_sqlite_features() + +print(result) +``` + +## get_ogr_addresses_sqlite_feature + +Dutch addresses subset. + +- HTTP Method: `GET` +- Endpoint: `/collections/ogr_addresses_sqlite/items/{featureId}` + +**Parameters** + +| Name | Type | Required | Description | +| :--------- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| feature_id | str | ✅ | local identifier of a feature | +| crs | str | ❌ | Indicates the coordinate reference system for the results. | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`FeatureGeoJson` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.ogr_addresses_sqlite.get_ogr_addresses_sqlite_feature( + feature_id="featureId", + crs="crs", + f="json", + lang="en-US" +) + +print(result) +``` + +## options_ogr_addresses_sqlite_feature + +Dutch addresses subset. + +- HTTP Method: `OPTIONS` +- Endpoint: `/collections/ogr_addresses_sqlite/items/{featureId}` + +**Parameters** + +| Name | Type | Required | Description | +| :--------- | :--- | :------- | :---------------------------- | +| feature_id | str | ✅ | local identifier of a feature | + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.ogr_addresses_sqlite.options_ogr_addresses_sqlite_feature(feature_id="featureId") + +print(result) +``` + +## get_ogr_addresses_sqlite_queryables + +Dutch addresses subset. + +- HTTP Method: `GET` +- Endpoint: `/collections/ogr_addresses_sqlite/queryables` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Queryables` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.ogr_addresses_sqlite.get_ogr_addresses_sqlite_queryables( + f="json", + lang="en-US" +) + +print(result) +``` + +## get_ogr_addresses_sqlite_schema + +Dutch addresses subset. + +- HTTP Method: `GET` +- Endpoint: `/collections/ogr_addresses_sqlite/schema` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Queryables` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.ogr_addresses_sqlite.get_ogr_addresses_sqlite_schema( + f="json", + lang="en-US" +) + +print(result) +``` + + diff --git a/documentation/services/OgrGeojsonLakesService.md b/documentation/services/OgrGeojsonLakesService.md new file mode 100644 index 0000000..8634897 --- /dev/null +++ b/documentation/services/OgrGeojsonLakesService.md @@ -0,0 +1,296 @@ +# OgrGeojsonLakesService + +A list of all methods in the `OgrGeojsonLakesService` service. Click on the method name to view detailed information about that method. + +| Methods | Description | +| :------------------------------------------------------------------------------ | :-------------------------------- | +| [describe_ogr_geojson_lakes_collection](#describe_ogr_geojson_lakes_collection) | lakes of the world, public domain | +| [get_ogr_geojson_lakes_features](#get_ogr_geojson_lakes_features) | lakes of the world, public domain | +| [options_ogr_geojson_lakes_features](#options_ogr_geojson_lakes_features) | lakes of the world, public domain | +| [get_ogr_geojson_lakes_feature](#get_ogr_geojson_lakes_feature) | lakes of the world, public domain | +| [options_ogr_geojson_lakes_feature](#options_ogr_geojson_lakes_feature) | lakes of the world, public domain | +| [get_ogr_geojson_lakes_queryables](#get_ogr_geojson_lakes_queryables) | lakes of the world, public domain | +| [get_ogr_geojson_lakes_schema](#get_ogr_geojson_lakes_schema) | lakes of the world, public domain | + +## describe_ogr_geojson_lakes_collection + +lakes of the world, public domain + +- HTTP Method: `GET` +- Endpoint: `/collections/ogr_geojson_lakes` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Collection` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.ogr_geojson_lakes.describe_ogr_geojson_lakes_collection( + f="json", + lang="en-US" +) + +print(result) +``` + +## get_ogr_geojson_lakes_features + +lakes of the world, public domain + +- HTTP Method: `GET` +- Endpoint: `/collections/ogr_geojson_lakes/items` + +**Parameters** + +| Name | Type | Required | Description | +| :------------------------- | :---------------------------------------------------------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | +| bbox | List[float] | ❌ | Only features that have a geometry that intersects the bounding box are selected.The bounding box is provided as four or six numbers, depending on whether the coordinate reference system includes a vertical axis (height or depth). | +| limit | int | ❌ | The optional limit parameter limits the number of items that are presented in the response document. Only items are counted that are on the first level of the collection in the response document. Nested objects contained within the explicitly requested items shall not be counted. Minimum = 1. Maximum = 10000. Default = 10. | +| crs | str | ❌ | Indicates the coordinate reference system for the results. | +| bbox_crs | str | ❌ | Indicates the coordinate reference system for the given bbox coordinates. | +| properties | [List[GetOgrGeojsonLakesFeaturesProperties]](../models/GetOgrGeojsonLakesFeaturesProperties.md) | ❌ | The properties that should be included for each feature. The parameter value is a comma-separated list of property names. | +| vendor_specific_parameters | dict | ❌ | Additional "free-form" parameters that are not explicitly defined | +| skip_geometry | bool | ❌ | This option can be used to skip response geometries for each feature. | +| sortby | List[str] | ❌ | Specifies a comma-separated list of property names by which the response shall be sorted. If the property name is preceded by a plus (+) sign it indicates an ascending sort for that property. If the property name is preceded by a minus (-) sign it indicates a descending sort for that property. If the property is not preceded by a plus or minus, then the default sort order implied is ascending (+). | +| offset | int | ❌ | The optional offset parameter indicates the index within the result set from which the server shall begin presenting results in the response document. The first element has an index of 0 (default). | +| id\_ | int | ❌ | | +| scalerank | int | ❌ | | +| name | str | ❌ | | +| name_alt | str | ❌ | | +| admin | str | ❌ | | +| featureclass | str | ❌ | | + +**Return Type** + +`FeatureCollectionGeoJson` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang, dict + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) +bbox=[ + 0.11 +] +properties=[ + "id" +] +vendor_specific_parameters=dict( + {} +) +sortby=[ + "|T" +] + +result = sdk.ogr_geojson_lakes.get_ogr_geojson_lakes_features( + f="json", + lang="en-US", + bbox=bbox, + limit=10, + crs="crs", + bbox_crs="bbox-crs", + properties=properties, + vendor_specific_parameters=vendor_specific_parameters, + skip_geometry=True, + sortby=sortby, + offset=4, + id_=5, + scalerank=2, + name="name", + name_alt="name_alt", + admin="admin", + featureclass="featureclass" +) + +print(result) +``` + +## options_ogr_geojson_lakes_features + +lakes of the world, public domain + +- HTTP Method: `OPTIONS` +- Endpoint: `/collections/ogr_geojson_lakes/items` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.ogr_geojson_lakes.options_ogr_geojson_lakes_features() + +print(result) +``` + +## get_ogr_geojson_lakes_feature + +lakes of the world, public domain + +- HTTP Method: `GET` +- Endpoint: `/collections/ogr_geojson_lakes/items/{featureId}` + +**Parameters** + +| Name | Type | Required | Description | +| :--------- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| feature_id | str | ✅ | local identifier of a feature | +| crs | str | ❌ | Indicates the coordinate reference system for the results. | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`FeatureGeoJson` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.ogr_geojson_lakes.get_ogr_geojson_lakes_feature( + feature_id="featureId", + crs="crs", + f="json", + lang="en-US" +) + +print(result) +``` + +## options_ogr_geojson_lakes_feature + +lakes of the world, public domain + +- HTTP Method: `OPTIONS` +- Endpoint: `/collections/ogr_geojson_lakes/items/{featureId}` + +**Parameters** + +| Name | Type | Required | Description | +| :--------- | :--- | :------- | :---------------------------- | +| feature_id | str | ✅ | local identifier of a feature | + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.ogr_geojson_lakes.options_ogr_geojson_lakes_feature(feature_id="featureId") + +print(result) +``` + +## get_ogr_geojson_lakes_queryables + +lakes of the world, public domain + +- HTTP Method: `GET` +- Endpoint: `/collections/ogr_geojson_lakes/queryables` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Queryables` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.ogr_geojson_lakes.get_ogr_geojson_lakes_queryables( + f="json", + lang="en-US" +) + +print(result) +``` + +## get_ogr_geojson_lakes_schema + +lakes of the world, public domain + +- HTTP Method: `GET` +- Endpoint: `/collections/ogr_geojson_lakes/schema` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Queryables` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.ogr_geojson_lakes.get_ogr_geojson_lakes_schema( + f="json", + lang="en-US" +) + +print(result) +``` + + diff --git a/documentation/services/OgrGpkgPoiService.md b/documentation/services/OgrGpkgPoiService.md new file mode 100644 index 0000000..cab457d --- /dev/null +++ b/documentation/services/OgrGpkgPoiService.md @@ -0,0 +1,292 @@ +# OgrGpkgPoiService + +A list of all methods in the `OgrGpkgPoiService` service. Click on the method name to view detailed information about that method. + +| Methods | Description | +| :-------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------ | +| [describe_ogr_gpkg_poi_collection](#describe_ogr_gpkg_poi_collection) | Portuguese Points of Interest obtained from OpenStreetMap. Dataset includes Madeira and Azores islands. Uses GeoPackage backend via OGR provider. | +| [get_ogr_gpkg_poi_features](#get_ogr_gpkg_poi_features) | Portuguese Points of Interest obtained from OpenStreetMap. Dataset includes Madeira and Azores islands. Uses GeoPackage backend via OGR provider. | +| [options_ogr_gpkg_poi_features](#options_ogr_gpkg_poi_features) | Portuguese Points of Interest obtained from OpenStreetMap. Dataset includes Madeira and Azores islands. Uses GeoPackage backend via OGR provider. | +| [get_ogr_gpkg_poi_feature](#get_ogr_gpkg_poi_feature) | Portuguese Points of Interest obtained from OpenStreetMap. Dataset includes Madeira and Azores islands. Uses GeoPackage backend via OGR provider. | +| [options_ogr_gpkg_poi_feature](#options_ogr_gpkg_poi_feature) | Portuguese Points of Interest obtained from OpenStreetMap. Dataset includes Madeira and Azores islands. Uses GeoPackage backend via OGR provider. | +| [get_ogr_gpkg_poi_queryables](#get_ogr_gpkg_poi_queryables) | Portuguese Points of Interest obtained from OpenStreetMap. Dataset includes Madeira and Azores islands. Uses GeoPackage backend via OGR provider. | +| [get_ogr_gpkg_poi_schema](#get_ogr_gpkg_poi_schema) | Portuguese Points of Interest obtained from OpenStreetMap. Dataset includes Madeira and Azores islands. Uses GeoPackage backend via OGR provider. | + +## describe_ogr_gpkg_poi_collection + +Portuguese Points of Interest obtained from OpenStreetMap. Dataset includes Madeira and Azores islands. Uses GeoPackage backend via OGR provider. + +- HTTP Method: `GET` +- Endpoint: `/collections/ogr_gpkg_poi` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Collection` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.ogr_gpkg_poi.describe_ogr_gpkg_poi_collection( + f="json", + lang="en-US" +) + +print(result) +``` + +## get_ogr_gpkg_poi_features + +Portuguese Points of Interest obtained from OpenStreetMap. Dataset includes Madeira and Azores islands. Uses GeoPackage backend via OGR provider. + +- HTTP Method: `GET` +- Endpoint: `/collections/ogr_gpkg_poi/items` + +**Parameters** + +| Name | Type | Required | Description | +| :------------------------- | :------------------------------------------------------------------------------------ | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | +| bbox | List[float] | ❌ | Only features that have a geometry that intersects the bounding box are selected.The bounding box is provided as four or six numbers, depending on whether the coordinate reference system includes a vertical axis (height or depth). | +| limit | int | ❌ | The optional limit parameter limits the number of items that are presented in the response document. Only items are counted that are on the first level of the collection in the response document. Nested objects contained within the explicitly requested items shall not be counted. Minimum = 1. Maximum = 10000. Default = 10. | +| crs | str | ❌ | Indicates the coordinate reference system for the results. | +| bbox_crs | str | ❌ | Indicates the coordinate reference system for the given bbox coordinates. | +| properties | [List[GetOgrGpkgPoiFeaturesProperties]](../models/GetOgrGpkgPoiFeaturesProperties.md) | ❌ | The properties that should be included for each feature. The parameter value is a comma-separated list of property names. | +| vendor_specific_parameters | dict | ❌ | Additional "free-form" parameters that are not explicitly defined | +| skip_geometry | bool | ❌ | This option can be used to skip response geometries for each feature. | +| sortby | List[str] | ❌ | Specifies a comma-separated list of property names by which the response shall be sorted. If the property name is preceded by a plus (+) sign it indicates an ascending sort for that property. If the property name is preceded by a minus (-) sign it indicates a descending sort for that property. If the property is not preceded by a plus or minus, then the default sort order implied is ascending (+). | +| offset | int | ❌ | The optional offset parameter indicates the index within the result set from which the server shall begin presenting results in the response document. The first element has an index of 0 (default). | +| gid | int | ❌ | | +| osm_id | int | ❌ | | +| fclass | str | ❌ | | +| name | str | ❌ | | + +**Return Type** + +`FeatureCollectionGeoJson` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang, dict + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) +bbox=[ + 8.01 +] +properties=[ + "gid" +] +vendor_specific_parameters=dict( + {} +) +sortby=[ + "An/L`Ng" +] + +result = sdk.ogr_gpkg_poi.get_ogr_gpkg_poi_features( + f="json", + lang="en-US", + bbox=bbox, + limit=10, + crs="crs", + bbox_crs="bbox-crs", + properties=properties, + vendor_specific_parameters=vendor_specific_parameters, + skip_geometry=True, + sortby=sortby, + offset=6, + gid=3, + osm_id=5, + fclass="fclass", + name="name" +) + +print(result) +``` + +## options_ogr_gpkg_poi_features + +Portuguese Points of Interest obtained from OpenStreetMap. Dataset includes Madeira and Azores islands. Uses GeoPackage backend via OGR provider. + +- HTTP Method: `OPTIONS` +- Endpoint: `/collections/ogr_gpkg_poi/items` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.ogr_gpkg_poi.options_ogr_gpkg_poi_features() + +print(result) +``` + +## get_ogr_gpkg_poi_feature + +Portuguese Points of Interest obtained from OpenStreetMap. Dataset includes Madeira and Azores islands. Uses GeoPackage backend via OGR provider. + +- HTTP Method: `GET` +- Endpoint: `/collections/ogr_gpkg_poi/items/{featureId}` + +**Parameters** + +| Name | Type | Required | Description | +| :--------- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| feature_id | str | ✅ | local identifier of a feature | +| crs | str | ❌ | Indicates the coordinate reference system for the results. | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`FeatureGeoJson` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.ogr_gpkg_poi.get_ogr_gpkg_poi_feature( + feature_id="featureId", + crs="crs", + f="json", + lang="en-US" +) + +print(result) +``` + +## options_ogr_gpkg_poi_feature + +Portuguese Points of Interest obtained from OpenStreetMap. Dataset includes Madeira and Azores islands. Uses GeoPackage backend via OGR provider. + +- HTTP Method: `OPTIONS` +- Endpoint: `/collections/ogr_gpkg_poi/items/{featureId}` + +**Parameters** + +| Name | Type | Required | Description | +| :--------- | :--- | :------- | :---------------------------- | +| feature_id | str | ✅ | local identifier of a feature | + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.ogr_gpkg_poi.options_ogr_gpkg_poi_feature(feature_id="featureId") + +print(result) +``` + +## get_ogr_gpkg_poi_queryables + +Portuguese Points of Interest obtained from OpenStreetMap. Dataset includes Madeira and Azores islands. Uses GeoPackage backend via OGR provider. + +- HTTP Method: `GET` +- Endpoint: `/collections/ogr_gpkg_poi/queryables` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Queryables` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.ogr_gpkg_poi.get_ogr_gpkg_poi_queryables( + f="json", + lang="en-US" +) + +print(result) +``` + +## get_ogr_gpkg_poi_schema + +Portuguese Points of Interest obtained from OpenStreetMap. Dataset includes Madeira and Azores islands. Uses GeoPackage backend via OGR provider. + +- HTTP Method: `GET` +- Endpoint: `/collections/ogr_gpkg_poi/schema` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Queryables` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.ogr_gpkg_poi.get_ogr_gpkg_poi_schema( + f="json", + lang="en-US" +) + +print(result) +``` + + diff --git a/documentation/services/OgrGpkgWalesRailwayLinesService.md b/documentation/services/OgrGpkgWalesRailwayLinesService.md new file mode 100644 index 0000000..72623a7 --- /dev/null +++ b/documentation/services/OgrGpkgWalesRailwayLinesService.md @@ -0,0 +1,288 @@ +# OgrGpkgWalesRailwayLinesService + +A list of all methods in the `OgrGpkgWalesRailwayLinesService` service. Click on the method name to view detailed information about that method. + +| Methods | Description | +| :---------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------ | +| [describe_ogr_gpkg_wales_railway_lines_collection](#describe_ogr_gpkg_wales_railway_lines_collection) | Railway lines in Wales (UK) from Ordnance Survey. Uses GeoPackage backend via OGR provider. | +| [get_ogr_gpkg_wales_railway_lines_features](#get_ogr_gpkg_wales_railway_lines_features) | Railway lines in Wales (UK) from Ordnance Survey. Uses GeoPackage backend via OGR provider. | +| [options_ogr_gpkg_wales_railway_lines_features](#options_ogr_gpkg_wales_railway_lines_features) | Railway lines in Wales (UK) from Ordnance Survey. Uses GeoPackage backend via OGR provider. | +| [get_ogr_gpkg_wales_railway_lines_feature](#get_ogr_gpkg_wales_railway_lines_feature) | Railway lines in Wales (UK) from Ordnance Survey. Uses GeoPackage backend via OGR provider. | +| [options_ogr_gpkg_wales_railway_lines_feature](#options_ogr_gpkg_wales_railway_lines_feature) | Railway lines in Wales (UK) from Ordnance Survey. Uses GeoPackage backend via OGR provider. | +| [get_ogr_gpkg_wales_railway_lines_queryables](#get_ogr_gpkg_wales_railway_lines_queryables) | Railway lines in Wales (UK) from Ordnance Survey. Uses GeoPackage backend via OGR provider. | +| [get_ogr_gpkg_wales_railway_lines_schema](#get_ogr_gpkg_wales_railway_lines_schema) | Railway lines in Wales (UK) from Ordnance Survey. Uses GeoPackage backend via OGR provider. | + +## describe_ogr_gpkg_wales_railway_lines_collection + +Railway lines in Wales (UK) from Ordnance Survey. Uses GeoPackage backend via OGR provider. + +- HTTP Method: `GET` +- Endpoint: `/collections/ogr_gpkg_wales_railway_lines` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Collection` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.ogr_gpkg_wales_railway_lines.describe_ogr_gpkg_wales_railway_lines_collection( + f="json", + lang="en-US" +) + +print(result) +``` + +## get_ogr_gpkg_wales_railway_lines_features + +Railway lines in Wales (UK) from Ordnance Survey. Uses GeoPackage backend via OGR provider. + +- HTTP Method: `GET` +- Endpoint: `/collections/ogr_gpkg_wales_railway_lines/items` + +**Parameters** + +| Name | Type | Required | Description | +| :------------------------- | :---------------------------------------------------------------------------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | +| bbox | List[float] | ❌ | Only features that have a geometry that intersects the bounding box are selected.The bounding box is provided as four or six numbers, depending on whether the coordinate reference system includes a vertical axis (height or depth). | +| limit | int | ❌ | The optional limit parameter limits the number of items that are presented in the response document. Only items are counted that are on the first level of the collection in the response document. Nested objects contained within the explicitly requested items shall not be counted. Minimum = 1. Maximum = 10000. Default = 10. | +| crs | str | ❌ | Indicates the coordinate reference system for the results. | +| bbox_crs | str | ❌ | Indicates the coordinate reference system for the given bbox coordinates. | +| properties | [List[GetOgrGpkgWalesRailwayLinesFeaturesProperties]](../models/GetOgrGpkgWalesRailwayLinesFeaturesProperties.md) | ❌ | The properties that should be included for each feature. The parameter value is a comma-separated list of property names. | +| vendor_specific_parameters | dict | ❌ | Additional "free-form" parameters that are not explicitly defined | +| skip_geometry | bool | ❌ | This option can be used to skip response geometries for each feature. | +| sortby | List[str] | ❌ | Specifies a comma-separated list of property names by which the response shall be sorted. If the property name is preceded by a plus (+) sign it indicates an ascending sort for that property. If the property name is preceded by a minus (-) sign it indicates a descending sort for that property. If the property is not preceded by a plus or minus, then the default sort order implied is ascending (+). | +| offset | int | ❌ | The optional offset parameter indicates the index within the result set from which the server shall begin presenting results in the response document. The first element has an index of 0 (default). | +| id\_ | int | ❌ | | +| type\_ | str | ❌ | | + +**Return Type** + +`FeatureCollectionGeoJson` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang, dict + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) +bbox=[ + 3.41 +] +properties=[ + "id" +] +vendor_specific_parameters=dict( + {} +) +sortby=[ + "Si4qyQjom7=" +] + +result = sdk.ogr_gpkg_wales_railway_lines.get_ogr_gpkg_wales_railway_lines_features( + f="json", + lang="en-US", + bbox=bbox, + limit=10, + crs="crs", + bbox_crs="bbox-crs", + properties=properties, + vendor_specific_parameters=vendor_specific_parameters, + skip_geometry=False, + sortby=sortby, + offset=7, + id_=1, + type_="type" +) + +print(result) +``` + +## options_ogr_gpkg_wales_railway_lines_features + +Railway lines in Wales (UK) from Ordnance Survey. Uses GeoPackage backend via OGR provider. + +- HTTP Method: `OPTIONS` +- Endpoint: `/collections/ogr_gpkg_wales_railway_lines/items` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.ogr_gpkg_wales_railway_lines.options_ogr_gpkg_wales_railway_lines_features() + +print(result) +``` + +## get_ogr_gpkg_wales_railway_lines_feature + +Railway lines in Wales (UK) from Ordnance Survey. Uses GeoPackage backend via OGR provider. + +- HTTP Method: `GET` +- Endpoint: `/collections/ogr_gpkg_wales_railway_lines/items/{featureId}` + +**Parameters** + +| Name | Type | Required | Description | +| :--------- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| feature_id | str | ✅ | local identifier of a feature | +| crs | str | ❌ | Indicates the coordinate reference system for the results. | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`FeatureGeoJson` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.ogr_gpkg_wales_railway_lines.get_ogr_gpkg_wales_railway_lines_feature( + feature_id="featureId", + crs="crs", + f="json", + lang="en-US" +) + +print(result) +``` + +## options_ogr_gpkg_wales_railway_lines_feature + +Railway lines in Wales (UK) from Ordnance Survey. Uses GeoPackage backend via OGR provider. + +- HTTP Method: `OPTIONS` +- Endpoint: `/collections/ogr_gpkg_wales_railway_lines/items/{featureId}` + +**Parameters** + +| Name | Type | Required | Description | +| :--------- | :--- | :------- | :---------------------------- | +| feature_id | str | ✅ | local identifier of a feature | + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.ogr_gpkg_wales_railway_lines.options_ogr_gpkg_wales_railway_lines_feature(feature_id="featureId") + +print(result) +``` + +## get_ogr_gpkg_wales_railway_lines_queryables + +Railway lines in Wales (UK) from Ordnance Survey. Uses GeoPackage backend via OGR provider. + +- HTTP Method: `GET` +- Endpoint: `/collections/ogr_gpkg_wales_railway_lines/queryables` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Queryables` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.ogr_gpkg_wales_railway_lines.get_ogr_gpkg_wales_railway_lines_queryables( + f="json", + lang="en-US" +) + +print(result) +``` + +## get_ogr_gpkg_wales_railway_lines_schema + +Railway lines in Wales (UK) from Ordnance Survey. Uses GeoPackage backend via OGR provider. + +- HTTP Method: `GET` +- Endpoint: `/collections/ogr_gpkg_wales_railway_lines/schema` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Queryables` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.ogr_gpkg_wales_railway_lines.get_ogr_gpkg_wales_railway_lines_schema( + f="json", + lang="en-US" +) + +print(result) +``` + + diff --git a/documentation/services/OgrGpkgWalesStationsService.md b/documentation/services/OgrGpkgWalesStationsService.md new file mode 100644 index 0000000..8787044 --- /dev/null +++ b/documentation/services/OgrGpkgWalesStationsService.md @@ -0,0 +1,290 @@ +# OgrGpkgWalesStationsService + +A list of all methods in the `OgrGpkgWalesStationsService` service. Click on the method name to view detailed information about that method. + +| Methods | Description | +| :------------------------------------------------------------------------------------------ | :--------------------------------------------------------------------------------------------- | +| [describe_ogr_gpkg_wales_stations_collection](#describe_ogr_gpkg_wales_stations_collection) | Railway stations in Wales (UK) from Ordnance Survey. Uses GeoPackage backend via OGR provider. | +| [get_ogr_gpkg_wales_stations_features](#get_ogr_gpkg_wales_stations_features) | Railway stations in Wales (UK) from Ordnance Survey. Uses GeoPackage backend via OGR provider. | +| [options_ogr_gpkg_wales_stations_features](#options_ogr_gpkg_wales_stations_features) | Railway stations in Wales (UK) from Ordnance Survey. Uses GeoPackage backend via OGR provider. | +| [get_ogr_gpkg_wales_stations_feature](#get_ogr_gpkg_wales_stations_feature) | Railway stations in Wales (UK) from Ordnance Survey. Uses GeoPackage backend via OGR provider. | +| [options_ogr_gpkg_wales_stations_feature](#options_ogr_gpkg_wales_stations_feature) | Railway stations in Wales (UK) from Ordnance Survey. Uses GeoPackage backend via OGR provider. | +| [get_ogr_gpkg_wales_stations_queryables](#get_ogr_gpkg_wales_stations_queryables) | Railway stations in Wales (UK) from Ordnance Survey. Uses GeoPackage backend via OGR provider. | +| [get_ogr_gpkg_wales_stations_schema](#get_ogr_gpkg_wales_stations_schema) | Railway stations in Wales (UK) from Ordnance Survey. Uses GeoPackage backend via OGR provider. | + +## describe_ogr_gpkg_wales_stations_collection + +Railway stations in Wales (UK) from Ordnance Survey. Uses GeoPackage backend via OGR provider. + +- HTTP Method: `GET` +- Endpoint: `/collections/ogr_gpkg_wales_stations` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Collection` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.ogr_gpkg_wales_stations.describe_ogr_gpkg_wales_stations_collection( + f="json", + lang="en-US" +) + +print(result) +``` + +## get_ogr_gpkg_wales_stations_features + +Railway stations in Wales (UK) from Ordnance Survey. Uses GeoPackage backend via OGR provider. + +- HTTP Method: `GET` +- Endpoint: `/collections/ogr_gpkg_wales_stations/items` + +**Parameters** + +| Name | Type | Required | Description | +| :------------------------- | :-------------------------------------------------------------------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | +| bbox | List[float] | ❌ | Only features that have a geometry that intersects the bounding box are selected.The bounding box is provided as four or six numbers, depending on whether the coordinate reference system includes a vertical axis (height or depth). | +| limit | int | ❌ | The optional limit parameter limits the number of items that are presented in the response document. Only items are counted that are on the first level of the collection in the response document. Nested objects contained within the explicitly requested items shall not be counted. Minimum = 1. Maximum = 10000. Default = 10. | +| crs | str | ❌ | Indicates the coordinate reference system for the results. | +| bbox_crs | str | ❌ | Indicates the coordinate reference system for the given bbox coordinates. | +| properties | [List[GetOgrGpkgWalesStationsFeaturesProperties]](../models/GetOgrGpkgWalesStationsFeaturesProperties.md) | ❌ | The properties that should be included for each feature. The parameter value is a comma-separated list of property names. | +| vendor_specific_parameters | dict | ❌ | Additional "free-form" parameters that are not explicitly defined | +| skip_geometry | bool | ❌ | This option can be used to skip response geometries for each feature. | +| sortby | List[str] | ❌ | Specifies a comma-separated list of property names by which the response shall be sorted. If the property name is preceded by a plus (+) sign it indicates an ascending sort for that property. If the property name is preceded by a minus (-) sign it indicates a descending sort for that property. If the property is not preceded by a plus or minus, then the default sort order implied is ascending (+). | +| offset | int | ❌ | The optional offset parameter indicates the index within the result set from which the server shall begin presenting results in the response document. The first element has an index of 0 (default). | +| id\_ | int | ❌ | | +| type\_ | str | ❌ | | +| name | str | ❌ | | + +**Return Type** + +`FeatureCollectionGeoJson` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang, dict + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) +bbox=[ + 4.09 +] +properties=[ + "id" +] +vendor_specific_parameters=dict( + {} +) +sortby=[ + "tz/SST" +] + +result = sdk.ogr_gpkg_wales_stations.get_ogr_gpkg_wales_stations_features( + f="json", + lang="en-US", + bbox=bbox, + limit=10, + crs="crs", + bbox_crs="bbox-crs", + properties=properties, + vendor_specific_parameters=vendor_specific_parameters, + skip_geometry=True, + sortby=sortby, + offset=4, + id_=2, + type_="type", + name="name" +) + +print(result) +``` + +## options_ogr_gpkg_wales_stations_features + +Railway stations in Wales (UK) from Ordnance Survey. Uses GeoPackage backend via OGR provider. + +- HTTP Method: `OPTIONS` +- Endpoint: `/collections/ogr_gpkg_wales_stations/items` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.ogr_gpkg_wales_stations.options_ogr_gpkg_wales_stations_features() + +print(result) +``` + +## get_ogr_gpkg_wales_stations_feature + +Railway stations in Wales (UK) from Ordnance Survey. Uses GeoPackage backend via OGR provider. + +- HTTP Method: `GET` +- Endpoint: `/collections/ogr_gpkg_wales_stations/items/{featureId}` + +**Parameters** + +| Name | Type | Required | Description | +| :--------- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| feature_id | str | ✅ | local identifier of a feature | +| crs | str | ❌ | Indicates the coordinate reference system for the results. | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`FeatureGeoJson` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.ogr_gpkg_wales_stations.get_ogr_gpkg_wales_stations_feature( + feature_id="featureId", + crs="crs", + f="json", + lang="en-US" +) + +print(result) +``` + +## options_ogr_gpkg_wales_stations_feature + +Railway stations in Wales (UK) from Ordnance Survey. Uses GeoPackage backend via OGR provider. + +- HTTP Method: `OPTIONS` +- Endpoint: `/collections/ogr_gpkg_wales_stations/items/{featureId}` + +**Parameters** + +| Name | Type | Required | Description | +| :--------- | :--- | :------- | :---------------------------- | +| feature_id | str | ✅ | local identifier of a feature | + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.ogr_gpkg_wales_stations.options_ogr_gpkg_wales_stations_feature(feature_id="featureId") + +print(result) +``` + +## get_ogr_gpkg_wales_stations_queryables + +Railway stations in Wales (UK) from Ordnance Survey. Uses GeoPackage backend via OGR provider. + +- HTTP Method: `GET` +- Endpoint: `/collections/ogr_gpkg_wales_stations/queryables` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Queryables` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.ogr_gpkg_wales_stations.get_ogr_gpkg_wales_stations_queryables( + f="json", + lang="en-US" +) + +print(result) +``` + +## get_ogr_gpkg_wales_stations_schema + +Railway stations in Wales (UK) from Ordnance Survey. Uses GeoPackage backend via OGR provider. + +- HTTP Method: `GET` +- Endpoint: `/collections/ogr_gpkg_wales_stations/schema` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Queryables` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.ogr_gpkg_wales_stations.get_ogr_gpkg_wales_stations_schema( + f="json", + lang="en-US" +) + +print(result) +``` + + diff --git a/documentation/services/ServerService.md b/documentation/services/ServerService.md new file mode 100644 index 0000000..1a5b5c5 --- /dev/null +++ b/documentation/services/ServerService.md @@ -0,0 +1,192 @@ +# ServerService + +A list of all methods in the `ServerService` service. Click on the method name to view detailed information about that method. + +| Methods | Description | +| :---------------------------------------------------------- | :------------------------- | +| [get_landing_page](#get_landing_page) | Landing page | +| [get_collections](#get_collections) | Collections | +| [get_conformance_declaration](#get_conformance_declaration) | API conformance definition | +| [get_openapi](#get_openapi) | This document | +| [get_processes](#get_processes) | Processes | + +## get_landing_page + +Landing page + +- HTTP Method: `GET` +- Endpoint: `/` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`LandingPage` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.server.get_landing_page( + f="json", + lang="en-US" +) + +print(result) +``` + +## get_collections + +Collections + +- HTTP Method: `GET` +- Endpoint: `/collections` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`LandingPage` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.server.get_collections( + f="json", + lang="en-US" +) + +print(result) +``` + +## get_conformance_declaration + +API conformance definition + +- HTTP Method: `GET` +- Endpoint: `/conformance` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`LandingPage` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.server.get_conformance_declaration( + f="json", + lang="en-US" +) + +print(result) +``` + +## get_openapi + +This document + +- HTTP Method: `GET` +- Endpoint: `/openapi` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | +| ui | [Ui](../models/Ui.md) | ❌ | UI to render the OpenAPI document | + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang, Ui + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.server.get_openapi( + f="json", + lang="en-US", + ui="swagger" +) + +print(result) +``` + +## get_processes + +Processes + +- HTTP Method: `GET` +- Endpoint: `/processes` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | + +**Return Type** + +`ProcessList` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.server.get_processes(f="json") + +print(result) +``` + + diff --git a/documentation/services/StacService.md b/documentation/services/StacService.md new file mode 100644 index 0000000..0621eeb --- /dev/null +++ b/documentation/services/StacService.md @@ -0,0 +1,31 @@ +# StacService + +A list of all methods in the `StacService` service. Click on the method name to view detailed information about that method. + +| Methods | Description | +| :------------------------------------ | :--------------------------- | +| [get_stac_catalog](#get_stac_catalog) | SpatioTemporal Asset Catalog | + +## get_stac_catalog + +SpatioTemporal Asset Catalog + +- HTTP Method: `GET` +- Endpoint: `/stac` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.stac.get_stac_catalog() + +print(result) +``` + + diff --git a/documentation/services/UnescoPoisItalyService.md b/documentation/services/UnescoPoisItalyService.md new file mode 100644 index 0000000..126394e --- /dev/null +++ b/documentation/services/UnescoPoisItalyService.md @@ -0,0 +1,298 @@ +# UnescoPoisItalyService + +A list of all methods in the `UnescoPoisItalyService` service. Click on the method name to view detailed information about that method. + +| Methods | Description | +| :------------------------------------------------------------------------------ | :----------------------------------------------------------------------------------------------- | +| [describe_unesco_pois_italy_collection](#describe_unesco_pois_italy_collection) | Unesco Points of Interest in Italy. Using GeoSolutions GeoServer WFS demo-server as backend WFS. | +| [get_unesco_pois_italy_features](#get_unesco_pois_italy_features) | Unesco Points of Interest in Italy. Using GeoSolutions GeoServer WFS demo-server as backend WFS. | +| [options_unesco_pois_italy_features](#options_unesco_pois_italy_features) | Unesco Points of Interest in Italy. Using GeoSolutions GeoServer WFS demo-server as backend WFS. | +| [get_unesco_pois_italy_feature](#get_unesco_pois_italy_feature) | Unesco Points of Interest in Italy. Using GeoSolutions GeoServer WFS demo-server as backend WFS. | +| [options_unesco_pois_italy_feature](#options_unesco_pois_italy_feature) | Unesco Points of Interest in Italy. Using GeoSolutions GeoServer WFS demo-server as backend WFS. | +| [get_unesco_pois_italy_queryables](#get_unesco_pois_italy_queryables) | Unesco Points of Interest in Italy. Using GeoSolutions GeoServer WFS demo-server as backend WFS. | +| [get_unesco_pois_italy_schema](#get_unesco_pois_italy_schema) | Unesco Points of Interest in Italy. Using GeoSolutions GeoServer WFS demo-server as backend WFS. | + +## describe_unesco_pois_italy_collection + +Unesco Points of Interest in Italy. Using GeoSolutions GeoServer WFS demo-server as backend WFS. + +- HTTP Method: `GET` +- Endpoint: `/collections/unesco_pois_italy` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Collection` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.unesco_pois_italy.describe_unesco_pois_italy_collection( + f="json", + lang="en-US" +) + +print(result) +``` + +## get_unesco_pois_italy_features + +Unesco Points of Interest in Italy. Using GeoSolutions GeoServer WFS demo-server as backend WFS. + +- HTTP Method: `GET` +- Endpoint: `/collections/unesco_pois_italy/items` + +**Parameters** + +| Name | Type | Required | Description | +| :------------------------- | :---------------------------------------------------------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | +| bbox | List[float] | ❌ | Only features that have a geometry that intersects the bounding box are selected.The bounding box is provided as four or six numbers, depending on whether the coordinate reference system includes a vertical axis (height or depth). | +| limit | int | ❌ | The optional limit parameter limits the number of items that are presented in the response document. Only items are counted that are on the first level of the collection in the response document. Nested objects contained within the explicitly requested items shall not be counted. Minimum = 1. Maximum = 10000. Default = 10. | +| crs | str | ❌ | Indicates the coordinate reference system for the results. | +| bbox_crs | str | ❌ | Indicates the coordinate reference system for the given bbox coordinates. | +| properties | [List[GetUnescoPoisItalyFeaturesProperties]](../models/GetUnescoPoisItalyFeaturesProperties.md) | ❌ | The properties that should be included for each feature. The parameter value is a comma-separated list of property names. | +| vendor_specific_parameters | dict | ❌ | Additional "free-form" parameters that are not explicitly defined | +| skip_geometry | bool | ❌ | This option can be used to skip response geometries for each feature. | +| sortby | List[str] | ❌ | Specifies a comma-separated list of property names by which the response shall be sorted. If the property name is preceded by a plus (+) sign it indicates an ascending sort for that property. If the property name is preceded by a minus (-) sign it indicates a descending sort for that property. If the property is not preceded by a plus or minus, then the default sort order implied is ascending (+). | +| offset | int | ❌ | The optional offset parameter indicates the index within the result set from which the server shall begin presenting results in the response document. The first element has an index of 0 (default). | +| gml_id | str | ❌ | | +| cod_unesco | str | ❌ | | +| sito | str | ❌ | | +| seriale | int | ❌ | | +| cod_compon | str | ❌ | | +| componente | str | ❌ | | +| tipo_area | str | ❌ | | + +**Return Type** + +`FeatureCollectionGeoJson` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang, dict + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) +bbox=[ + 2.01 +] +properties=[ + "gml_id" +] +vendor_specific_parameters=dict( + {} +) +sortby=[ + "JJAJf" +] + +result = sdk.unesco_pois_italy.get_unesco_pois_italy_features( + f="json", + lang="en-US", + bbox=bbox, + limit=10, + crs="crs", + bbox_crs="bbox-crs", + properties=properties, + vendor_specific_parameters=vendor_specific_parameters, + skip_geometry=True, + sortby=sortby, + offset=4, + gml_id="gml_id", + cod_unesco="cod_unesco", + sito="sito", + seriale=7, + cod_compon="cod_compon", + componente="componente", + tipo_area="tipo_area" +) + +print(result) +``` + +## options_unesco_pois_italy_features + +Unesco Points of Interest in Italy. Using GeoSolutions GeoServer WFS demo-server as backend WFS. + +- HTTP Method: `OPTIONS` +- Endpoint: `/collections/unesco_pois_italy/items` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.unesco_pois_italy.options_unesco_pois_italy_features() + +print(result) +``` + +## get_unesco_pois_italy_feature + +Unesco Points of Interest in Italy. Using GeoSolutions GeoServer WFS demo-server as backend WFS. + +- HTTP Method: `GET` +- Endpoint: `/collections/unesco_pois_italy/items/{featureId}` + +**Parameters** + +| Name | Type | Required | Description | +| :--------- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| feature_id | str | ✅ | local identifier of a feature | +| crs | str | ❌ | Indicates the coordinate reference system for the results. | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`FeatureGeoJson` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.unesco_pois_italy.get_unesco_pois_italy_feature( + feature_id="featureId", + crs="crs", + f="json", + lang="en-US" +) + +print(result) +``` + +## options_unesco_pois_italy_feature + +Unesco Points of Interest in Italy. Using GeoSolutions GeoServer WFS demo-server as backend WFS. + +- HTTP Method: `OPTIONS` +- Endpoint: `/collections/unesco_pois_italy/items/{featureId}` + +**Parameters** + +| Name | Type | Required | Description | +| :--------- | :--- | :------- | :---------------------------- | +| feature_id | str | ✅ | local identifier of a feature | + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.unesco_pois_italy.options_unesco_pois_italy_feature(feature_id="featureId") + +print(result) +``` + +## get_unesco_pois_italy_queryables + +Unesco Points of Interest in Italy. Using GeoSolutions GeoServer WFS demo-server as backend WFS. + +- HTTP Method: `GET` +- Endpoint: `/collections/unesco_pois_italy/queryables` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Queryables` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.unesco_pois_italy.get_unesco_pois_italy_queryables( + f="json", + lang="en-US" +) + +print(result) +``` + +## get_unesco_pois_italy_schema + +Unesco Points of Interest in Italy. Using GeoSolutions GeoServer WFS demo-server as backend WFS. + +- HTTP Method: `GET` +- Endpoint: `/collections/unesco_pois_italy/schema` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Queryables` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.unesco_pois_italy.get_unesco_pois_italy_schema( + f="json", + lang="en-US" +) + +print(result) +``` + + diff --git a/documentation/services/UtahCityLocationsService.md b/documentation/services/UtahCityLocationsService.md new file mode 100644 index 0000000..5421790 --- /dev/null +++ b/documentation/services/UtahCityLocationsService.md @@ -0,0 +1,300 @@ +# UtahCityLocationsService + +A list of all methods in the `UtahCityLocationsService` service. Click on the method name to view detailed information about that method. + +| Methods | Description | +| :---------------------------------------------------------------------------------- | :---------------------------------------------------------------------------------------------------------- | +| [describe_utah_city_locations_collection](#describe_utah_city_locations_collection) | Data from the state of Utah. Standard demo dataset from the deegree WFS server that is used as backend WFS. | +| [get_utah_city_locations_features](#get_utah_city_locations_features) | Data from the state of Utah. Standard demo dataset from the deegree WFS server that is used as backend WFS. | +| [options_utah_city_locations_features](#options_utah_city_locations_features) | Data from the state of Utah. Standard demo dataset from the deegree WFS server that is used as backend WFS. | +| [get_utah_city_locations_feature](#get_utah_city_locations_feature) | Data from the state of Utah. Standard demo dataset from the deegree WFS server that is used as backend WFS. | +| [options_utah_city_locations_feature](#options_utah_city_locations_feature) | Data from the state of Utah. Standard demo dataset from the deegree WFS server that is used as backend WFS. | +| [get_utah_city_locations_queryables](#get_utah_city_locations_queryables) | Data from the state of Utah. Standard demo dataset from the deegree WFS server that is used as backend WFS. | +| [get_utah_city_locations_schema](#get_utah_city_locations_schema) | Data from the state of Utah. Standard demo dataset from the deegree WFS server that is used as backend WFS. | + +## describe_utah_city_locations_collection + +Data from the state of Utah. Standard demo dataset from the deegree WFS server that is used as backend WFS. + +- HTTP Method: `GET` +- Endpoint: `/collections/utah_city_locations` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Collection` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.utah_city_locations.describe_utah_city_locations_collection( + f="json", + lang="en-US" +) + +print(result) +``` + +## get_utah_city_locations_features + +Data from the state of Utah. Standard demo dataset from the deegree WFS server that is used as backend WFS. + +- HTTP Method: `GET` +- Endpoint: `/collections/utah_city_locations/items` + +**Parameters** + +| Name | Type | Required | Description | +| :------------------------- | :-------------------------------------------------------------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | +| bbox | List[float] | ❌ | Only features that have a geometry that intersects the bounding box are selected.The bounding box is provided as four or six numbers, depending on whether the coordinate reference system includes a vertical axis (height or depth). | +| limit | int | ❌ | The optional limit parameter limits the number of items that are presented in the response document. Only items are counted that are on the first level of the collection in the response document. Nested objects contained within the explicitly requested items shall not be counted. Minimum = 1. Maximum = 10000. Default = 10. | +| crs | str | ❌ | Indicates the coordinate reference system for the results. | +| bbox_crs | str | ❌ | Indicates the coordinate reference system for the given bbox coordinates. | +| properties | [List[GetUtahCityLocationsFeaturesProperties]](../models/GetUtahCityLocationsFeaturesProperties.md) | ❌ | The properties that should be included for each feature. The parameter value is a comma-separated list of property names. | +| vendor_specific_parameters | dict | ❌ | Additional "free-form" parameters that are not explicitly defined | +| skip_geometry | bool | ❌ | This option can be used to skip response geometries for each feature. | +| sortby | List[str] | ❌ | Specifies a comma-separated list of property names by which the response shall be sorted. If the property name is preceded by a plus (+) sign it indicates an ascending sort for that property. If the property name is preceded by a minus (-) sign it indicates a descending sort for that property. If the property is not preceded by a plus or minus, then the default sort order implied is ascending (+). | +| offset | int | ❌ | The optional offset parameter indicates the index within the result set from which the server shall begin presenting results in the response document. The first element has an index of 0 (default). | +| gml_id | str | ❌ | | +| name | str | ❌ | | +| co_seat | str | ❌ | | +| pop_1999 | float | ❌ | | +| pop_sym_99 | float | ❌ | | +| pop_2000 | float | ❌ | | +| pop_sym_00 | float | ❌ | | +| state | str | ❌ | | + +**Return Type** + +`FeatureCollectionGeoJson` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang, dict + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) +bbox=[ + 6.33 +] +properties=[ + "gml_id" +] +vendor_specific_parameters=dict( + {} +) +sortby=[ + "q=\\>37Ai(" +] + +result = sdk.utah_city_locations.get_utah_city_locations_features( + f="json", + lang="en-US", + bbox=bbox, + limit=10, + crs="crs", + bbox_crs="bbox-crs", + properties=properties, + vendor_specific_parameters=vendor_specific_parameters, + skip_geometry=True, + sortby=sortby, + offset=2, + gml_id="gml_id", + name="NAME", + co_seat="CO_SEAT", + pop_1999=9.19, + pop_sym_99=1.7, + pop_2000=8.36, + pop_sym_00=4.64, + state="STATE" +) + +print(result) +``` + +## options_utah_city_locations_features + +Data from the state of Utah. Standard demo dataset from the deegree WFS server that is used as backend WFS. + +- HTTP Method: `OPTIONS` +- Endpoint: `/collections/utah_city_locations/items` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.utah_city_locations.options_utah_city_locations_features() + +print(result) +``` + +## get_utah_city_locations_feature + +Data from the state of Utah. Standard demo dataset from the deegree WFS server that is used as backend WFS. + +- HTTP Method: `GET` +- Endpoint: `/collections/utah_city_locations/items/{featureId}` + +**Parameters** + +| Name | Type | Required | Description | +| :--------- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| feature_id | str | ✅ | local identifier of a feature | +| crs | str | ❌ | Indicates the coordinate reference system for the results. | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`FeatureGeoJson` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.utah_city_locations.get_utah_city_locations_feature( + feature_id="featureId", + crs="crs", + f="json", + lang="en-US" +) + +print(result) +``` + +## options_utah_city_locations_feature + +Data from the state of Utah. Standard demo dataset from the deegree WFS server that is used as backend WFS. + +- HTTP Method: `OPTIONS` +- Endpoint: `/collections/utah_city_locations/items/{featureId}` + +**Parameters** + +| Name | Type | Required | Description | +| :--------- | :--- | :------- | :---------------------------- | +| feature_id | str | ✅ | local identifier of a feature | + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.utah_city_locations.options_utah_city_locations_feature(feature_id="featureId") + +print(result) +``` + +## get_utah_city_locations_queryables + +Data from the state of Utah. Standard demo dataset from the deegree WFS server that is used as backend WFS. + +- HTTP Method: `GET` +- Endpoint: `/collections/utah_city_locations/queryables` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Queryables` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.utah_city_locations.get_utah_city_locations_queryables( + f="json", + lang="en-US" +) + +print(result) +``` + +## get_utah_city_locations_schema + +Data from the state of Utah. Standard demo dataset from the deegree WFS server that is used as backend WFS. + +- HTTP Method: `GET` +- Endpoint: `/collections/utah_city_locations/schema` + +**Parameters** + +| Name | Type | Required | Description | +| :--- | :---------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| f | [GetLandingPageF](../models/GetLandingPageF.md) | ❌ | The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON. | +| lang | [Lang](../models/Lang.md) | ❌ | The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion. | + +**Return Type** + +`Queryables` + +**Example Usage Code Snippet** + +```python +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk( + base_url=Environment.DEFAULT.value, + timeout=10000 +) + +result = sdk.utah_city_locations.get_utah_city_locations_schema( + f="json", + lang="en-US" +) + +print(result) +``` + + diff --git a/examples/.env.example b/examples/.env.example new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/examples/.env.example @@ -0,0 +1 @@ + diff --git a/examples/install.cmd b/examples/install.cmd new file mode 100644 index 0000000..d688cac --- /dev/null +++ b/examples/install.cmd @@ -0,0 +1,5 @@ +python -m venv .venv +call .venv\Scripts\activate +pip install build +python -m build --outdir dist ..\ +pip install dist\geobeyond-1.0.0-py3-none-any.whl --force-reinstall diff --git a/examples/install.sh b/examples/install.sh new file mode 100644 index 0000000..bdcd084 --- /dev/null +++ b/examples/install.sh @@ -0,0 +1,5 @@ +python -m venv .venv +. .venv/bin/activate +pip install build +python -m build --outdir dist ../ +pip install dist/geobeyond-1.0.0-py3-none-any.whl --force-reinstall diff --git a/examples/sample.py b/examples/sample.py new file mode 100644 index 0000000..baa2752 --- /dev/null +++ b/examples/sample.py @@ -0,0 +1,10 @@ +# This file was generated by liblab | https://liblab.com/ + +from geobeyond_sdk import GeobeyondSdk, Environment +from geobeyond_sdk.models import GetLandingPageF, Lang + +sdk = GeobeyondSdk(base_url=Environment.DEFAULT.value, timeout=10000) + +result = sdk.server.get_landing_page(f="json", lang="en-US") + +print(result) diff --git a/install.cmd b/install.cmd new file mode 100644 index 0000000..336960d --- /dev/null +++ b/install.cmd @@ -0,0 +1,22 @@ +@echo off +set USE_VENV=0 + +:loop +if "%~1"=="" goto afterloop +if "%~1"=="--use-venv" set USE_VENV=1 +shift +goto loop +:afterloop + +if "%USE_VENV%"=="1" ( + python -m venv .venv + call .venv\Scripts\activate +) + +pip install build +python -m build --outdir dist . +pip install dist\geobeyond-1.0.0-py3-none-any.whl --force-reinstall + +if "%USE_VENV%"=="1" ( + deactivate +) diff --git a/install.sh b/install.sh new file mode 100644 index 0000000..b063d99 --- /dev/null +++ b/install.sh @@ -0,0 +1,26 @@ +#!/bin/bash + +USE_VENV=0 + +for arg in "$@" +do + case $arg in + --use-venv) + USE_VENV=1 + shift + ;; + esac +done + +if [ "$USE_VENV" -eq 1 ]; then + python -m venv .venv + . .venv/bin/activate +fi + +pip install build +python -m build --outdir dist . +pip install dist/geobeyond-1.0.0-py3-none-any.whl --force-reinstall + +if [ "$USE_VENV" -eq 1 ]; then + deactivate +fi \ No newline at end of file diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 0000000..e19da76 --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,16 @@ +# This file was generated by liblab | https://liblab.com/ + +[build-system] +requires = ["setuptools>=61.0"] +build-backend = "setuptools.build_meta" + +[project] +name = "geobeyond" +version = "1.0.0" +license = { text = "MIT" } +description = """pygeoapi provides an API to geospatial data""" +readme = "PyPI_README.md" +requires-python = ">=3.7" +dependencies = [ + "requests>=2.31.0" +] diff --git a/src/geobeyond_sdk/__init__.py b/src/geobeyond_sdk/__init__.py new file mode 100644 index 0000000..f7c164c --- /dev/null +++ b/src/geobeyond_sdk/__init__.py @@ -0,0 +1,4 @@ +# This file was generated by liblab | https://liblab.com/ + +from .sdk import GeobeyondSdk +from .net.environment import Environment diff --git a/src/geobeyond_sdk/hooks/__init__.py b/src/geobeyond_sdk/hooks/__init__.py new file mode 100644 index 0000000..f9c4328 --- /dev/null +++ b/src/geobeyond_sdk/hooks/__init__.py @@ -0,0 +1 @@ +# This file was generated by liblab | https://liblab.com/ diff --git a/src/geobeyond_sdk/hooks/hook.py b/src/geobeyond_sdk/hooks/hook.py new file mode 100644 index 0000000..e1b934b --- /dev/null +++ b/src/geobeyond_sdk/hooks/hook.py @@ -0,0 +1,38 @@ +# This file was generated by liblab | https://liblab.com/ + + +class Request: + def __init__(self, method, url, headers, body=""): + self.method = method + self.url = url + self.headers = headers + self.body = body + + def __str__(self): + return f"method={self.method}, url={self.url}, headers={self.headers}, body={self.body})" + + +class Response: + def __init__(self, status, headers, body): + self.status = status + self.headers = headers + self.body = body + + def __str__(self): + return "Response(status={}, headers={}, body={})".format( + self.status, self.headers, self.body + ) + + +class DefaultHook: + + def before_request(self, request: Request, **kwargs): + pass + + def after_response(self, request: Request, response: Response, **kwargs): + pass + + def on_error( + self, error: Exception, request: Request, response: Response, **kwargs + ): + pass diff --git a/src/geobeyond_sdk/models/__init__.py b/src/geobeyond_sdk/models/__init__.py new file mode 100644 index 0000000..acb5eb4 --- /dev/null +++ b/src/geobeyond_sdk/models/__init__.py @@ -0,0 +1,80 @@ +# This file was generated by liblab | https://liblab.com/ + +from .landing_page import LandingPage +from .get_landing_page_f import GetLandingPageF +from .lang import Lang +from .ui import Ui +from .process_list import ProcessList +from .collection import Collection +from .feature_collection_geo_json import ( + FeatureCollectionGeoJson, + FeatureCollectionGeoJsonType, +) +from .get_dutch_metadata_features_properties import GetDutchMetadataFeaturesProperties +from .feature_geo_json import FeatureGeoJson, FeatureGeoJsonType, Id +from .queryables import Queryables +from .get_dutch_castles_features_properties import GetDutchCastlesFeaturesProperties +from .get_dutch_georef_stations_features_properties import ( + GetDutchGeorefStationsFeaturesProperties, +) +from .get_dutch_windmills_features_properties import GetDutchWindmillsFeaturesProperties +from .coverage_json import CoverageJson, Coverages +from .query_cube_icoads_sst_bbox import QueryCubeIcoadsSstBbox +from .get_lakes_features_properties import GetLakesFeaturesProperties +from .tiles import Tiles +from .tile_matrix_sets import TileMatrixSets +from .get_lakes_tiles_f import GetLakesTilesF +from .get_map_f import GetMapF +from .get_obs_features_properties import GetObsFeaturesProperties +from .get_ogr_addresses_gpkg_features_properties import ( + GetOgrAddressesGpkgFeaturesProperties, +) +from .get_ogr_addresses_sqlite_features_properties import ( + GetOgrAddressesSqliteFeaturesProperties, +) +from .get_ogr_geojson_lakes_features_properties import ( + GetOgrGeojsonLakesFeaturesProperties, +) +from .get_ogr_gpkg_poi_features_properties import GetOgrGpkgPoiFeaturesProperties +from .get_ogr_gpkg_wales_railway_lines_features_properties import ( + GetOgrGpkgWalesRailwayLinesFeaturesProperties, +) +from .get_ogr_gpkg_wales_stations_features_properties import ( + GetOgrGpkgWalesStationsFeaturesProperties, +) +from .get_unesco_pois_italy_features_properties import ( + GetUnescoPoisItalyFeaturesProperties, +) +from .get_utah_city_locations_features_properties import ( + GetUtahCityLocationsFeaturesProperties, +) +from .execute import Execute, Response +from .status_info import StatusInfo, StatusInfoType +from .link import Link +from .process_summary import ProcessSummary, AdditionalParameters +from .link_3 import Link3 +from .metadata import Metadata +from .job_control_options import JobControlOptions +from .transmission_mode import TransmissionMode +from .additional_parameter import AdditionalParameter, Value +from .extent import Extent, Spatial, Temporal +from .geometry_geo_json import GeometryGeoJson +from .point_geo_json import PointGeoJson, PointGeoJsonType +from .multipoint_geo_json import MultipointGeoJson, MultipointGeoJsonType +from .linestring_geo_json import LinestringGeoJson, LinestringGeoJsonType +from .multilinestring_geo_json import MultilinestringGeoJson, MultilinestringGeoJsonType +from .polygon_geo_json import PolygonGeoJson, PolygonGeoJsonType +from .multipolygon_geo_json import MultipolygonGeoJson, MultipolygonGeoJsonType +from .geometrycollection_geo_json import ( + GeometrycollectionGeoJson, + GeometrycollectionGeoJsonType, +) +from .queryable import Queryable +from .nd_array import NdArray +from .reference_system_connection import ReferenceSystemConnection +from .domain import Domain +from .reference_system import ReferenceSystem +from .link_2 import Link2 +from .tilematrixsetlink import Tilematrixsetlink +from .subscriber import Subscriber +from .status_code import StatusCode diff --git a/src/geobeyond_sdk/models/additional_parameter.py b/src/geobeyond_sdk/models/additional_parameter.py new file mode 100644 index 0000000..e53c895 --- /dev/null +++ b/src/geobeyond_sdk/models/additional_parameter.py @@ -0,0 +1,42 @@ +# This file was generated by liblab | https://liblab.com/ + +from typing import Union +from typing import List +from .utils.json_map import JsonMap +from .utils.base_model import BaseModel +from .utils.one_of_base_model import OneOfBaseModel + + +class ValueGuard(OneOfBaseModel): + class_list = { + "str": str, + "float": float, + "int": int, + "List[any]": List[any], + "dict": dict, + } + + +Value = Union[str, float, int, List[any], dict] + + +@JsonMap({}) +class AdditionalParameter(BaseModel): + """AdditionalParameter + + :param name: name + :type name: str + :param value: value + :type value: List[Value] + """ + + def __init__(self, name: str, value: List[Value]): + """AdditionalParameter + + :param name: name + :type name: str + :param value: value + :type value: List[Value] + """ + self.name = name + self.value = self._define_list(value, Value) diff --git a/src/geobeyond_sdk/models/collection.py b/src/geobeyond_sdk/models/collection.py new file mode 100644 index 0000000..1868be8 --- /dev/null +++ b/src/geobeyond_sdk/models/collection.py @@ -0,0 +1,69 @@ +# This file was generated by liblab | https://liblab.com/ + +from __future__ import annotations +from typing import List +from .utils.json_map import JsonMap +from .utils.base_model import BaseModel +from .link import Link +from .extent import Extent + + +@JsonMap({"id_": "id", "item_type": "itemType"}) +class Collection(BaseModel): + """Collection + + :param id_: identifier of the collection used, for example, in URIs + :type id_: str + :param title: human readable title of the collection, defaults to None + :type title: str, optional + :param description: a description of the features in the collection, defaults to None + :type description: str, optional + :param links: links + :type links: List[Link] + :param extent: The extent of the features in the collection. In the Core only spatial and temporal extents are specified. Extensions may add additional members to represent other extents, for example, thermal or pressure ranges., defaults to None + :type extent: Extent, optional + :param item_type: indicator about the type of the items in the collection (the default value is 'feature')., defaults to None + :type item_type: str, optional + :param crs: the list of coordinate reference systems supported by the service, defaults to None + :type crs: List[str], optional + """ + + def __init__( + self, + id_: str, + links: List[Link], + title: str = None, + description: str = None, + extent: Extent = None, + item_type: str = None, + crs: List[str] = None, + ): + """Collection + + :param id_: identifier of the collection used, for example, in URIs + :type id_: str + :param title: human readable title of the collection, defaults to None + :type title: str, optional + :param description: a description of the features in the collection, defaults to None + :type description: str, optional + :param links: links + :type links: List[Link] + :param extent: The extent of the features in the collection. In the Core only spatial and temporal extents are specified. Extensions may add additional members to represent other extents, for example, thermal or pressure ranges., defaults to None + :type extent: Extent, optional + :param item_type: indicator about the type of the items in the collection (the default value is 'feature')., defaults to None + :type item_type: str, optional + :param crs: the list of coordinate reference systems supported by the service, defaults to None + :type crs: List[str], optional + """ + self.id_ = id_ + if title is not None: + self.title = title + if description is not None: + self.description = description + self.links = self._define_list(links, Link) + if extent is not None: + self.extent = self._define_object(extent, Extent) + if item_type is not None: + self.item_type = item_type + if crs is not None: + self.crs = crs diff --git a/src/geobeyond_sdk/models/coverage_json.py b/src/geobeyond_sdk/models/coverage_json.py new file mode 100644 index 0000000..9a1b913 --- /dev/null +++ b/src/geobeyond_sdk/models/coverage_json.py @@ -0,0 +1,91 @@ +# This file was generated by liblab | https://liblab.com/ + +from __future__ import annotations +from typing import List +from .utils.json_map import JsonMap +from .utils.base_model import BaseModel +from .nd_array import NdArray +from .reference_system_connection import ReferenceSystemConnection +from .domain import Domain + + +@JsonMap({"type_": "type"}) +class Coverages(BaseModel): + """Coverages + + :param type_: Coverage domain type + :type type_: any + :param domain: A Domain, which defines a set of positions and their extent in one or more referencing systems + :type domain: Domain + :param ranges: ranges + :type ranges: any + """ + + def __init__(self, type_: any, domain: Domain, ranges: any): + """Coverages + + :param type_: Coverage domain type + :type type_: any + :param domain: A Domain, which defines a set of positions and their extent in one or more referencing systems + :type domain: Domain + :param ranges: ranges + :type ranges: any + """ + self.type_ = type_ + self.domain = self._define_object(domain, Domain) + self.ranges = ranges + + +@JsonMap({"type_": "type", "domain_type": "domainType"}) +class CoverageJson(BaseModel): + """A geospatial coverage interchange format based on JavaScript Object Notation (JSON) + + :param type_: Coverage domain type + :type type_: any + :param domain_type: domain_type, defaults to None + :type domain_type: str, optional + :param coverages: coverages, defaults to None + :type coverages: List[Coverages], optional + :param parameters: parameters, defaults to None + :type parameters: any, optional + :param ranges: ranges, defaults to None + :type ranges: dict, optional + :param referencing: referencing, defaults to None + :type referencing: List[ReferenceSystemConnection], optional + """ + + def __init__( + self, + type_: any, + domain_type: str = None, + coverages: List[Coverages] = None, + parameters: any = None, + ranges: dict = None, + referencing: List[ReferenceSystemConnection] = None, + ): + """A geospatial coverage interchange format based on JavaScript Object Notation (JSON) + + :param type_: Coverage domain type + :type type_: any + :param domain_type: domain_type, defaults to None + :type domain_type: str, optional + :param coverages: coverages, defaults to None + :type coverages: List[Coverages], optional + :param parameters: parameters, defaults to None + :type parameters: any, optional + :param ranges: ranges, defaults to None + :type ranges: dict, optional + :param referencing: referencing, defaults to None + :type referencing: List[ReferenceSystemConnection], optional + """ + self.type_ = type_ + if domain_type is not None: + self.domain_type = domain_type + if coverages is not None: + self.coverages = self._define_list(coverages, Coverages) + if parameters is not None: + self.parameters = parameters + if ranges is not None: + self.ranges = ranges + if referencing is not None: + self.referencing = self._define_list(referencing, ReferenceSystemConnection) diff --git a/src/geobeyond_sdk/models/domain.py b/src/geobeyond_sdk/models/domain.py new file mode 100644 index 0000000..cc2f7b8 --- /dev/null +++ b/src/geobeyond_sdk/models/domain.py @@ -0,0 +1,47 @@ +# This file was generated by liblab | https://liblab.com/ + +from __future__ import annotations +from typing import List +from .utils.json_map import JsonMap +from .utils.base_model import BaseModel +from .reference_system_connection import ReferenceSystemConnection + + +@JsonMap({"type_": "type", "domain_type": "domainType"}) +class Domain(BaseModel): + """A Domain, which defines a set of positions and their extent in one or more referencing systems + + :param type_: type_ + :type type_: any + :param domain_type: domain_type, defaults to None + :type domain_type: str, optional + :param axes: axes + :type axes: dict + :param referencing: referencing, defaults to None + :type referencing: List[ReferenceSystemConnection], optional + """ + + def __init__( + self, + type_: any, + axes: dict, + domain_type: str = None, + referencing: List[ReferenceSystemConnection] = None, + ): + """A Domain, which defines a set of positions and their extent in one or more referencing systems + + :param type_: type_ + :type type_: any + :param domain_type: domain_type, defaults to None + :type domain_type: str, optional + :param axes: axes + :type axes: dict + :param referencing: referencing, defaults to None + :type referencing: List[ReferenceSystemConnection], optional + """ + self.type_ = type_ + if domain_type is not None: + self.domain_type = domain_type + self.axes = axes + if referencing is not None: + self.referencing = self._define_list(referencing, ReferenceSystemConnection) diff --git a/src/geobeyond_sdk/models/execute.py b/src/geobeyond_sdk/models/execute.py new file mode 100644 index 0000000..d2f6edc --- /dev/null +++ b/src/geobeyond_sdk/models/execute.py @@ -0,0 +1,70 @@ +# This file was generated by liblab | https://liblab.com/ + +from __future__ import annotations +from enum import Enum +from .utils.json_map import JsonMap +from .utils.base_model import BaseModel +from .subscriber import Subscriber + + +class Response(Enum): + """An enumeration representing different categories. + + :cvar RAW: "raw" + :vartype RAW: str + :cvar DOCUMENT: "document" + :vartype DOCUMENT: str + """ + + RAW = "raw" + DOCUMENT = "document" + + def list(): + """Lists all category values. + + :return: A list of all category values. + :rtype: list + """ + return list(map(lambda x: x.value, Response._member_map_.values())) + + +@JsonMap({}) +class Execute(BaseModel): + """Execute + + :param inputs: inputs, defaults to None + :type inputs: any, optional + :param outputs: outputs, defaults to None + :type outputs: any, optional + :param response: response, defaults to None + :type response: Response, optional + :param subscriber: Optional URIs for callbacks for this job. Support for this parameter is not required and the parameter may be removed from the API definition, if conformance class **'callback'** is not listed in the conformance declaration under `/conformance`., defaults to None + :type subscriber: Subscriber, optional + """ + + def __init__( + self, + inputs: any = None, + outputs: any = None, + response: Response = None, + subscriber: Subscriber = None, + ): + """Execute + + :param inputs: inputs, defaults to None + :type inputs: any, optional + :param outputs: outputs, defaults to None + :type outputs: any, optional + :param response: response, defaults to None + :type response: Response, optional + :param subscriber: Optional URIs for callbacks for this job. Support for this parameter is not required and the parameter may be removed from the API definition, if conformance class **'callback'** is not listed in the conformance declaration under `/conformance`., defaults to None + :type subscriber: Subscriber, optional + """ + if inputs is not None: + self.inputs = inputs + if outputs is not None: + self.outputs = outputs + if response is not None: + self.response = self._enum_matching(response, Response.list(), "response") + if subscriber is not None: + self.subscriber = self._define_object(subscriber, Subscriber) diff --git a/src/geobeyond_sdk/models/extent.py b/src/geobeyond_sdk/models/extent.py new file mode 100644 index 0000000..8829907 --- /dev/null +++ b/src/geobeyond_sdk/models/extent.py @@ -0,0 +1,129 @@ +# This file was generated by liblab | https://liblab.com/ + +from enum import Enum +from typing import Union +from typing import List +from .utils.json_map import JsonMap +from .utils.base_model import BaseModel +from .utils.one_of_base_model import OneOfBaseModel + + +class SpatialBboxGuard(OneOfBaseModel): + class_list = {"any": any, "any": any} + + +SpatialBbox = Union[any, any] + + +class Crs(Enum): + """An enumeration representing different categories. + + :cvar HTTPWWWOPENGISNETDEFCRSOGC1_3CRS84: "http://www.opengis.net/def/crs/OGC/1.3/CRS84" + :vartype HTTPWWWOPENGISNETDEFCRSOGC1_3CRS84: str + """ + + HTTPWWWOPENGISNETDEFCRSOGC1_3CRS84 = "http://www.opengis.net/def/crs/OGC/1.3/CRS84" + + def list(): + """Lists all category values. + + :return: A list of all category values. + :rtype: list + """ + return list(map(lambda x: x.value, Crs._member_map_.values())) + + +@JsonMap({}) +class Spatial(BaseModel): + """The spatial extent of the features in the collection. + + :param bbox: One or more bounding boxes that describe the spatial extent of the dataset. In the Core only a single bounding box is supported. Extensions may support additional areas. If multiple areas are provided, the union of the bounding boxes describes the spatial extent., defaults to None + :type bbox: List[SpatialBbox], optional + :param crs: Coordinate reference system of the coordinates in the spatial extent (property `bbox`). The default reference system is WGS 84 longitude/latitude. In the Core this is the only supported coordinate reference system. Extensions may support additional coordinate reference systems and add additional enum values., defaults to None + :type crs: Crs, optional + """ + + def __init__(self, bbox: List[SpatialBbox] = None, crs: Crs = None): + """The spatial extent of the features in the collection. + + :param bbox: One or more bounding boxes that describe the spatial extent of the dataset. In the Core only a single bounding box is supported. Extensions may support additional areas. If multiple areas are provided, the union of the bounding boxes describes the spatial extent., defaults to None + :type bbox: List[SpatialBbox], optional + :param crs: Coordinate reference system of the coordinates in the spatial extent (property `bbox`). The default reference system is WGS 84 longitude/latitude. In the Core this is the only supported coordinate reference system. Extensions may support additional coordinate reference systems and add additional enum values., defaults to None + :type crs: Crs, optional + """ + if bbox is not None: + self.bbox = self._define_list(bbox, SpatialBbox) + if crs is not None: + self.crs = self._enum_matching(crs, Crs.list(), "crs") + + +class Trs(Enum): + """An enumeration representing different categories. + + :cvar HTTPWWWOPENGISNETDEFUOMISO8601_0GREGORIAN: "http://www.opengis.net/def/uom/ISO-8601/0/Gregorian" + :vartype HTTPWWWOPENGISNETDEFUOMISO8601_0GREGORIAN: str + """ + + HTTPWWWOPENGISNETDEFUOMISO8601_0GREGORIAN = ( + "http://www.opengis.net/def/uom/ISO-8601/0/Gregorian" + ) + + def list(): + """Lists all category values. + + :return: A list of all category values. + :rtype: list + """ + return list(map(lambda x: x.value, Trs._member_map_.values())) + + +@JsonMap({}) +class Temporal(BaseModel): + """The temporal extent of the features in the collection. + + :param interval: One or more time intervals that describe the temporal extent of the dataset. The value `null` is supported and indicates an unbounded interval end. In the Core only a single time interval is supported. Extensions may support multiple intervals. If multiple intervals are provided, the union of the intervals describes the temporal extent., defaults to None + :type interval: List[List[str]], optional + :param trs: Coordinate reference system of the coordinates in the temporal extent (property `interval`). The default reference system is the Gregorian calendar. In the Core this is the only supported temporal coordinate reference system. Extensions may support additional temporal coordinate reference systems and add additional enum values., defaults to None + :type trs: Trs, optional + """ + + def __init__(self, interval: List[List[str]] = None, trs: Trs = None): + """The temporal extent of the features in the collection. + + :param interval: One or more time intervals that describe the temporal extent of the dataset. The value `null` is supported and indicates an unbounded interval end. In the Core only a single time interval is supported. Extensions may support multiple intervals. If multiple intervals are provided, the union of the intervals describes the temporal extent., defaults to None + :type interval: List[List[str]], optional + :param trs: Coordinate reference system of the coordinates in the temporal extent (property `interval`). The default reference system is the Gregorian calendar. In the Core this is the only supported temporal coordinate reference system. Extensions may support additional temporal coordinate reference systems and add additional enum values., defaults to None + :type trs: Trs, optional + """ + if interval is not None: + self.interval = interval + if trs is not None: + self.trs = self._enum_matching(trs, Trs.list(), "trs") + + +@JsonMap({}) +class Extent(BaseModel): + """The extent of the features in the collection. In the Core only spatial and temporal + extents are specified. Extensions may add additional members to represent other + extents, for example, thermal or pressure ranges. + + :param spatial: The spatial extent of the features in the collection., defaults to None + :type spatial: Spatial, optional + :param temporal: The temporal extent of the features in the collection., defaults to None + :type temporal: Temporal, optional + """ + + def __init__(self, spatial: Spatial = None, temporal: Temporal = None): + """The extent of the features in the collection. In the Core only spatial and temporal + extents are specified. Extensions may add additional members to represent other + extents, for example, thermal or pressure ranges. + + :param spatial: The spatial extent of the features in the collection., defaults to None + :type spatial: Spatial, optional + :param temporal: The temporal extent of the features in the collection., defaults to None + :type temporal: Temporal, optional + """ + if spatial is not None: + self.spatial = self._define_object(spatial, Spatial) + if temporal is not None: + self.temporal = self._define_object(temporal, Temporal) diff --git a/src/geobeyond_sdk/models/feature_collection_geo_json.py b/src/geobeyond_sdk/models/feature_collection_geo_json.py new file mode 100644 index 0000000..b4bcba2 --- /dev/null +++ b/src/geobeyond_sdk/models/feature_collection_geo_json.py @@ -0,0 +1,96 @@ +# This file was generated by liblab | https://liblab.com/ + +from __future__ import annotations +from enum import Enum +from typing import List +from .utils.json_map import JsonMap +from .utils.base_model import BaseModel +from .feature_geo_json import FeatureGeoJson +from .link import Link + + +class FeatureCollectionGeoJsonType(Enum): + """An enumeration representing different categories. + + :cvar FEATURECOLLECTION: "FeatureCollection" + :vartype FEATURECOLLECTION: str + """ + + FEATURECOLLECTION = "FeatureCollection" + + def list(): + """Lists all category values. + + :return: A list of all category values. + :rtype: list + """ + return list( + map(lambda x: x.value, FeatureCollectionGeoJsonType._member_map_.values()) + ) + + +@JsonMap( + { + "type_": "type", + "time_stamp": "timeStamp", + "number_matched": "numberMatched", + "number_returned": "numberReturned", + } +) +class FeatureCollectionGeoJson(BaseModel): + """FeatureCollectionGeoJson + + :param type_: type_ + :type type_: FeatureCollectionGeoJsonType + :param features: features + :type features: List[FeatureGeoJson] + :param links: links, defaults to None + :type links: List[Link], optional + :param time_stamp: This property indicates the time and date when the response was generated., defaults to None + :type time_stamp: str, optional + :param number_matched: The number of features of the feature type that match the selection parameters like `bbox`., defaults to None + :type number_matched: int, optional + :param number_returned: The number of features in the feature collection. A server may omit this information in a response, if the information about the number of features is not known or difficult to compute. If the value is provided, the value shall be identical to the number of items in the "features" array., defaults to None + :type number_returned: int, optional + """ + + def __init__( + self, + type_: FeatureCollectionGeoJsonType, + features: List[FeatureGeoJson], + links: List[Link] = None, + time_stamp: str = None, + number_matched: int = None, + number_returned: int = None, + ): + """FeatureCollectionGeoJson + + :param type_: type_ + :type type_: FeatureCollectionGeoJsonType + :param features: features + :type features: List[FeatureGeoJson] + :param links: links, defaults to None + :type links: List[Link], optional + :param time_stamp: This property indicates the time and date when the response was generated., defaults to None + :type time_stamp: str, optional + :param number_matched: The number of features of the feature type that match the selection parameters like `bbox`., defaults to None + :type number_matched: int, optional + :param number_returned: The number of features in the feature collection. A server may omit this information in a response, if the information about the number of features is not known or difficult to compute. If the value is provided, the value shall be identical to the number of items in the "features" array., defaults to None + :type number_returned: int, optional + """ + self.type_ = self._enum_matching( + type_, FeatureCollectionGeoJsonType.list(), "type_" + ) + self.features = self._define_list(features, FeatureGeoJson) + if links is not None: + self.links = self._define_list(links, Link) + if time_stamp is not None: + self.time_stamp = time_stamp + if number_matched is not None: + self.number_matched = self._define_number( + "number_matched", number_matched, ge=0 + ) + if number_returned is not None: + self.number_returned = self._define_number( + "number_returned", number_returned, ge=0 + ) diff --git a/src/geobeyond_sdk/models/feature_geo_json.py b/src/geobeyond_sdk/models/feature_geo_json.py new file mode 100644 index 0000000..28f061f --- /dev/null +++ b/src/geobeyond_sdk/models/feature_geo_json.py @@ -0,0 +1,89 @@ +# This file was generated by liblab | https://liblab.com/ + +from __future__ import annotations +from enum import Enum +from typing import Union +from typing import List +from .utils.json_map import JsonMap +from .utils.base_model import BaseModel +from .utils.one_of_base_model import OneOfBaseModel +from .geometry_geo_json import GeometryGeoJson, GeometryGeoJsonGuard +from .point_geo_json import PointGeoJson +from .multipoint_geo_json import MultipointGeoJson +from .linestring_geo_json import LinestringGeoJson +from .multilinestring_geo_json import MultilinestringGeoJson +from .polygon_geo_json import PolygonGeoJson +from .multipolygon_geo_json import MultipolygonGeoJson +from .geometrycollection_geo_json import GeometrycollectionGeoJson +from .link import Link + + +class FeatureGeoJsonType(Enum): + """An enumeration representing different categories. + + :cvar FEATURE: "Feature" + :vartype FEATURE: str + """ + + FEATURE = "Feature" + + def list(): + """Lists all category values. + + :return: A list of all category values. + :rtype: list + """ + return list(map(lambda x: x.value, FeatureGeoJsonType._member_map_.values())) + + +class IdGuard(OneOfBaseModel): + class_list = {"str": str, "int": int} + + +Id = Union[str, int] + + +@JsonMap({"type_": "type", "id_": "id"}) +class FeatureGeoJson(BaseModel): + """FeatureGeoJson + + :param type_: type_ + :type type_: FeatureGeoJsonType + :param geometry: geometry + :type geometry: GeometryGeoJson + :param properties: properties + :type properties: dict + :param id_: id_, defaults to None + :type id_: Id, optional + :param links: links, defaults to None + :type links: List[Link], optional + """ + + def __init__( + self, + type_: FeatureGeoJsonType, + geometry: GeometryGeoJson, + properties: dict, + id_: Id = None, + links: List[Link] = None, + ): + """FeatureGeoJson + + :param type_: type_ + :type type_: FeatureGeoJsonType + :param geometry: geometry + :type geometry: GeometryGeoJson + :param properties: properties + :type properties: dict + :param id_: id_, defaults to None + :type id_: Id, optional + :param links: links, defaults to None + :type links: List[Link], optional + """ + self.type_ = self._enum_matching(type_, FeatureGeoJsonType.list(), "type_") + self.geometry = GeometryGeoJsonGuard.return_one_of(geometry) + self.properties = properties + if id_ is not None: + self.id_ = IdGuard.return_one_of(id_) + if links is not None: + self.links = self._define_list(links, Link) diff --git a/src/geobeyond_sdk/models/geometry_geo_json.py b/src/geobeyond_sdk/models/geometry_geo_json.py new file mode 100644 index 0000000..d982abb --- /dev/null +++ b/src/geobeyond_sdk/models/geometry_geo_json.py @@ -0,0 +1,35 @@ +# This file was generated by liblab | https://liblab.com/ + +from __future__ import annotations +from typing import Union +from .utils.one_of_base_model import OneOfBaseModel +from .point_geo_json import PointGeoJson +from .multipoint_geo_json import MultipointGeoJson +from .linestring_geo_json import LinestringGeoJson +from .multilinestring_geo_json import MultilinestringGeoJson +from .polygon_geo_json import PolygonGeoJson +from .multipolygon_geo_json import MultipolygonGeoJson +from .geometrycollection_geo_json import GeometrycollectionGeoJson + + +class GeometryGeoJsonGuard(OneOfBaseModel): + class_list = { + "PointGeoJson": PointGeoJson, + "MultipointGeoJson": MultipointGeoJson, + "LinestringGeoJson": LinestringGeoJson, + "MultilinestringGeoJson": MultilinestringGeoJson, + "PolygonGeoJson": PolygonGeoJson, + "MultipolygonGeoJson": MultipolygonGeoJson, + "GeometrycollectionGeoJson": GeometrycollectionGeoJson, + } + + +GeometryGeoJson = Union[ + PointGeoJson, + MultipointGeoJson, + LinestringGeoJson, + MultilinestringGeoJson, + PolygonGeoJson, + MultipolygonGeoJson, + GeometrycollectionGeoJson, +] diff --git a/src/geobeyond_sdk/models/geometrycollection_geo_json.py b/src/geobeyond_sdk/models/geometrycollection_geo_json.py new file mode 100644 index 0000000..e35b0af --- /dev/null +++ b/src/geobeyond_sdk/models/geometrycollection_geo_json.py @@ -0,0 +1,61 @@ +# This file was generated by liblab | https://liblab.com/ + +from __future__ import annotations +from enum import Enum +from typing import List +from .utils.json_map import JsonMap +from .utils.base_model import BaseModel +from .geometry_geo_json import GeometryGeoJson, GeometryGeoJsonGuard +from .point_geo_json import PointGeoJson +from .multipoint_geo_json import MultipointGeoJson +from .linestring_geo_json import LinestringGeoJson +from .multilinestring_geo_json import MultilinestringGeoJson +from .polygon_geo_json import PolygonGeoJson +from .multipolygon_geo_json import MultipolygonGeoJson +from .geometrycollection_geo_json import GeometrycollectionGeoJson + + +class GeometrycollectionGeoJsonType(Enum): + """An enumeration representing different categories. + + :cvar GEOMETRYCOLLECTION: "GeometryCollection" + :vartype GEOMETRYCOLLECTION: str + """ + + GEOMETRYCOLLECTION = "GeometryCollection" + + def list(): + """Lists all category values. + + :return: A list of all category values. + :rtype: list + """ + return list( + map(lambda x: x.value, GeometrycollectionGeoJsonType._member_map_.values()) + ) + + +@JsonMap({"type_": "type"}) +class GeometrycollectionGeoJson(BaseModel): + """GeometrycollectionGeoJson + + :param type_: type_ + :type type_: GeometrycollectionGeoJsonType + :param geometries: geometries + :type geometries: List[GeometryGeoJson] + """ + + def __init__( + self, type_: GeometrycollectionGeoJsonType, geometries: List[GeometryGeoJson] + ): + """GeometrycollectionGeoJson + + :param type_: type_ + :type type_: GeometrycollectionGeoJsonType + :param geometries: geometries + :type geometries: List[GeometryGeoJson] + """ + self.type_ = self._enum_matching( + type_, GeometrycollectionGeoJsonType.list(), "type_" + ) + self.geometries = self._define_list(geometries, GeometryGeoJson) diff --git a/src/geobeyond_sdk/models/get_dutch_castles_features_properties.py b/src/geobeyond_sdk/models/get_dutch_castles_features_properties.py new file mode 100644 index 0000000..f1aacf9 --- /dev/null +++ b/src/geobeyond_sdk/models/get_dutch_castles_features_properties.py @@ -0,0 +1,68 @@ +# This file was generated by liblab | https://liblab.com/ + +from enum import Enum + + +class GetDutchCastlesFeaturesProperties(Enum): + """An enumeration representing different categories. + + :cvar GMLID: "gml_id" + :vartype GMLID: str + :cvar GID: "gid" + :vartype GID: str + :cvar CCHIN: "cchin" + :vartype CCHIN: str + :cvar NAAM: "naam" + :vartype NAAM: str + :cvar PLAATS: "plaats" + :vartype PLAATS: str + :cvar INFOLINK: "info_link" + :vartype INFOLINK: str + :cvar DATERING: "datering" + :vartype DATERING: str + :cvar RIJKSMONNR: "rijksmonnr" + :vartype RIJKSMONNR: str + :cvar PROVINCIE: "provincie" + :vartype PROVINCIE: str + :cvar FOTOTHUMB: "foto_thumb" + :vartype FOTOTHUMB: str + :cvar FOTOGROOT: "foto_groot" + :vartype FOTOGROOT: str + :cvar BIJSCHRIFT: "bijschrift" + :vartype BIJSCHRIFT: str + :cvar ZICHTBAAR: "zichtbaar" + :vartype ZICHTBAAR: str + :cvar LEGENDA: "legenda" + :vartype LEGENDA: str + :cvar TYPERING: "typering" + :vartype TYPERING: str + """ + + GMLID = "gml_id" + GID = "gid" + CCHIN = "cchin" + NAAM = "naam" + PLAATS = "plaats" + INFOLINK = "info_link" + DATERING = "datering" + RIJKSMONNR = "rijksmonnr" + PROVINCIE = "provincie" + FOTOTHUMB = "foto_thumb" + FOTOGROOT = "foto_groot" + BIJSCHRIFT = "bijschrift" + ZICHTBAAR = "zichtbaar" + LEGENDA = "legenda" + TYPERING = "typering" + + def list(): + """Lists all category values. + + :return: A list of all category values. + :rtype: list + """ + return list( + map( + lambda x: x.value, + GetDutchCastlesFeaturesProperties._member_map_.values(), + ) + ) diff --git a/src/geobeyond_sdk/models/get_dutch_georef_stations_features_properties.py b/src/geobeyond_sdk/models/get_dutch_georef_stations_features_properties.py new file mode 100644 index 0000000..3a33ee7 --- /dev/null +++ b/src/geobeyond_sdk/models/get_dutch_georef_stations_features_properties.py @@ -0,0 +1,77 @@ +# This file was generated by liblab | https://liblab.com/ + +from enum import Enum + + +class GetDutchGeorefStationsFeaturesProperties(Enum): + """An enumeration representing different categories. + + :cvar GMLID: "gml_id" + :vartype GMLID: str + :cvar GID: "gid" + :vartype GID: str + :cvar BLAD: "blad" + :vartype BLAD: str + :cvar PUNT: "punt" + :vartype PUNT: str + :cvar STATION: "station" + :vartype STATION: str + :cvar JAAR: "jaar" + :vartype JAAR: str + :cvar MAAND: "maand" + :vartype MAAND: str + :cvar DAG: "dag" + :vartype DAG: str + :cvar OMSCHREXT: "omschrext" + :vartype OMSCHREXT: str + :cvar OMSCHRINT: "omschrint" + :vartype OMSCHRINT: str + :cvar XRD: "xrd" + :vartype XRD: str + :cvar YRD: "yrd" + :vartype YRD: str + :cvar PHI: "phi" + :vartype PHI: str + :cvar LAMBDA: "lambda" + :vartype LAMBDA: str + :cvar H: "h" + :vartype H: str + :cvar GPS: "gps" + :vartype GPS: str + :cvar PEILMERK: "peilmerk" + :vartype PEILMERK: str + :cvar FUUID: "fuuid" + :vartype FUUID: str + """ + + GMLID = "gml_id" + GID = "gid" + BLAD = "blad" + PUNT = "punt" + STATION = "station" + JAAR = "jaar" + MAAND = "maand" + DAG = "dag" + OMSCHREXT = "omschrext" + OMSCHRINT = "omschrint" + XRD = "xrd" + YRD = "yrd" + PHI = "phi" + LAMBDA = "lambda" + H = "h" + GPS = "gps" + PEILMERK = "peilmerk" + FUUID = "fuuid" + + def list(): + """Lists all category values. + + :return: A list of all category values. + :rtype: list + """ + return list( + map( + lambda x: x.value, + GetDutchGeorefStationsFeaturesProperties._member_map_.values(), + ) + ) diff --git a/src/geobeyond_sdk/models/get_dutch_metadata_features_properties.py b/src/geobeyond_sdk/models/get_dutch_metadata_features_properties.py new file mode 100644 index 0000000..36fa95b --- /dev/null +++ b/src/geobeyond_sdk/models/get_dutch_metadata_features_properties.py @@ -0,0 +1,53 @@ +# This file was generated by liblab | https://liblab.com/ + +from enum import Enum + + +class GetDutchMetadataFeaturesProperties(Enum): + """An enumeration representing different categories. + + :cvar CREATED: "created" + :vartype CREATED: str + :cvar UPDATED: "updated" + :vartype UPDATED: str + :cvar TYPE: "type" + :vartype TYPE: str + :cvar TITLE: "title" + :vartype TITLE: str + :cvar DESCRIPTION: "description" + :vartype DESCRIPTION: str + :cvar PROVIDERS: "providers" + :vartype PROVIDERS: str + :cvar EXTERNALIDS: "externalIds" + :vartype EXTERNALIDS: str + :cvar THEMES: "themes" + :vartype THEMES: str + :cvar EXTENT: "extent" + :vartype EXTENT: str + :cvar Q: "q" + :vartype Q: str + """ + + CREATED = "created" + UPDATED = "updated" + TYPE = "type" + TITLE = "title" + DESCRIPTION = "description" + PROVIDERS = "providers" + EXTERNALIDS = "externalIds" + THEMES = "themes" + EXTENT = "extent" + Q = "q" + + def list(): + """Lists all category values. + + :return: A list of all category values. + :rtype: list + """ + return list( + map( + lambda x: x.value, + GetDutchMetadataFeaturesProperties._member_map_.values(), + ) + ) diff --git a/src/geobeyond_sdk/models/get_dutch_windmills_features_properties.py b/src/geobeyond_sdk/models/get_dutch_windmills_features_properties.py new file mode 100644 index 0000000..bcf1a71 --- /dev/null +++ b/src/geobeyond_sdk/models/get_dutch_windmills_features_properties.py @@ -0,0 +1,71 @@ +# This file was generated by liblab | https://liblab.com/ + +from enum import Enum + + +class GetDutchWindmillsFeaturesProperties(Enum): + """An enumeration representing different categories. + + :cvar GMLID: "gml_id" + :vartype GMLID: str + :cvar GID: "gid" + :vartype GID: str + :cvar NAAM: "NAAM" + :vartype NAAM: str + :cvar PLAATS: "PLAATS" + :vartype PLAATS: str + :cvar CATEGORIE: "CATEGORIE" + :vartype CATEGORIE: str + :cvar FUNCTIE: "FUNCTIE" + :vartype FUNCTIE: str + :cvar TYPE: "TYPE" + :vartype TYPE: str + :cvar STAAT: "STAAT" + :vartype STAAT: str + :cvar RMONNUMMER: "RMONNUMMER" + :vartype RMONNUMMER: str + :cvar TBGCNUMMER: "TBGCNUMMER" + :vartype TBGCNUMMER: str + :cvar INFOLINK: "INFOLINK" + :vartype INFOLINK: str + :cvar THUMBNAIL: "THUMBNAIL" + :vartype THUMBNAIL: str + :cvar HFDFUNCTIE: "HFDFUNCTIE" + :vartype HFDFUNCTIE: str + :cvar FOTOGRAAF: "FOTOGRAAF" + :vartype FOTOGRAAF: str + :cvar FOTOGROOT: "FOTO_GROOT" + :vartype FOTOGROOT: str + :cvar BOUWJAAR: "BOUWJAAR" + :vartype BOUWJAAR: str + """ + + GMLID = "gml_id" + GID = "gid" + NAAM = "NAAM" + PLAATS = "PLAATS" + CATEGORIE = "CATEGORIE" + FUNCTIE = "FUNCTIE" + TYPE = "TYPE" + STAAT = "STAAT" + RMONNUMMER = "RMONNUMMER" + TBGCNUMMER = "TBGCNUMMER" + INFOLINK = "INFOLINK" + THUMBNAIL = "THUMBNAIL" + HFDFUNCTIE = "HFDFUNCTIE" + FOTOGRAAF = "FOTOGRAAF" + FOTOGROOT = "FOTO_GROOT" + BOUWJAAR = "BOUWJAAR" + + def list(): + """Lists all category values. + + :return: A list of all category values. + :rtype: list + """ + return list( + map( + lambda x: x.value, + GetDutchWindmillsFeaturesProperties._member_map_.values(), + ) + ) diff --git a/src/geobeyond_sdk/models/get_lakes_features_properties.py b/src/geobeyond_sdk/models/get_lakes_features_properties.py new file mode 100644 index 0000000..520e766 --- /dev/null +++ b/src/geobeyond_sdk/models/get_lakes_features_properties.py @@ -0,0 +1,38 @@ +# This file was generated by liblab | https://liblab.com/ + +from enum import Enum + + +class GetLakesFeaturesProperties(Enum): + """An enumeration representing different categories. + + :cvar ID: "id" + :vartype ID: str + :cvar SCALERANK: "scalerank" + :vartype SCALERANK: str + :cvar NAME: "name" + :vartype NAME: str + :cvar NAMEALT: "name_alt" + :vartype NAMEALT: str + :cvar ADMIN: "admin" + :vartype ADMIN: str + :cvar FEATURECLASS: "featureclass" + :vartype FEATURECLASS: str + """ + + ID = "id" + SCALERANK = "scalerank" + NAME = "name" + NAMEALT = "name_alt" + ADMIN = "admin" + FEATURECLASS = "featureclass" + + def list(): + """Lists all category values. + + :return: A list of all category values. + :rtype: list + """ + return list( + map(lambda x: x.value, GetLakesFeaturesProperties._member_map_.values()) + ) diff --git a/src/geobeyond_sdk/models/get_lakes_tiles_f.py b/src/geobeyond_sdk/models/get_lakes_tiles_f.py new file mode 100644 index 0000000..b5b6aac --- /dev/null +++ b/src/geobeyond_sdk/models/get_lakes_tiles_f.py @@ -0,0 +1,21 @@ +# This file was generated by liblab | https://liblab.com/ + +from enum import Enum + + +class GetLakesTilesF(Enum): + """An enumeration representing different categories. + + :cvar PBF: "pbf" + :vartype PBF: str + """ + + PBF = "pbf" + + def list(): + """Lists all category values. + + :return: A list of all category values. + :rtype: list + """ + return list(map(lambda x: x.value, GetLakesTilesF._member_map_.values())) diff --git a/src/geobeyond_sdk/models/get_landing_page_f.py b/src/geobeyond_sdk/models/get_landing_page_f.py new file mode 100644 index 0000000..e0714ec --- /dev/null +++ b/src/geobeyond_sdk/models/get_landing_page_f.py @@ -0,0 +1,27 @@ +# This file was generated by liblab | https://liblab.com/ + +from enum import Enum + + +class GetLandingPageF(Enum): + """An enumeration representing different categories. + + :cvar JSON: "json" + :vartype JSON: str + :cvar HTML: "html" + :vartype HTML: str + :cvar JSONLD: "jsonld" + :vartype JSONLD: str + """ + + JSON = "json" + HTML = "html" + JSONLD = "jsonld" + + def list(): + """Lists all category values. + + :return: A list of all category values. + :rtype: list + """ + return list(map(lambda x: x.value, GetLandingPageF._member_map_.values())) diff --git a/src/geobeyond_sdk/models/get_map_f.py b/src/geobeyond_sdk/models/get_map_f.py new file mode 100644 index 0000000..8311e0d --- /dev/null +++ b/src/geobeyond_sdk/models/get_map_f.py @@ -0,0 +1,21 @@ +# This file was generated by liblab | https://liblab.com/ + +from enum import Enum + + +class GetMapF(Enum): + """An enumeration representing different categories. + + :cvar PNG: "png" + :vartype PNG: str + """ + + PNG = "png" + + def list(): + """Lists all category values. + + :return: A list of all category values. + :rtype: list + """ + return list(map(lambda x: x.value, GetMapF._member_map_.values())) diff --git a/src/geobeyond_sdk/models/get_obs_features_properties.py b/src/geobeyond_sdk/models/get_obs_features_properties.py new file mode 100644 index 0000000..3f262ec --- /dev/null +++ b/src/geobeyond_sdk/models/get_obs_features_properties.py @@ -0,0 +1,32 @@ +# This file was generated by liblab | https://liblab.com/ + +from enum import Enum + + +class GetObsFeaturesProperties(Enum): + """An enumeration representing different categories. + + :cvar ID: "id" + :vartype ID: str + :cvar STNID: "stn_id" + :vartype STNID: str + :cvar DATETIME: "datetime" + :vartype DATETIME: str + :cvar VALUE: "value" + :vartype VALUE: str + """ + + ID = "id" + STNID = "stn_id" + DATETIME = "datetime" + VALUE = "value" + + def list(): + """Lists all category values. + + :return: A list of all category values. + :rtype: list + """ + return list( + map(lambda x: x.value, GetObsFeaturesProperties._member_map_.values()) + ) diff --git a/src/geobeyond_sdk/models/get_ogr_addresses_gpkg_features_properties.py b/src/geobeyond_sdk/models/get_ogr_addresses_gpkg_features_properties.py new file mode 100644 index 0000000..895540e --- /dev/null +++ b/src/geobeyond_sdk/models/get_ogr_addresses_gpkg_features_properties.py @@ -0,0 +1,44 @@ +# This file was generated by liblab | https://liblab.com/ + +from enum import Enum + + +class GetOgrAddressesGpkgFeaturesProperties(Enum): + """An enumeration representing different categories. + + :cvar ID: "id" + :vartype ID: str + :cvar STRAATNAAM: "straatnaam" + :vartype STRAATNAAM: str + :cvar HUISNUMMER: "huisnummer" + :vartype HUISNUMMER: str + :cvar HUISLETTER: "huisletter" + :vartype HUISLETTER: str + :cvar WOONPLAATS: "woonplaats" + :vartype WOONPLAATS: str + :cvar POSTCODE: "postcode" + :vartype POSTCODE: str + :cvar TOEVOEGING: "toevoeging" + :vartype TOEVOEGING: str + """ + + ID = "id" + STRAATNAAM = "straatnaam" + HUISNUMMER = "huisnummer" + HUISLETTER = "huisletter" + WOONPLAATS = "woonplaats" + POSTCODE = "postcode" + TOEVOEGING = "toevoeging" + + def list(): + """Lists all category values. + + :return: A list of all category values. + :rtype: list + """ + return list( + map( + lambda x: x.value, + GetOgrAddressesGpkgFeaturesProperties._member_map_.values(), + ) + ) diff --git a/src/geobeyond_sdk/models/get_ogr_addresses_sqlite_features_properties.py b/src/geobeyond_sdk/models/get_ogr_addresses_sqlite_features_properties.py new file mode 100644 index 0000000..87c590f --- /dev/null +++ b/src/geobeyond_sdk/models/get_ogr_addresses_sqlite_features_properties.py @@ -0,0 +1,44 @@ +# This file was generated by liblab | https://liblab.com/ + +from enum import Enum + + +class GetOgrAddressesSqliteFeaturesProperties(Enum): + """An enumeration representing different categories. + + :cvar ID: "id" + :vartype ID: str + :cvar STRAATNAAM: "straatnaam" + :vartype STRAATNAAM: str + :cvar HUISNUMMER: "huisnummer" + :vartype HUISNUMMER: str + :cvar HUISLETTER: "huisletter" + :vartype HUISLETTER: str + :cvar WOONPLAATS: "woonplaats" + :vartype WOONPLAATS: str + :cvar POSTCODE: "postcode" + :vartype POSTCODE: str + :cvar TOEVOEGING: "toevoeging" + :vartype TOEVOEGING: str + """ + + ID = "id" + STRAATNAAM = "straatnaam" + HUISNUMMER = "huisnummer" + HUISLETTER = "huisletter" + WOONPLAATS = "woonplaats" + POSTCODE = "postcode" + TOEVOEGING = "toevoeging" + + def list(): + """Lists all category values. + + :return: A list of all category values. + :rtype: list + """ + return list( + map( + lambda x: x.value, + GetOgrAddressesSqliteFeaturesProperties._member_map_.values(), + ) + ) diff --git a/src/geobeyond_sdk/models/get_ogr_geojson_lakes_features_properties.py b/src/geobeyond_sdk/models/get_ogr_geojson_lakes_features_properties.py new file mode 100644 index 0000000..b853777 --- /dev/null +++ b/src/geobeyond_sdk/models/get_ogr_geojson_lakes_features_properties.py @@ -0,0 +1,41 @@ +# This file was generated by liblab | https://liblab.com/ + +from enum import Enum + + +class GetOgrGeojsonLakesFeaturesProperties(Enum): + """An enumeration representing different categories. + + :cvar ID: "id" + :vartype ID: str + :cvar SCALERANK: "scalerank" + :vartype SCALERANK: str + :cvar NAME: "name" + :vartype NAME: str + :cvar NAMEALT: "name_alt" + :vartype NAMEALT: str + :cvar ADMIN: "admin" + :vartype ADMIN: str + :cvar FEATURECLASS: "featureclass" + :vartype FEATURECLASS: str + """ + + ID = "id" + SCALERANK = "scalerank" + NAME = "name" + NAMEALT = "name_alt" + ADMIN = "admin" + FEATURECLASS = "featureclass" + + def list(): + """Lists all category values. + + :return: A list of all category values. + :rtype: list + """ + return list( + map( + lambda x: x.value, + GetOgrGeojsonLakesFeaturesProperties._member_map_.values(), + ) + ) diff --git a/src/geobeyond_sdk/models/get_ogr_gpkg_poi_features_properties.py b/src/geobeyond_sdk/models/get_ogr_gpkg_poi_features_properties.py new file mode 100644 index 0000000..042fd92 --- /dev/null +++ b/src/geobeyond_sdk/models/get_ogr_gpkg_poi_features_properties.py @@ -0,0 +1,34 @@ +# This file was generated by liblab | https://liblab.com/ + +from enum import Enum + + +class GetOgrGpkgPoiFeaturesProperties(Enum): + """An enumeration representing different categories. + + :cvar GID: "gid" + :vartype GID: str + :cvar OSMID: "osm_id" + :vartype OSMID: str + :cvar FCLASS: "fclass" + :vartype FCLASS: str + :cvar NAME: "name" + :vartype NAME: str + """ + + GID = "gid" + OSMID = "osm_id" + FCLASS = "fclass" + NAME = "name" + + def list(): + """Lists all category values. + + :return: A list of all category values. + :rtype: list + """ + return list( + map( + lambda x: x.value, GetOgrGpkgPoiFeaturesProperties._member_map_.values() + ) + ) diff --git a/src/geobeyond_sdk/models/get_ogr_gpkg_wales_railway_lines_features_properties.py b/src/geobeyond_sdk/models/get_ogr_gpkg_wales_railway_lines_features_properties.py new file mode 100644 index 0000000..5e6e250 --- /dev/null +++ b/src/geobeyond_sdk/models/get_ogr_gpkg_wales_railway_lines_features_properties.py @@ -0,0 +1,29 @@ +# This file was generated by liblab | https://liblab.com/ + +from enum import Enum + + +class GetOgrGpkgWalesRailwayLinesFeaturesProperties(Enum): + """An enumeration representing different categories. + + :cvar ID: "id" + :vartype ID: str + :cvar TYPE: "type" + :vartype TYPE: str + """ + + ID = "id" + TYPE = "type" + + def list(): + """Lists all category values. + + :return: A list of all category values. + :rtype: list + """ + return list( + map( + lambda x: x.value, + GetOgrGpkgWalesRailwayLinesFeaturesProperties._member_map_.values(), + ) + ) diff --git a/src/geobeyond_sdk/models/get_ogr_gpkg_wales_stations_features_properties.py b/src/geobeyond_sdk/models/get_ogr_gpkg_wales_stations_features_properties.py new file mode 100644 index 0000000..738e8f0 --- /dev/null +++ b/src/geobeyond_sdk/models/get_ogr_gpkg_wales_stations_features_properties.py @@ -0,0 +1,32 @@ +# This file was generated by liblab | https://liblab.com/ + +from enum import Enum + + +class GetOgrGpkgWalesStationsFeaturesProperties(Enum): + """An enumeration representing different categories. + + :cvar ID: "id" + :vartype ID: str + :cvar TYPE: "type" + :vartype TYPE: str + :cvar NAME: "name" + :vartype NAME: str + """ + + ID = "id" + TYPE = "type" + NAME = "name" + + def list(): + """Lists all category values. + + :return: A list of all category values. + :rtype: list + """ + return list( + map( + lambda x: x.value, + GetOgrGpkgWalesStationsFeaturesProperties._member_map_.values(), + ) + ) diff --git a/src/geobeyond_sdk/models/get_unesco_pois_italy_features_properties.py b/src/geobeyond_sdk/models/get_unesco_pois_italy_features_properties.py new file mode 100644 index 0000000..f115341 --- /dev/null +++ b/src/geobeyond_sdk/models/get_unesco_pois_italy_features_properties.py @@ -0,0 +1,44 @@ +# This file was generated by liblab | https://liblab.com/ + +from enum import Enum + + +class GetUnescoPoisItalyFeaturesProperties(Enum): + """An enumeration representing different categories. + + :cvar GMLID: "gml_id" + :vartype GMLID: str + :cvar CODUNESCO: "cod_unesco" + :vartype CODUNESCO: str + :cvar SITO: "sito" + :vartype SITO: str + :cvar SERIALE: "seriale" + :vartype SERIALE: str + :cvar CODCOMPON: "cod_compon" + :vartype CODCOMPON: str + :cvar COMPONENTE: "componente" + :vartype COMPONENTE: str + :cvar TIPOAREA: "tipo_area" + :vartype TIPOAREA: str + """ + + GMLID = "gml_id" + CODUNESCO = "cod_unesco" + SITO = "sito" + SERIALE = "seriale" + CODCOMPON = "cod_compon" + COMPONENTE = "componente" + TIPOAREA = "tipo_area" + + def list(): + """Lists all category values. + + :return: A list of all category values. + :rtype: list + """ + return list( + map( + lambda x: x.value, + GetUnescoPoisItalyFeaturesProperties._member_map_.values(), + ) + ) diff --git a/src/geobeyond_sdk/models/get_utah_city_locations_features_properties.py b/src/geobeyond_sdk/models/get_utah_city_locations_features_properties.py new file mode 100644 index 0000000..b50d806 --- /dev/null +++ b/src/geobeyond_sdk/models/get_utah_city_locations_features_properties.py @@ -0,0 +1,47 @@ +# This file was generated by liblab | https://liblab.com/ + +from enum import Enum + + +class GetUtahCityLocationsFeaturesProperties(Enum): + """An enumeration representing different categories. + + :cvar GMLID: "gml_id" + :vartype GMLID: str + :cvar NAME: "NAME" + :vartype NAME: str + :cvar COSEAT: "CO_SEAT" + :vartype COSEAT: str + :cvar POP1999: "POP_1999" + :vartype POP1999: str + :cvar POPSYM99: "POP_SYM_99" + :vartype POPSYM99: str + :cvar POP2000: "POP_2000" + :vartype POP2000: str + :cvar POPSYM00: "POP_SYM_00" + :vartype POPSYM00: str + :cvar STATE: "STATE" + :vartype STATE: str + """ + + GMLID = "gml_id" + NAME = "NAME" + COSEAT = "CO_SEAT" + POP1999 = "POP_1999" + POPSYM99 = "POP_SYM_99" + POP2000 = "POP_2000" + POPSYM00 = "POP_SYM_00" + STATE = "STATE" + + def list(): + """Lists all category values. + + :return: A list of all category values. + :rtype: list + """ + return list( + map( + lambda x: x.value, + GetUtahCityLocationsFeaturesProperties._member_map_.values(), + ) + ) diff --git a/src/geobeyond_sdk/models/job_control_options.py b/src/geobeyond_sdk/models/job_control_options.py new file mode 100644 index 0000000..6a89f82 --- /dev/null +++ b/src/geobeyond_sdk/models/job_control_options.py @@ -0,0 +1,27 @@ +# This file was generated by liblab | https://liblab.com/ + +from enum import Enum + + +class JobControlOptions(Enum): + """An enumeration representing different categories. + + :cvar SYNCEXECUTE: "sync-execute" + :vartype SYNCEXECUTE: str + :cvar ASYNCEXECUTE: "async-execute" + :vartype ASYNCEXECUTE: str + :cvar DISMISS: "dismiss" + :vartype DISMISS: str + """ + + SYNCEXECUTE = "sync-execute" + ASYNCEXECUTE = "async-execute" + DISMISS = "dismiss" + + def list(): + """Lists all category values. + + :return: A list of all category values. + :rtype: list + """ + return list(map(lambda x: x.value, JobControlOptions._member_map_.values())) diff --git a/src/geobeyond_sdk/models/landing_page.py b/src/geobeyond_sdk/models/landing_page.py new file mode 100644 index 0000000..538c2a8 --- /dev/null +++ b/src/geobeyond_sdk/models/landing_page.py @@ -0,0 +1,36 @@ +# This file was generated by liblab | https://liblab.com/ + +from __future__ import annotations +from typing import List +from .utils.json_map import JsonMap +from .utils.base_model import BaseModel +from .link import Link + + +@JsonMap({}) +class LandingPage(BaseModel): + """LandingPage + + :param title: title, defaults to None + :type title: str, optional + :param description: description, defaults to None + :type description: str, optional + :param links: links + :type links: List[Link] + """ + + def __init__(self, links: List[Link], title: str = None, description: str = None): + """LandingPage + + :param title: title, defaults to None + :type title: str, optional + :param description: description, defaults to None + :type description: str, optional + :param links: links + :type links: List[Link] + """ + if title is not None: + self.title = title + if description is not None: + self.description = description + self.links = self._define_list(links, Link) diff --git a/src/geobeyond_sdk/models/lang.py b/src/geobeyond_sdk/models/lang.py new file mode 100644 index 0000000..5e2e39e --- /dev/null +++ b/src/geobeyond_sdk/models/lang.py @@ -0,0 +1,21 @@ +# This file was generated by liblab | https://liblab.com/ + +from enum import Enum + + +class Lang(Enum): + """An enumeration representing different categories. + + :cvar ENUS: "en-US" + :vartype ENUS: str + """ + + ENUS = "en-US" + + def list(): + """Lists all category values. + + :return: A list of all category values. + :rtype: list + """ + return list(map(lambda x: x.value, Lang._member_map_.values())) diff --git a/src/geobeyond_sdk/models/linestring_geo_json.py b/src/geobeyond_sdk/models/linestring_geo_json.py new file mode 100644 index 0000000..03c0a49 --- /dev/null +++ b/src/geobeyond_sdk/models/linestring_geo_json.py @@ -0,0 +1,46 @@ +# This file was generated by liblab | https://liblab.com/ + +from enum import Enum +from typing import List +from .utils.json_map import JsonMap +from .utils.base_model import BaseModel + + +class LinestringGeoJsonType(Enum): + """An enumeration representing different categories. + + :cvar LINESTRING: "LineString" + :vartype LINESTRING: str + """ + + LINESTRING = "LineString" + + def list(): + """Lists all category values. + + :return: A list of all category values. + :rtype: list + """ + return list(map(lambda x: x.value, LinestringGeoJsonType._member_map_.values())) + + +@JsonMap({"type_": "type"}) +class LinestringGeoJson(BaseModel): + """LinestringGeoJson + + :param type_: type_ + :type type_: LinestringGeoJsonType + :param coordinates: coordinates + :type coordinates: List[List[float]] + """ + + def __init__(self, type_: LinestringGeoJsonType, coordinates: List[List[float]]): + """LinestringGeoJson + + :param type_: type_ + :type type_: LinestringGeoJsonType + :param coordinates: coordinates + :type coordinates: List[List[float]] + """ + self.type_ = self._enum_matching(type_, LinestringGeoJsonType.list(), "type_") + self.coordinates = coordinates diff --git a/src/geobeyond_sdk/models/link.py b/src/geobeyond_sdk/models/link.py new file mode 100644 index 0000000..b2c6d57 --- /dev/null +++ b/src/geobeyond_sdk/models/link.py @@ -0,0 +1,59 @@ +# This file was generated by liblab | https://liblab.com/ + +from .utils.json_map import JsonMap +from .utils.base_model import BaseModel + + +@JsonMap({"type_": "type"}) +class Link(BaseModel): + """Link + + :param href: href + :type href: str + :param rel: rel, defaults to None + :type rel: str, optional + :param type_: type_, defaults to None + :type type_: str, optional + :param hreflang: hreflang, defaults to None + :type hreflang: str, optional + :param title: title, defaults to None + :type title: str, optional + :param length: length, defaults to None + :type length: int, optional + """ + + def __init__( + self, + href: str, + rel: str = None, + type_: str = None, + hreflang: str = None, + title: str = None, + length: int = None, + ): + """Link + + :param href: href + :type href: str + :param rel: rel, defaults to None + :type rel: str, optional + :param type_: type_, defaults to None + :type type_: str, optional + :param hreflang: hreflang, defaults to None + :type hreflang: str, optional + :param title: title, defaults to None + :type title: str, optional + :param length: length, defaults to None + :type length: int, optional + """ + self.href = href + if rel is not None: + self.rel = rel + if type_ is not None: + self.type_ = type_ + if hreflang is not None: + self.hreflang = hreflang + if title is not None: + self.title = title + if length is not None: + self.length = length diff --git a/src/geobeyond_sdk/models/link_2.py b/src/geobeyond_sdk/models/link_2.py new file mode 100644 index 0000000..6c36851 --- /dev/null +++ b/src/geobeyond_sdk/models/link_2.py @@ -0,0 +1,72 @@ +# This file was generated by liblab | https://liblab.com/ + +from .utils.json_map import JsonMap +from .utils.base_model import BaseModel + + +@JsonMap({"type_": "type", "var_base": "varBase"}) +class Link2(BaseModel): + """Link2 + + :param href: Supplies the URI to a remote resource (or resource fragment). + :type href: str + :param rel: The type or semantics of the relation. + :type rel: str + :param type_: A hint indicating what the media type of the result of dereferencing the link should be., defaults to None + :type type_: str, optional + :param templated: This flag set to true if the link is a URL template., defaults to None + :type templated: bool, optional + :param var_base: A base path to retrieve semantic information about the variables used in URL template., defaults to None + :type var_base: str, optional + :param hreflang: A hint indicating what the language of the result of dereferencing the link should be., defaults to None + :type hreflang: str, optional + :param title: Used to label the destination of a link such that it can be used as a human-readable identifier., defaults to None + :type title: str, optional + :param length: length, defaults to None + :type length: int, optional + """ + + def __init__( + self, + href: str, + rel: str, + type_: str = None, + templated: bool = None, + var_base: str = None, + hreflang: str = None, + title: str = None, + length: int = None, + ): + """Link2 + + :param href: Supplies the URI to a remote resource (or resource fragment). + :type href: str + :param rel: The type or semantics of the relation. + :type rel: str + :param type_: A hint indicating what the media type of the result of dereferencing the link should be., defaults to None + :type type_: str, optional + :param templated: This flag set to true if the link is a URL template., defaults to None + :type templated: bool, optional + :param var_base: A base path to retrieve semantic information about the variables used in URL template., defaults to None + :type var_base: str, optional + :param hreflang: A hint indicating what the language of the result of dereferencing the link should be., defaults to None + :type hreflang: str, optional + :param title: Used to label the destination of a link such that it can be used as a human-readable identifier., defaults to None + :type title: str, optional + :param length: length, defaults to None + :type length: int, optional + """ + self.href = href + self.rel = rel + if type_ is not None: + self.type_ = type_ + if templated is not None: + self.templated = templated + if var_base is not None: + self.var_base = var_base + if hreflang is not None: + self.hreflang = hreflang + if title is not None: + self.title = title + if length is not None: + self.length = length diff --git a/src/geobeyond_sdk/models/link_3.py b/src/geobeyond_sdk/models/link_3.py new file mode 100644 index 0000000..1ab6f3f --- /dev/null +++ b/src/geobeyond_sdk/models/link_3.py @@ -0,0 +1,52 @@ +# This file was generated by liblab | https://liblab.com/ + +from .utils.json_map import JsonMap +from .utils.base_model import BaseModel + + +@JsonMap({"type_": "type"}) +class Link3(BaseModel): + """Link3 + + :param href: href + :type href: str + :param rel: rel, defaults to None + :type rel: str, optional + :param type_: type_, defaults to None + :type type_: str, optional + :param hreflang: hreflang, defaults to None + :type hreflang: str, optional + :param title: title, defaults to None + :type title: str, optional + """ + + def __init__( + self, + href: str, + rel: str = None, + type_: str = None, + hreflang: str = None, + title: str = None, + ): + """Link3 + + :param href: href + :type href: str + :param rel: rel, defaults to None + :type rel: str, optional + :param type_: type_, defaults to None + :type type_: str, optional + :param hreflang: hreflang, defaults to None + :type hreflang: str, optional + :param title: title, defaults to None + :type title: str, optional + """ + self.href = href + if rel is not None: + self.rel = rel + if type_ is not None: + self.type_ = type_ + if hreflang is not None: + self.hreflang = hreflang + if title is not None: + self.title = title diff --git a/src/geobeyond_sdk/models/metadata.py b/src/geobeyond_sdk/models/metadata.py new file mode 100644 index 0000000..d95ae7c --- /dev/null +++ b/src/geobeyond_sdk/models/metadata.py @@ -0,0 +1,34 @@ +# This file was generated by liblab | https://liblab.com/ + +from .utils.json_map import JsonMap +from .utils.base_model import BaseModel + + +@JsonMap({}) +class Metadata(BaseModel): + """Metadata + + :param title: title, defaults to None + :type title: str, optional + :param role: role, defaults to None + :type role: str, optional + :param href: href, defaults to None + :type href: str, optional + """ + + def __init__(self, title: str = None, role: str = None, href: str = None): + """Metadata + + :param title: title, defaults to None + :type title: str, optional + :param role: role, defaults to None + :type role: str, optional + :param href: href, defaults to None + :type href: str, optional + """ + if title is not None: + self.title = title + if role is not None: + self.role = role + if href is not None: + self.href = href diff --git a/src/geobeyond_sdk/models/multilinestring_geo_json.py b/src/geobeyond_sdk/models/multilinestring_geo_json.py new file mode 100644 index 0000000..476e7bd --- /dev/null +++ b/src/geobeyond_sdk/models/multilinestring_geo_json.py @@ -0,0 +1,52 @@ +# This file was generated by liblab | https://liblab.com/ + +from enum import Enum +from typing import List +from .utils.json_map import JsonMap +from .utils.base_model import BaseModel + + +class MultilinestringGeoJsonType(Enum): + """An enumeration representing different categories. + + :cvar MULTILINESTRING: "MultiLineString" + :vartype MULTILINESTRING: str + """ + + MULTILINESTRING = "MultiLineString" + + def list(): + """Lists all category values. + + :return: A list of all category values. + :rtype: list + """ + return list( + map(lambda x: x.value, MultilinestringGeoJsonType._member_map_.values()) + ) + + +@JsonMap({"type_": "type"}) +class MultilinestringGeoJson(BaseModel): + """MultilinestringGeoJson + + :param type_: type_ + :type type_: MultilinestringGeoJsonType + :param coordinates: coordinates + :type coordinates: List[List[List[float]]] + """ + + def __init__( + self, type_: MultilinestringGeoJsonType, coordinates: List[List[List[float]]] + ): + """MultilinestringGeoJson + + :param type_: type_ + :type type_: MultilinestringGeoJsonType + :param coordinates: coordinates + :type coordinates: List[List[List[float]]] + """ + self.type_ = self._enum_matching( + type_, MultilinestringGeoJsonType.list(), "type_" + ) + self.coordinates = coordinates diff --git a/src/geobeyond_sdk/models/multipoint_geo_json.py b/src/geobeyond_sdk/models/multipoint_geo_json.py new file mode 100644 index 0000000..e8360a8 --- /dev/null +++ b/src/geobeyond_sdk/models/multipoint_geo_json.py @@ -0,0 +1,46 @@ +# This file was generated by liblab | https://liblab.com/ + +from enum import Enum +from typing import List +from .utils.json_map import JsonMap +from .utils.base_model import BaseModel + + +class MultipointGeoJsonType(Enum): + """An enumeration representing different categories. + + :cvar MULTIPOINT: "MultiPoint" + :vartype MULTIPOINT: str + """ + + MULTIPOINT = "MultiPoint" + + def list(): + """Lists all category values. + + :return: A list of all category values. + :rtype: list + """ + return list(map(lambda x: x.value, MultipointGeoJsonType._member_map_.values())) + + +@JsonMap({"type_": "type"}) +class MultipointGeoJson(BaseModel): + """MultipointGeoJson + + :param type_: type_ + :type type_: MultipointGeoJsonType + :param coordinates: coordinates + :type coordinates: List[List[float]] + """ + + def __init__(self, type_: MultipointGeoJsonType, coordinates: List[List[float]]): + """MultipointGeoJson + + :param type_: type_ + :type type_: MultipointGeoJsonType + :param coordinates: coordinates + :type coordinates: List[List[float]] + """ + self.type_ = self._enum_matching(type_, MultipointGeoJsonType.list(), "type_") + self.coordinates = coordinates diff --git a/src/geobeyond_sdk/models/multipolygon_geo_json.py b/src/geobeyond_sdk/models/multipolygon_geo_json.py new file mode 100644 index 0000000..a32fd91 --- /dev/null +++ b/src/geobeyond_sdk/models/multipolygon_geo_json.py @@ -0,0 +1,50 @@ +# This file was generated by liblab | https://liblab.com/ + +from enum import Enum +from typing import List +from .utils.json_map import JsonMap +from .utils.base_model import BaseModel + + +class MultipolygonGeoJsonType(Enum): + """An enumeration representing different categories. + + :cvar MULTIPOLYGON: "MultiPolygon" + :vartype MULTIPOLYGON: str + """ + + MULTIPOLYGON = "MultiPolygon" + + def list(): + """Lists all category values. + + :return: A list of all category values. + :rtype: list + """ + return list( + map(lambda x: x.value, MultipolygonGeoJsonType._member_map_.values()) + ) + + +@JsonMap({"type_": "type"}) +class MultipolygonGeoJson(BaseModel): + """MultipolygonGeoJson + + :param type_: type_ + :type type_: MultipolygonGeoJsonType + :param coordinates: coordinates + :type coordinates: List[List[List[List[float]]]] + """ + + def __init__( + self, type_: MultipolygonGeoJsonType, coordinates: List[List[List[List[float]]]] + ): + """MultipolygonGeoJson + + :param type_: type_ + :type type_: MultipolygonGeoJsonType + :param coordinates: coordinates + :type coordinates: List[List[List[List[float]]]] + """ + self.type_ = self._enum_matching(type_, MultipolygonGeoJsonType.list(), "type_") + self.coordinates = coordinates diff --git a/src/geobeyond_sdk/models/nd_array.py b/src/geobeyond_sdk/models/nd_array.py new file mode 100644 index 0000000..8a29e91 --- /dev/null +++ b/src/geobeyond_sdk/models/nd_array.py @@ -0,0 +1,51 @@ +# This file was generated by liblab | https://liblab.com/ + +from typing import List +from .utils.json_map import JsonMap +from .utils.base_model import BaseModel + + +@JsonMap({"type_": "type", "data_type": "dataType", "axis_names": "axisNames"}) +class NdArray(BaseModel): + """Object representing a multidimensional (>= 0D) array with named axes, encoded as a flat one-dimensional array in row-major order + + :param type_: type_ + :type type_: any + :param data_type: data_type + :type data_type: any + :param shape: shape, defaults to None + :type shape: List[float], optional + :param axis_names: axis_names, defaults to None + :type axis_names: List[str], optional + :param values: values + :type values: List[float] + """ + + def __init__( + self, + type_: any, + data_type: any, + values: List[float], + shape: List[float] = None, + axis_names: List[str] = None, + ): + """Object representing a multidimensional (>= 0D) array with named axes, encoded as a flat one-dimensional array in row-major order + + :param type_: type_ + :type type_: any + :param data_type: data_type + :type data_type: any + :param shape: shape, defaults to None + :type shape: List[float], optional + :param axis_names: axis_names, defaults to None + :type axis_names: List[str], optional + :param values: values + :type values: List[float] + """ + self.type_ = type_ + self.data_type = data_type + if shape is not None: + self.shape = shape + if axis_names is not None: + self.axis_names = axis_names + self.values = values diff --git a/src/geobeyond_sdk/models/point_geo_json.py b/src/geobeyond_sdk/models/point_geo_json.py new file mode 100644 index 0000000..58677d9 --- /dev/null +++ b/src/geobeyond_sdk/models/point_geo_json.py @@ -0,0 +1,46 @@ +# This file was generated by liblab | https://liblab.com/ + +from enum import Enum +from typing import List +from .utils.json_map import JsonMap +from .utils.base_model import BaseModel + + +class PointGeoJsonType(Enum): + """An enumeration representing different categories. + + :cvar POINT: "Point" + :vartype POINT: str + """ + + POINT = "Point" + + def list(): + """Lists all category values. + + :return: A list of all category values. + :rtype: list + """ + return list(map(lambda x: x.value, PointGeoJsonType._member_map_.values())) + + +@JsonMap({"type_": "type"}) +class PointGeoJson(BaseModel): + """PointGeoJson + + :param type_: type_ + :type type_: PointGeoJsonType + :param coordinates: coordinates + :type coordinates: List[float] + """ + + def __init__(self, type_: PointGeoJsonType, coordinates: List[float]): + """PointGeoJson + + :param type_: type_ + :type type_: PointGeoJsonType + :param coordinates: coordinates + :type coordinates: List[float] + """ + self.type_ = self._enum_matching(type_, PointGeoJsonType.list(), "type_") + self.coordinates = coordinates diff --git a/src/geobeyond_sdk/models/polygon_geo_json.py b/src/geobeyond_sdk/models/polygon_geo_json.py new file mode 100644 index 0000000..1437ee4 --- /dev/null +++ b/src/geobeyond_sdk/models/polygon_geo_json.py @@ -0,0 +1,46 @@ +# This file was generated by liblab | https://liblab.com/ + +from enum import Enum +from typing import List +from .utils.json_map import JsonMap +from .utils.base_model import BaseModel + + +class PolygonGeoJsonType(Enum): + """An enumeration representing different categories. + + :cvar POLYGON: "Polygon" + :vartype POLYGON: str + """ + + POLYGON = "Polygon" + + def list(): + """Lists all category values. + + :return: A list of all category values. + :rtype: list + """ + return list(map(lambda x: x.value, PolygonGeoJsonType._member_map_.values())) + + +@JsonMap({"type_": "type"}) +class PolygonGeoJson(BaseModel): + """PolygonGeoJson + + :param type_: type_ + :type type_: PolygonGeoJsonType + :param coordinates: coordinates + :type coordinates: List[List[List[float]]] + """ + + def __init__(self, type_: PolygonGeoJsonType, coordinates: List[List[List[float]]]): + """PolygonGeoJson + + :param type_: type_ + :type type_: PolygonGeoJsonType + :param coordinates: coordinates + :type coordinates: List[List[List[float]]] + """ + self.type_ = self._enum_matching(type_, PolygonGeoJsonType.list(), "type_") + self.coordinates = coordinates diff --git a/src/geobeyond_sdk/models/process_list.py b/src/geobeyond_sdk/models/process_list.py new file mode 100644 index 0000000..ed5f015 --- /dev/null +++ b/src/geobeyond_sdk/models/process_list.py @@ -0,0 +1,30 @@ +# This file was generated by liblab | https://liblab.com/ + +from __future__ import annotations +from typing import List +from .utils.json_map import JsonMap +from .utils.base_model import BaseModel +from .process_summary import ProcessSummary +from .link_3 import Link3 + + +@JsonMap({}) +class ProcessList(BaseModel): + """ProcessList + + :param processes: processes + :type processes: List[ProcessSummary] + :param links: links + :type links: List[Link3] + """ + + def __init__(self, processes: List[ProcessSummary], links: List[Link3]): + """ProcessList + + :param processes: processes + :type processes: List[ProcessSummary] + :param links: links + :type links: List[Link3] + """ + self.processes = self._define_list(processes, ProcessSummary) + self.links = self._define_list(links, Link3) diff --git a/src/geobeyond_sdk/models/process_summary.py b/src/geobeyond_sdk/models/process_summary.py new file mode 100644 index 0000000..f36da98 --- /dev/null +++ b/src/geobeyond_sdk/models/process_summary.py @@ -0,0 +1,148 @@ +# This file was generated by liblab | https://liblab.com/ + +from __future__ import annotations +from typing import List +from .utils.json_map import JsonMap +from .utils.base_model import BaseModel +from .metadata import Metadata +from .job_control_options import JobControlOptions +from .transmission_mode import TransmissionMode +from .link_3 import Link3 +from .additional_parameter import AdditionalParameter + + +@JsonMap({}) +class AdditionalParameters(BaseModel): + """AdditionalParameters + + :param title: title, defaults to None + :type title: str, optional + :param role: role, defaults to None + :type role: str, optional + :param href: href, defaults to None + :type href: str, optional + :param parameters: parameters, defaults to None + :type parameters: List[AdditionalParameter], optional + """ + + def __init__( + self, + title: str = None, + role: str = None, + href: str = None, + parameters: List[AdditionalParameter] = None, + ): + """AdditionalParameters + + :param title: title, defaults to None + :type title: str, optional + :param role: role, defaults to None + :type role: str, optional + :param href: href, defaults to None + :type href: str, optional + :param parameters: parameters, defaults to None + :type parameters: List[AdditionalParameter], optional + """ + if title is not None: + self.title = title + if role is not None: + self.role = role + if href is not None: + self.href = href + if parameters is not None: + self.parameters = self._define_list(parameters, AdditionalParameter) + + +@JsonMap( + { + "additional_parameters": "additionalParameters", + "id_": "id", + "job_control_options": "jobControlOptions", + "output_transmission": "outputTransmission", + } +) +class ProcessSummary(BaseModel): + """ProcessSummary + + :param title: title, defaults to None + :type title: str, optional + :param description: description, defaults to None + :type description: str, optional + :param keywords: keywords, defaults to None + :type keywords: List[str], optional + :param metadata: metadata, defaults to None + :type metadata: List[Metadata], optional + :param additional_parameters: additional_parameters, defaults to None + :type additional_parameters: AdditionalParameters, optional + :param id_: id_ + :type id_: str + :param version: version + :type version: str + :param job_control_options: job_control_options, defaults to None + :type job_control_options: List[JobControlOptions], optional + :param output_transmission: output_transmission, defaults to None + :type output_transmission: List[TransmissionMode], optional + :param links: links, defaults to None + :type links: List[Link3], optional + """ + + def __init__( + self, + id_: str, + version: str, + title: str = None, + description: str = None, + keywords: List[str] = None, + metadata: List[Metadata] = None, + additional_parameters: AdditionalParameters = None, + job_control_options: List[JobControlOptions] = None, + output_transmission: List[TransmissionMode] = None, + links: List[Link3] = None, + ): + """ProcessSummary + + :param title: title, defaults to None + :type title: str, optional + :param description: description, defaults to None + :type description: str, optional + :param keywords: keywords, defaults to None + :type keywords: List[str], optional + :param metadata: metadata, defaults to None + :type metadata: List[Metadata], optional + :param additional_parameters: additional_parameters, defaults to None + :type additional_parameters: AdditionalParameters, optional + :param id_: id_ + :type id_: str + :param version: version + :type version: str + :param job_control_options: job_control_options, defaults to None + :type job_control_options: List[JobControlOptions], optional + :param output_transmission: output_transmission, defaults to None + :type output_transmission: List[TransmissionMode], optional + :param links: links, defaults to None + :type links: List[Link3], optional + """ + if title is not None: + self.title = title + if description is not None: + self.description = description + if keywords is not None: + self.keywords = keywords + if metadata is not None: + self.metadata = self._define_list(metadata, Metadata) + if additional_parameters is not None: + self.additional_parameters = self._define_object( + additional_parameters, AdditionalParameters + ) + self.id_ = id_ + self.version = version + if job_control_options is not None: + self.job_control_options = self._define_list( + job_control_options, JobControlOptions + ) + if output_transmission is not None: + self.output_transmission = self._define_list( + output_transmission, TransmissionMode + ) + if links is not None: + self.links = self._define_list(links, Link3) diff --git a/src/geobeyond_sdk/models/query_cube_icoads_sst_bbox.py b/src/geobeyond_sdk/models/query_cube_icoads_sst_bbox.py new file mode 100644 index 0000000..fa06f7e --- /dev/null +++ b/src/geobeyond_sdk/models/query_cube_icoads_sst_bbox.py @@ -0,0 +1,12 @@ +# This file was generated by liblab | https://liblab.com/ + +from typing import Union +from typing import List +from .utils.one_of_base_model import OneOfBaseModel + + +class QueryCubeIcoadsSstBboxGuard(OneOfBaseModel): + class_list = {"List[float]": List[float], "List[float]": List[float]} + + +QueryCubeIcoadsSstBbox = Union[List[float], List[float]] diff --git a/src/geobeyond_sdk/models/queryable.py b/src/geobeyond_sdk/models/queryable.py new file mode 100644 index 0000000..7a1441d --- /dev/null +++ b/src/geobeyond_sdk/models/queryable.py @@ -0,0 +1,58 @@ +# This file was generated by liblab | https://liblab.com/ + +from .utils.json_map import JsonMap +from .utils.base_model import BaseModel + + +@JsonMap({"type_": "type", "type_ref": "type-ref"}) +class Queryable(BaseModel): + """Queryable + + :param description: a human-readable narrative describing the queryable, defaults to None + :type description: str, optional + :param language: the language used for the title and description, defaults to None + :type language: str, optional + :param queryable: the token that may be used in a CQL predicate + :type queryable: str + :param title: a human readable title for the queryable, defaults to None + :type title: str, optional + :param type_: the data type of the queryable + :type type_: str + :param type_ref: a reference to the formal definition of the type, defaults to None + :type type_ref: str, optional + """ + + def __init__( + self, + queryable: str, + type_: str, + description: str = None, + language: str = None, + title: str = None, + type_ref: str = None, + ): + """Queryable + + :param description: a human-readable narrative describing the queryable, defaults to None + :type description: str, optional + :param language: the language used for the title and description, defaults to None + :type language: str, optional + :param queryable: the token that may be used in a CQL predicate + :type queryable: str + :param title: a human readable title for the queryable, defaults to None + :type title: str, optional + :param type_: the data type of the queryable + :type type_: str + :param type_ref: a reference to the formal definition of the type, defaults to None + :type type_ref: str, optional + """ + if description is not None: + self.description = description + if language is not None: + self.language = language + self.queryable = queryable + if title is not None: + self.title = title + self.type_ = type_ + if type_ref is not None: + self.type_ref = type_ref diff --git a/src/geobeyond_sdk/models/queryables.py b/src/geobeyond_sdk/models/queryables.py new file mode 100644 index 0000000..8668db1 --- /dev/null +++ b/src/geobeyond_sdk/models/queryables.py @@ -0,0 +1,24 @@ +# This file was generated by liblab | https://liblab.com/ + +from __future__ import annotations +from typing import List +from .utils.json_map import JsonMap +from .utils.base_model import BaseModel +from .queryable import Queryable + + +@JsonMap({}) +class Queryables(BaseModel): + """Queryables + + :param queryables: queryables + :type queryables: List[Queryable] + """ + + def __init__(self, queryables: List[Queryable]): + """Queryables + + :param queryables: queryables + :type queryables: List[Queryable] + """ + self.queryables = self._define_list(queryables, Queryable) diff --git a/src/geobeyond_sdk/models/reference_system.py b/src/geobeyond_sdk/models/reference_system.py new file mode 100644 index 0000000..59fb7e3 --- /dev/null +++ b/src/geobeyond_sdk/models/reference_system.py @@ -0,0 +1,21 @@ +# This file was generated by liblab | https://liblab.com/ + +from .utils.json_map import JsonMap +from .utils.base_model import BaseModel + + +@JsonMap({"type_": "type"}) +class ReferenceSystem(BaseModel): + """ReferenceSystem + + :param type_: type_ + :type type_: str + """ + + def __init__(self, type_: str): + """ReferenceSystem + + :param type_: type_ + :type type_: str + """ + self.type_ = type_ diff --git a/src/geobeyond_sdk/models/reference_system_connection.py b/src/geobeyond_sdk/models/reference_system_connection.py new file mode 100644 index 0000000..6e538f4 --- /dev/null +++ b/src/geobeyond_sdk/models/reference_system_connection.py @@ -0,0 +1,29 @@ +# This file was generated by liblab | https://liblab.com/ + +from __future__ import annotations +from typing import List +from .utils.json_map import JsonMap +from .utils.base_model import BaseModel +from .reference_system import ReferenceSystem + + +@JsonMap({}) +class ReferenceSystemConnection(BaseModel): + """Reference System Connection object: connects coordinates to reference systems + + :param coordinates: coordinates + :type coordinates: List[str] + :param system: system + :type system: ReferenceSystem + """ + + def __init__(self, coordinates: List[str], system: ReferenceSystem): + """Reference System Connection object: connects coordinates to reference systems + + :param coordinates: coordinates + :type coordinates: List[str] + :param system: system + :type system: ReferenceSystem + """ + self.coordinates = coordinates + self.system = self._define_object(system, ReferenceSystem) diff --git a/src/geobeyond_sdk/models/status_code.py b/src/geobeyond_sdk/models/status_code.py new file mode 100644 index 0000000..85d57b4 --- /dev/null +++ b/src/geobeyond_sdk/models/status_code.py @@ -0,0 +1,33 @@ +# This file was generated by liblab | https://liblab.com/ + +from enum import Enum + + +class StatusCode(Enum): + """An enumeration representing different categories. + + :cvar ACCEPTED: "accepted" + :vartype ACCEPTED: str + :cvar RUNNING: "running" + :vartype RUNNING: str + :cvar SUCCESSFUL: "successful" + :vartype SUCCESSFUL: str + :cvar FAILED: "failed" + :vartype FAILED: str + :cvar DISMISSED: "dismissed" + :vartype DISMISSED: str + """ + + ACCEPTED = "accepted" + RUNNING = "running" + SUCCESSFUL = "successful" + FAILED = "failed" + DISMISSED = "dismissed" + + def list(): + """Lists all category values. + + :return: A list of all category values. + :rtype: list + """ + return list(map(lambda x: x.value, StatusCode._member_map_.values())) diff --git a/src/geobeyond_sdk/models/status_info.py b/src/geobeyond_sdk/models/status_info.py new file mode 100644 index 0000000..cb22d07 --- /dev/null +++ b/src/geobeyond_sdk/models/status_info.py @@ -0,0 +1,115 @@ +# This file was generated by liblab | https://liblab.com/ + +from __future__ import annotations +from enum import Enum +from typing import List +from .utils.json_map import JsonMap +from .utils.base_model import BaseModel +from .status_code import StatusCode +from .link_3 import Link3 + + +class StatusInfoType(Enum): + """An enumeration representing different categories. + + :cvar PROCESS: "process" + :vartype PROCESS: str + """ + + PROCESS = "process" + + def list(): + """Lists all category values. + + :return: A list of all category values. + :rtype: list + """ + return list(map(lambda x: x.value, StatusInfoType._member_map_.values())) + + +@JsonMap({"process_id": "processID", "type_": "type", "job_id": "jobID"}) +class StatusInfo(BaseModel): + """StatusInfo + + :param process_id: process_id, defaults to None + :type process_id: str, optional + :param type_: type_ + :type type_: StatusInfoType + :param job_id: job_id + :type job_id: str + :param status: status + :type status: StatusCode + :param message: message, defaults to None + :type message: str, optional + :param created: created, defaults to None + :type created: str, optional + :param started: started, defaults to None + :type started: str, optional + :param finished: finished, defaults to None + :type finished: str, optional + :param updated: updated, defaults to None + :type updated: str, optional + :param progress: progress, defaults to None + :type progress: int, optional + :param links: links, defaults to None + :type links: List[Link3], optional + """ + + def __init__( + self, + type_: StatusInfoType, + job_id: str, + status: StatusCode, + process_id: str = None, + message: str = None, + created: str = None, + started: str = None, + finished: str = None, + updated: str = None, + progress: int = None, + links: List[Link3] = None, + ): + """StatusInfo + + :param process_id: process_id, defaults to None + :type process_id: str, optional + :param type_: type_ + :type type_: StatusInfoType + :param job_id: job_id + :type job_id: str + :param status: status + :type status: StatusCode + :param message: message, defaults to None + :type message: str, optional + :param created: created, defaults to None + :type created: str, optional + :param started: started, defaults to None + :type started: str, optional + :param finished: finished, defaults to None + :type finished: str, optional + :param updated: updated, defaults to None + :type updated: str, optional + :param progress: progress, defaults to None + :type progress: int, optional + :param links: links, defaults to None + :type links: List[Link3], optional + """ + if process_id is not None: + self.process_id = process_id + self.type_ = self._enum_matching(type_, StatusInfoType.list(), "type_") + self.job_id = job_id + self.status = self._enum_matching(status, StatusCode.list(), "status") + if message is not None: + self.message = message + if created is not None: + self.created = created + if started is not None: + self.started = started + if finished is not None: + self.finished = finished + if updated is not None: + self.updated = updated + if progress is not None: + self.progress = self._define_number("progress", progress, ge=0, le=100) + if links is not None: + self.links = self._define_list(links, Link3) diff --git a/src/geobeyond_sdk/models/subscriber.py b/src/geobeyond_sdk/models/subscriber.py new file mode 100644 index 0000000..dafd0bc --- /dev/null +++ b/src/geobeyond_sdk/models/subscriber.py @@ -0,0 +1,53 @@ +# This file was generated by liblab | https://liblab.com/ + +from .utils.json_map import JsonMap +from .utils.base_model import BaseModel + + +@JsonMap( + { + "success_uri": "successUri", + "in_progress_uri": "inProgressUri", + "failed_uri": "failedUri", + } +) +class Subscriber(BaseModel): + """Optional URIs for callbacks for this job. + + Support for this parameter is not required and the parameter may be + removed from the API definition, if conformance class **'callback'** + is not listed in the conformance declaration under `/conformance`. + + :param success_uri: success_uri, defaults to None + :type success_uri: str, optional + :param in_progress_uri: in_progress_uri, defaults to None + :type in_progress_uri: str, optional + :param failed_uri: failed_uri, defaults to None + :type failed_uri: str, optional + """ + + def __init__( + self, + success_uri: str = None, + in_progress_uri: str = None, + failed_uri: str = None, + ): + """Optional URIs for callbacks for this job. + + Support for this parameter is not required and the parameter may be + removed from the API definition, if conformance class **'callback'** + is not listed in the conformance declaration under `/conformance`. + + :param success_uri: success_uri, defaults to None + :type success_uri: str, optional + :param in_progress_uri: in_progress_uri, defaults to None + :type in_progress_uri: str, optional + :param failed_uri: failed_uri, defaults to None + :type failed_uri: str, optional + """ + if success_uri is not None: + self.success_uri = success_uri + if in_progress_uri is not None: + self.in_progress_uri = in_progress_uri + if failed_uri is not None: + self.failed_uri = failed_uri diff --git a/src/geobeyond_sdk/models/tile_matrix_sets.py b/src/geobeyond_sdk/models/tile_matrix_sets.py new file mode 100644 index 0000000..132ad8a --- /dev/null +++ b/src/geobeyond_sdk/models/tile_matrix_sets.py @@ -0,0 +1,30 @@ +# This file was generated by liblab | https://liblab.com/ + +from enum import Enum + + +class TileMatrixSets(Enum): + """An enumeration representing different categories. + + :cvar WEBMERCATORQUAD: "WebMercatorQuad" + :vartype WEBMERCATORQUAD: str + :cvar WORLDCRS84QUAD: "WorldCRS84Quad" + :vartype WORLDCRS84QUAD: str + :cvar GNOSISGLOBALGRID: "GNOSISGlobalGrid" + :vartype GNOSISGLOBALGRID: str + :cvar WORLDMERCATORWGS84QUAD: "WorldMercatorWGS84Quad" + :vartype WORLDMERCATORWGS84QUAD: str + """ + + WEBMERCATORQUAD = "WebMercatorQuad" + WORLDCRS84QUAD = "WorldCRS84Quad" + GNOSISGLOBALGRID = "GNOSISGlobalGrid" + WORLDMERCATORWGS84QUAD = "WorldMercatorWGS84Quad" + + def list(): + """Lists all category values. + + :return: A list of all category values. + :rtype: list + """ + return list(map(lambda x: x.value, TileMatrixSets._member_map_.values())) diff --git a/src/geobeyond_sdk/models/tilematrixsetlink.py b/src/geobeyond_sdk/models/tilematrixsetlink.py new file mode 100644 index 0000000..0f55638 --- /dev/null +++ b/src/geobeyond_sdk/models/tilematrixsetlink.py @@ -0,0 +1,29 @@ +# This file was generated by liblab | https://liblab.com/ + +from .utils.json_map import JsonMap +from .utils.base_model import BaseModel + + +@JsonMap( + {"tile_matrix_set": "tileMatrixSet", "tile_matrix_set_uri": "tileMatrixSetURI"} +) +class Tilematrixsetlink(BaseModel): + """Tilematrixsetlink + + :param tile_matrix_set: tile_matrix_set + :type tile_matrix_set: str + :param tile_matrix_set_uri: tile_matrix_set_uri, defaults to None + :type tile_matrix_set_uri: str, optional + """ + + def __init__(self, tile_matrix_set: str, tile_matrix_set_uri: str = None): + """Tilematrixsetlink + + :param tile_matrix_set: tile_matrix_set + :type tile_matrix_set: str + :param tile_matrix_set_uri: tile_matrix_set_uri, defaults to None + :type tile_matrix_set_uri: str, optional + """ + self.tile_matrix_set = tile_matrix_set + if tile_matrix_set_uri is not None: + self.tile_matrix_set_uri = tile_matrix_set_uri diff --git a/src/geobeyond_sdk/models/tiles.py b/src/geobeyond_sdk/models/tiles.py new file mode 100644 index 0000000..e455308 --- /dev/null +++ b/src/geobeyond_sdk/models/tiles.py @@ -0,0 +1,34 @@ +# This file was generated by liblab | https://liblab.com/ + +from __future__ import annotations +from typing import List +from .utils.json_map import JsonMap +from .utils.base_model import BaseModel +from .link_2 import Link2 +from .tilematrixsetlink import Tilematrixsetlink + + +@JsonMap({"tile_matrix_set_links": "tileMatrixSetLinks"}) +class Tiles(BaseModel): + """Tiles + + :param links: links + :type links: List[Link2] + :param tile_matrix_set_links: tile_matrix_set_links + :type tile_matrix_set_links: List[Tilematrixsetlink] + """ + + def __init__( + self, links: List[Link2], tile_matrix_set_links: List[Tilematrixsetlink] + ): + """Tiles + + :param links: links + :type links: List[Link2] + :param tile_matrix_set_links: tile_matrix_set_links + :type tile_matrix_set_links: List[Tilematrixsetlink] + """ + self.links = self._define_list(links, Link2) + self.tile_matrix_set_links = self._define_list( + tile_matrix_set_links, Tilematrixsetlink + ) diff --git a/src/geobeyond_sdk/models/transmission_mode.py b/src/geobeyond_sdk/models/transmission_mode.py new file mode 100644 index 0000000..6d3b55f --- /dev/null +++ b/src/geobeyond_sdk/models/transmission_mode.py @@ -0,0 +1,24 @@ +# This file was generated by liblab | https://liblab.com/ + +from enum import Enum + + +class TransmissionMode(Enum): + """An enumeration representing different categories. + + :cvar VALUE: "value" + :vartype VALUE: str + :cvar REFERENCE: "reference" + :vartype REFERENCE: str + """ + + VALUE = "value" + REFERENCE = "reference" + + def list(): + """Lists all category values. + + :return: A list of all category values. + :rtype: list + """ + return list(map(lambda x: x.value, TransmissionMode._member_map_.values())) diff --git a/src/geobeyond_sdk/models/ui.py b/src/geobeyond_sdk/models/ui.py new file mode 100644 index 0000000..090c600 --- /dev/null +++ b/src/geobeyond_sdk/models/ui.py @@ -0,0 +1,24 @@ +# This file was generated by liblab | https://liblab.com/ + +from enum import Enum + + +class Ui(Enum): + """An enumeration representing different categories. + + :cvar SWAGGER: "swagger" + :vartype SWAGGER: str + :cvar REDOC: "redoc" + :vartype REDOC: str + """ + + SWAGGER = "swagger" + REDOC = "redoc" + + def list(): + """Lists all category values. + + :return: A list of all category values. + :rtype: list + """ + return list(map(lambda x: x.value, Ui._member_map_.values())) diff --git a/src/geobeyond_sdk/models/utils/__init__.py b/src/geobeyond_sdk/models/utils/__init__.py new file mode 100644 index 0000000..f9c4328 --- /dev/null +++ b/src/geobeyond_sdk/models/utils/__init__.py @@ -0,0 +1 @@ +# This file was generated by liblab | https://liblab.com/ diff --git a/src/geobeyond_sdk/models/utils/base_model.py b/src/geobeyond_sdk/models/utils/base_model.py new file mode 100644 index 0000000..3b50433 --- /dev/null +++ b/src/geobeyond_sdk/models/utils/base_model.py @@ -0,0 +1,311 @@ +# This file was generated by liblab | https://liblab.com/ + +import re +import operator +from typing import List, Union, Type, Any, TypeVar, Optional +from enum import Enum +from .one_of_base_model import OneOfBaseModel + +T = TypeVar("T") + + +class BaseModel: + """ + A base class that most of the models in the SDK inherited from. + """ + + def __init__(self): + pass + + def _define_object(self, input_data: Any, input_class: Type[T]) -> Optional[T]: + """ + Check if the input data is an instance of the input class and return the input data if it is. + Otherwise, return an instance of the input class. + + :param input_data: The input data to be checked. + :param input_class: The class that the input data should be an instance of. + :return: The input data if it is an instance of input_class, otherwise an instance of input_class. + :rtype: object + """ + if input_data is None: + return None + elif isinstance(input_data, input_class): + return input_data + else: + return input_class._unmap(input_data) + + def _define_list( + self, input_data: Optional[List[Any]], list_class: Type[T] + ) -> Optional[List[T]]: + """ + Create a list of instances of a specified class from input data. + :param input_data: The input data to be transformed into a list of instances. + :param list_class: The class that each instance in the list should be an instance of. + :return: A list of instances of list_class. + :rtype: list + """ + + if input_data is None: + return None + + result: List[T] = [] + for item in input_data: + if hasattr(list_class, "__args__") and len(list_class.__args__) > 0: + class_list = self.__create_class_map(list_class) + OneOfBaseModel.class_list = class_list + result.append(OneOfBaseModel.return_one_of(item)) + elif issubclass(list_class, Enum): + result.append( + self._enum_matching(item, list_class.list(), list_class.__name__) + ) + elif isinstance(item, list_class): + result.append(item) + elif isinstance(item, dict): + result.append(list_class._unmap(item)) + else: + result.append(list_class(item)) + return result + + def _define_str( + self, + variable_name: str, + value: Optional[Any], + nullable=False, + pattern: Optional[str] = None, + min_length: Optional[int] = None, + max_length: Optional[int] = None, + ) -> Optional[str]: + """ + Check if a string value is within the specified boundaries and matches a regex pattern. + Return the value if it is, otherwise raise a ValueError. + + :param variable_name: The variable name. + :type variable_name: str + :param value: The value to be checked. + :type value: str + :param nullable: Whether the value can be None. + :type nullable: bool + :param pattern: The regex pattern to match. + :type pattern: str + :param min_length: The minimum length of the value. + :type min_length: int + :param max_length: The maximum length of the value. + :type max_length: int + :param inclusive_lenght_boundary: Whether the length boundaries are inclusive. + :type inclusive_lenght_boundary: bool + + :raises ValueError: If the value is not within the boundaries or does not match the pattern. + + :return: The value if it is within the boundaries and matches the pattern. + :rtype: str + """ + if value is None and not nullable: + raise ValueError(f"{variable_name} cannot be null.") + if value is None: + return None + + if pattern: + self._pattern_matching(value, pattern, variable_name) + + if min_length is not None: + operation = operator.ge + self._boundary_check(variable_name, len(value), min_length, operation, str) + + if max_length is not None: + operation = operator.le + self._boundary_check(variable_name, len(value), max_length, operation, str) + + return value + + def _define_number( + self, + variable_name: str, + value: Optional[Union[float, int]], + nullable=False, + ge: Optional[Union[float, int]] = None, + gt: Optional[Union[float, int]] = None, + le: Optional[Union[float, int]] = None, + lt: Optional[Union[float, int]] = None, + ) -> Optional[Union[float, int]]: + """ + Check if a number value is within the specified boundaries. + Return the value if it is, otherwise raise a ValueError. + + :param variable_name: The variable name. + :type variable_name: str + :param value: The value to be checked. + :type value: Union[float, int] + :param nullable: Whether the value can be None. + :type nullable: bool + :param ge: The minimum value of the number (inclusive). The value must be greater than or equal to this. + :type ge: Union[float, int] + :param gt: The minimum value of the number (exclusive). The value must be greater than this. + :type gt: Union[float, int] + :param le: The maximum value of the number (inclusive). The value must be less than or equal to this. + :type le: Union[float, int] + :param lt: The maximum value of the number (exclusive). The value must be less than this. + :type lt: Union[float, int] + + :raises ValueError: If the value is not within the boundaries. + + :return: The value if it is within the boundaries. + :rtype: Union[float, int] + """ + if value is None and not nullable: + raise ValueError(f"{variable_name} cannot be null.") + + if value is None: + return None + + if ge is not None: + operation = operator.ge + self._boundary_check(variable_name, value, ge, operation, float) + + if gt is not None: + operation = operator.gt + self._boundary_check(variable_name, value, gt, operation, float) + + if le is not None: + operation = operator.le + self._boundary_check(variable_name, value, le, operation, float) + + if lt is not None: + operation = operator.lt + self._boundary_check(variable_name, value, lt, operation, float) + + return value + + def _boundary_check( + self, + variable_name: str, + value: float, + boundary: float, + operation: operator, + value_type: Union[str, float, int], + ) -> Optional[str]: + """ + Checks if a value is within the specified boundaries and returns the value if it is. + + :param variable_name: The variable name. + :type variable_name: str + :param value: The value to be checked. + :type value: Union[str, float, int] + :param boundary: The boundary value to be checked against. + :type boundary: float + :param operator: The operator to be used for the boundary check. + :type operator: operator + :param type: The type of the value. + :type type: Union[str, float, int] + + :raises ValueError: If the value is not within the boundaries. + + :return: The value if it is within the boundaries. + :rtype: Union[str, float, int] + """ + reference = "length" if value_type is str else "value" + if not operation(value, boundary): + raise ValueError( + f"Invalid {reference} for {variable_name}: must satisfy the condition {operation.__name__} {boundary}, received {value}" + ) + + return value + + def _pattern_matching( + self, value: Optional[str], pattern: str, variable_name: str + ) -> Optional[str]: + """ + Checks if a value matches a regex pattern and returns the value if there's a match. + + :param value: The value to be checked. + :type value: str + :param pattern: The regex pattern. + :type pattern: str + :param variable_name: The variable name. + :type variable_name: str + :return: The value if it matches the pattern. + :rtype: str + :raises ValueError: If the value does not match the pattern. + """ + if value is None: + return None + + if re.match(r"{}".format(pattern), value): + return value + else: + raise ValueError( + f"Invalid value for {variable_name}: must match {pattern}, received {value}" + ) + + def _enum_matching( + self, value: Union[str, Enum], enum_values: List[str], variable_name: str + ) -> Union[str, Enum]: + """ + Checks if a value (str or enum) matches the required enum values and returns the value if there's a match. + + :param value: The value to be checked. + :type value: Union[str, Enum] + :param enum_values: The list of valid enum values. + :type enum_values: List[str] + :param variable_name: The variable name. + :type variable_name: str + :return: The value if it matches one of the enum values. + :rtype: Union[str, Enum] + :raises ValueError: If the value does not match any of the enum values. + """ + if value is None: + return None + + str_value = value.value if isinstance(value, Enum) else value + if str_value in enum_values: + return value + else: + raise ValueError( + f"Invalid value for {variable_name}: must match one of {enum_values}, received {value}" + ) + + def _get_representation(self, level: int = 0) -> str: + """ + Get a string representation of the model. + + :param int level: The indentation level. + :return: A string representation of the model. + """ + indent = " " * level + representation_lines = [] + + for attr, value in vars(self).items(): + if value is not None: + value_representation = ( + value._get_representation(level + 1) + if hasattr(value, "_get_representation") + else repr(value) + ) + representation_lines.append( + f"{indent} {attr}={value_representation}" + ) + + return ( + f"{self.__class__.__name__}(\n" + + ",\n".join(representation_lines) + + f"\n{indent})" + ) + + def __str__(self): + return self._get_representation() + + def __repr__(self): + return self._get_representation() + + def __create_class_map(self, union_type): + """ + Create a dictionary that maps class names to the actual classes in a Union type. + + :param union_type: The Union type to create a class map for. + :return: A dictionary mapping class names to classes. + :rtype: dict + """ + class_map = {} + for arg in union_type.__args__: + if arg.__name__: + class_map[arg.__name__] = arg + return class_map diff --git a/src/geobeyond_sdk/models/utils/cast_models.py b/src/geobeyond_sdk/models/utils/cast_models.py new file mode 100644 index 0000000..1cce01d --- /dev/null +++ b/src/geobeyond_sdk/models/utils/cast_models.py @@ -0,0 +1,83 @@ +# This file was generated by liblab | https://liblab.com/ + +from enum import Enum +from typing import get_args, Union +from inspect import isclass +from .one_of_base_model import OneOfBaseModel + + +def cast_models(func): + """ + A decorator that allows for the conversion of dictionaries and enum values to model instances. + + :param func: The function to decorate. + :type func: Callable + :return: The decorated function. + :rtype: Callable + """ + + def wrapper(self, *clss, **kwargs): + cls_types = func.__annotations__ + new_cls_args = [] + new_kwargs = {} + + for input, input_type in zip(clss, cls_types.values()): + new_cls_args.append(_get_instanced_type(input, input_type)) + + for type_name, input in kwargs.items(): + new_kwargs[type_name] = _get_instanced_type(input, cls_types[type_name]) + + return func(self, *new_cls_args, **new_kwargs) + + def _get_instanced_type(data, input_type): + """ + Get instanced type based on the input data and type. + + :param data: The input data. + :param input_type: The type of the input. + :return: The instanced type. + """ + # Instanciate oneOf models + if _is_one_of_model(input_type): + class_list = { + arg.__name__: arg for arg in get_args(input_type) if arg.__name__ + } + OneOfBaseModel.class_list = class_list + return OneOfBaseModel.return_one_of(data) + + # Instanciate enum values + elif ( + isclass(input_type) + and issubclass(input_type, Enum) + and not isinstance(data, input_type) + ): + return input_type(data) + + # Instanciate object models + elif isinstance(data, dict) and input_type is not str: + return input_type(**data) + + # Instanciate list of object models + elif isinstance(data, list) and all(isinstance(i, dict) for i in data): + element_type = get_args(input_type)[0] + return [element_type(**item) for item in data] + + # Instanciate bytes if input is str + elif input_type is bytes and isinstance(data, str): + return data.encode() + + # Pass other types + else: + return data + + def _is_one_of_model(cls_type): + """ + Check if the class type is a oneOf model. + + :param cls_type: The class type to check. + :return: True if the class type is a oneOf model, False otherwise. + :rtype: bool + """ + return hasattr(cls_type, "__origin__") and cls_type.__origin__ is Union + + return wrapper diff --git a/src/geobeyond_sdk/models/utils/json_map.py b/src/geobeyond_sdk/models/utils/json_map.py new file mode 100644 index 0000000..cc6fbf6 --- /dev/null +++ b/src/geobeyond_sdk/models/utils/json_map.py @@ -0,0 +1,82 @@ +# This file was generated by liblab | https://liblab.com/ + +from enum import Enum + + +class JsonMap: + """ + A class decorator used to map adjusted attribute names to original JSON attribute names before a request, + and vice versa after the request. + + Example: + @JsonMapping({ + 'adjusted_name': 'original_name', + 'adjusted_list': 'original_list' + }) + class SomeClass(BaseModel): + adjusted_name: str + adjusted_list: List[OtherClass] + + :param mapping: A dictionary specifying the mapping between adjusted attribute names and original JSON attribute names. + :type mapping: dict + """ + + def __init__(self, mapping): + self.mapping = mapping + + def __call__(self, cls): + """ + Transform the decorated class with attribute mapping capabilities. + + :param cls: The class to be decorated. + :type cls: type + :return: The decorated class. + :rtype: type + """ + cls.__json_mapping = self.mapping + + def _map(self): + """ + Convert the object's attributes to a dictionary with mapped attribute names. + + :return: A dictionary with mapped attribute names and values. + :rtype: dict + """ + map = self.__json_mapping + attribute_dict = vars(self) + result_dict = {} + + for key, value in attribute_dict.items(): + if isinstance(value, list): + value = [v._map() if hasattr(v, "_map") else v for v in value] + elif isinstance(value, Enum): + value = value.value + elif hasattr(value, "_map"): + value = value._map() + mapped_key = map.get(key, key) + result_dict[mapped_key] = value + + return result_dict + + @classmethod + def _unmap(cls, mapped_data): + """ + Create an object instance from a dictionary with mapped attribute names. + + :param mapped_data: A dictionary with mapped attribute names and values. + :type mapped_data: dict + :return: An instance of the class with attribute values assigned from the dictionary. + :rtype: cls + """ + reversed_map = {v: k for k, v in cls.__json_mapping.items()} + mapped_attributes = {} + for key, value in mapped_data.items(): + mapped_key = reversed_map.get(key, key) + mapped_attributes[mapped_key] = value + + return cls(**mapped_attributes) + + cls._map = _map + cls._unmap = _unmap + + return cls diff --git a/src/geobeyond_sdk/models/utils/one_of_base_model.py b/src/geobeyond_sdk/models/utils/one_of_base_model.py new file mode 100644 index 0000000..d110409 --- /dev/null +++ b/src/geobeyond_sdk/models/utils/one_of_base_model.py @@ -0,0 +1,125 @@ +# This file was generated by liblab | https://liblab.com/ + +from typing import Any, List, Dict, Optional, Union, Type, TypeVar, get_origin, get_args + +T = TypeVar("T") + + +class OneOfBaseModel: + """ + A base class for handling 'oneOf' models where multiple class constructors are available, + and the appropriate one is determined based on the input data. + + :ivar dict class_list: A dictionary mapping class names to their constructors. + """ + + class_list = {} + + @classmethod + def return_one_of(cls, input_data: Optional[Any]) -> Optional[Any]: + """ + Attempts to initialize an instance of one of the classes in the class_list + based on the provided input data. + + :param input_data: Input data used for initialization. + :return: An instance of one of the classes specified. + :rtype: object + :raises ValueError: If no class can be initialized with the provided input data, + or if optional parameters don't match the input data. + """ + if input_data is None: + return None + + if isinstance(input_data, (str, float, int, bool)): + return input_data + + for class_constructor in cls.class_list.values(): + exception_list = [] + try: + # Check if the class is a only a TypeHint + origin = get_origin(class_constructor) + if origin is not None and isinstance(input_data, list): + list_instance = cls._get_list_instance( + input_data, class_constructor, origin + ) + if list_instance is not None: + return list_instance + else: + continue # Try the next class constructor + + # Check if the input_data is already an instance of the class + if isinstance(input_data, class_constructor): + return input_data + + # Check if the input_data is a dictionary that can be used to initialize the class + elif isinstance(input_data, dict): + instance = class_constructor._unmap(input_data) + if cls._check_params(input_data, instance): + return instance + except Exception as e: + exception_list.append({"class": class_constructor, "exception": e}) + + cls._raise_one_of_error(exception_list) + + @classmethod + def _get_list_instance( + cls, input_data: List[Any], class_constructor: Type[T], origin: Type[Any] + ) -> Union[List[T], List[Any], None]: + """ + Return the list of elements for a given class constructor and origin type. + + :param input_data: The input data to check. + :param class_constructor: The constructor of the class to check against. + :param origin: The origin type to check against. + :return: The input data if all elements are instances of the type specified in the class_constructor, + or a new list with each item unmapped. + """ + args = get_args(class_constructor) + has_single_arg = args and len(args) == 1 + + if not isinstance(input_data, origin) or not has_single_arg: + return None + + inner_type = args[0] + + if not all(isinstance(item, inner_type) for item in input_data): + return [inner_type._unmap(item) for item in input_data] + + return input_data + + @classmethod + def _check_params(cls, raw_input: Dict[str, Any], instance: Any) -> bool: + """ + Checks if the optional parameters in the instance match the keys in the input data, + ensuring compliance with one of the models. + + :param dict raw_input: Input data used for initialization. + :param object instance: An instance of one of the classes specified in the 'oneOf' model. + :return: True if the optional parameters in the instance match the keys in the input data, False otherwise. + """ + input_values = {k: v for k, v in raw_input.items() if v is not None}.values() + instance_map = instance._map() + instance_values = { + k: v for k, v in instance_map.items() if v is not None + }.values() + return len(input_values) == len(instance_values) + + @classmethod + def _raise_one_of_error(cls, exception_list): + """ + Raises a ValueError with the appropriate error message for one of models. + + :param exception_list: List of exceptions that occurred. + :type exception_list: list + :raises ValueError: If input data does not match any of the models. + """ + if not exception_list: + return + exception_messages = "\n".join( + f"Class: {exception['class']}, Exception: {exception['exception']}" + for exception in exception_list + ) + raise ValueError( + f"Input data must match one of the models: {list(cls.class_list.keys())}" + f"Errors occurred:\n{exception_messages}" + ) diff --git a/src/geobeyond_sdk/net/__init__.py b/src/geobeyond_sdk/net/__init__.py new file mode 100644 index 0000000..f9c4328 --- /dev/null +++ b/src/geobeyond_sdk/net/__init__.py @@ -0,0 +1 @@ +# This file was generated by liblab | https://liblab.com/ diff --git a/src/geobeyond_sdk/net/environment/__init__.py b/src/geobeyond_sdk/net/environment/__init__.py new file mode 100644 index 0000000..fe36e5f --- /dev/null +++ b/src/geobeyond_sdk/net/environment/__init__.py @@ -0,0 +1,3 @@ +# This file was generated by liblab | https://liblab.com/ + +from .environment import Environment diff --git a/src/geobeyond_sdk/net/environment/environment.py b/src/geobeyond_sdk/net/environment/environment.py new file mode 100644 index 0000000..feeacf9 --- /dev/null +++ b/src/geobeyond_sdk/net/environment/environment.py @@ -0,0 +1,12 @@ +# This file was generated by liblab | https://liblab.com/ + +""" +An enum class containing all the possible environments for the SDK +""" +from enum import Enum + + +class Environment(Enum): + """The environments available for the SDK""" + + DEFAULT = "https://demo.pygeoapi.io/stable" diff --git a/src/geobeyond_sdk/net/headers/__init__.py b/src/geobeyond_sdk/net/headers/__init__.py new file mode 100644 index 0000000..f9c4328 --- /dev/null +++ b/src/geobeyond_sdk/net/headers/__init__.py @@ -0,0 +1 @@ +# This file was generated by liblab | https://liblab.com/ diff --git a/src/geobeyond_sdk/net/headers/base_header.py b/src/geobeyond_sdk/net/headers/base_header.py new file mode 100644 index 0000000..5388308 --- /dev/null +++ b/src/geobeyond_sdk/net/headers/base_header.py @@ -0,0 +1,11 @@ +# This file was generated by liblab | https://liblab.com/ + +from typing import Any, Dict + + +class BaseHeader: + def set_value(self, value: Any) -> None: + pass + + def get_headers(self) -> Dict[str, str]: + pass diff --git a/src/geobeyond_sdk/net/request_chain/__init__.py b/src/geobeyond_sdk/net/request_chain/__init__.py new file mode 100644 index 0000000..f9c4328 --- /dev/null +++ b/src/geobeyond_sdk/net/request_chain/__init__.py @@ -0,0 +1 @@ +# This file was generated by liblab | https://liblab.com/ diff --git a/src/geobeyond_sdk/net/request_chain/handlers/__init__.py b/src/geobeyond_sdk/net/request_chain/handlers/__init__.py new file mode 100644 index 0000000..f9c4328 --- /dev/null +++ b/src/geobeyond_sdk/net/request_chain/handlers/__init__.py @@ -0,0 +1 @@ +# This file was generated by liblab | https://liblab.com/ diff --git a/src/geobeyond_sdk/net/request_chain/handlers/base_handler.py b/src/geobeyond_sdk/net/request_chain/handlers/base_handler.py new file mode 100644 index 0000000..3a745fb --- /dev/null +++ b/src/geobeyond_sdk/net/request_chain/handlers/base_handler.py @@ -0,0 +1,54 @@ +# This file was generated by liblab | https://liblab.com/ + +from typing import Generator, Optional, Tuple +from ...transport.request import Request +from ...transport.response import Response +from ...transport.request_error import RequestError + + +class BaseHandler: + """ + A class for sending the request through the chain of handlers. + + :ivar BaseHandler _next_handler: The next handler in the chain. + """ + + def __init__(self): + """ + Initialize a new instance of BaseHandler. + """ + self._next_handler = None + + def handle( + self, request: Request + ) -> Tuple[Optional[Response], Optional[RequestError]]: + """ + Process the given request and return a response or an error. + This method must be implemented by all subclasses. + + :param Request request: The request to handle. + :return: The response and any error that occurred. + :rtype: Tuple[Optional[Response], Optional[RequestError]] + """ + raise NotImplementedError() + + def stream( + self, request: Request + ) -> Generator[Tuple[Optional[Response], Optional[RequestError]], None, None]: + """ + Stream the given request and return a response or an error. + This method must be implemented by all subclasses. + + :param Request request: The request to stream. + :return: The response and any error that occurred. + :rtype: Generator[Tuple[Optional[Response], Optional[RequestError]], None, None] + """ + raise NotImplementedError() + + def set_next(self, handler: "BaseHandler"): + """ + Set the next handler in the chain. + + :param BaseHandler handler: The next handler. + """ + self._next_handler = handler diff --git a/src/geobeyond_sdk/net/request_chain/handlers/hook_handler.py b/src/geobeyond_sdk/net/request_chain/handlers/hook_handler.py new file mode 100644 index 0000000..6d940b8 --- /dev/null +++ b/src/geobeyond_sdk/net/request_chain/handlers/hook_handler.py @@ -0,0 +1,74 @@ +# This file was generated by liblab | https://liblab.com/ + +from typing import Generator, Optional, Tuple + + +from .base_handler import BaseHandler +from ....hooks.hook import DefaultHook +from ...transport.request import Request +from ...transport.response import Response +from ...transport.request_error import RequestError + + +class HookHandler(BaseHandler): + """ + Handler for calling hooks. + + :ivar Hook _hook: The hook to be called. This is a placeholder and should be replaced with an instance of the actual hook class. + """ + + def __init__(self): + """ + Initialize a new instance of HookHandler. + """ + super().__init__() + self._hook = DefaultHook() + + def handle( + self, request: Request + ) -> Tuple[Optional[Response], Optional[RequestError]]: + """ + Call the beforeRequest hook before passing the request to the next handler in the chain. + Call the afterResponse hook after receiving a response from the next handler in the chain. + Call the onError hook if an error occurs in the next handler in the chain. + + :param Request request: The request to handle. + :return: The response and any error that occurred. + :rtype: Tuple[Optional[Response], Optional[RequestError]] + """ + if self._next_handler is None: + raise RequestError("Handler chain is incomplete") + + self._hook.before_request(request) + response, error = self._next_handler.handle(request) + self._handle_response(request, response, error) + + return response, error + + def stream( + self, request: Request + ) -> Generator[Tuple[Optional[Response], Optional[RequestError]], None, None]: + """ + Call the beforeRequest hook before passing the request to the next handler in the chain. + Call the afterResponse hook after receiving a response from the next handler in the chain. + Call the onError hook if an error occurs in the next handler in the chain. + + :param Request request: The request to handle. + :return: The response and any error that occurred. + :rtype: Generator[Tuple[Optional[Response], Optional[RequestError]], None, None] + """ + if self._next_handler is None: + raise RequestError("Handler chain is incomplete") + + self._hook.before_request(request) + for response, error in self._next_handler.stream(request): + self._handle_response(request, response, error) + yield response, error + + def _handle_response( + self, request: Request, response: Response, error: RequestError + ): + if error is not None and error.is_http_error: + self._hook.on_error(error, request, error.response) + else: + self._hook.after_response(request, response) diff --git a/src/geobeyond_sdk/net/request_chain/handlers/http_handler.py b/src/geobeyond_sdk/net/request_chain/handlers/http_handler.py new file mode 100644 index 0000000..e085232 --- /dev/null +++ b/src/geobeyond_sdk/net/request_chain/handlers/http_handler.py @@ -0,0 +1,123 @@ +# This file was generated by liblab | https://liblab.com/ + +import requests + +from requests.exceptions import Timeout +from typing import Generator, Optional, Tuple +from .base_handler import BaseHandler +from ...transport.request import Request +from ...transport.response import Response +from ...transport.request_error import RequestError + + +class HttpHandler(BaseHandler): + """ + Handler for making HTTP requests. + This handler sends the request to the specified URL and returns the response. + + :ivar int _timeout_in_seconds: The timeout for the HTTP request in seconds. + """ + + def __init__(self, timeout=60000): + """ + Initialize a new instance of HttpHandler. + """ + super().__init__() + self._timeout_in_seconds = timeout / 1000 + + def handle( + self, request: Request + ) -> Tuple[Optional[Response], Optional[RequestError]]: + """ + Send the request to the specified URL and return the response. + + :param Request request: The request to send. + :return: The response and any error that occurred. + :rtype: Tuple[Optional[Response], Optional[RequestError]] + """ + try: + request_args = self._get_request_data(request) + + result = requests.request( + request.method, + request.url, + headers=request.headers, + timeout=self._timeout_in_seconds, + **request_args, + ) + response = Response(result) + + if response.status >= 400: + return None, RequestError( + message=f"{response.status} error in request to: {request.url}", + status=response.status, + response=response, + ) + + return response, None + except Timeout: + return None, RequestError("Request timed out") + + def stream( + self, request: Request + ) -> Generator[Tuple[Optional[Response], Optional[RequestError]], None, None]: + try: + request_args = self._get_request_data(request) + + result = requests.request( + request.method, + request.url, + headers=request.headers, + timeout=self._timeout_in_seconds, + stream=True, + **request_args, + ) + + if result.status_code >= 400: + response = Response(result) + yield ( + None, + RequestError( + message=f"{response.status} error in request to: {request.url}", + status=response.status, + response=response, + ), + ) + + else: + for chunk in result.iter_content(chunk_size=8192): + for response in Response.from_chunk(result, chunk): + yield response, None + + except Timeout: + yield None, RequestError("Request timed out") + + def _get_request_data(self, request: Request) -> dict: + """ + Get the request arguments based on the request headers and data. + + :param Request request: The request object. + :return: The request arguments. + :rtype: dict + """ + headers = request.headers or {} + data = request.body or {} + content_type = headers.get("Content-Type", "application/json") + + if request.method == "GET" and not data: + return {} + + if content_type.startswith("application/") and "json" in content_type: + return {"json": data} + + if "multipart/form-data" in content_type: + headers.pop("Content-Type", None) + files, form_data = {}, {} + for key, value in data.items(): + if isinstance(value, bytes): + files[key] = value + else: + form_data[key] = value + return {"files": files, "data": form_data} + + return {"data": data} diff --git a/src/geobeyond_sdk/net/request_chain/handlers/retry_handler.py b/src/geobeyond_sdk/net/request_chain/handlers/retry_handler.py new file mode 100644 index 0000000..c51fce9 --- /dev/null +++ b/src/geobeyond_sdk/net/request_chain/handlers/retry_handler.py @@ -0,0 +1,102 @@ +# This file was generated by liblab | https://liblab.com/ + +import random + +from typing import Generator, Optional, Tuple +from time import sleep +from .base_handler import BaseHandler +from ...transport.request import Request +from ...transport.response import Response +from ...transport.request_error import RequestError + + +class RetryHandler(BaseHandler): + """ + Handler for retrying requests. + Retries the request if the previous handler in the chain returned an error or a response with a status code of 500 or higher. + + :ivar int _max_attempts: The maximum number of retry attempts. + :ivar int _delay_in_milliseconds: The delay between retry attempts in milliseconds. + """ + + def __init__(self): + """ + Initialize a new instance of RetryHandler. + """ + super().__init__() + self._max_attempts = 3 + self._delay_in_milliseconds = 150 + + def handle( + self, request: Request + ) -> Tuple[Optional[Response], Optional[RequestError]]: + """ + Retry the request if the response has a status code greater or equal to 500 or equal to 408 (timeout). + + :param Request request: The request to retry. + :return: The response and any error that occurred. + :rtype: Tuple[Optional[Response], Optional[RequestError]] + :raises RequestError: If the handler chain is incomplete. + """ + if self._next_handler is None: + raise RequestError("Handler chain is incomplete") + + response, error = self._next_handler.handle(request) + + try_count = 0 + while try_count < self._max_attempts and self._should_retry(error): + self._delay(try_count) + response, error = self._next_handler.handle(request) + try_count += 1 + + return response, error + + def stream( + self, request: Request + ) -> Generator[Tuple[Optional[Response], Optional[RequestError]], None, None]: + """ + Retry the request if the response has a status code greater or equal to 500 or equal to 408 (timeout). + + :param Request request: The request to retry. + :return: The response and any error that occurred. + :rtype: Generator[Tuple[Optional[Response], Optional[RequestError]], None, None] + :raises RequestError: If the handler chain is incomplete. + """ + if self._next_handler is None: + raise RequestError("Handler chain is incomplete") + + try: + try_count = 0 + stream = self._next_handler.stream(request) + while True: + response, error = next(stream) + if try_count < self._max_attempts and self._should_retry(error): + self._delay(try_count) + try_count += 1 + stream = self._next_handler.stream(request) # Retry the request + elif try_count >= self._max_attempts: + yield response, error + break + else: + yield response, error + + except StopIteration: + pass + + def _delay(self, try_count: int) -> None: + jitter = random.uniform(0.5, 1.5) + delay = self._delay_in_milliseconds * (2**try_count) * jitter / 1000 + sleep(delay) + + def _should_retry(self, error: Optional[RequestError]) -> bool: + """ + Determine whether the request should be retried. + + :param Optional[Response] response: The response from the previous handler. + :param Optional[RequestError] error: The error from the previous handler. + :return: True if the request should be retried, False otherwise. + :rtype: bool + """ + if not error: + return False + return error.status == 408 or error.status >= 500 diff --git a/src/geobeyond_sdk/net/request_chain/request_chain.py b/src/geobeyond_sdk/net/request_chain/request_chain.py new file mode 100644 index 0000000..75019b2 --- /dev/null +++ b/src/geobeyond_sdk/net/request_chain/request_chain.py @@ -0,0 +1,78 @@ +# This file was generated by liblab | https://liblab.com/ + +from typing import Generator, Optional +from .handlers.base_handler import BaseHandler +from ..transport.request import Request +from ..transport.response import Response + + +class RequestChain: + """ + Class representing a chain of request handlers. + Handlers are added to the chain and the request is passed through each handler in the order they were added. + + :ivar Optional[BaseHandler] _head: The first handler in the chain. + :ivar Optional[BaseHandler] _tail: The last handler in the chain. + """ + + def __init__(self): + """ + Initialize a new instance of RequestChain. + """ + self._head: Optional[BaseHandler] = None + self._tail: Optional[BaseHandler] = None + + def add_handler(self, handler: BaseHandler) -> "RequestChain": + """ + Add a handler to the chain. + + :param BaseHandler handler: The handler to add. + :return: The current instance of RequestChain to allow for method chaining. + :rtype: RequestChain + """ + if self._head is None: + self._head = handler + self._tail = handler + else: + self._tail.set_next(handler) + self._tail = handler + + return self + + def send(self, request: Request) -> Response: + """ + Send the request through the chain of handlers. + + :param Request request: The request to send. + :return: The response from the request. + :rtype: Response + :raises RuntimeError: If the RequestChain is empty. + """ + if self._head is not None: + response, error = self._head.handle(request) + + if error is not None: + raise error + + return response + else: + raise RuntimeError("RequestChain is empty") + + def stream(self, request: Request) -> Generator[Response, None, None]: + """ + Send the request through the chain of handlers. + + :param Request request: The request to send. + :return: The response from the request. + :rtype: Generator[Response, None, None] + :raises RuntimeError: If the RequestChain is empty. + """ + if self._head is not None: + stream = self._head.stream(request) + for response, error in stream: + if error is not None: + raise error + + yield response + else: + raise RuntimeError("RequestChain is empty") diff --git a/src/geobeyond_sdk/net/transport/__init__.py b/src/geobeyond_sdk/net/transport/__init__.py new file mode 100644 index 0000000..f9c4328 --- /dev/null +++ b/src/geobeyond_sdk/net/transport/__init__.py @@ -0,0 +1 @@ +# This file was generated by liblab | https://liblab.com/ diff --git a/src/geobeyond_sdk/net/transport/request.py b/src/geobeyond_sdk/net/transport/request.py new file mode 100644 index 0000000..039f5cc --- /dev/null +++ b/src/geobeyond_sdk/net/transport/request.py @@ -0,0 +1,103 @@ +# This file was generated by liblab | https://liblab.com/ + +from typing import Any, Set +from .utils import extract_original_data + + +class Request: + """ + A simple HTTP request builder class using the requests library. + + Example Usage: + ```python + # Create a Request object + request = Request() + + # Set request parameters + request.set_url('https://yourendpoint.com/') \ + .set_method('GET') \ + .set_headers({'Content-Type': 'application/json'}) \ + .set_body(None) # For GET requests, the body should be None + + # Send the HTTP request + response = request.send() + ``` + + :ivar str url: The URL of the API endpoint. + :ivar str method: The HTTP method for the request. + :ivar dict headers: Dictionary of headers to include in the request. + :ivar Any body: Request body. + """ + + def __init__(self): + self.url = None + self.method = None + self.headers = None + self.body = None + self.scopes = None + + def set_url(self, url: str) -> "Request": + """ + Set the URL of the API endpoint. + + :param str url: The URL of the API endpoint. + :return: The updated Request object. + :rtype: Request + """ + self.url = url + return self + + def set_headers(self, headers: dict) -> "Request": + """ + Set the headers for the HTTP request. + + :param dict headers: Dictionary of headers to include in the request. + :return: The updated Request object. + :rtype: Request + """ + self.headers = headers + return self + + def set_method(self, method: str) -> "Request": + """ + Set the HTTP method for the request. + + :param str method: The HTTP method (e.g., 'GET', 'POST', 'PUT', 'DELETE', etc.). + :return: The updated Request object. + :rtype: Request + """ + self.method = method + return self + + def set_body(self, body: Any, content_type: str = "application/json") -> "Request": + """ + Set the request body (e.g., JSON payload). + + :param Any body: Request body. + :param str content_type: The content type of the request body. Default is "application/json". + :return: The updated Request object. + :rtype: Request + """ + self.body = extract_original_data(body) + self.headers["Content-Type"] = content_type + return self + + def set_scopes(self, scopes: Set[str]) -> "Request": + """ + Set the scopes for the request. + + :param list scopes: List of scopes to include in the request. + :return: The updated Request object. + :rtype: Request + """ + self.scopes = scopes + return self + + def __str__(self) -> str: + """ + Return a string representation of the Request object. + + :return: A string representation of the Request object. + :rtype: str + """ + return f"Request(url={self.url}, method={self.method}, headers={self.headers}, body={self.body})" diff --git a/src/geobeyond_sdk/net/transport/request_error.py b/src/geobeyond_sdk/net/transport/request_error.py new file mode 100644 index 0000000..a4d2a81 --- /dev/null +++ b/src/geobeyond_sdk/net/transport/request_error.py @@ -0,0 +1,55 @@ +# This file was generated by liblab | https://liblab.com/ + +from .response import Response +from typing import Optional + + +class RequestError(IOError): + """ + Class representing a Request Error. + + :ivar bool is_http_error: Indicates if the error is an HTTP error. + :ivar int status: The status code of the HTTP error. + :ivar Optional[Response] response: The response associated with the error. + """ + + def __init__( + self, + message: str, + status: Optional[int] = None, + response: Optional[Response] = None, + stack: Optional["RequestError"] = None, + ): + """ + Initialize a new instance of RequestError. + + :param str message: The error message. + :param Optional[int] status: The status code of the HTTP error. + :param Optional[Response] response: The response associated with the error. + """ + super().__init__(message) + self.response = response + self.stack = stack + + if status is not None: + self.status = status + self.is_http_error = True + else: + self.status = -1 + self.is_http_error = False + + def __str__(self): + """ + Get the string representation of the error. + + :return: The string representation of the error. + :rtype: str + """ + error_stack = [] + current_error = self + while current_error is not None: + error_stack.append( + f"Error: {super().__str__()}, Status Code: {current_error.status}" + ) + current_error = current_error.stack + return "\n".join(error_stack) diff --git a/src/geobeyond_sdk/net/transport/response.py b/src/geobeyond_sdk/net/transport/response.py new file mode 100644 index 0000000..fe2f4de --- /dev/null +++ b/src/geobeyond_sdk/net/transport/response.py @@ -0,0 +1,107 @@ +# This file was generated by liblab | https://liblab.com/ + +import json +import re +from typing import Generator, Optional, Union +from requests import Response as RequestsResponse +from urllib.parse import parse_qs + + +class Response: + """ + A simple HTTP response wrapper class using the requests library. + + :ivar int status: The status code of the HTTP response. + :ivar dict headers: The headers of the HTTP response. + :ivar str body: The body of the HTTP response. + :var str chunk: The chunk of the HTTP response. + """ + + def __init__( + self, + response: RequestsResponse, + chunk: Optional[str] = None, + raw_chunk: Optional[bytes] = None, + ) -> None: + """ + Initializes a Response object. + + :param RequestsResponse response: The requests.Response object. + """ + self.status = response.status_code + self.headers = response.headers + + self.body = self._parse_response_body( + content_type=response.headers.get("Content-Type", "").lower(), + body=chunk if chunk else response.text, + raw_body=raw_chunk if raw_chunk else response.content, + ) + + @staticmethod + def from_chunk( + response: RequestsResponse, raw_chunk: bytes + ) -> Generator["Response", None, None]: + """ + Create a Response object from a chunk of data. + + :param RequestsResponse response: The requests.Response object. + :param bytes chunk: The chunk of data. + :return: A Response object. + :rtype: Response + """ + content_type = response.headers.get("Content-Type", "").lower() + chunk_str = raw_chunk.decode() + if "text/event-stream" not in content_type: + yield Response(response, chunk=chunk_str, raw_chunk=raw_chunk) + else: + for chunk_line in chunk_str.split("\n"): + if "data: " in chunk_line: + yield Response(response, chunk=chunk_line, raw_chunk=raw_chunk) + + def __str__(self) -> str: + """ + Return a string representation of the Response object. + + :return: A string representation of the Response object. + :rtype: str + """ + return ( + f"Response(status={self.status}, headers={self.headers}, body={self.body})" + ) + + def _parse_response_body( + self, content_type: str, body: str, raw_body: bytes + ) -> Union[str, dict, bytes]: + """ + Extracts the response body from a given HTTP response. + + This method attempts to parse the response body based on its content type. + If the content type is JSON, it tries to parse the body as JSON. + If the content type is text or XML, it returns the raw text. + If the content type is 'application/x-www-form-urlencoded', it parses the body as a query string. + For all other content types, it returns the raw binary content. + + :param RequestsResponse response: The HTTP response received from a request. + :return: The parsed response body. + :rtype: str or dict or bytes + """ + try: + if re.search(r"application\/.*json", content_type): + return json.loads(body) + + if "text/event-stream" in content_type and "data: " in body: + json_body = body[6:] + # Note: this assumes that the content of data is a valid JSON string + return json.loads(json_body) + + if "text/" in content_type or content_type == "application/xml": + return body + + if content_type == "application/x-www-form-urlencoded": + parsed_response = parse_qs(body) + return {k: v[0] for k, v in parsed_response.items()} + + return raw_body + + except json.JSONDecodeError: + return raw_body diff --git a/src/geobeyond_sdk/net/transport/serializer.py b/src/geobeyond_sdk/net/transport/serializer.py new file mode 100644 index 0000000..dddf302 --- /dev/null +++ b/src/geobeyond_sdk/net/transport/serializer.py @@ -0,0 +1,255 @@ +# This file was generated by liblab | https://liblab.com/ + +from typing import Any, List +from urllib.parse import quote + +from ...net.headers.base_header import BaseHeader +from .request import Request +from .utils import extract_original_data + + +class Serializer: + """ + A class for handling serialization of URL components such as headers, cookies, path parameters, and query parameters. + + :ivar str url: The base URL to be serialized. + :ivar dict[str, str] headers: A dictionary containing headers for the request. + :ivar list[str] cookies: A list containing cookie strings for the request. + :ivar dict[str, str] path: A dictionary containing path parameters for the request. + :ivar list[str] query: A list containing query parameters for the request. + """ + + def __init__(self, url: str, default_headers: List[BaseHeader] = []): + """ + Initializes a Serializer instance with the base URL. + + :param str url: The base URL to be serialized. + :param list[BaseHeader] default_headers: A list of default headers to be added to the request. Defaults to an empty list. + """ + self.url: str = url + self.headers: dict[str, str] = {} + self.cookies: list[str] = [] + self.path: dict[str, str] = {} + self.query: list[str] = [] + + for header in default_headers: + for key, value in header.get_headers().items(): + self.add_header(key, value) + + def add_header( + self, key: str, data: Any, explode: bool = False, nullable: bool = False + ) -> "Serializer": + """ + Adds a header to the request. + + :param str key: The header key. + :param Any data: The data to be serialized as the header value. + :param bool explode: Flag indicating whether to explode the data. + :return: The Serializer instance for method chaining. + :rtype: Serializer + """ + if not nullable and data is None: + return self + + data = extract_original_data(data) + + self.headers[key] = self._serialize_value( + data, explode=explode, quote_str_values=False + ) + return self + + def add_cookie( + self, key: str, data: Any, explode: bool = False, nullable: bool = False + ) -> "Serializer": + """ + Adds a cookie to the request. + + :param str key: The cookie key. + :param Any data: The data to be serialized as the cookie value. + :param bool explode: Flag indicating whether to explode the data. + :return: The Serializer instance for method chaining. + :rtype: Serializer + """ + if not nullable and data is None: + return self + + data = extract_original_data(data) + + self.cookies.append( + f"{key}={self._serialize_value(data, explode=explode, quote_str_values=False)}" + ) + return self + + def add_path( + self, + key: str, + data: Any, + explode: bool = False, + style: str = "simple", + nullable: bool = False, + ) -> "Serializer": + """ + Adds a path parameter to the request. + + :param str key: The path parameter key. + :param Any data: The data to be serialized as the path parameter value. + :param bool explode: Flag indicating whether to explode the data. + :param str style: The style of serialization for the path parameter. + :return: The Serializer instance for method chaining. + :rtype: Serializer + """ + if not nullable and data is None: + return self + + data = extract_original_data(data) + + if style == "simple": + self.path[key] = self._serialize_value(data=data, explode=explode) + elif style == "label": + separator = "." if explode else "," + self.path[key] = "." + self._serialize_value( + data=data, explode=explode, separator=separator + ) + elif style == "matrix": + separator = "," + + if isinstance(data, list) and explode: + separator = f";{key}=" + elif explode: + separator = ";" + + prefix = ";" if isinstance(data, dict) and explode else f";{key}=" + self.path[key] = prefix + self._serialize_value( + data, explode=explode, separator=separator + ) + else: + raise ValueError(f"Unsupported path style: {style}") + + return self + + def add_query( + self, + key: str, + data: Any, + explode: bool = True, + style: str = "form", + nullable: bool = False, + ) -> "Serializer": + """ + Adds a query parameter to the request. + + :param str key: The query parameter key. + :param Any data: The data to be serialized as the query parameter value. + :param bool explode: Flag indicating whether to explode the data. + :param str style: The style of serialization for the query parameter. + :return: The Serializer instance for method chaining. + :rtype: Serializer + """ + if not nullable and data is None: + return self + + data = extract_original_data(data) + + if style == "form": + separator = ( + f"&{key}=" + if explode and isinstance(data, list) + else ("&" if explode else ",") + ) + prefix = "" if (explode and isinstance(data, dict)) else f"{key}=" + query_param = f"{prefix}{self._serialize_value(data=data, explode=explode, separator=separator)}" + elif style == "spaceDelimited": + separator = f"&{key}=" if explode else f"%20" + query_param = f"{key}={self._serialize_value(data=data, explode=explode, separator=separator)}" + elif style == "pipeDelimited": + separator = f"&{key}=" if explode else "|" + query_param = f"{key}={self._serialize_value(data=data, explode=explode, separator=separator)}" + elif style == "deepObject": + query_param = "".join( + f"{key}[{k}]={quote(self._serialize_value(v))}&" + for k, v in data.items() + ).rstrip("&") + + self.query.append(query_param) + return self + + def serialize(self) -> Request: + """ + Serializes the components and returns a Request object. + + :return: The Request object containing the serialized components. + :rtype: Request + """ + final_url = self._define_url() + + if len(self.cookies) > 0: + self.headers["Cookie"] = ";".join(self.cookies) + + return Request().set_url(final_url).set_headers(self.headers) + + def _define_url(self) -> str: + """ + Constructs the final URL by replacing path parameters and appending query parameters. + + :return: The final URL. + :rtype: str + """ + final_url = self.url + + for key, value in self.path.items(): + final_url = final_url.replace(f"{{{key}}}", value) + + if len(self.query) > 0: + final_url += "?" + "&".join(self.query) + + return final_url + + def _serialize_value( + self, + data: Any, + separator: str = ",", + explode: bool = False, + quote_str_values: bool = True, + ) -> str: + """ + Serializes a value based on the specified separator and explode flag. + + :param Any data: The data to be serialized. + :param str separator: The separator used for serialization. + :param bool explode: Flag indicating whether to explode the data. + :return: The serialized value. + :rtype: str + """ + if data is None: + return "null" + + if isinstance(data, list): + return separator.join( + self._serialize_value(item, separator, explode) for item in data + ) + + if isinstance(data, dict): + if explode: + return separator.join( + [ + f"{k}={self._serialize_value(v, separator, explode)}" + for k, v in data.items() + ] + ) + else: + return separator.join( + [ + self._serialize_value(item, separator, explode) + for sublist in data.items() + for item in sublist + ] + ) + + if isinstance(data, str) and quote_str_values: + return quote(data) + if isinstance(data, bool): + return str(data).lower() + if isinstance(data, (int, float)): + return str(data) + + return data diff --git a/src/geobeyond_sdk/net/transport/utils.py b/src/geobeyond_sdk/net/transport/utils.py new file mode 100644 index 0000000..a76356e --- /dev/null +++ b/src/geobeyond_sdk/net/transport/utils.py @@ -0,0 +1,30 @@ +# This file was generated by liblab | https://liblab.com/ + +from enum import Enum +from typing import Any +from ...models.utils.base_model import BaseModel + + +def extract_original_data(data: Any) -> Any: + """ + Extracts the original data from internal models and enums. + + :param Any data: The data to be extracted. + :return: The extracted data. + :rtype: Any + """ + if data is None: + return None + + data_type = type(data) + + if issubclass(data_type, BaseModel): + return data._map() + + if issubclass(data_type, Enum): + return data.value + + if issubclass(data_type, list): + return [extract_original_data(item) for item in data] + + return data diff --git a/src/geobeyond_sdk/sdk.py b/src/geobeyond_sdk/sdk.py new file mode 100644 index 0000000..4a1cdf6 --- /dev/null +++ b/src/geobeyond_sdk/sdk.py @@ -0,0 +1,118 @@ +# This file was generated by liblab | https://liblab.com/ + +from .services.server import ServerService +from .services.dutch_metadata import DutchMetadataService +from .services.dutch_castles import DutchCastlesService +from .services.dutch_georef_stations import DutchGeorefStationsService +from .services.dutch_windmills import DutchWindmillsService +from .services.gdps_temperature import GdpsTemperatureService +from .services.icoads_sst import IcoadsSstService +from .services.lakes import LakesService +from .services.mapserver_world_map import MapserverWorldMapService +from .services.obs import ObsService +from .services.ogr_addresses_gpkg import OgrAddressesGpkgService +from .services.ogr_addresses_sqlite import OgrAddressesSqliteService +from .services.ogr_geojson_lakes import OgrGeojsonLakesService +from .services.ogr_gpkg_poi import OgrGpkgPoiService +from .services.ogr_gpkg_wales_railway_lines import OgrGpkgWalesRailwayLinesService +from .services.ogr_gpkg_wales_stations import OgrGpkgWalesStationsService +from .services.unesco_pois_italy import UnescoPoisItalyService +from .services.utah_city_locations import UtahCityLocationsService +from .services.jobs import JobsService +from .services.hello_world import HelloWorldService +from .services.stac import StacService +from .net.environment import Environment + + +class GeobeyondSdk: + def __init__(self, base_url: str = Environment.DEFAULT.value, timeout: int = 60000): + """ + Initializes GeobeyondSdk the SDK class. + """ + + self.server = ServerService(base_url=base_url) + self.dutch_metadata = DutchMetadataService(base_url=base_url) + self.dutch_castles = DutchCastlesService(base_url=base_url) + self.dutch_georef_stations = DutchGeorefStationsService(base_url=base_url) + self.dutch_windmills = DutchWindmillsService(base_url=base_url) + self.gdps_temperature = GdpsTemperatureService(base_url=base_url) + self.icoads_sst = IcoadsSstService(base_url=base_url) + self.lakes = LakesService(base_url=base_url) + self.mapserver_world_map = MapserverWorldMapService(base_url=base_url) + self.obs = ObsService(base_url=base_url) + self.ogr_addresses_gpkg = OgrAddressesGpkgService(base_url=base_url) + self.ogr_addresses_sqlite = OgrAddressesSqliteService(base_url=base_url) + self.ogr_geojson_lakes = OgrGeojsonLakesService(base_url=base_url) + self.ogr_gpkg_poi = OgrGpkgPoiService(base_url=base_url) + self.ogr_gpkg_wales_railway_lines = OgrGpkgWalesRailwayLinesService( + base_url=base_url + ) + self.ogr_gpkg_wales_stations = OgrGpkgWalesStationsService(base_url=base_url) + self.unesco_pois_italy = UnescoPoisItalyService(base_url=base_url) + self.utah_city_locations = UtahCityLocationsService(base_url=base_url) + self.jobs = JobsService(base_url=base_url) + self.hello_world = HelloWorldService(base_url=base_url) + self.stac = StacService(base_url=base_url) + self.set_timeout(timeout) + + def set_base_url(self, base_url): + """ + Sets the base URL for the entire SDK. + """ + self.server.set_base_url(base_url) + self.dutch_metadata.set_base_url(base_url) + self.dutch_castles.set_base_url(base_url) + self.dutch_georef_stations.set_base_url(base_url) + self.dutch_windmills.set_base_url(base_url) + self.gdps_temperature.set_base_url(base_url) + self.icoads_sst.set_base_url(base_url) + self.lakes.set_base_url(base_url) + self.mapserver_world_map.set_base_url(base_url) + self.obs.set_base_url(base_url) + self.ogr_addresses_gpkg.set_base_url(base_url) + self.ogr_addresses_sqlite.set_base_url(base_url) + self.ogr_geojson_lakes.set_base_url(base_url) + self.ogr_gpkg_poi.set_base_url(base_url) + self.ogr_gpkg_wales_railway_lines.set_base_url(base_url) + self.ogr_gpkg_wales_stations.set_base_url(base_url) + self.unesco_pois_italy.set_base_url(base_url) + self.utah_city_locations.set_base_url(base_url) + self.jobs.set_base_url(base_url) + self.hello_world.set_base_url(base_url) + self.stac.set_base_url(base_url) + + return self + + def set_timeout(self, timeout: int): + """ + Sets the timeout for the entire SDK. + + :param int timeout: The timeout (ms) to be set. + :return: The SDK instance. + """ + self.server.set_timeout(timeout) + self.dutch_metadata.set_timeout(timeout) + self.dutch_castles.set_timeout(timeout) + self.dutch_georef_stations.set_timeout(timeout) + self.dutch_windmills.set_timeout(timeout) + self.gdps_temperature.set_timeout(timeout) + self.icoads_sst.set_timeout(timeout) + self.lakes.set_timeout(timeout) + self.mapserver_world_map.set_timeout(timeout) + self.obs.set_timeout(timeout) + self.ogr_addresses_gpkg.set_timeout(timeout) + self.ogr_addresses_sqlite.set_timeout(timeout) + self.ogr_geojson_lakes.set_timeout(timeout) + self.ogr_gpkg_poi.set_timeout(timeout) + self.ogr_gpkg_wales_railway_lines.set_timeout(timeout) + self.ogr_gpkg_wales_stations.set_timeout(timeout) + self.unesco_pois_italy.set_timeout(timeout) + self.utah_city_locations.set_timeout(timeout) + self.jobs.set_timeout(timeout) + self.hello_world.set_timeout(timeout) + self.stac.set_timeout(timeout) + + return self + + +# c029837e0e474b76bc487506e8799df5e3335891efe4fb02bda7a1441840310c diff --git a/src/geobeyond_sdk/services/__init__.py b/src/geobeyond_sdk/services/__init__.py new file mode 100644 index 0000000..f9c4328 --- /dev/null +++ b/src/geobeyond_sdk/services/__init__.py @@ -0,0 +1 @@ +# This file was generated by liblab | https://liblab.com/ diff --git a/src/geobeyond_sdk/services/dutch_castles.py b/src/geobeyond_sdk/services/dutch_castles.py new file mode 100644 index 0000000..cb25a88 --- /dev/null +++ b/src/geobeyond_sdk/services/dutch_castles.py @@ -0,0 +1,411 @@ +# This file was generated by liblab | https://liblab.com/ + +from typing import Any, List +from .utils.validator import Validator +from .utils.base_service import BaseService +from ..net.transport.serializer import Serializer +from ..models.utils.cast_models import cast_models +from ..models import ( + Collection, + FeatureCollectionGeoJson, + FeatureGeoJson, + GetDutchCastlesFeaturesProperties, + GetLandingPageF, + Lang, + Queryables, +) + + +class DutchCastlesService(BaseService): + + @cast_models + def describe_dutch_castles_collection( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Collection: + """Locations of castles within the Netherlands from Rijksdienst voor het Cultureel Erfgoed (RCE) INSPIRE WFS. Uses GeoServer WFS v2 backend via OGRProvider. + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: Information about the feature collection with id `collectionId`. + + The response contains a link to the items in the collection + (path `/collections/{collectionId}/items`, link relation `items`) + as well as key information about the collection. This information + includes: + + * A local identifier for the collection that is unique for the dataset; + * A list of coordinate reference systems (CRS) in which geometries may be returned by the server. The first CRS is the default coordinate reference system (the default is always WGS 84 with axis order longitude/latitude); + * An optional title and description for the collection; + * An optional extent that can be used to provide an indication of the spatial and temporal extent of the collection - typically derived from the data; + * An optional indicator about the type of the items in the collection (the default value, if the indicator is not provided, is 'feature'). + :rtype: Collection + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/dutch_castles", self.get_default_headers() + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Collection._unmap(response) + + @cast_models + def get_dutch_castles_features( + self, + f: GetLandingPageF = None, + lang: Lang = None, + bbox: List[float] = None, + limit: int = None, + crs: str = None, + bbox_crs: str = None, + properties: List[GetDutchCastlesFeaturesProperties] = None, + vendor_specific_parameters: dict = None, + skip_geometry: bool = None, + sortby: List[str] = None, + offset: int = None, + gml_id: str = None, + gid: int = None, + cchin: str = None, + naam: str = None, + plaats: str = None, + info_link: str = None, + datering: str = None, + rijksmonnr: str = None, + provincie: str = None, + foto_thumb: str = None, + foto_groot: str = None, + bijschrift: str = None, + zichtbaar: str = None, + legenda: str = None, + typering: str = None, + ) -> FeatureCollectionGeoJson: + """Locations of castles within the Netherlands from Rijksdienst voor het Cultureel Erfgoed (RCE) INSPIRE WFS. Uses GeoServer WFS v2 backend via OGRProvider. + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + :param bbox: Only features that have a geometry that intersects the bounding box are selected.The bounding box is provided as four or six numbers, depending on whether the coordinate reference system includes a vertical axis (height or depth)., defaults to None + :type bbox: List[float], optional + :param limit: The optional limit parameter limits the number of items that are presented in the response document. + + Only items are counted that are on the first level of the collection in the response document. + Nested objects contained within the explicitly requested items shall not be counted. + + Minimum = 1. Maximum = 10000. Default = 10., defaults to None + :type limit: int, optional + :param crs: Indicates the coordinate reference system for the results., defaults to None + :type crs: str, optional + :param bbox_crs: Indicates the coordinate reference system for the given bbox coordinates., defaults to None + :type bbox_crs: str, optional + :param properties: The properties that should be included for each feature. The parameter value is a comma-separated list of property names., defaults to None + :type properties: List[GetDutchCastlesFeaturesProperties], optional + :param vendor_specific_parameters: Additional "free-form" parameters that are not explicitly defined, defaults to None + :type vendor_specific_parameters: dict, optional + :param skip_geometry: This option can be used to skip response geometries for each feature., defaults to None + :type skip_geometry: bool, optional + :param sortby: Specifies a comma-separated list of property names by which the response shall + be sorted. If the property name is preceded by a plus (+) sign it indicates + an ascending sort for that property. If the property name is preceded by a + minus (-) sign it indicates a descending sort for that property. If the + property is not preceded by a plus or minus, then the default sort order + implied is ascending (+)., defaults to None + :type sortby: List[str], optional + :param offset: The optional offset parameter indicates the index within the result set from which the server shall begin presenting results in the response document. The first element has an index of 0 (default)., defaults to None + :type offset: int, optional + :param gml_id: gml_id, defaults to None + :type gml_id: str, optional + :param gid: gid, defaults to None + :type gid: int, optional + :param cchin: cchin, defaults to None + :type cchin: str, optional + :param naam: naam, defaults to None + :type naam: str, optional + :param plaats: plaats, defaults to None + :type plaats: str, optional + :param info_link: info_link, defaults to None + :type info_link: str, optional + :param datering: datering, defaults to None + :type datering: str, optional + :param rijksmonnr: rijksmonnr, defaults to None + :type rijksmonnr: str, optional + :param provincie: provincie, defaults to None + :type provincie: str, optional + :param foto_thumb: foto_thumb, defaults to None + :type foto_thumb: str, optional + :param foto_groot: foto_groot, defaults to None + :type foto_groot: str, optional + :param bijschrift: bijschrift, defaults to None + :type bijschrift: str, optional + :param zichtbaar: zichtbaar, defaults to None + :type zichtbaar: str, optional + :param legenda: legenda, defaults to None + :type legenda: str, optional + :param typering: typering, defaults to None + :type typering: str, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: The response is a document consisting of features in the collection. + The features included in the response are determined by the server + based on the query parameters of the request. To support access to + larger collections without overloading the client, the API supports + paged access with links to the next page, if more features are selected + that the page size. + + The `bbox` and `datetime` parameter can be used to select only a + subset of the features in the collection (the features that are in the + bounding box or time interval). The `bbox` parameter matches all features + in the collection that are not associated with a location, too. The + `datetime` parameter matches all features in the collection that are + not associated with a time stamp or interval, too. + + The `limit` parameter may be used to control the subset of the + selected features that should be returned in the response, the page size. + Each page may include information about the number of selected and + returned features (`numberMatched` and `numberReturned`) as well as + links to support paging (link relation `next`). + :rtype: FeatureCollectionGeoJson + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + Validator(float).is_array().is_optional().validate(bbox) + Validator(int).is_optional().min(1).max(10000).validate(limit) + Validator(str).is_optional().validate(crs) + Validator(str).is_optional().validate(bbox_crs) + Validator(GetDutchCastlesFeaturesProperties).is_array().is_optional().validate( + properties + ) + Validator(dict).is_optional().validate(vendor_specific_parameters) + Validator(bool).is_optional().validate(skip_geometry) + Validator(str).is_array().is_optional().validate(sortby) + Validator(int).is_optional().min(0).validate(offset) + Validator(str).is_optional().validate(gml_id) + Validator(int).is_optional().validate(gid) + Validator(str).is_optional().validate(cchin) + Validator(str).is_optional().validate(naam) + Validator(str).is_optional().validate(plaats) + Validator(str).is_optional().validate(info_link) + Validator(str).is_optional().validate(datering) + Validator(str).is_optional().validate(rijksmonnr) + Validator(str).is_optional().validate(provincie) + Validator(str).is_optional().validate(foto_thumb) + Validator(str).is_optional().validate(foto_groot) + Validator(str).is_optional().validate(bijschrift) + Validator(str).is_optional().validate(zichtbaar) + Validator(str).is_optional().validate(legenda) + Validator(str).is_optional().validate(typering) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/dutch_castles/items", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .add_query("bbox", bbox, explode=False) + .add_query("limit", limit, explode=False) + .add_query("crs", crs, explode=False) + .add_query("bbox-crs", bbox_crs, explode=False) + .add_query("properties", properties, explode=False) + .add_query("vendorSpecificParameters", vendor_specific_parameters) + .add_query("skipGeometry", skip_geometry, explode=False) + .add_query("sortby", sortby, explode=False) + .add_query("offset", offset, explode=False) + .add_query("gml_id", gml_id, explode=False) + .add_query("gid", gid, explode=False) + .add_query("cchin", cchin, explode=False) + .add_query("naam", naam, explode=False) + .add_query("plaats", plaats, explode=False) + .add_query("info_link", info_link, explode=False) + .add_query("datering", datering, explode=False) + .add_query("rijksmonnr", rijksmonnr, explode=False) + .add_query("provincie", provincie, explode=False) + .add_query("foto_thumb", foto_thumb, explode=False) + .add_query("foto_groot", foto_groot, explode=False) + .add_query("bijschrift", bijschrift, explode=False) + .add_query("zichtbaar", zichtbaar, explode=False) + .add_query("legenda", legenda, explode=False) + .add_query("typering", typering, explode=False) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return FeatureCollectionGeoJson._unmap(response) + + @cast_models + def options_dutch_castles_features(self) -> Any: + """Locations of castles within the Netherlands from Rijksdienst voor het Cultureel Erfgoed (RCE) INSPIRE WFS. Uses GeoServer WFS v2 backend via OGRProvider. + + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + """ + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/dutch_castles/items", + self.get_default_headers(), + ) + .serialize() + .set_method("OPTIONS") + ) + + response = self.send_request(serialized_request) + return response + + @cast_models + def get_dutch_castles_feature( + self, + feature_id: str, + crs: str = None, + f: GetLandingPageF = None, + lang: Lang = None, + ) -> FeatureGeoJson: + """Locations of castles within the Netherlands from Rijksdienst voor het Cultureel Erfgoed (RCE) INSPIRE WFS. Uses GeoServer WFS v2 backend via OGRProvider. + + :param feature_id: local identifier of a feature + :type feature_id: str + :param crs: Indicates the coordinate reference system for the results., defaults to None + :type crs: str, optional + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: fetch the feature with id `featureId` in the feature collection + with id `collectionId` + :rtype: FeatureGeoJson + """ + + Validator(str).validate(feature_id) + Validator(str).is_optional().validate(crs) + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/dutch_castles/items/{{featureId}}", + self.get_default_headers(), + ) + .add_path("featureId", feature_id) + .add_query("crs", crs, explode=False) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return FeatureGeoJson._unmap(response) + + @cast_models + def options_dutch_castles_feature(self, feature_id: str) -> Any: + """Locations of castles within the Netherlands from Rijksdienst voor het Cultureel Erfgoed (RCE) INSPIRE WFS. Uses GeoServer WFS v2 backend via OGRProvider. + + :param feature_id: local identifier of a feature + :type feature_id: str + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + """ + + Validator(str).validate(feature_id) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/dutch_castles/items/{{featureId}}", + self.get_default_headers(), + ) + .add_path("featureId", feature_id) + .serialize() + .set_method("OPTIONS") + ) + + response = self.send_request(serialized_request) + return response + + @cast_models + def get_dutch_castles_queryables( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Queryables: + """Locations of castles within the Netherlands from Rijksdienst voor het Cultureel Erfgoed (RCE) INSPIRE WFS. Uses GeoServer WFS v2 backend via OGRProvider. + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: successful queryables operation + :rtype: Queryables + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/dutch_castles/queryables", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Queryables._unmap(response) + + @cast_models + def get_dutch_castles_schema( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Queryables: + """Locations of castles within the Netherlands from Rijksdienst voor het Cultureel Erfgoed (RCE) INSPIRE WFS. Uses GeoServer WFS v2 backend via OGRProvider. + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: successful queryables operation + :rtype: Queryables + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/dutch_castles/schema", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Queryables._unmap(response) diff --git a/src/geobeyond_sdk/services/dutch_georef_stations.py b/src/geobeyond_sdk/services/dutch_georef_stations.py new file mode 100644 index 0000000..8eef4e2 --- /dev/null +++ b/src/geobeyond_sdk/services/dutch_georef_stations.py @@ -0,0 +1,427 @@ +# This file was generated by liblab | https://liblab.com/ + +from typing import Any, List +from .utils.validator import Validator +from .utils.base_service import BaseService +from ..net.transport.serializer import Serializer +from ..models.utils.cast_models import cast_models +from ..models import ( + Collection, + FeatureCollectionGeoJson, + FeatureGeoJson, + GetDutchGeorefStationsFeaturesProperties, + GetLandingPageF, + Lang, + Queryables, +) + + +class DutchGeorefStationsService(BaseService): + + @cast_models + def describe_dutch_georef_stations_collection( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Collection: + """Locations of RD/GNSS-reference stations from Dutch Kadaster PDOK a.k.a RDInfo. Uses MapServer WFS v2 backend via OGRProvider. + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: Information about the feature collection with id `collectionId`. + + The response contains a link to the items in the collection + (path `/collections/{collectionId}/items`, link relation `items`) + as well as key information about the collection. This information + includes: + + * A local identifier for the collection that is unique for the dataset; + * A list of coordinate reference systems (CRS) in which geometries may be returned by the server. The first CRS is the default coordinate reference system (the default is always WGS 84 with axis order longitude/latitude); + * An optional title and description for the collection; + * An optional extent that can be used to provide an indication of the spatial and temporal extent of the collection - typically derived from the data; + * An optional indicator about the type of the items in the collection (the default value, if the indicator is not provided, is 'feature'). + :rtype: Collection + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/dutch_georef_stations", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Collection._unmap(response) + + @cast_models + def get_dutch_georef_stations_features( + self, + f: GetLandingPageF = None, + lang: Lang = None, + bbox: List[float] = None, + limit: int = None, + crs: str = None, + bbox_crs: str = None, + properties: List[GetDutchGeorefStationsFeaturesProperties] = None, + vendor_specific_parameters: dict = None, + skip_geometry: bool = None, + sortby: List[str] = None, + offset: int = None, + gml_id: str = None, + gid: int = None, + blad: str = None, + punt: int = None, + station: str = None, + jaar: int = None, + maand: str = None, + dag: str = None, + omschrext: str = None, + omschrint: str = None, + xrd: float = None, + yrd: float = None, + phi: str = None, + lambda_: str = None, + h: float = None, + gps: int = None, + peilmerk: str = None, + fuuid: str = None, + ) -> FeatureCollectionGeoJson: + """Locations of RD/GNSS-reference stations from Dutch Kadaster PDOK a.k.a RDInfo. Uses MapServer WFS v2 backend via OGRProvider. + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + :param bbox: Only features that have a geometry that intersects the bounding box are selected.The bounding box is provided as four or six numbers, depending on whether the coordinate reference system includes a vertical axis (height or depth)., defaults to None + :type bbox: List[float], optional + :param limit: The optional limit parameter limits the number of items that are presented in the response document. + + Only items are counted that are on the first level of the collection in the response document. + Nested objects contained within the explicitly requested items shall not be counted. + + Minimum = 1. Maximum = 10000. Default = 10., defaults to None + :type limit: int, optional + :param crs: Indicates the coordinate reference system for the results., defaults to None + :type crs: str, optional + :param bbox_crs: Indicates the coordinate reference system for the given bbox coordinates., defaults to None + :type bbox_crs: str, optional + :param properties: The properties that should be included for each feature. The parameter value is a comma-separated list of property names., defaults to None + :type properties: List[GetDutchGeorefStationsFeaturesProperties], optional + :param vendor_specific_parameters: Additional "free-form" parameters that are not explicitly defined, defaults to None + :type vendor_specific_parameters: dict, optional + :param skip_geometry: This option can be used to skip response geometries for each feature., defaults to None + :type skip_geometry: bool, optional + :param sortby: Specifies a comma-separated list of property names by which the response shall + be sorted. If the property name is preceded by a plus (+) sign it indicates + an ascending sort for that property. If the property name is preceded by a + minus (-) sign it indicates a descending sort for that property. If the + property is not preceded by a plus or minus, then the default sort order + implied is ascending (+)., defaults to None + :type sortby: List[str], optional + :param offset: The optional offset parameter indicates the index within the result set from which the server shall begin presenting results in the response document. The first element has an index of 0 (default)., defaults to None + :type offset: int, optional + :param gml_id: gml_id, defaults to None + :type gml_id: str, optional + :param gid: gid, defaults to None + :type gid: int, optional + :param blad: blad, defaults to None + :type blad: str, optional + :param punt: punt, defaults to None + :type punt: int, optional + :param station: station, defaults to None + :type station: str, optional + :param jaar: jaar, defaults to None + :type jaar: int, optional + :param maand: maand, defaults to None + :type maand: str, optional + :param dag: dag, defaults to None + :type dag: str, optional + :param omschrext: omschrext, defaults to None + :type omschrext: str, optional + :param omschrint: omschrint, defaults to None + :type omschrint: str, optional + :param xrd: xrd, defaults to None + :type xrd: float, optional + :param yrd: yrd, defaults to None + :type yrd: float, optional + :param phi: phi, defaults to None + :type phi: str, optional + :param lambda_: lambda_, defaults to None + :type lambda_: str, optional + :param h: h, defaults to None + :type h: float, optional + :param gps: gps, defaults to None + :type gps: int, optional + :param peilmerk: peilmerk, defaults to None + :type peilmerk: str, optional + :param fuuid: fuuid, defaults to None + :type fuuid: str, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: The response is a document consisting of features in the collection. + The features included in the response are determined by the server + based on the query parameters of the request. To support access to + larger collections without overloading the client, the API supports + paged access with links to the next page, if more features are selected + that the page size. + + The `bbox` and `datetime` parameter can be used to select only a + subset of the features in the collection (the features that are in the + bounding box or time interval). The `bbox` parameter matches all features + in the collection that are not associated with a location, too. The + `datetime` parameter matches all features in the collection that are + not associated with a time stamp or interval, too. + + The `limit` parameter may be used to control the subset of the + selected features that should be returned in the response, the page size. + Each page may include information about the number of selected and + returned features (`numberMatched` and `numberReturned`) as well as + links to support paging (link relation `next`). + :rtype: FeatureCollectionGeoJson + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + Validator(float).is_array().is_optional().validate(bbox) + Validator(int).is_optional().min(1).max(10000).validate(limit) + Validator(str).is_optional().validate(crs) + Validator(str).is_optional().validate(bbox_crs) + Validator( + GetDutchGeorefStationsFeaturesProperties + ).is_array().is_optional().validate(properties) + Validator(dict).is_optional().validate(vendor_specific_parameters) + Validator(bool).is_optional().validate(skip_geometry) + Validator(str).is_array().is_optional().validate(sortby) + Validator(int).is_optional().min(0).validate(offset) + Validator(str).is_optional().validate(gml_id) + Validator(int).is_optional().validate(gid) + Validator(str).is_optional().validate(blad) + Validator(int).is_optional().validate(punt) + Validator(str).is_optional().validate(station) + Validator(int).is_optional().validate(jaar) + Validator(str).is_optional().validate(maand) + Validator(str).is_optional().validate(dag) + Validator(str).is_optional().validate(omschrext) + Validator(str).is_optional().validate(omschrint) + Validator(float).is_optional().validate(xrd) + Validator(float).is_optional().validate(yrd) + Validator(str).is_optional().validate(phi) + Validator(str).is_optional().validate(lambda_) + Validator(float).is_optional().validate(h) + Validator(int).is_optional().validate(gps) + Validator(str).is_optional().validate(peilmerk) + Validator(str).is_optional().validate(fuuid) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/dutch_georef_stations/items", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .add_query("bbox", bbox, explode=False) + .add_query("limit", limit, explode=False) + .add_query("crs", crs, explode=False) + .add_query("bbox-crs", bbox_crs, explode=False) + .add_query("properties", properties, explode=False) + .add_query("vendorSpecificParameters", vendor_specific_parameters) + .add_query("skipGeometry", skip_geometry, explode=False) + .add_query("sortby", sortby, explode=False) + .add_query("offset", offset, explode=False) + .add_query("gml_id", gml_id, explode=False) + .add_query("gid", gid, explode=False) + .add_query("blad", blad, explode=False) + .add_query("punt", punt, explode=False) + .add_query("station", station, explode=False) + .add_query("jaar", jaar, explode=False) + .add_query("maand", maand, explode=False) + .add_query("dag", dag, explode=False) + .add_query("omschrext", omschrext, explode=False) + .add_query("omschrint", omschrint, explode=False) + .add_query("xrd", xrd, explode=False) + .add_query("yrd", yrd, explode=False) + .add_query("phi", phi, explode=False) + .add_query("lambda", lambda_, explode=False) + .add_query("h", h, explode=False) + .add_query("gps", gps, explode=False) + .add_query("peilmerk", peilmerk, explode=False) + .add_query("fuuid", fuuid, explode=False) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return FeatureCollectionGeoJson._unmap(response) + + @cast_models + def options_dutch_georef_stations_features(self) -> Any: + """Locations of RD/GNSS-reference stations from Dutch Kadaster PDOK a.k.a RDInfo. Uses MapServer WFS v2 backend via OGRProvider. + + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + """ + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/dutch_georef_stations/items", + self.get_default_headers(), + ) + .serialize() + .set_method("OPTIONS") + ) + + response = self.send_request(serialized_request) + return response + + @cast_models + def get_dutch_georef_stations_feature( + self, + feature_id: str, + crs: str = None, + f: GetLandingPageF = None, + lang: Lang = None, + ) -> FeatureGeoJson: + """Locations of RD/GNSS-reference stations from Dutch Kadaster PDOK a.k.a RDInfo. Uses MapServer WFS v2 backend via OGRProvider. + + :param feature_id: local identifier of a feature + :type feature_id: str + :param crs: Indicates the coordinate reference system for the results., defaults to None + :type crs: str, optional + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: fetch the feature with id `featureId` in the feature collection + with id `collectionId` + :rtype: FeatureGeoJson + """ + + Validator(str).validate(feature_id) + Validator(str).is_optional().validate(crs) + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/dutch_georef_stations/items/{{featureId}}", + self.get_default_headers(), + ) + .add_path("featureId", feature_id) + .add_query("crs", crs, explode=False) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return FeatureGeoJson._unmap(response) + + @cast_models + def options_dutch_georef_stations_feature(self, feature_id: str) -> Any: + """Locations of RD/GNSS-reference stations from Dutch Kadaster PDOK a.k.a RDInfo. Uses MapServer WFS v2 backend via OGRProvider. + + :param feature_id: local identifier of a feature + :type feature_id: str + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + """ + + Validator(str).validate(feature_id) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/dutch_georef_stations/items/{{featureId}}", + self.get_default_headers(), + ) + .add_path("featureId", feature_id) + .serialize() + .set_method("OPTIONS") + ) + + response = self.send_request(serialized_request) + return response + + @cast_models + def get_dutch_georef_stations_queryables( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Queryables: + """Locations of RD/GNSS-reference stations from Dutch Kadaster PDOK a.k.a RDInfo. Uses MapServer WFS v2 backend via OGRProvider. + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: successful queryables operation + :rtype: Queryables + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/dutch_georef_stations/queryables", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Queryables._unmap(response) + + @cast_models + def get_dutch_georef_stations_schema( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Queryables: + """Locations of RD/GNSS-reference stations from Dutch Kadaster PDOK a.k.a RDInfo. Uses MapServer WFS v2 backend via OGRProvider. + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: successful queryables operation + :rtype: Queryables + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/dutch_georef_stations/schema", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Queryables._unmap(response) diff --git a/src/geobeyond_sdk/services/dutch_metadata.py b/src/geobeyond_sdk/services/dutch_metadata.py new file mode 100644 index 0000000..67d0223 --- /dev/null +++ b/src/geobeyond_sdk/services/dutch_metadata.py @@ -0,0 +1,411 @@ +# This file was generated by liblab | https://liblab.com/ + +from typing import Any, List +from .utils.validator import Validator +from .utils.base_service import BaseService +from ..net.transport.serializer import Serializer +from ..models.utils.cast_models import cast_models +from ..models import ( + Collection, + FeatureCollectionGeoJson, + FeatureGeoJson, + GetDutchMetadataFeaturesProperties, + GetLandingPageF, + Lang, + Queryables, +) + + +class DutchMetadataService(BaseService): + + @cast_models + def describe_dutch_metadata_collection( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Collection: + """Sample metadata records from Dutch Nationaal georegister + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: Information about the feature collection with id `collectionId`. + + The response contains a link to the items in the collection + (path `/collections/{collectionId}/items`, link relation `items`) + as well as key information about the collection. This information + includes: + + * A local identifier for the collection that is unique for the dataset; + * A list of coordinate reference systems (CRS) in which geometries may be returned by the server. The first CRS is the default coordinate reference system (the default is always WGS 84 with axis order longitude/latitude); + * An optional title and description for the collection; + * An optional extent that can be used to provide an indication of the spatial and temporal extent of the collection - typically derived from the data; + * An optional indicator about the type of the items in the collection (the default value, if the indicator is not provided, is 'feature'). + :rtype: Collection + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/dutch-metadata", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Collection._unmap(response) + + @cast_models + def get_dutch_metadata_features( + self, + f: GetLandingPageF = None, + lang: Lang = None, + bbox: List[float] = None, + limit: int = None, + crs: str = None, + bbox_crs: str = None, + properties: List[GetDutchMetadataFeaturesProperties] = None, + vendor_specific_parameters: dict = None, + skip_geometry: bool = None, + sortby: List[str] = None, + offset: int = None, + q: List[str] = None, + datetime_: str = None, + created: str = None, + updated: str = None, + type_: str = None, + title: str = None, + description: str = None, + providers: str = None, + external_ids: str = None, + themes: str = None, + extent: str = None, + ) -> FeatureCollectionGeoJson: + """Sample metadata records from Dutch Nationaal georegister + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + :param bbox: Only features that have a geometry that intersects the bounding box are selected.The bounding box is provided as four or six numbers, depending on whether the coordinate reference system includes a vertical axis (height or depth)., defaults to None + :type bbox: List[float], optional + :param limit: The optional limit parameter limits the number of items that are presented in the response document. + + Only items are counted that are on the first level of the collection in the response document. + Nested objects contained within the explicitly requested items shall not be counted. + + Minimum = 1. Maximum = 10000. Default = 10., defaults to None + :type limit: int, optional + :param crs: Indicates the coordinate reference system for the results., defaults to None + :type crs: str, optional + :param bbox_crs: Indicates the coordinate reference system for the given bbox coordinates., defaults to None + :type bbox_crs: str, optional + :param properties: The properties that should be included for each feature. The parameter value is a comma-separated list of property names., defaults to None + :type properties: List[GetDutchMetadataFeaturesProperties], optional + :param vendor_specific_parameters: Additional "free-form" parameters that are not explicitly defined, defaults to None + :type vendor_specific_parameters: dict, optional + :param skip_geometry: This option can be used to skip response geometries for each feature., defaults to None + :type skip_geometry: bool, optional + :param sortby: Specifies a comma-separated list of property names by which the response shall + be sorted. If the property name is preceded by a plus (+) sign it indicates + an ascending sort for that property. If the property name is preceded by a + minus (-) sign it indicates a descending sort for that property. If the + property is not preceded by a plus or minus, then the default sort order + implied is ascending (+)., defaults to None + :type sortby: List[str], optional + :param offset: The optional offset parameter indicates the index within the result set from which the server shall begin presenting results in the response document. The first element has an index of 0 (default)., defaults to None + :type offset: int, optional + :param q: The optional q parameter supports keyword searching. Only records + whose text fields contain one or more of the specified search terms + are selected. The specific set of text keys/fields/properties of a + record to which the q operator is applied is up to the description + of the server. Implementations should, however, apply the q + operator to the title, description and keywords keys/fields/properties., defaults to None + :type q: List[str], optional + :param datetime_: Either a date-time or an interval. Date and time expressions adhere to RFC 3339. + Intervals may be bounded or half-bounded (double-dots at start or end). + + Examples: + + * A date-time: "2018-02-12T23:20:50Z" + * A bounded interval: "2018-02-12T00:00:00Z/2018-03-18T12:31:12Z" + * Half-bounded intervals: "2018-02-12T00:00:00Z/.." or "../2018-03-18T12:31:12Z" + + Only features that have a temporal property that intersects the value of + `datetime` are selected. + + If a feature has multiple temporal properties, it is the decision of the + server whether only a single temporal property is used to determine + the extent or all relevant temporal properties., defaults to None + :type datetime_: str, optional + :param created: created, defaults to None + :type created: str, optional + :param updated: updated, defaults to None + :type updated: str, optional + :param type_: type_, defaults to None + :type type_: str, optional + :param title: title, defaults to None + :type title: str, optional + :param description: description, defaults to None + :type description: str, optional + :param providers: providers, defaults to None + :type providers: str, optional + :param external_ids: external_ids, defaults to None + :type external_ids: str, optional + :param themes: themes, defaults to None + :type themes: str, optional + :param extent: extent, defaults to None + :type extent: str, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: The response is a document consisting of features in the collection. + The features included in the response are determined by the server + based on the query parameters of the request. To support access to + larger collections without overloading the client, the API supports + paged access with links to the next page, if more features are selected + that the page size. + + The `bbox` and `datetime` parameter can be used to select only a + subset of the features in the collection (the features that are in the + bounding box or time interval). The `bbox` parameter matches all features + in the collection that are not associated with a location, too. The + `datetime` parameter matches all features in the collection that are + not associated with a time stamp or interval, too. + + The `limit` parameter may be used to control the subset of the + selected features that should be returned in the response, the page size. + Each page may include information about the number of selected and + returned features (`numberMatched` and `numberReturned`) as well as + links to support paging (link relation `next`). + :rtype: FeatureCollectionGeoJson + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + Validator(float).is_array().is_optional().validate(bbox) + Validator(int).is_optional().min(1).max(10000).validate(limit) + Validator(str).is_optional().validate(crs) + Validator(str).is_optional().validate(bbox_crs) + Validator(GetDutchMetadataFeaturesProperties).is_array().is_optional().validate( + properties + ) + Validator(dict).is_optional().validate(vendor_specific_parameters) + Validator(bool).is_optional().validate(skip_geometry) + Validator(str).is_array().is_optional().validate(sortby) + Validator(int).is_optional().min(0).validate(offset) + Validator(str).is_array().is_optional().validate(q) + Validator(str).is_optional().validate(datetime_) + Validator(str).is_optional().validate(created) + Validator(str).is_optional().validate(updated) + Validator(str).is_optional().validate(type_) + Validator(str).is_optional().validate(title) + Validator(str).is_optional().validate(description) + Validator(str).is_optional().validate(providers) + Validator(str).is_optional().validate(external_ids) + Validator(str).is_optional().validate(themes) + Validator(str).is_optional().validate(extent) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/dutch-metadata/items", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .add_query("bbox", bbox, explode=False) + .add_query("limit", limit, explode=False) + .add_query("crs", crs, explode=False) + .add_query("bbox-crs", bbox_crs, explode=False) + .add_query("properties", properties, explode=False) + .add_query("vendorSpecificParameters", vendor_specific_parameters) + .add_query("skipGeometry", skip_geometry, explode=False) + .add_query("sortby", sortby, explode=False) + .add_query("offset", offset, explode=False) + .add_query("q", q, explode=False) + .add_query("datetime", datetime_, explode=False) + .add_query("created", created, explode=False) + .add_query("updated", updated, explode=False) + .add_query("type", type_, explode=False) + .add_query("title", title, explode=False) + .add_query("description", description, explode=False) + .add_query("providers", providers, explode=False) + .add_query("externalIds", external_ids, explode=False) + .add_query("themes", themes, explode=False) + .add_query("extent", extent, explode=False) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return FeatureCollectionGeoJson._unmap(response) + + @cast_models + def options_dutch_metadata_features(self) -> Any: + """Sample metadata records from Dutch Nationaal georegister + + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + """ + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/dutch-metadata/items", + self.get_default_headers(), + ) + .serialize() + .set_method("OPTIONS") + ) + + response = self.send_request(serialized_request) + return response + + @cast_models + def get_dutch_metadata_feature( + self, + feature_id: str, + crs: str = None, + f: GetLandingPageF = None, + lang: Lang = None, + ) -> FeatureGeoJson: + """Sample metadata records from Dutch Nationaal georegister + + :param feature_id: local identifier of a feature + :type feature_id: str + :param crs: Indicates the coordinate reference system for the results., defaults to None + :type crs: str, optional + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: fetch the feature with id `featureId` in the feature collection + with id `collectionId` + :rtype: FeatureGeoJson + """ + + Validator(str).validate(feature_id) + Validator(str).is_optional().validate(crs) + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/dutch-metadata/items/{{featureId}}", + self.get_default_headers(), + ) + .add_path("featureId", feature_id) + .add_query("crs", crs, explode=False) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return FeatureGeoJson._unmap(response) + + @cast_models + def options_dutch_metadata_feature(self, feature_id: str) -> Any: + """Sample metadata records from Dutch Nationaal georegister + + :param feature_id: local identifier of a feature + :type feature_id: str + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + """ + + Validator(str).validate(feature_id) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/dutch-metadata/items/{{featureId}}", + self.get_default_headers(), + ) + .add_path("featureId", feature_id) + .serialize() + .set_method("OPTIONS") + ) + + response = self.send_request(serialized_request) + return response + + @cast_models + def get_dutch_metadata_queryables( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Queryables: + """Sample metadata records from Dutch Nationaal georegister + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: successful queryables operation + :rtype: Queryables + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/dutch-metadata/queryables", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Queryables._unmap(response) + + @cast_models + def get_dutch_metadata_schema( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Queryables: + """Sample metadata records from Dutch Nationaal georegister + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: successful queryables operation + :rtype: Queryables + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/dutch-metadata/schema", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Queryables._unmap(response) diff --git a/src/geobeyond_sdk/services/dutch_windmills.py b/src/geobeyond_sdk/services/dutch_windmills.py new file mode 100644 index 0000000..514dfa3 --- /dev/null +++ b/src/geobeyond_sdk/services/dutch_windmills.py @@ -0,0 +1,417 @@ +# This file was generated by liblab | https://liblab.com/ + +from typing import Any, List +from .utils.validator import Validator +from .utils.base_service import BaseService +from ..net.transport.serializer import Serializer +from ..models.utils.cast_models import cast_models +from ..models import ( + Collection, + FeatureCollectionGeoJson, + FeatureGeoJson, + GetDutchWindmillsFeaturesProperties, + GetLandingPageF, + Lang, + Queryables, +) + + +class DutchWindmillsService(BaseService): + + @cast_models + def describe_dutch_windmills_collection( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Collection: + """Locations of windmills within the Netherlands from Rijksdienst voor het Cultureel Erfgoed (RCE) INSPIRE WFS. Uses GeoServer WFS v2 backend via OGRProvider. + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: Information about the feature collection with id `collectionId`. + + The response contains a link to the items in the collection + (path `/collections/{collectionId}/items`, link relation `items`) + as well as key information about the collection. This information + includes: + + * A local identifier for the collection that is unique for the dataset; + * A list of coordinate reference systems (CRS) in which geometries may be returned by the server. The first CRS is the default coordinate reference system (the default is always WGS 84 with axis order longitude/latitude); + * An optional title and description for the collection; + * An optional extent that can be used to provide an indication of the spatial and temporal extent of the collection - typically derived from the data; + * An optional indicator about the type of the items in the collection (the default value, if the indicator is not provided, is 'feature'). + :rtype: Collection + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/dutch_windmills", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Collection._unmap(response) + + @cast_models + def get_dutch_windmills_features( + self, + f: GetLandingPageF = None, + lang: Lang = None, + bbox: List[float] = None, + limit: int = None, + crs: str = None, + bbox_crs: str = None, + properties: List[GetDutchWindmillsFeaturesProperties] = None, + vendor_specific_parameters: dict = None, + skip_geometry: bool = None, + sortby: List[str] = None, + offset: int = None, + gml_id: str = None, + gid: int = None, + naam: str = None, + plaats: str = None, + categorie: str = None, + functie: str = None, + type_: str = None, + staat: str = None, + rmonnummer: str = None, + tbgcnummer: str = None, + infolink: str = None, + thumbnail: str = None, + hfdfunctie: str = None, + fotograaf: str = None, + foto_groot: str = None, + bouwjaar: str = None, + ) -> FeatureCollectionGeoJson: + """Locations of windmills within the Netherlands from Rijksdienst voor het Cultureel Erfgoed (RCE) INSPIRE WFS. Uses GeoServer WFS v2 backend via OGRProvider. + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + :param bbox: Only features that have a geometry that intersects the bounding box are selected.The bounding box is provided as four or six numbers, depending on whether the coordinate reference system includes a vertical axis (height or depth)., defaults to None + :type bbox: List[float], optional + :param limit: The optional limit parameter limits the number of items that are presented in the response document. + + Only items are counted that are on the first level of the collection in the response document. + Nested objects contained within the explicitly requested items shall not be counted. + + Minimum = 1. Maximum = 10000. Default = 10., defaults to None + :type limit: int, optional + :param crs: Indicates the coordinate reference system for the results., defaults to None + :type crs: str, optional + :param bbox_crs: Indicates the coordinate reference system for the given bbox coordinates., defaults to None + :type bbox_crs: str, optional + :param properties: The properties that should be included for each feature. The parameter value is a comma-separated list of property names., defaults to None + :type properties: List[GetDutchWindmillsFeaturesProperties], optional + :param vendor_specific_parameters: Additional "free-form" parameters that are not explicitly defined, defaults to None + :type vendor_specific_parameters: dict, optional + :param skip_geometry: This option can be used to skip response geometries for each feature., defaults to None + :type skip_geometry: bool, optional + :param sortby: Specifies a comma-separated list of property names by which the response shall + be sorted. If the property name is preceded by a plus (+) sign it indicates + an ascending sort for that property. If the property name is preceded by a + minus (-) sign it indicates a descending sort for that property. If the + property is not preceded by a plus or minus, then the default sort order + implied is ascending (+)., defaults to None + :type sortby: List[str], optional + :param offset: The optional offset parameter indicates the index within the result set from which the server shall begin presenting results in the response document. The first element has an index of 0 (default)., defaults to None + :type offset: int, optional + :param gml_id: gml_id, defaults to None + :type gml_id: str, optional + :param gid: gid, defaults to None + :type gid: int, optional + :param naam: naam, defaults to None + :type naam: str, optional + :param plaats: plaats, defaults to None + :type plaats: str, optional + :param categorie: categorie, defaults to None + :type categorie: str, optional + :param functie: functie, defaults to None + :type functie: str, optional + :param type_: type_, defaults to None + :type type_: str, optional + :param staat: staat, defaults to None + :type staat: str, optional + :param rmonnummer: rmonnummer, defaults to None + :type rmonnummer: str, optional + :param tbgcnummer: tbgcnummer, defaults to None + :type tbgcnummer: str, optional + :param infolink: infolink, defaults to None + :type infolink: str, optional + :param thumbnail: thumbnail, defaults to None + :type thumbnail: str, optional + :param hfdfunctie: hfdfunctie, defaults to None + :type hfdfunctie: str, optional + :param fotograaf: fotograaf, defaults to None + :type fotograaf: str, optional + :param foto_groot: foto_groot, defaults to None + :type foto_groot: str, optional + :param bouwjaar: bouwjaar, defaults to None + :type bouwjaar: str, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: The response is a document consisting of features in the collection. + The features included in the response are determined by the server + based on the query parameters of the request. To support access to + larger collections without overloading the client, the API supports + paged access with links to the next page, if more features are selected + that the page size. + + The `bbox` and `datetime` parameter can be used to select only a + subset of the features in the collection (the features that are in the + bounding box or time interval). The `bbox` parameter matches all features + in the collection that are not associated with a location, too. The + `datetime` parameter matches all features in the collection that are + not associated with a time stamp or interval, too. + + The `limit` parameter may be used to control the subset of the + selected features that should be returned in the response, the page size. + Each page may include information about the number of selected and + returned features (`numberMatched` and `numberReturned`) as well as + links to support paging (link relation `next`). + :rtype: FeatureCollectionGeoJson + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + Validator(float).is_array().is_optional().validate(bbox) + Validator(int).is_optional().min(1).max(10000).validate(limit) + Validator(str).is_optional().validate(crs) + Validator(str).is_optional().validate(bbox_crs) + Validator( + GetDutchWindmillsFeaturesProperties + ).is_array().is_optional().validate(properties) + Validator(dict).is_optional().validate(vendor_specific_parameters) + Validator(bool).is_optional().validate(skip_geometry) + Validator(str).is_array().is_optional().validate(sortby) + Validator(int).is_optional().min(0).validate(offset) + Validator(str).is_optional().validate(gml_id) + Validator(int).is_optional().validate(gid) + Validator(str).is_optional().validate(naam) + Validator(str).is_optional().validate(plaats) + Validator(str).is_optional().validate(categorie) + Validator(str).is_optional().validate(functie) + Validator(str).is_optional().validate(type_) + Validator(str).is_optional().validate(staat) + Validator(str).is_optional().validate(rmonnummer) + Validator(str).is_optional().validate(tbgcnummer) + Validator(str).is_optional().validate(infolink) + Validator(str).is_optional().validate(thumbnail) + Validator(str).is_optional().validate(hfdfunctie) + Validator(str).is_optional().validate(fotograaf) + Validator(str).is_optional().validate(foto_groot) + Validator(str).is_optional().validate(bouwjaar) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/dutch_windmills/items", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .add_query("bbox", bbox, explode=False) + .add_query("limit", limit, explode=False) + .add_query("crs", crs, explode=False) + .add_query("bbox-crs", bbox_crs, explode=False) + .add_query("properties", properties, explode=False) + .add_query("vendorSpecificParameters", vendor_specific_parameters) + .add_query("skipGeometry", skip_geometry, explode=False) + .add_query("sortby", sortby, explode=False) + .add_query("offset", offset, explode=False) + .add_query("gml_id", gml_id, explode=False) + .add_query("gid", gid, explode=False) + .add_query("NAAM", naam, explode=False) + .add_query("PLAATS", plaats, explode=False) + .add_query("CATEGORIE", categorie, explode=False) + .add_query("FUNCTIE", functie, explode=False) + .add_query("TYPE", type_, explode=False) + .add_query("STAAT", staat, explode=False) + .add_query("RMONNUMMER", rmonnummer, explode=False) + .add_query("TBGCNUMMER", tbgcnummer, explode=False) + .add_query("INFOLINK", infolink, explode=False) + .add_query("THUMBNAIL", thumbnail, explode=False) + .add_query("HFDFUNCTIE", hfdfunctie, explode=False) + .add_query("FOTOGRAAF", fotograaf, explode=False) + .add_query("FOTO_GROOT", foto_groot, explode=False) + .add_query("BOUWJAAR", bouwjaar, explode=False) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return FeatureCollectionGeoJson._unmap(response) + + @cast_models + def options_dutch_windmills_features(self) -> Any: + """Locations of windmills within the Netherlands from Rijksdienst voor het Cultureel Erfgoed (RCE) INSPIRE WFS. Uses GeoServer WFS v2 backend via OGRProvider. + + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + """ + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/dutch_windmills/items", + self.get_default_headers(), + ) + .serialize() + .set_method("OPTIONS") + ) + + response = self.send_request(serialized_request) + return response + + @cast_models + def get_dutch_windmills_feature( + self, + feature_id: str, + crs: str = None, + f: GetLandingPageF = None, + lang: Lang = None, + ) -> FeatureGeoJson: + """Locations of windmills within the Netherlands from Rijksdienst voor het Cultureel Erfgoed (RCE) INSPIRE WFS. Uses GeoServer WFS v2 backend via OGRProvider. + + :param feature_id: local identifier of a feature + :type feature_id: str + :param crs: Indicates the coordinate reference system for the results., defaults to None + :type crs: str, optional + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: fetch the feature with id `featureId` in the feature collection + with id `collectionId` + :rtype: FeatureGeoJson + """ + + Validator(str).validate(feature_id) + Validator(str).is_optional().validate(crs) + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/dutch_windmills/items/{{featureId}}", + self.get_default_headers(), + ) + .add_path("featureId", feature_id) + .add_query("crs", crs, explode=False) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return FeatureGeoJson._unmap(response) + + @cast_models + def options_dutch_windmills_feature(self, feature_id: str) -> Any: + """Locations of windmills within the Netherlands from Rijksdienst voor het Cultureel Erfgoed (RCE) INSPIRE WFS. Uses GeoServer WFS v2 backend via OGRProvider. + + :param feature_id: local identifier of a feature + :type feature_id: str + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + """ + + Validator(str).validate(feature_id) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/dutch_windmills/items/{{featureId}}", + self.get_default_headers(), + ) + .add_path("featureId", feature_id) + .serialize() + .set_method("OPTIONS") + ) + + response = self.send_request(serialized_request) + return response + + @cast_models + def get_dutch_windmills_queryables( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Queryables: + """Locations of windmills within the Netherlands from Rijksdienst voor het Cultureel Erfgoed (RCE) INSPIRE WFS. Uses GeoServer WFS v2 backend via OGRProvider. + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: successful queryables operation + :rtype: Queryables + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/dutch_windmills/queryables", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Queryables._unmap(response) + + @cast_models + def get_dutch_windmills_schema( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Queryables: + """Locations of windmills within the Netherlands from Rijksdienst voor het Cultureel Erfgoed (RCE) INSPIRE WFS. Uses GeoServer WFS v2 backend via OGRProvider. + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: successful queryables operation + :rtype: Queryables + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/dutch_windmills/schema", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Queryables._unmap(response) diff --git a/src/geobeyond_sdk/services/gdps_temperature.py b/src/geobeyond_sdk/services/gdps_temperature.py new file mode 100644 index 0000000..92adfdc --- /dev/null +++ b/src/geobeyond_sdk/services/gdps_temperature.py @@ -0,0 +1,120 @@ +# This file was generated by liblab | https://liblab.com/ + +from typing import List +from .utils.validator import Validator +from .utils.base_service import BaseService +from ..net.transport.serializer import Serializer +from ..models.utils.cast_models import cast_models +from ..models import Collection, FeatureCollectionGeoJson, GetLandingPageF, Lang + + +class GdpsTemperatureService(BaseService): + + @cast_models + def describe_gdps_temperature_collection( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Collection: + """Global Deterministic Prediction System sample + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: Information about the feature collection with id `collectionId`. + + The response contains a link to the items in the collection + (path `/collections/{collectionId}/items`, link relation `items`) + as well as key information about the collection. This information + includes: + + * A local identifier for the collection that is unique for the dataset; + * A list of coordinate reference systems (CRS) in which geometries may be returned by the server. The first CRS is the default coordinate reference system (the default is always WGS 84 with axis order longitude/latitude); + * An optional title and description for the collection; + * An optional extent that can be used to provide an indication of the spatial and temporal extent of the collection - typically derived from the data; + * An optional indicator about the type of the items in the collection (the default value, if the indicator is not provided, is 'feature'). + :rtype: Collection + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/gdps-temperature", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Collection._unmap(response) + + @cast_models + def get_gdps_temperature_coverage( + self, + lang: Lang = None, + f: GetLandingPageF = None, + bbox: List[float] = None, + bbox_crs: str = None, + ) -> FeatureCollectionGeoJson: + """Global Deterministic Prediction System sample + + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param bbox: Only features that have a geometry that intersects the bounding box are selected.The bounding box is provided as four or six numbers, depending on whether the coordinate reference system includes a vertical axis (height or depth)., defaults to None + :type bbox: List[float], optional + :param bbox_crs: Indicates the coordinate reference system for the given bbox coordinates., defaults to None + :type bbox_crs: str, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: The response is a document consisting of features in the collection. + The features included in the response are determined by the server + based on the query parameters of the request. To support access to + larger collections without overloading the client, the API supports + paged access with links to the next page, if more features are selected + that the page size. + + The `bbox` and `datetime` parameter can be used to select only a + subset of the features in the collection (the features that are in the + bounding box or time interval). The `bbox` parameter matches all features + in the collection that are not associated with a location, too. The + `datetime` parameter matches all features in the collection that are + not associated with a time stamp or interval, too. + + The `limit` parameter may be used to control the subset of the + selected features that should be returned in the response, the page size. + Each page may include information about the number of selected and + returned features (`numberMatched` and `numberReturned`) as well as + links to support paging (link relation `next`). + :rtype: FeatureCollectionGeoJson + """ + + Validator(Lang).is_optional().validate(lang) + Validator(GetLandingPageF).is_optional().validate(f) + Validator(float).is_array().is_optional().validate(bbox) + Validator(str).is_optional().validate(bbox_crs) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/gdps-temperature/coverage", + self.get_default_headers(), + ) + .add_query("lang", lang) + .add_query("f", f, explode=False) + .add_query("bbox", bbox, explode=False) + .add_query("bbox-crs", bbox_crs, explode=False) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return FeatureCollectionGeoJson._unmap(response) diff --git a/src/geobeyond_sdk/services/hello_world.py b/src/geobeyond_sdk/services/hello_world.py new file mode 100644 index 0000000..cabd625 --- /dev/null +++ b/src/geobeyond_sdk/services/hello_world.py @@ -0,0 +1,64 @@ +# This file was generated by liblab | https://liblab.com/ + +from typing import Any +from .utils.validator import Validator +from .utils.base_service import BaseService +from ..net.transport.serializer import Serializer +from ..models.utils.cast_models import cast_models +from ..models import Execute, GetLandingPageF, StatusInfo + + +class HelloWorldService(BaseService): + + @cast_models + def describe_hello_world_process(self, f: GetLandingPageF = None) -> Any: + """An example process that takes a name as input, and echoes it back as output. Intended to demonstrate a simple process with a single literal input. + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + """ + + Validator(GetLandingPageF).is_optional().validate(f) + + serialized_request = ( + Serializer( + f"{self.base_url}/processes/hello-world", self.get_default_headers() + ) + .add_query("f", f, explode=False) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return response + + @cast_models + def execute_hello_world_job(self, request_body: Execute) -> StatusInfo: + """An example process that takes a name as input, and echoes it back as output. Intended to demonstrate a simple process with a single literal input. + + :param request_body: The request body. + :type request_body: Execute + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: successful operation + :rtype: StatusInfo + """ + + Validator(Execute).validate(request_body) + + serialized_request = ( + Serializer( + f"{self.base_url}/processes/hello-world/execution", + self.get_default_headers(), + ) + .serialize() + .set_method("POST") + .set_body(request_body) + ) + + response = self.send_request(serialized_request) + return StatusInfo._unmap(response) diff --git a/src/geobeyond_sdk/services/icoads_sst.py b/src/geobeyond_sdk/services/icoads_sst.py new file mode 100644 index 0000000..150f23d --- /dev/null +++ b/src/geobeyond_sdk/services/icoads_sst.py @@ -0,0 +1,286 @@ +# This file was generated by liblab | https://liblab.com/ + +from .utils.validator import Validator +from .utils.base_service import BaseService +from ..net.transport.serializer import Serializer +from ..models.utils.cast_models import cast_models +from ..models import ( + Collection, + CoverageJson, + GetLandingPageF, + Lang, + QueryCubeIcoadsSstBbox, +) + + +class IcoadsSstService(BaseService): + + @cast_models + def describe_icoads_sst_collection( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Collection: + """International Comprehensive Ocean-Atmosphere Data Set (ICOADS) + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: Information about the feature collection with id `collectionId`. + + The response contains a link to the items in the collection + (path `/collections/{collectionId}/items`, link relation `items`) + as well as key information about the collection. This information + includes: + + * A local identifier for the collection that is unique for the dataset; + * A list of coordinate reference systems (CRS) in which geometries may be returned by the server. The first CRS is the default coordinate reference system (the default is always WGS 84 with axis order longitude/latitude); + * An optional title and description for the collection; + * An optional extent that can be used to provide an indication of the spatial and temporal extent of the collection - typically derived from the data; + * An optional indicator about the type of the items in the collection (the default value, if the indicator is not provided, is 'feature'). + :rtype: Collection + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/icoads-sst", self.get_default_headers() + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Collection._unmap(response) + + @cast_models + def query_cube_icoads_sst( + self, + bbox: QueryCubeIcoadsSstBbox = None, + datetime_: str = None, + parameter_name: str = None, + z: str = None, + f: GetLandingPageF = None, + ) -> CoverageJson: + """International Comprehensive Ocean-Atmosphere Data Set (ICOADS) + + :param bbox: Only features that have a geometry that intersects the bounding box are selected. + The bounding box is provided as four or six numbers, depending on whether the + coordinate reference system includes a vertical axis (height or depth): + * Lower left corner, coordinate axis 1 + * Lower left corner, coordinate axis 2 + * Minimum value, coordinate axis 3 (optional) + * Upper right corner, coordinate axis 1 + * Upper right corner, coordinate axis 2 + * Maximum value, coordinate axis 3 (optional) + The coordinate reference system of the values is WGS 84 longitude/latitude + (http://www.opengis.net/def/crs/OGC/1.3/CRS84) unless a different coordinate + reference system is specified in the parameter `bbox-crs`. + For WGS 84 longitude/latitude the values are in most cases the sequence of + minimum longitude, minimum latitude, maximum longitude and maximum latitude. + However, in cases where the box spans the antimeridian the first value + (west-most box edge) is larger than the third value (east-most box edge). + If the vertical axis is included, the third and the sixth number are the + bottom and the top of the 3-dimensional bounding box. + If a feature has multiple spatial geometry properties, it is the decision of the + server whether only a single spatial geometry property is used to determine + the extent or all relevant geometries., defaults to None + :type bbox: QueryCubeIcoadsSstBbox, optional + :param datetime_: Either a date-time or an interval. Date and time expressions adhere to RFC 3339. + Intervals may be bounded or half-bounded (double-dots at start or end). + + Examples: + + * A date-time: "2018-02-12T23:20:50Z" + * A bounded interval: "2018-02-12T00:00:00Z/2018-03-18T12:31:12Z" + * Half-bounded intervals: "2018-02-12T00:00:00Z/.." or "../2018-03-18T12:31:12Z" + + Only features that have a temporal property that intersects the value of + `datetime` are selected. + + If a feature has multiple temporal properties, it is the decision of the + server whether only a single temporal property is used to determine + the extent or all relevant temporal properties., defaults to None + :type datetime_: str, optional + :param parameter_name: comma delimited list of parameters to retrieve data for. Valid parameters are listed in the collections metadata, defaults to None + :type parameter_name: str, optional + :param z: Define the vertical level to return data from + i.e. z=level + + for instance if the 850hPa pressure level is being queried + + z=850 + + or a range to return data for all levels between and including 2 defined levels + i.e. z=minimum value/maximum value + + for instance if all values between and including 10m and 100m + + z=10/100 + + finally a list of height values can be specified + i.e. z=value1,value2,value3 + + for instance if values at 2m, 10m and 80m are required + + z=2,10,80 + + An Arithmetic sequence using Recurring height intervals, the difference is the number of recurrences is defined at the start + and the amount to increment the height by is defined at the end + + i.e. z=Rn/min height/height interval + + so if the request was for 20 height levels 50m apart starting at 100m: + + z=R20/100/50 + + When not specified data from all available heights SHOULD be returned, defaults to None + :type z: str, optional + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: Response + :rtype: CoverageJson + """ + + Validator(QueryCubeIcoadsSstBbox).is_optional().validate(bbox) + Validator(str).is_optional().validate(datetime_) + Validator(str).is_optional().validate(parameter_name) + Validator(str).is_optional().validate(z) + Validator(GetLandingPageF).is_optional().validate(f) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/icoads-sst/cube", + self.get_default_headers(), + ) + .add_query("bbox", bbox, explode=False) + .add_query("datetime", datetime_, explode=False) + .add_query("parameter-name", parameter_name, explode=False) + .add_query("z", z, explode=False) + .add_query("f", f, explode=False) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return CoverageJson._unmap(response) + + @cast_models + def query_position_icoads_sst( + self, + coords: str, + datetime_: str = None, + parameter_name: str = None, + z: str = None, + f: GetLandingPageF = None, + ) -> CoverageJson: + """International Comprehensive Ocean-Atmosphere Data Set (ICOADS) + + :param coords: location(s) to return data for, the coordinates are defined by a Well Known Text + (wkt) string. to retrieve a single location : + + POINT(x y) i.e. POINT(0 51.48) for Greenwich, London + + And for a list of locations + + MULTIPOINT((x y),(x1 y1),(x2 y2),(x3 y3)) + + i.e. + MULTIPOINT((38.9 -77),(48.85 2.35),(39.92 116.38),(-35.29 149.1),(51.5 -0.1)) + + see http://portal.opengeospatial.org/files/?artifact_id=25355 and + https://en.wikipedia.org/wiki/Well-known_text_representation_of_geometry + + the coordinate values will depend on the CRS parameter, if this is not defined + the values will be assumed to WGS84 values (i.e x=longitude and y=latitude) + :type coords: str + :param datetime_: Either a date-time or an interval. Date and time expressions adhere to RFC 3339. + Intervals may be bounded or half-bounded (double-dots at start or end). + + Examples: + + * A date-time: "2018-02-12T23:20:50Z" + * A bounded interval: "2018-02-12T00:00:00Z/2018-03-18T12:31:12Z" + * Half-bounded intervals: "2018-02-12T00:00:00Z/.." or "../2018-03-18T12:31:12Z" + + Only features that have a temporal property that intersects the value of + `datetime` are selected. + + If a feature has multiple temporal properties, it is the decision of the + server whether only a single temporal property is used to determine + the extent or all relevant temporal properties., defaults to None + :type datetime_: str, optional + :param parameter_name: comma delimited list of parameters to retrieve data for. Valid parameters are listed in the collections metadata, defaults to None + :type parameter_name: str, optional + :param z: Define the vertical level to return data from + i.e. z=level + + for instance if the 850hPa pressure level is being queried + + z=850 + + or a range to return data for all levels between and including 2 defined levels + i.e. z=minimum value/maximum value + + for instance if all values between and including 10m and 100m + + z=10/100 + + finally a list of height values can be specified + i.e. z=value1,value2,value3 + + for instance if values at 2m, 10m and 80m are required + + z=2,10,80 + + An Arithmetic sequence using Recurring height intervals, the difference is the number of recurrences is defined at the start + and the amount to increment the height by is defined at the end + + i.e. z=Rn/min height/height interval + + so if the request was for 20 height levels 50m apart starting at 100m: + + z=R20/100/50 + + When not specified data from all available heights SHOULD be returned, defaults to None + :type z: str, optional + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: Response + :rtype: CoverageJson + """ + + Validator(str).validate(coords) + Validator(str).is_optional().validate(datetime_) + Validator(str).is_optional().validate(parameter_name) + Validator(str).is_optional().validate(z) + Validator(GetLandingPageF).is_optional().validate(f) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/icoads-sst/position", + self.get_default_headers(), + ) + .add_query("coords", coords) + .add_query("datetime", datetime_, explode=False) + .add_query("parameter-name", parameter_name, explode=False) + .add_query("z", z, explode=False) + .add_query("f", f, explode=False) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return CoverageJson._unmap(response) diff --git a/src/geobeyond_sdk/services/jobs.py b/src/geobeyond_sdk/services/jobs.py new file mode 100644 index 0000000..940d33e --- /dev/null +++ b/src/geobeyond_sdk/services/jobs.py @@ -0,0 +1,108 @@ +# This file was generated by liblab | https://liblab.com/ + +from typing import Any +from .utils.validator import Validator +from .utils.base_service import BaseService +from ..net.transport.serializer import Serializer +from ..models.utils.cast_models import cast_models +from ..models import GetLandingPageF + + +class JobsService(BaseService): + + @cast_models + def get_jobs(self) -> Any: + """Retrieve a list of jobs + + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + """ + + serialized_request = ( + Serializer(f"{self.base_url}/jobs", self.get_default_headers()) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return response + + @cast_models + def get_job(self, job_id: str, f: GetLandingPageF = None) -> Any: + """Retrieve job details + + :param job_id: job identifier + :type job_id: str + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + """ + + Validator(str).validate(job_id) + Validator(GetLandingPageF).is_optional().validate(f) + + serialized_request = ( + Serializer(f"{self.base_url}/jobs/{{jobId}}", self.get_default_headers()) + .add_path("jobId", job_id) + .add_query("f", f, explode=False) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return response + + @cast_models + def delete_job(self, job_id: str) -> Any: + """Cancel / delete job + + :param job_id: job identifier + :type job_id: str + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + """ + + Validator(str).validate(job_id) + + serialized_request = ( + Serializer(f"{self.base_url}/jobs/{{jobId}}", self.get_default_headers()) + .add_path("jobId", job_id) + .serialize() + .set_method("DELETE") + ) + + response = self.send_request(serialized_request) + return response + + @cast_models + def get_job_results(self, job_id: str, f: GetLandingPageF = None) -> Any: + """Retrieve job results + + :param job_id: job identifier + :type job_id: str + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + """ + + Validator(str).validate(job_id) + Validator(GetLandingPageF).is_optional().validate(f) + + serialized_request = ( + Serializer( + f"{self.base_url}/jobs/{{jobId}}/results", self.get_default_headers() + ) + .add_path("jobId", job_id) + .add_query("f", f, explode=False) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return response diff --git a/src/geobeyond_sdk/services/lakes.py b/src/geobeyond_sdk/services/lakes.py new file mode 100644 index 0000000..7e7ed65 --- /dev/null +++ b/src/geobeyond_sdk/services/lakes.py @@ -0,0 +1,449 @@ +# This file was generated by liblab | https://liblab.com/ + +from typing import Any, List +from .utils.validator import Validator +from .utils.base_service import BaseService +from ..net.transport.serializer import Serializer +from ..models.utils.cast_models import cast_models +from ..models import ( + Collection, + FeatureCollectionGeoJson, + FeatureGeoJson, + GetLakesFeaturesProperties, + GetLakesTilesF, + GetLandingPageF, + Lang, + Queryables, + TileMatrixSets, + Tiles, +) + + +class LakesService(BaseService): + + @cast_models + def describe_lakes_collection( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Collection: + """lakes of the world, public domain + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: Information about the feature collection with id `collectionId`. + + The response contains a link to the items in the collection + (path `/collections/{collectionId}/items`, link relation `items`) + as well as key information about the collection. This information + includes: + + * A local identifier for the collection that is unique for the dataset; + * A list of coordinate reference systems (CRS) in which geometries may be returned by the server. The first CRS is the default coordinate reference system (the default is always WGS 84 with axis order longitude/latitude); + * An optional title and description for the collection; + * An optional extent that can be used to provide an indication of the spatial and temporal extent of the collection - typically derived from the data; + * An optional indicator about the type of the items in the collection (the default value, if the indicator is not provided, is 'feature'). + :rtype: Collection + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer(f"{self.base_url}/collections/lakes", self.get_default_headers()) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Collection._unmap(response) + + @cast_models + def get_lakes_features( + self, + f: GetLandingPageF = None, + lang: Lang = None, + bbox: List[float] = None, + limit: int = None, + crs: str = None, + bbox_crs: str = None, + properties: List[GetLakesFeaturesProperties] = None, + vendor_specific_parameters: dict = None, + skip_geometry: bool = None, + sortby: List[str] = None, + offset: int = None, + id_: int = None, + scalerank: int = None, + name: str = None, + name_alt: str = None, + admin: str = None, + featureclass: str = None, + ) -> FeatureCollectionGeoJson: + """lakes of the world, public domain + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + :param bbox: Only features that have a geometry that intersects the bounding box are selected.The bounding box is provided as four or six numbers, depending on whether the coordinate reference system includes a vertical axis (height or depth)., defaults to None + :type bbox: List[float], optional + :param limit: The optional limit parameter limits the number of items that are presented in the response document. + + Only items are counted that are on the first level of the collection in the response document. + Nested objects contained within the explicitly requested items shall not be counted. + + Minimum = 1. Maximum = 10000. Default = 10., defaults to None + :type limit: int, optional + :param crs: Indicates the coordinate reference system for the results., defaults to None + :type crs: str, optional + :param bbox_crs: Indicates the coordinate reference system for the given bbox coordinates., defaults to None + :type bbox_crs: str, optional + :param properties: The properties that should be included for each feature. The parameter value is a comma-separated list of property names., defaults to None + :type properties: List[GetLakesFeaturesProperties], optional + :param vendor_specific_parameters: Additional "free-form" parameters that are not explicitly defined, defaults to None + :type vendor_specific_parameters: dict, optional + :param skip_geometry: This option can be used to skip response geometries for each feature., defaults to None + :type skip_geometry: bool, optional + :param sortby: Specifies a comma-separated list of property names by which the response shall + be sorted. If the property name is preceded by a plus (+) sign it indicates + an ascending sort for that property. If the property name is preceded by a + minus (-) sign it indicates a descending sort for that property. If the + property is not preceded by a plus or minus, then the default sort order + implied is ascending (+)., defaults to None + :type sortby: List[str], optional + :param offset: The optional offset parameter indicates the index within the result set from which the server shall begin presenting results in the response document. The first element has an index of 0 (default)., defaults to None + :type offset: int, optional + :param id_: id_, defaults to None + :type id_: int, optional + :param scalerank: scalerank, defaults to None + :type scalerank: int, optional + :param name: name, defaults to None + :type name: str, optional + :param name_alt: name_alt, defaults to None + :type name_alt: str, optional + :param admin: admin, defaults to None + :type admin: str, optional + :param featureclass: featureclass, defaults to None + :type featureclass: str, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: The response is a document consisting of features in the collection. + The features included in the response are determined by the server + based on the query parameters of the request. To support access to + larger collections without overloading the client, the API supports + paged access with links to the next page, if more features are selected + that the page size. + + The `bbox` and `datetime` parameter can be used to select only a + subset of the features in the collection (the features that are in the + bounding box or time interval). The `bbox` parameter matches all features + in the collection that are not associated with a location, too. The + `datetime` parameter matches all features in the collection that are + not associated with a time stamp or interval, too. + + The `limit` parameter may be used to control the subset of the + selected features that should be returned in the response, the page size. + Each page may include information about the number of selected and + returned features (`numberMatched` and `numberReturned`) as well as + links to support paging (link relation `next`). + :rtype: FeatureCollectionGeoJson + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + Validator(float).is_array().is_optional().validate(bbox) + Validator(int).is_optional().min(1).max(10000).validate(limit) + Validator(str).is_optional().validate(crs) + Validator(str).is_optional().validate(bbox_crs) + Validator(GetLakesFeaturesProperties).is_array().is_optional().validate( + properties + ) + Validator(dict).is_optional().validate(vendor_specific_parameters) + Validator(bool).is_optional().validate(skip_geometry) + Validator(str).is_array().is_optional().validate(sortby) + Validator(int).is_optional().min(0).validate(offset) + Validator(int).is_optional().validate(id_) + Validator(int).is_optional().validate(scalerank) + Validator(str).is_optional().validate(name) + Validator(str).is_optional().validate(name_alt) + Validator(str).is_optional().validate(admin) + Validator(str).is_optional().validate(featureclass) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/lakes/items", self.get_default_headers() + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .add_query("bbox", bbox, explode=False) + .add_query("limit", limit, explode=False) + .add_query("crs", crs, explode=False) + .add_query("bbox-crs", bbox_crs, explode=False) + .add_query("properties", properties, explode=False) + .add_query("vendorSpecificParameters", vendor_specific_parameters) + .add_query("skipGeometry", skip_geometry, explode=False) + .add_query("sortby", sortby, explode=False) + .add_query("offset", offset, explode=False) + .add_query("id", id_, explode=False) + .add_query("scalerank", scalerank, explode=False) + .add_query("name", name, explode=False) + .add_query("name_alt", name_alt, explode=False) + .add_query("admin", admin, explode=False) + .add_query("featureclass", featureclass, explode=False) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return FeatureCollectionGeoJson._unmap(response) + + @cast_models + def options_lakes_features(self) -> Any: + """lakes of the world, public domain + + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + """ + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/lakes/items", self.get_default_headers() + ) + .serialize() + .set_method("OPTIONS") + ) + + response = self.send_request(serialized_request) + return response + + @cast_models + def get_lakes_feature( + self, + feature_id: str, + crs: str = None, + f: GetLandingPageF = None, + lang: Lang = None, + ) -> FeatureGeoJson: + """lakes of the world, public domain + + :param feature_id: local identifier of a feature + :type feature_id: str + :param crs: Indicates the coordinate reference system for the results., defaults to None + :type crs: str, optional + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: fetch the feature with id `featureId` in the feature collection + with id `collectionId` + :rtype: FeatureGeoJson + """ + + Validator(str).validate(feature_id) + Validator(str).is_optional().validate(crs) + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/lakes/items/{{featureId}}", + self.get_default_headers(), + ) + .add_path("featureId", feature_id) + .add_query("crs", crs, explode=False) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return FeatureGeoJson._unmap(response) + + @cast_models + def options_lakes_feature(self, feature_id: str) -> Any: + """lakes of the world, public domain + + :param feature_id: local identifier of a feature + :type feature_id: str + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + """ + + Validator(str).validate(feature_id) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/lakes/items/{{featureId}}", + self.get_default_headers(), + ) + .add_path("featureId", feature_id) + .serialize() + .set_method("OPTIONS") + ) + + response = self.send_request(serialized_request) + return response + + @cast_models + def get_lakes_queryables( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Queryables: + """lakes of the world, public domain + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: successful queryables operation + :rtype: Queryables + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/lakes/queryables", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Queryables._unmap(response) + + @cast_models + def get_lakes_schema( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Queryables: + """lakes of the world, public domain + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: successful queryables operation + :rtype: Queryables + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/lakes/schema", self.get_default_headers() + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Queryables._unmap(response) + + @cast_models + def describe_lakes_tiles( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Tiles: + """lakes of the world, public domain + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: Retrieves the tiles description for this collection + :rtype: Tiles + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/lakes/tiles", self.get_default_headers() + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Tiles._unmap(response) + + @cast_models + def get_lakes_tiles( + self, + tile_matrix_set_id: TileMatrixSets, + tile_matrix: str, + tile_row: int, + tile_col: int, + f: GetLakesTilesF = None, + ) -> any: + """lakes of the world, public domain + + :param tile_matrix_set_id: Identifier for a supported TileMatrixSet + :type tile_matrix_set_id: TileMatrixSets + :param tile_matrix: Identifier selecting one of the scales defined in the TileMatrixSet and representing the scaleDenominator the tile. For example, + Ireland is fully within the Tile at WebMercatorQuad tileMatrix=5, tileRow=10 and tileCol=15. + :type tile_matrix: str + :param tile_row: Row index of the tile on the selected TileMatrix. It cannot exceed the MatrixWidth-1 for the selected TileMatrix. For example, Ireland is fully within the Tile at WebMercatorQuad tileMatrix=5, tileRow=10 and tileCol=15. + :type tile_row: int + :param tile_col: Column index of the tile on the selected TileMatrix. It cannot exceed the MatrixHeight-1 for the selected TileMatrix. For example, Ireland is fully within the Tile at WebMercatorQuad tileMatrix=5, tileRow=10 and tileCol=15. + :type tile_col: int + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document., defaults to None + :type f: GetLakesTilesF, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: successful operation + :rtype: any + """ + + Validator(TileMatrixSets).validate(tile_matrix_set_id) + Validator(str).validate(tile_matrix) + Validator(int).min(0).validate(tile_row) + Validator(int).min(0).validate(tile_col) + Validator(GetLakesTilesF).is_optional().validate(f) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/lakes/tiles/{{tileMatrixSetId}}/{{tileMatrix}}/{{tileRow}}/{{tileCol}}", + self.get_default_headers(), + ) + .add_path("tileMatrixSetId", tile_matrix_set_id) + .add_path("tileMatrix", tile_matrix) + .add_path("tileRow", tile_row) + .add_path("tileCol", tile_col) + .add_query("f", f, explode=False) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return response diff --git a/src/geobeyond_sdk/services/mapserver_world_map.py b/src/geobeyond_sdk/services/mapserver_world_map.py new file mode 100644 index 0000000..d92d568 --- /dev/null +++ b/src/geobeyond_sdk/services/mapserver_world_map.py @@ -0,0 +1,131 @@ +# This file was generated by liblab | https://liblab.com/ + +from typing import List +from .utils.validator import Validator +from .utils.base_service import BaseService +from ..net.transport.serializer import Serializer +from ..models.utils.cast_models import cast_models +from ..models import Collection, GetLandingPageF, GetMapF, Lang + + +class MapserverWorldMapService(BaseService): + + @cast_models + def describe_mapserver_world_map_collection( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Collection: + """MapServer demo WMS world map + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: Information about the feature collection with id `collectionId`. + + The response contains a link to the items in the collection + (path `/collections/{collectionId}/items`, link relation `items`) + as well as key information about the collection. This information + includes: + + * A local identifier for the collection that is unique for the dataset; + * A list of coordinate reference systems (CRS) in which geometries may be returned by the server. The first CRS is the default coordinate reference system (the default is always WGS 84 with axis order longitude/latitude); + * An optional title and description for the collection; + * An optional extent that can be used to provide an indication of the spatial and temporal extent of the collection - typically derived from the data; + * An optional indicator about the type of the items in the collection (the default value, if the indicator is not provided, is 'feature'). + :rtype: Collection + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/mapserver_world_map", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Collection._unmap(response) + + @cast_models + def get_map( + self, + bbox: List[float] = None, + datetime_: str = None, + width: int = None, + height: int = None, + transparent: bool = None, + bbox_crs: int = None, + f: GetMapF = None, + ) -> any: + """MapServer demo WMS world map map + + :param bbox: Only features that have a geometry that intersects the bounding box are selected.The bounding box is provided as four or six numbers, depending on whether the coordinate reference system includes a vertical axis (height or depth)., defaults to None + :type bbox: List[float], optional + :param datetime_: Either a date-time or an interval. Date and time expressions adhere to RFC 3339. + Intervals may be bounded or half-bounded (double-dots at start or end). + + Examples: + + * A date-time: "2018-02-12T23:20:50Z" + * A bounded interval: "2018-02-12T00:00:00Z/2018-03-18T12:31:12Z" + * Half-bounded intervals: "2018-02-12T00:00:00Z/.." or "../2018-03-18T12:31:12Z" + + Only features that have a temporal property that intersects the value of + `datetime` are selected. + + If a feature has multiple temporal properties, it is the decision of the + server whether only a single temporal property is used to determine + the extent or all relevant temporal properties., defaults to None + :type datetime_: str, optional + :param width: Response image width, defaults to None + :type width: int, optional + :param height: Response image height, defaults to None + :type height: int, optional + :param transparent: Background transparency of map (default=true)., defaults to None + :type transparent: bool, optional + :param bbox_crs: Indicates the EPSG for the given bbox coordinates., defaults to None + :type bbox_crs: int, optional + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetMapF, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: Response + :rtype: any + """ + + Validator(float).is_array().is_optional().validate(bbox) + Validator(str).is_optional().validate(datetime_) + Validator(int).is_optional().validate(width) + Validator(int).is_optional().validate(height) + Validator(bool).is_optional().validate(transparent) + Validator(int).is_optional().validate(bbox_crs) + Validator(GetMapF).is_optional().validate(f) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/mapserver_world_map/map", + self.get_default_headers(), + ) + .add_query("bbox", bbox, explode=False) + .add_query("datetime", datetime_, explode=False) + .add_query("width", width, explode=False) + .add_query("height", height, explode=False) + .add_query("transparent", transparent, explode=False) + .add_query("bbox-crs", bbox_crs, explode=False) + .add_query("f", f, explode=False) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return response diff --git a/src/geobeyond_sdk/services/obs.py b/src/geobeyond_sdk/services/obs.py new file mode 100644 index 0000000..b14bf14 --- /dev/null +++ b/src/geobeyond_sdk/services/obs.py @@ -0,0 +1,351 @@ +# This file was generated by liblab | https://liblab.com/ + +from typing import Any, List +from .utils.validator import Validator +from .utils.base_service import BaseService +from ..net.transport.serializer import Serializer +from ..models.utils.cast_models import cast_models +from ..models import ( + Collection, + FeatureCollectionGeoJson, + FeatureGeoJson, + GetLandingPageF, + GetObsFeaturesProperties, + Lang, + Queryables, +) + + +class ObsService(BaseService): + + @cast_models + def describe_obs_collection( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Collection: + """Observations + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: Information about the feature collection with id `collectionId`. + + The response contains a link to the items in the collection + (path `/collections/{collectionId}/items`, link relation `items`) + as well as key information about the collection. This information + includes: + + * A local identifier for the collection that is unique for the dataset; + * A list of coordinate reference systems (CRS) in which geometries may be returned by the server. The first CRS is the default coordinate reference system (the default is always WGS 84 with axis order longitude/latitude); + * An optional title and description for the collection; + * An optional extent that can be used to provide an indication of the spatial and temporal extent of the collection - typically derived from the data; + * An optional indicator about the type of the items in the collection (the default value, if the indicator is not provided, is 'feature'). + :rtype: Collection + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer(f"{self.base_url}/collections/obs", self.get_default_headers()) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Collection._unmap(response) + + @cast_models + def get_obs_features( + self, + f: GetLandingPageF = None, + lang: Lang = None, + bbox: List[float] = None, + limit: int = None, + crs: str = None, + bbox_crs: str = None, + properties: List[GetObsFeaturesProperties] = None, + vendor_specific_parameters: dict = None, + skip_geometry: bool = None, + sortby: List[str] = None, + offset: int = None, + id_: str = None, + stn_id: int = None, + datetime_: str = None, + value: float = None, + ) -> FeatureCollectionGeoJson: + """Observations + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + :param bbox: Only features that have a geometry that intersects the bounding box are selected.The bounding box is provided as four or six numbers, depending on whether the coordinate reference system includes a vertical axis (height or depth)., defaults to None + :type bbox: List[float], optional + :param limit: The optional limit parameter limits the number of items that are presented in the response document. + + Only items are counted that are on the first level of the collection in the response document. + Nested objects contained within the explicitly requested items shall not be counted. + + Minimum = 1. Maximum = 10000. Default = 10., defaults to None + :type limit: int, optional + :param crs: Indicates the coordinate reference system for the results., defaults to None + :type crs: str, optional + :param bbox_crs: Indicates the coordinate reference system for the given bbox coordinates., defaults to None + :type bbox_crs: str, optional + :param properties: The properties that should be included for each feature. The parameter value is a comma-separated list of property names., defaults to None + :type properties: List[GetObsFeaturesProperties], optional + :param vendor_specific_parameters: Additional "free-form" parameters that are not explicitly defined, defaults to None + :type vendor_specific_parameters: dict, optional + :param skip_geometry: This option can be used to skip response geometries for each feature., defaults to None + :type skip_geometry: bool, optional + :param sortby: Specifies a comma-separated list of property names by which the response shall + be sorted. If the property name is preceded by a plus (+) sign it indicates + an ascending sort for that property. If the property name is preceded by a + minus (-) sign it indicates a descending sort for that property. If the + property is not preceded by a plus or minus, then the default sort order + implied is ascending (+)., defaults to None + :type sortby: List[str], optional + :param offset: The optional offset parameter indicates the index within the result set from which the server shall begin presenting results in the response document. The first element has an index of 0 (default)., defaults to None + :type offset: int, optional + :param id_: id_, defaults to None + :type id_: str, optional + :param stn_id: stn_id, defaults to None + :type stn_id: int, optional + :param datetime_: datetime_, defaults to None + :type datetime_: str, optional + :param value: value, defaults to None + :type value: float, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: The response is a document consisting of features in the collection. + The features included in the response are determined by the server + based on the query parameters of the request. To support access to + larger collections without overloading the client, the API supports + paged access with links to the next page, if more features are selected + that the page size. + + The `bbox` and `datetime` parameter can be used to select only a + subset of the features in the collection (the features that are in the + bounding box or time interval). The `bbox` parameter matches all features + in the collection that are not associated with a location, too. The + `datetime` parameter matches all features in the collection that are + not associated with a time stamp or interval, too. + + The `limit` parameter may be used to control the subset of the + selected features that should be returned in the response, the page size. + Each page may include information about the number of selected and + returned features (`numberMatched` and `numberReturned`) as well as + links to support paging (link relation `next`). + :rtype: FeatureCollectionGeoJson + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + Validator(float).is_array().is_optional().validate(bbox) + Validator(int).is_optional().min(1).max(10000).validate(limit) + Validator(str).is_optional().validate(crs) + Validator(str).is_optional().validate(bbox_crs) + Validator(GetObsFeaturesProperties).is_array().is_optional().validate( + properties + ) + Validator(dict).is_optional().validate(vendor_specific_parameters) + Validator(bool).is_optional().validate(skip_geometry) + Validator(str).is_array().is_optional().validate(sortby) + Validator(int).is_optional().min(0).validate(offset) + Validator(str).is_optional().validate(id_) + Validator(int).is_optional().validate(stn_id) + Validator(str).is_optional().validate(datetime_) + Validator(float).is_optional().validate(value) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/obs/items", self.get_default_headers() + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .add_query("bbox", bbox, explode=False) + .add_query("limit", limit, explode=False) + .add_query("crs", crs, explode=False) + .add_query("bbox-crs", bbox_crs, explode=False) + .add_query("properties", properties, explode=False) + .add_query("vendorSpecificParameters", vendor_specific_parameters) + .add_query("skipGeometry", skip_geometry, explode=False) + .add_query("sortby", sortby, explode=False) + .add_query("offset", offset, explode=False) + .add_query("id", id_, explode=False) + .add_query("stn_id", stn_id, explode=False) + .add_query("datetime", datetime_, explode=False) + .add_query("value", value, explode=False) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return FeatureCollectionGeoJson._unmap(response) + + @cast_models + def options_obs_features(self) -> Any: + """Observations + + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + """ + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/obs/items", self.get_default_headers() + ) + .serialize() + .set_method("OPTIONS") + ) + + response = self.send_request(serialized_request) + return response + + @cast_models + def get_obs_feature( + self, + feature_id: str, + crs: str = None, + f: GetLandingPageF = None, + lang: Lang = None, + ) -> FeatureGeoJson: + """Observations + + :param feature_id: local identifier of a feature + :type feature_id: str + :param crs: Indicates the coordinate reference system for the results., defaults to None + :type crs: str, optional + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: fetch the feature with id `featureId` in the feature collection + with id `collectionId` + :rtype: FeatureGeoJson + """ + + Validator(str).validate(feature_id) + Validator(str).is_optional().validate(crs) + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/obs/items/{{featureId}}", + self.get_default_headers(), + ) + .add_path("featureId", feature_id) + .add_query("crs", crs, explode=False) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return FeatureGeoJson._unmap(response) + + @cast_models + def options_obs_feature(self, feature_id: str) -> Any: + """Observations + + :param feature_id: local identifier of a feature + :type feature_id: str + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + """ + + Validator(str).validate(feature_id) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/obs/items/{{featureId}}", + self.get_default_headers(), + ) + .add_path("featureId", feature_id) + .serialize() + .set_method("OPTIONS") + ) + + response = self.send_request(serialized_request) + return response + + @cast_models + def get_obs_queryables( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Queryables: + """Observations + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: successful queryables operation + :rtype: Queryables + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/obs/queryables", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Queryables._unmap(response) + + @cast_models + def get_obs_schema( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Queryables: + """Observations + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: successful queryables operation + :rtype: Queryables + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/obs/schema", self.get_default_headers() + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Queryables._unmap(response) diff --git a/src/geobeyond_sdk/services/ogr_addresses_gpkg.py b/src/geobeyond_sdk/services/ogr_addresses_gpkg.py new file mode 100644 index 0000000..2d0fff5 --- /dev/null +++ b/src/geobeyond_sdk/services/ogr_addresses_gpkg.py @@ -0,0 +1,372 @@ +# This file was generated by liblab | https://liblab.com/ + +from typing import Any, List +from .utils.validator import Validator +from .utils.base_service import BaseService +from ..net.transport.serializer import Serializer +from ..models.utils.cast_models import cast_models +from ..models import ( + Collection, + FeatureCollectionGeoJson, + FeatureGeoJson, + GetLandingPageF, + GetOgrAddressesGpkgFeaturesProperties, + Lang, + Queryables, +) + + +class OgrAddressesGpkgService(BaseService): + + @cast_models + def describe_ogr_addresses_gpkg_collection( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Collection: + """Dutch addresses subset. + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: Information about the feature collection with id `collectionId`. + + The response contains a link to the items in the collection + (path `/collections/{collectionId}/items`, link relation `items`) + as well as key information about the collection. This information + includes: + + * A local identifier for the collection that is unique for the dataset; + * A list of coordinate reference systems (CRS) in which geometries may be returned by the server. The first CRS is the default coordinate reference system (the default is always WGS 84 with axis order longitude/latitude); + * An optional title and description for the collection; + * An optional extent that can be used to provide an indication of the spatial and temporal extent of the collection - typically derived from the data; + * An optional indicator about the type of the items in the collection (the default value, if the indicator is not provided, is 'feature'). + :rtype: Collection + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/ogr_addresses_gpkg", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Collection._unmap(response) + + @cast_models + def get_ogr_addresses_gpkg_features( + self, + f: GetLandingPageF = None, + lang: Lang = None, + bbox: List[float] = None, + limit: int = None, + crs: str = None, + bbox_crs: str = None, + properties: List[GetOgrAddressesGpkgFeaturesProperties] = None, + vendor_specific_parameters: dict = None, + skip_geometry: bool = None, + sortby: List[str] = None, + offset: int = None, + id_: str = None, + straatnaam: str = None, + huisnummer: str = None, + huisletter: str = None, + woonplaats: str = None, + postcode: str = None, + toevoeging: str = None, + ) -> FeatureCollectionGeoJson: + """Dutch addresses subset. + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + :param bbox: Only features that have a geometry that intersects the bounding box are selected.The bounding box is provided as four or six numbers, depending on whether the coordinate reference system includes a vertical axis (height or depth)., defaults to None + :type bbox: List[float], optional + :param limit: The optional limit parameter limits the number of items that are presented in the response document. + + Only items are counted that are on the first level of the collection in the response document. + Nested objects contained within the explicitly requested items shall not be counted. + + Minimum = 1. Maximum = 10000. Default = 10., defaults to None + :type limit: int, optional + :param crs: Indicates the coordinate reference system for the results., defaults to None + :type crs: str, optional + :param bbox_crs: Indicates the coordinate reference system for the given bbox coordinates., defaults to None + :type bbox_crs: str, optional + :param properties: The properties that should be included for each feature. The parameter value is a comma-separated list of property names., defaults to None + :type properties: List[GetOgrAddressesGpkgFeaturesProperties], optional + :param vendor_specific_parameters: Additional "free-form" parameters that are not explicitly defined, defaults to None + :type vendor_specific_parameters: dict, optional + :param skip_geometry: This option can be used to skip response geometries for each feature., defaults to None + :type skip_geometry: bool, optional + :param sortby: Specifies a comma-separated list of property names by which the response shall + be sorted. If the property name is preceded by a plus (+) sign it indicates + an ascending sort for that property. If the property name is preceded by a + minus (-) sign it indicates a descending sort for that property. If the + property is not preceded by a plus or minus, then the default sort order + implied is ascending (+)., defaults to None + :type sortby: List[str], optional + :param offset: The optional offset parameter indicates the index within the result set from which the server shall begin presenting results in the response document. The first element has an index of 0 (default)., defaults to None + :type offset: int, optional + :param id_: id_, defaults to None + :type id_: str, optional + :param straatnaam: straatnaam, defaults to None + :type straatnaam: str, optional + :param huisnummer: huisnummer, defaults to None + :type huisnummer: str, optional + :param huisletter: huisletter, defaults to None + :type huisletter: str, optional + :param woonplaats: woonplaats, defaults to None + :type woonplaats: str, optional + :param postcode: postcode, defaults to None + :type postcode: str, optional + :param toevoeging: toevoeging, defaults to None + :type toevoeging: str, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: The response is a document consisting of features in the collection. + The features included in the response are determined by the server + based on the query parameters of the request. To support access to + larger collections without overloading the client, the API supports + paged access with links to the next page, if more features are selected + that the page size. + + The `bbox` and `datetime` parameter can be used to select only a + subset of the features in the collection (the features that are in the + bounding box or time interval). The `bbox` parameter matches all features + in the collection that are not associated with a location, too. The + `datetime` parameter matches all features in the collection that are + not associated with a time stamp or interval, too. + + The `limit` parameter may be used to control the subset of the + selected features that should be returned in the response, the page size. + Each page may include information about the number of selected and + returned features (`numberMatched` and `numberReturned`) as well as + links to support paging (link relation `next`). + :rtype: FeatureCollectionGeoJson + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + Validator(float).is_array().is_optional().validate(bbox) + Validator(int).is_optional().min(1).max(10000).validate(limit) + Validator(str).is_optional().validate(crs) + Validator(str).is_optional().validate(bbox_crs) + Validator( + GetOgrAddressesGpkgFeaturesProperties + ).is_array().is_optional().validate(properties) + Validator(dict).is_optional().validate(vendor_specific_parameters) + Validator(bool).is_optional().validate(skip_geometry) + Validator(str).is_array().is_optional().validate(sortby) + Validator(int).is_optional().min(0).validate(offset) + Validator(str).is_optional().validate(id_) + Validator(str).is_optional().validate(straatnaam) + Validator(str).is_optional().validate(huisnummer) + Validator(str).is_optional().validate(huisletter) + Validator(str).is_optional().validate(woonplaats) + Validator(str).is_optional().validate(postcode) + Validator(str).is_optional().validate(toevoeging) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/ogr_addresses_gpkg/items", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .add_query("bbox", bbox, explode=False) + .add_query("limit", limit, explode=False) + .add_query("crs", crs, explode=False) + .add_query("bbox-crs", bbox_crs, explode=False) + .add_query("properties", properties, explode=False) + .add_query("vendorSpecificParameters", vendor_specific_parameters) + .add_query("skipGeometry", skip_geometry, explode=False) + .add_query("sortby", sortby, explode=False) + .add_query("offset", offset, explode=False) + .add_query("id", id_, explode=False) + .add_query("straatnaam", straatnaam, explode=False) + .add_query("huisnummer", huisnummer, explode=False) + .add_query("huisletter", huisletter, explode=False) + .add_query("woonplaats", woonplaats, explode=False) + .add_query("postcode", postcode, explode=False) + .add_query("toevoeging", toevoeging, explode=False) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return FeatureCollectionGeoJson._unmap(response) + + @cast_models + def options_ogr_addresses_gpkg_features(self) -> Any: + """Dutch addresses subset. + + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + """ + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/ogr_addresses_gpkg/items", + self.get_default_headers(), + ) + .serialize() + .set_method("OPTIONS") + ) + + response = self.send_request(serialized_request) + return response + + @cast_models + def get_ogr_addresses_gpkg_feature( + self, + feature_id: str, + crs: str = None, + f: GetLandingPageF = None, + lang: Lang = None, + ) -> FeatureGeoJson: + """Dutch addresses subset. + + :param feature_id: local identifier of a feature + :type feature_id: str + :param crs: Indicates the coordinate reference system for the results., defaults to None + :type crs: str, optional + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: fetch the feature with id `featureId` in the feature collection + with id `collectionId` + :rtype: FeatureGeoJson + """ + + Validator(str).validate(feature_id) + Validator(str).is_optional().validate(crs) + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/ogr_addresses_gpkg/items/{{featureId}}", + self.get_default_headers(), + ) + .add_path("featureId", feature_id) + .add_query("crs", crs, explode=False) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return FeatureGeoJson._unmap(response) + + @cast_models + def options_ogr_addresses_gpkg_feature(self, feature_id: str) -> Any: + """Dutch addresses subset. + + :param feature_id: local identifier of a feature + :type feature_id: str + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + """ + + Validator(str).validate(feature_id) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/ogr_addresses_gpkg/items/{{featureId}}", + self.get_default_headers(), + ) + .add_path("featureId", feature_id) + .serialize() + .set_method("OPTIONS") + ) + + response = self.send_request(serialized_request) + return response + + @cast_models + def get_ogr_addresses_gpkg_queryables( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Queryables: + """Dutch addresses subset. + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: successful queryables operation + :rtype: Queryables + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/ogr_addresses_gpkg/queryables", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Queryables._unmap(response) + + @cast_models + def get_ogr_addresses_gpkg_schema( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Queryables: + """Dutch addresses subset. + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: successful queryables operation + :rtype: Queryables + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/ogr_addresses_gpkg/schema", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Queryables._unmap(response) diff --git a/src/geobeyond_sdk/services/ogr_addresses_sqlite.py b/src/geobeyond_sdk/services/ogr_addresses_sqlite.py new file mode 100644 index 0000000..c84c556 --- /dev/null +++ b/src/geobeyond_sdk/services/ogr_addresses_sqlite.py @@ -0,0 +1,372 @@ +# This file was generated by liblab | https://liblab.com/ + +from typing import Any, List +from .utils.validator import Validator +from .utils.base_service import BaseService +from ..net.transport.serializer import Serializer +from ..models.utils.cast_models import cast_models +from ..models import ( + Collection, + FeatureCollectionGeoJson, + FeatureGeoJson, + GetLandingPageF, + GetOgrAddressesSqliteFeaturesProperties, + Lang, + Queryables, +) + + +class OgrAddressesSqliteService(BaseService): + + @cast_models + def describe_ogr_addresses_sqlite_collection( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Collection: + """Dutch addresses subset. + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: Information about the feature collection with id `collectionId`. + + The response contains a link to the items in the collection + (path `/collections/{collectionId}/items`, link relation `items`) + as well as key information about the collection. This information + includes: + + * A local identifier for the collection that is unique for the dataset; + * A list of coordinate reference systems (CRS) in which geometries may be returned by the server. The first CRS is the default coordinate reference system (the default is always WGS 84 with axis order longitude/latitude); + * An optional title and description for the collection; + * An optional extent that can be used to provide an indication of the spatial and temporal extent of the collection - typically derived from the data; + * An optional indicator about the type of the items in the collection (the default value, if the indicator is not provided, is 'feature'). + :rtype: Collection + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/ogr_addresses_sqlite", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Collection._unmap(response) + + @cast_models + def get_ogr_addresses_sqlite_features( + self, + f: GetLandingPageF = None, + lang: Lang = None, + bbox: List[float] = None, + limit: int = None, + crs: str = None, + bbox_crs: str = None, + properties: List[GetOgrAddressesSqliteFeaturesProperties] = None, + vendor_specific_parameters: dict = None, + skip_geometry: bool = None, + sortby: List[str] = None, + offset: int = None, + id_: str = None, + straatnaam: str = None, + huisnummer: str = None, + huisletter: str = None, + woonplaats: str = None, + postcode: str = None, + toevoeging: str = None, + ) -> FeatureCollectionGeoJson: + """Dutch addresses subset. + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + :param bbox: Only features that have a geometry that intersects the bounding box are selected.The bounding box is provided as four or six numbers, depending on whether the coordinate reference system includes a vertical axis (height or depth)., defaults to None + :type bbox: List[float], optional + :param limit: The optional limit parameter limits the number of items that are presented in the response document. + + Only items are counted that are on the first level of the collection in the response document. + Nested objects contained within the explicitly requested items shall not be counted. + + Minimum = 1. Maximum = 10000. Default = 10., defaults to None + :type limit: int, optional + :param crs: Indicates the coordinate reference system for the results., defaults to None + :type crs: str, optional + :param bbox_crs: Indicates the coordinate reference system for the given bbox coordinates., defaults to None + :type bbox_crs: str, optional + :param properties: The properties that should be included for each feature. The parameter value is a comma-separated list of property names., defaults to None + :type properties: List[GetOgrAddressesSqliteFeaturesProperties], optional + :param vendor_specific_parameters: Additional "free-form" parameters that are not explicitly defined, defaults to None + :type vendor_specific_parameters: dict, optional + :param skip_geometry: This option can be used to skip response geometries for each feature., defaults to None + :type skip_geometry: bool, optional + :param sortby: Specifies a comma-separated list of property names by which the response shall + be sorted. If the property name is preceded by a plus (+) sign it indicates + an ascending sort for that property. If the property name is preceded by a + minus (-) sign it indicates a descending sort for that property. If the + property is not preceded by a plus or minus, then the default sort order + implied is ascending (+)., defaults to None + :type sortby: List[str], optional + :param offset: The optional offset parameter indicates the index within the result set from which the server shall begin presenting results in the response document. The first element has an index of 0 (default)., defaults to None + :type offset: int, optional + :param id_: id_, defaults to None + :type id_: str, optional + :param straatnaam: straatnaam, defaults to None + :type straatnaam: str, optional + :param huisnummer: huisnummer, defaults to None + :type huisnummer: str, optional + :param huisletter: huisletter, defaults to None + :type huisletter: str, optional + :param woonplaats: woonplaats, defaults to None + :type woonplaats: str, optional + :param postcode: postcode, defaults to None + :type postcode: str, optional + :param toevoeging: toevoeging, defaults to None + :type toevoeging: str, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: The response is a document consisting of features in the collection. + The features included in the response are determined by the server + based on the query parameters of the request. To support access to + larger collections without overloading the client, the API supports + paged access with links to the next page, if more features are selected + that the page size. + + The `bbox` and `datetime` parameter can be used to select only a + subset of the features in the collection (the features that are in the + bounding box or time interval). The `bbox` parameter matches all features + in the collection that are not associated with a location, too. The + `datetime` parameter matches all features in the collection that are + not associated with a time stamp or interval, too. + + The `limit` parameter may be used to control the subset of the + selected features that should be returned in the response, the page size. + Each page may include information about the number of selected and + returned features (`numberMatched` and `numberReturned`) as well as + links to support paging (link relation `next`). + :rtype: FeatureCollectionGeoJson + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + Validator(float).is_array().is_optional().validate(bbox) + Validator(int).is_optional().min(1).max(10000).validate(limit) + Validator(str).is_optional().validate(crs) + Validator(str).is_optional().validate(bbox_crs) + Validator( + GetOgrAddressesSqliteFeaturesProperties + ).is_array().is_optional().validate(properties) + Validator(dict).is_optional().validate(vendor_specific_parameters) + Validator(bool).is_optional().validate(skip_geometry) + Validator(str).is_array().is_optional().validate(sortby) + Validator(int).is_optional().min(0).validate(offset) + Validator(str).is_optional().validate(id_) + Validator(str).is_optional().validate(straatnaam) + Validator(str).is_optional().validate(huisnummer) + Validator(str).is_optional().validate(huisletter) + Validator(str).is_optional().validate(woonplaats) + Validator(str).is_optional().validate(postcode) + Validator(str).is_optional().validate(toevoeging) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/ogr_addresses_sqlite/items", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .add_query("bbox", bbox, explode=False) + .add_query("limit", limit, explode=False) + .add_query("crs", crs, explode=False) + .add_query("bbox-crs", bbox_crs, explode=False) + .add_query("properties", properties, explode=False) + .add_query("vendorSpecificParameters", vendor_specific_parameters) + .add_query("skipGeometry", skip_geometry, explode=False) + .add_query("sortby", sortby, explode=False) + .add_query("offset", offset, explode=False) + .add_query("id", id_, explode=False) + .add_query("straatnaam", straatnaam, explode=False) + .add_query("huisnummer", huisnummer, explode=False) + .add_query("huisletter", huisletter, explode=False) + .add_query("woonplaats", woonplaats, explode=False) + .add_query("postcode", postcode, explode=False) + .add_query("toevoeging", toevoeging, explode=False) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return FeatureCollectionGeoJson._unmap(response) + + @cast_models + def options_ogr_addresses_sqlite_features(self) -> Any: + """Dutch addresses subset. + + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + """ + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/ogr_addresses_sqlite/items", + self.get_default_headers(), + ) + .serialize() + .set_method("OPTIONS") + ) + + response = self.send_request(serialized_request) + return response + + @cast_models + def get_ogr_addresses_sqlite_feature( + self, + feature_id: str, + crs: str = None, + f: GetLandingPageF = None, + lang: Lang = None, + ) -> FeatureGeoJson: + """Dutch addresses subset. + + :param feature_id: local identifier of a feature + :type feature_id: str + :param crs: Indicates the coordinate reference system for the results., defaults to None + :type crs: str, optional + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: fetch the feature with id `featureId` in the feature collection + with id `collectionId` + :rtype: FeatureGeoJson + """ + + Validator(str).validate(feature_id) + Validator(str).is_optional().validate(crs) + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/ogr_addresses_sqlite/items/{{featureId}}", + self.get_default_headers(), + ) + .add_path("featureId", feature_id) + .add_query("crs", crs, explode=False) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return FeatureGeoJson._unmap(response) + + @cast_models + def options_ogr_addresses_sqlite_feature(self, feature_id: str) -> Any: + """Dutch addresses subset. + + :param feature_id: local identifier of a feature + :type feature_id: str + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + """ + + Validator(str).validate(feature_id) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/ogr_addresses_sqlite/items/{{featureId}}", + self.get_default_headers(), + ) + .add_path("featureId", feature_id) + .serialize() + .set_method("OPTIONS") + ) + + response = self.send_request(serialized_request) + return response + + @cast_models + def get_ogr_addresses_sqlite_queryables( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Queryables: + """Dutch addresses subset. + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: successful queryables operation + :rtype: Queryables + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/ogr_addresses_sqlite/queryables", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Queryables._unmap(response) + + @cast_models + def get_ogr_addresses_sqlite_schema( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Queryables: + """Dutch addresses subset. + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: successful queryables operation + :rtype: Queryables + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/ogr_addresses_sqlite/schema", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Queryables._unmap(response) diff --git a/src/geobeyond_sdk/services/ogr_geojson_lakes.py b/src/geobeyond_sdk/services/ogr_geojson_lakes.py new file mode 100644 index 0000000..5f51c21 --- /dev/null +++ b/src/geobeyond_sdk/services/ogr_geojson_lakes.py @@ -0,0 +1,367 @@ +# This file was generated by liblab | https://liblab.com/ + +from typing import Any, List +from .utils.validator import Validator +from .utils.base_service import BaseService +from ..net.transport.serializer import Serializer +from ..models.utils.cast_models import cast_models +from ..models import ( + Collection, + FeatureCollectionGeoJson, + FeatureGeoJson, + GetLandingPageF, + GetOgrGeojsonLakesFeaturesProperties, + Lang, + Queryables, +) + + +class OgrGeojsonLakesService(BaseService): + + @cast_models + def describe_ogr_geojson_lakes_collection( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Collection: + """lakes of the world, public domain + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: Information about the feature collection with id `collectionId`. + + The response contains a link to the items in the collection + (path `/collections/{collectionId}/items`, link relation `items`) + as well as key information about the collection. This information + includes: + + * A local identifier for the collection that is unique for the dataset; + * A list of coordinate reference systems (CRS) in which geometries may be returned by the server. The first CRS is the default coordinate reference system (the default is always WGS 84 with axis order longitude/latitude); + * An optional title and description for the collection; + * An optional extent that can be used to provide an indication of the spatial and temporal extent of the collection - typically derived from the data; + * An optional indicator about the type of the items in the collection (the default value, if the indicator is not provided, is 'feature'). + :rtype: Collection + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/ogr_geojson_lakes", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Collection._unmap(response) + + @cast_models + def get_ogr_geojson_lakes_features( + self, + f: GetLandingPageF = None, + lang: Lang = None, + bbox: List[float] = None, + limit: int = None, + crs: str = None, + bbox_crs: str = None, + properties: List[GetOgrGeojsonLakesFeaturesProperties] = None, + vendor_specific_parameters: dict = None, + skip_geometry: bool = None, + sortby: List[str] = None, + offset: int = None, + id_: int = None, + scalerank: int = None, + name: str = None, + name_alt: str = None, + admin: str = None, + featureclass: str = None, + ) -> FeatureCollectionGeoJson: + """lakes of the world, public domain + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + :param bbox: Only features that have a geometry that intersects the bounding box are selected.The bounding box is provided as four or six numbers, depending on whether the coordinate reference system includes a vertical axis (height or depth)., defaults to None + :type bbox: List[float], optional + :param limit: The optional limit parameter limits the number of items that are presented in the response document. + + Only items are counted that are on the first level of the collection in the response document. + Nested objects contained within the explicitly requested items shall not be counted. + + Minimum = 1. Maximum = 10000. Default = 10., defaults to None + :type limit: int, optional + :param crs: Indicates the coordinate reference system for the results., defaults to None + :type crs: str, optional + :param bbox_crs: Indicates the coordinate reference system for the given bbox coordinates., defaults to None + :type bbox_crs: str, optional + :param properties: The properties that should be included for each feature. The parameter value is a comma-separated list of property names., defaults to None + :type properties: List[GetOgrGeojsonLakesFeaturesProperties], optional + :param vendor_specific_parameters: Additional "free-form" parameters that are not explicitly defined, defaults to None + :type vendor_specific_parameters: dict, optional + :param skip_geometry: This option can be used to skip response geometries for each feature., defaults to None + :type skip_geometry: bool, optional + :param sortby: Specifies a comma-separated list of property names by which the response shall + be sorted. If the property name is preceded by a plus (+) sign it indicates + an ascending sort for that property. If the property name is preceded by a + minus (-) sign it indicates a descending sort for that property. If the + property is not preceded by a plus or minus, then the default sort order + implied is ascending (+)., defaults to None + :type sortby: List[str], optional + :param offset: The optional offset parameter indicates the index within the result set from which the server shall begin presenting results in the response document. The first element has an index of 0 (default)., defaults to None + :type offset: int, optional + :param id_: id_, defaults to None + :type id_: int, optional + :param scalerank: scalerank, defaults to None + :type scalerank: int, optional + :param name: name, defaults to None + :type name: str, optional + :param name_alt: name_alt, defaults to None + :type name_alt: str, optional + :param admin: admin, defaults to None + :type admin: str, optional + :param featureclass: featureclass, defaults to None + :type featureclass: str, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: The response is a document consisting of features in the collection. + The features included in the response are determined by the server + based on the query parameters of the request. To support access to + larger collections without overloading the client, the API supports + paged access with links to the next page, if more features are selected + that the page size. + + The `bbox` and `datetime` parameter can be used to select only a + subset of the features in the collection (the features that are in the + bounding box or time interval). The `bbox` parameter matches all features + in the collection that are not associated with a location, too. The + `datetime` parameter matches all features in the collection that are + not associated with a time stamp or interval, too. + + The `limit` parameter may be used to control the subset of the + selected features that should be returned in the response, the page size. + Each page may include information about the number of selected and + returned features (`numberMatched` and `numberReturned`) as well as + links to support paging (link relation `next`). + :rtype: FeatureCollectionGeoJson + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + Validator(float).is_array().is_optional().validate(bbox) + Validator(int).is_optional().min(1).max(10000).validate(limit) + Validator(str).is_optional().validate(crs) + Validator(str).is_optional().validate(bbox_crs) + Validator( + GetOgrGeojsonLakesFeaturesProperties + ).is_array().is_optional().validate(properties) + Validator(dict).is_optional().validate(vendor_specific_parameters) + Validator(bool).is_optional().validate(skip_geometry) + Validator(str).is_array().is_optional().validate(sortby) + Validator(int).is_optional().min(0).validate(offset) + Validator(int).is_optional().validate(id_) + Validator(int).is_optional().validate(scalerank) + Validator(str).is_optional().validate(name) + Validator(str).is_optional().validate(name_alt) + Validator(str).is_optional().validate(admin) + Validator(str).is_optional().validate(featureclass) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/ogr_geojson_lakes/items", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .add_query("bbox", bbox, explode=False) + .add_query("limit", limit, explode=False) + .add_query("crs", crs, explode=False) + .add_query("bbox-crs", bbox_crs, explode=False) + .add_query("properties", properties, explode=False) + .add_query("vendorSpecificParameters", vendor_specific_parameters) + .add_query("skipGeometry", skip_geometry, explode=False) + .add_query("sortby", sortby, explode=False) + .add_query("offset", offset, explode=False) + .add_query("id", id_, explode=False) + .add_query("scalerank", scalerank, explode=False) + .add_query("name", name, explode=False) + .add_query("name_alt", name_alt, explode=False) + .add_query("admin", admin, explode=False) + .add_query("featureclass", featureclass, explode=False) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return FeatureCollectionGeoJson._unmap(response) + + @cast_models + def options_ogr_geojson_lakes_features(self) -> Any: + """lakes of the world, public domain + + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + """ + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/ogr_geojson_lakes/items", + self.get_default_headers(), + ) + .serialize() + .set_method("OPTIONS") + ) + + response = self.send_request(serialized_request) + return response + + @cast_models + def get_ogr_geojson_lakes_feature( + self, + feature_id: str, + crs: str = None, + f: GetLandingPageF = None, + lang: Lang = None, + ) -> FeatureGeoJson: + """lakes of the world, public domain + + :param feature_id: local identifier of a feature + :type feature_id: str + :param crs: Indicates the coordinate reference system for the results., defaults to None + :type crs: str, optional + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: fetch the feature with id `featureId` in the feature collection + with id `collectionId` + :rtype: FeatureGeoJson + """ + + Validator(str).validate(feature_id) + Validator(str).is_optional().validate(crs) + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/ogr_geojson_lakes/items/{{featureId}}", + self.get_default_headers(), + ) + .add_path("featureId", feature_id) + .add_query("crs", crs, explode=False) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return FeatureGeoJson._unmap(response) + + @cast_models + def options_ogr_geojson_lakes_feature(self, feature_id: str) -> Any: + """lakes of the world, public domain + + :param feature_id: local identifier of a feature + :type feature_id: str + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + """ + + Validator(str).validate(feature_id) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/ogr_geojson_lakes/items/{{featureId}}", + self.get_default_headers(), + ) + .add_path("featureId", feature_id) + .serialize() + .set_method("OPTIONS") + ) + + response = self.send_request(serialized_request) + return response + + @cast_models + def get_ogr_geojson_lakes_queryables( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Queryables: + """lakes of the world, public domain + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: successful queryables operation + :rtype: Queryables + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/ogr_geojson_lakes/queryables", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Queryables._unmap(response) + + @cast_models + def get_ogr_geojson_lakes_schema( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Queryables: + """lakes of the world, public domain + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: successful queryables operation + :rtype: Queryables + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/ogr_geojson_lakes/schema", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Queryables._unmap(response) diff --git a/src/geobeyond_sdk/services/ogr_gpkg_poi.py b/src/geobeyond_sdk/services/ogr_gpkg_poi.py new file mode 100644 index 0000000..0f914cd --- /dev/null +++ b/src/geobeyond_sdk/services/ogr_gpkg_poi.py @@ -0,0 +1,356 @@ +# This file was generated by liblab | https://liblab.com/ + +from typing import Any, List +from .utils.validator import Validator +from .utils.base_service import BaseService +from ..net.transport.serializer import Serializer +from ..models.utils.cast_models import cast_models +from ..models import ( + Collection, + FeatureCollectionGeoJson, + FeatureGeoJson, + GetLandingPageF, + GetOgrGpkgPoiFeaturesProperties, + Lang, + Queryables, +) + + +class OgrGpkgPoiService(BaseService): + + @cast_models + def describe_ogr_gpkg_poi_collection( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Collection: + """Portuguese Points of Interest obtained from OpenStreetMap. Dataset includes Madeira and Azores islands. Uses GeoPackage backend via OGR provider. + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: Information about the feature collection with id `collectionId`. + + The response contains a link to the items in the collection + (path `/collections/{collectionId}/items`, link relation `items`) + as well as key information about the collection. This information + includes: + + * A local identifier for the collection that is unique for the dataset; + * A list of coordinate reference systems (CRS) in which geometries may be returned by the server. The first CRS is the default coordinate reference system (the default is always WGS 84 with axis order longitude/latitude); + * An optional title and description for the collection; + * An optional extent that can be used to provide an indication of the spatial and temporal extent of the collection - typically derived from the data; + * An optional indicator about the type of the items in the collection (the default value, if the indicator is not provided, is 'feature'). + :rtype: Collection + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/ogr_gpkg_poi", self.get_default_headers() + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Collection._unmap(response) + + @cast_models + def get_ogr_gpkg_poi_features( + self, + f: GetLandingPageF = None, + lang: Lang = None, + bbox: List[float] = None, + limit: int = None, + crs: str = None, + bbox_crs: str = None, + properties: List[GetOgrGpkgPoiFeaturesProperties] = None, + vendor_specific_parameters: dict = None, + skip_geometry: bool = None, + sortby: List[str] = None, + offset: int = None, + gid: int = None, + osm_id: int = None, + fclass: str = None, + name: str = None, + ) -> FeatureCollectionGeoJson: + """Portuguese Points of Interest obtained from OpenStreetMap. Dataset includes Madeira and Azores islands. Uses GeoPackage backend via OGR provider. + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + :param bbox: Only features that have a geometry that intersects the bounding box are selected.The bounding box is provided as four or six numbers, depending on whether the coordinate reference system includes a vertical axis (height or depth)., defaults to None + :type bbox: List[float], optional + :param limit: The optional limit parameter limits the number of items that are presented in the response document. + + Only items are counted that are on the first level of the collection in the response document. + Nested objects contained within the explicitly requested items shall not be counted. + + Minimum = 1. Maximum = 10000. Default = 10., defaults to None + :type limit: int, optional + :param crs: Indicates the coordinate reference system for the results., defaults to None + :type crs: str, optional + :param bbox_crs: Indicates the coordinate reference system for the given bbox coordinates., defaults to None + :type bbox_crs: str, optional + :param properties: The properties that should be included for each feature. The parameter value is a comma-separated list of property names., defaults to None + :type properties: List[GetOgrGpkgPoiFeaturesProperties], optional + :param vendor_specific_parameters: Additional "free-form" parameters that are not explicitly defined, defaults to None + :type vendor_specific_parameters: dict, optional + :param skip_geometry: This option can be used to skip response geometries for each feature., defaults to None + :type skip_geometry: bool, optional + :param sortby: Specifies a comma-separated list of property names by which the response shall + be sorted. If the property name is preceded by a plus (+) sign it indicates + an ascending sort for that property. If the property name is preceded by a + minus (-) sign it indicates a descending sort for that property. If the + property is not preceded by a plus or minus, then the default sort order + implied is ascending (+)., defaults to None + :type sortby: List[str], optional + :param offset: The optional offset parameter indicates the index within the result set from which the server shall begin presenting results in the response document. The first element has an index of 0 (default)., defaults to None + :type offset: int, optional + :param gid: gid, defaults to None + :type gid: int, optional + :param osm_id: osm_id, defaults to None + :type osm_id: int, optional + :param fclass: fclass, defaults to None + :type fclass: str, optional + :param name: name, defaults to None + :type name: str, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: The response is a document consisting of features in the collection. + The features included in the response are determined by the server + based on the query parameters of the request. To support access to + larger collections without overloading the client, the API supports + paged access with links to the next page, if more features are selected + that the page size. + + The `bbox` and `datetime` parameter can be used to select only a + subset of the features in the collection (the features that are in the + bounding box or time interval). The `bbox` parameter matches all features + in the collection that are not associated with a location, too. The + `datetime` parameter matches all features in the collection that are + not associated with a time stamp or interval, too. + + The `limit` parameter may be used to control the subset of the + selected features that should be returned in the response, the page size. + Each page may include information about the number of selected and + returned features (`numberMatched` and `numberReturned`) as well as + links to support paging (link relation `next`). + :rtype: FeatureCollectionGeoJson + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + Validator(float).is_array().is_optional().validate(bbox) + Validator(int).is_optional().min(1).max(10000).validate(limit) + Validator(str).is_optional().validate(crs) + Validator(str).is_optional().validate(bbox_crs) + Validator(GetOgrGpkgPoiFeaturesProperties).is_array().is_optional().validate( + properties + ) + Validator(dict).is_optional().validate(vendor_specific_parameters) + Validator(bool).is_optional().validate(skip_geometry) + Validator(str).is_array().is_optional().validate(sortby) + Validator(int).is_optional().min(0).validate(offset) + Validator(int).is_optional().validate(gid) + Validator(int).is_optional().validate(osm_id) + Validator(str).is_optional().validate(fclass) + Validator(str).is_optional().validate(name) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/ogr_gpkg_poi/items", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .add_query("bbox", bbox, explode=False) + .add_query("limit", limit, explode=False) + .add_query("crs", crs, explode=False) + .add_query("bbox-crs", bbox_crs, explode=False) + .add_query("properties", properties, explode=False) + .add_query("vendorSpecificParameters", vendor_specific_parameters) + .add_query("skipGeometry", skip_geometry, explode=False) + .add_query("sortby", sortby, explode=False) + .add_query("offset", offset, explode=False) + .add_query("gid", gid, explode=False) + .add_query("osm_id", osm_id, explode=False) + .add_query("fclass", fclass, explode=False) + .add_query("name", name, explode=False) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return FeatureCollectionGeoJson._unmap(response) + + @cast_models + def options_ogr_gpkg_poi_features(self) -> Any: + """Portuguese Points of Interest obtained from OpenStreetMap. Dataset includes Madeira and Azores islands. Uses GeoPackage backend via OGR provider. + + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + """ + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/ogr_gpkg_poi/items", + self.get_default_headers(), + ) + .serialize() + .set_method("OPTIONS") + ) + + response = self.send_request(serialized_request) + return response + + @cast_models + def get_ogr_gpkg_poi_feature( + self, + feature_id: str, + crs: str = None, + f: GetLandingPageF = None, + lang: Lang = None, + ) -> FeatureGeoJson: + """Portuguese Points of Interest obtained from OpenStreetMap. Dataset includes Madeira and Azores islands. Uses GeoPackage backend via OGR provider. + + :param feature_id: local identifier of a feature + :type feature_id: str + :param crs: Indicates the coordinate reference system for the results., defaults to None + :type crs: str, optional + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: fetch the feature with id `featureId` in the feature collection + with id `collectionId` + :rtype: FeatureGeoJson + """ + + Validator(str).validate(feature_id) + Validator(str).is_optional().validate(crs) + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/ogr_gpkg_poi/items/{{featureId}}", + self.get_default_headers(), + ) + .add_path("featureId", feature_id) + .add_query("crs", crs, explode=False) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return FeatureGeoJson._unmap(response) + + @cast_models + def options_ogr_gpkg_poi_feature(self, feature_id: str) -> Any: + """Portuguese Points of Interest obtained from OpenStreetMap. Dataset includes Madeira and Azores islands. Uses GeoPackage backend via OGR provider. + + :param feature_id: local identifier of a feature + :type feature_id: str + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + """ + + Validator(str).validate(feature_id) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/ogr_gpkg_poi/items/{{featureId}}", + self.get_default_headers(), + ) + .add_path("featureId", feature_id) + .serialize() + .set_method("OPTIONS") + ) + + response = self.send_request(serialized_request) + return response + + @cast_models + def get_ogr_gpkg_poi_queryables( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Queryables: + """Portuguese Points of Interest obtained from OpenStreetMap. Dataset includes Madeira and Azores islands. Uses GeoPackage backend via OGR provider. + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: successful queryables operation + :rtype: Queryables + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/ogr_gpkg_poi/queryables", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Queryables._unmap(response) + + @cast_models + def get_ogr_gpkg_poi_schema( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Queryables: + """Portuguese Points of Interest obtained from OpenStreetMap. Dataset includes Madeira and Azores islands. Uses GeoPackage backend via OGR provider. + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: successful queryables operation + :rtype: Queryables + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/ogr_gpkg_poi/schema", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Queryables._unmap(response) diff --git a/src/geobeyond_sdk/services/ogr_gpkg_wales_railway_lines.py b/src/geobeyond_sdk/services/ogr_gpkg_wales_railway_lines.py new file mode 100644 index 0000000..07f3969 --- /dev/null +++ b/src/geobeyond_sdk/services/ogr_gpkg_wales_railway_lines.py @@ -0,0 +1,347 @@ +# This file was generated by liblab | https://liblab.com/ + +from typing import Any, List +from .utils.validator import Validator +from .utils.base_service import BaseService +from ..net.transport.serializer import Serializer +from ..models.utils.cast_models import cast_models +from ..models import ( + Collection, + FeatureCollectionGeoJson, + FeatureGeoJson, + GetLandingPageF, + GetOgrGpkgWalesRailwayLinesFeaturesProperties, + Lang, + Queryables, +) + + +class OgrGpkgWalesRailwayLinesService(BaseService): + + @cast_models + def describe_ogr_gpkg_wales_railway_lines_collection( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Collection: + """Railway lines in Wales (UK) from Ordnance Survey. Uses GeoPackage backend via OGR provider. + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: Information about the feature collection with id `collectionId`. + + The response contains a link to the items in the collection + (path `/collections/{collectionId}/items`, link relation `items`) + as well as key information about the collection. This information + includes: + + * A local identifier for the collection that is unique for the dataset; + * A list of coordinate reference systems (CRS) in which geometries may be returned by the server. The first CRS is the default coordinate reference system (the default is always WGS 84 with axis order longitude/latitude); + * An optional title and description for the collection; + * An optional extent that can be used to provide an indication of the spatial and temporal extent of the collection - typically derived from the data; + * An optional indicator about the type of the items in the collection (the default value, if the indicator is not provided, is 'feature'). + :rtype: Collection + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/ogr_gpkg_wales_railway_lines", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Collection._unmap(response) + + @cast_models + def get_ogr_gpkg_wales_railway_lines_features( + self, + f: GetLandingPageF = None, + lang: Lang = None, + bbox: List[float] = None, + limit: int = None, + crs: str = None, + bbox_crs: str = None, + properties: List[GetOgrGpkgWalesRailwayLinesFeaturesProperties] = None, + vendor_specific_parameters: dict = None, + skip_geometry: bool = None, + sortby: List[str] = None, + offset: int = None, + id_: int = None, + type_: str = None, + ) -> FeatureCollectionGeoJson: + """Railway lines in Wales (UK) from Ordnance Survey. Uses GeoPackage backend via OGR provider. + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + :param bbox: Only features that have a geometry that intersects the bounding box are selected.The bounding box is provided as four or six numbers, depending on whether the coordinate reference system includes a vertical axis (height or depth)., defaults to None + :type bbox: List[float], optional + :param limit: The optional limit parameter limits the number of items that are presented in the response document. + + Only items are counted that are on the first level of the collection in the response document. + Nested objects contained within the explicitly requested items shall not be counted. + + Minimum = 1. Maximum = 10000. Default = 10., defaults to None + :type limit: int, optional + :param crs: Indicates the coordinate reference system for the results., defaults to None + :type crs: str, optional + :param bbox_crs: Indicates the coordinate reference system for the given bbox coordinates., defaults to None + :type bbox_crs: str, optional + :param properties: The properties that should be included for each feature. The parameter value is a comma-separated list of property names., defaults to None + :type properties: List[GetOgrGpkgWalesRailwayLinesFeaturesProperties], optional + :param vendor_specific_parameters: Additional "free-form" parameters that are not explicitly defined, defaults to None + :type vendor_specific_parameters: dict, optional + :param skip_geometry: This option can be used to skip response geometries for each feature., defaults to None + :type skip_geometry: bool, optional + :param sortby: Specifies a comma-separated list of property names by which the response shall + be sorted. If the property name is preceded by a plus (+) sign it indicates + an ascending sort for that property. If the property name is preceded by a + minus (-) sign it indicates a descending sort for that property. If the + property is not preceded by a plus or minus, then the default sort order + implied is ascending (+)., defaults to None + :type sortby: List[str], optional + :param offset: The optional offset parameter indicates the index within the result set from which the server shall begin presenting results in the response document. The first element has an index of 0 (default)., defaults to None + :type offset: int, optional + :param id_: id_, defaults to None + :type id_: int, optional + :param type_: type_, defaults to None + :type type_: str, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: The response is a document consisting of features in the collection. + The features included in the response are determined by the server + based on the query parameters of the request. To support access to + larger collections without overloading the client, the API supports + paged access with links to the next page, if more features are selected + that the page size. + + The `bbox` and `datetime` parameter can be used to select only a + subset of the features in the collection (the features that are in the + bounding box or time interval). The `bbox` parameter matches all features + in the collection that are not associated with a location, too. The + `datetime` parameter matches all features in the collection that are + not associated with a time stamp or interval, too. + + The `limit` parameter may be used to control the subset of the + selected features that should be returned in the response, the page size. + Each page may include information about the number of selected and + returned features (`numberMatched` and `numberReturned`) as well as + links to support paging (link relation `next`). + :rtype: FeatureCollectionGeoJson + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + Validator(float).is_array().is_optional().validate(bbox) + Validator(int).is_optional().min(1).max(10000).validate(limit) + Validator(str).is_optional().validate(crs) + Validator(str).is_optional().validate(bbox_crs) + Validator( + GetOgrGpkgWalesRailwayLinesFeaturesProperties + ).is_array().is_optional().validate(properties) + Validator(dict).is_optional().validate(vendor_specific_parameters) + Validator(bool).is_optional().validate(skip_geometry) + Validator(str).is_array().is_optional().validate(sortby) + Validator(int).is_optional().min(0).validate(offset) + Validator(int).is_optional().validate(id_) + Validator(str).is_optional().validate(type_) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/ogr_gpkg_wales_railway_lines/items", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .add_query("bbox", bbox, explode=False) + .add_query("limit", limit, explode=False) + .add_query("crs", crs, explode=False) + .add_query("bbox-crs", bbox_crs, explode=False) + .add_query("properties", properties, explode=False) + .add_query("vendorSpecificParameters", vendor_specific_parameters) + .add_query("skipGeometry", skip_geometry, explode=False) + .add_query("sortby", sortby, explode=False) + .add_query("offset", offset, explode=False) + .add_query("id", id_, explode=False) + .add_query("type", type_, explode=False) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return FeatureCollectionGeoJson._unmap(response) + + @cast_models + def options_ogr_gpkg_wales_railway_lines_features(self) -> Any: + """Railway lines in Wales (UK) from Ordnance Survey. Uses GeoPackage backend via OGR provider. + + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + """ + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/ogr_gpkg_wales_railway_lines/items", + self.get_default_headers(), + ) + .serialize() + .set_method("OPTIONS") + ) + + response = self.send_request(serialized_request) + return response + + @cast_models + def get_ogr_gpkg_wales_railway_lines_feature( + self, + feature_id: str, + crs: str = None, + f: GetLandingPageF = None, + lang: Lang = None, + ) -> FeatureGeoJson: + """Railway lines in Wales (UK) from Ordnance Survey. Uses GeoPackage backend via OGR provider. + + :param feature_id: local identifier of a feature + :type feature_id: str + :param crs: Indicates the coordinate reference system for the results., defaults to None + :type crs: str, optional + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: fetch the feature with id `featureId` in the feature collection + with id `collectionId` + :rtype: FeatureGeoJson + """ + + Validator(str).validate(feature_id) + Validator(str).is_optional().validate(crs) + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/ogr_gpkg_wales_railway_lines/items/{{featureId}}", + self.get_default_headers(), + ) + .add_path("featureId", feature_id) + .add_query("crs", crs, explode=False) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return FeatureGeoJson._unmap(response) + + @cast_models + def options_ogr_gpkg_wales_railway_lines_feature(self, feature_id: str) -> Any: + """Railway lines in Wales (UK) from Ordnance Survey. Uses GeoPackage backend via OGR provider. + + :param feature_id: local identifier of a feature + :type feature_id: str + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + """ + + Validator(str).validate(feature_id) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/ogr_gpkg_wales_railway_lines/items/{{featureId}}", + self.get_default_headers(), + ) + .add_path("featureId", feature_id) + .serialize() + .set_method("OPTIONS") + ) + + response = self.send_request(serialized_request) + return response + + @cast_models + def get_ogr_gpkg_wales_railway_lines_queryables( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Queryables: + """Railway lines in Wales (UK) from Ordnance Survey. Uses GeoPackage backend via OGR provider. + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: successful queryables operation + :rtype: Queryables + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/ogr_gpkg_wales_railway_lines/queryables", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Queryables._unmap(response) + + @cast_models + def get_ogr_gpkg_wales_railway_lines_schema( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Queryables: + """Railway lines in Wales (UK) from Ordnance Survey. Uses GeoPackage backend via OGR provider. + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: successful queryables operation + :rtype: Queryables + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/ogr_gpkg_wales_railway_lines/schema", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Queryables._unmap(response) diff --git a/src/geobeyond_sdk/services/ogr_gpkg_wales_stations.py b/src/geobeyond_sdk/services/ogr_gpkg_wales_stations.py new file mode 100644 index 0000000..a6c6ee5 --- /dev/null +++ b/src/geobeyond_sdk/services/ogr_gpkg_wales_stations.py @@ -0,0 +1,352 @@ +# This file was generated by liblab | https://liblab.com/ + +from typing import Any, List +from .utils.validator import Validator +from .utils.base_service import BaseService +from ..net.transport.serializer import Serializer +from ..models.utils.cast_models import cast_models +from ..models import ( + Collection, + FeatureCollectionGeoJson, + FeatureGeoJson, + GetLandingPageF, + GetOgrGpkgWalesStationsFeaturesProperties, + Lang, + Queryables, +) + + +class OgrGpkgWalesStationsService(BaseService): + + @cast_models + def describe_ogr_gpkg_wales_stations_collection( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Collection: + """Railway stations in Wales (UK) from Ordnance Survey. Uses GeoPackage backend via OGR provider. + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: Information about the feature collection with id `collectionId`. + + The response contains a link to the items in the collection + (path `/collections/{collectionId}/items`, link relation `items`) + as well as key information about the collection. This information + includes: + + * A local identifier for the collection that is unique for the dataset; + * A list of coordinate reference systems (CRS) in which geometries may be returned by the server. The first CRS is the default coordinate reference system (the default is always WGS 84 with axis order longitude/latitude); + * An optional title and description for the collection; + * An optional extent that can be used to provide an indication of the spatial and temporal extent of the collection - typically derived from the data; + * An optional indicator about the type of the items in the collection (the default value, if the indicator is not provided, is 'feature'). + :rtype: Collection + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/ogr_gpkg_wales_stations", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Collection._unmap(response) + + @cast_models + def get_ogr_gpkg_wales_stations_features( + self, + f: GetLandingPageF = None, + lang: Lang = None, + bbox: List[float] = None, + limit: int = None, + crs: str = None, + bbox_crs: str = None, + properties: List[GetOgrGpkgWalesStationsFeaturesProperties] = None, + vendor_specific_parameters: dict = None, + skip_geometry: bool = None, + sortby: List[str] = None, + offset: int = None, + id_: int = None, + type_: str = None, + name: str = None, + ) -> FeatureCollectionGeoJson: + """Railway stations in Wales (UK) from Ordnance Survey. Uses GeoPackage backend via OGR provider. + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + :param bbox: Only features that have a geometry that intersects the bounding box are selected.The bounding box is provided as four or six numbers, depending on whether the coordinate reference system includes a vertical axis (height or depth)., defaults to None + :type bbox: List[float], optional + :param limit: The optional limit parameter limits the number of items that are presented in the response document. + + Only items are counted that are on the first level of the collection in the response document. + Nested objects contained within the explicitly requested items shall not be counted. + + Minimum = 1. Maximum = 10000. Default = 10., defaults to None + :type limit: int, optional + :param crs: Indicates the coordinate reference system for the results., defaults to None + :type crs: str, optional + :param bbox_crs: Indicates the coordinate reference system for the given bbox coordinates., defaults to None + :type bbox_crs: str, optional + :param properties: The properties that should be included for each feature. The parameter value is a comma-separated list of property names., defaults to None + :type properties: List[GetOgrGpkgWalesStationsFeaturesProperties], optional + :param vendor_specific_parameters: Additional "free-form" parameters that are not explicitly defined, defaults to None + :type vendor_specific_parameters: dict, optional + :param skip_geometry: This option can be used to skip response geometries for each feature., defaults to None + :type skip_geometry: bool, optional + :param sortby: Specifies a comma-separated list of property names by which the response shall + be sorted. If the property name is preceded by a plus (+) sign it indicates + an ascending sort for that property. If the property name is preceded by a + minus (-) sign it indicates a descending sort for that property. If the + property is not preceded by a plus or minus, then the default sort order + implied is ascending (+)., defaults to None + :type sortby: List[str], optional + :param offset: The optional offset parameter indicates the index within the result set from which the server shall begin presenting results in the response document. The first element has an index of 0 (default)., defaults to None + :type offset: int, optional + :param id_: id_, defaults to None + :type id_: int, optional + :param type_: type_, defaults to None + :type type_: str, optional + :param name: name, defaults to None + :type name: str, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: The response is a document consisting of features in the collection. + The features included in the response are determined by the server + based on the query parameters of the request. To support access to + larger collections without overloading the client, the API supports + paged access with links to the next page, if more features are selected + that the page size. + + The `bbox` and `datetime` parameter can be used to select only a + subset of the features in the collection (the features that are in the + bounding box or time interval). The `bbox` parameter matches all features + in the collection that are not associated with a location, too. The + `datetime` parameter matches all features in the collection that are + not associated with a time stamp or interval, too. + + The `limit` parameter may be used to control the subset of the + selected features that should be returned in the response, the page size. + Each page may include information about the number of selected and + returned features (`numberMatched` and `numberReturned`) as well as + links to support paging (link relation `next`). + :rtype: FeatureCollectionGeoJson + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + Validator(float).is_array().is_optional().validate(bbox) + Validator(int).is_optional().min(1).max(10000).validate(limit) + Validator(str).is_optional().validate(crs) + Validator(str).is_optional().validate(bbox_crs) + Validator( + GetOgrGpkgWalesStationsFeaturesProperties + ).is_array().is_optional().validate(properties) + Validator(dict).is_optional().validate(vendor_specific_parameters) + Validator(bool).is_optional().validate(skip_geometry) + Validator(str).is_array().is_optional().validate(sortby) + Validator(int).is_optional().min(0).validate(offset) + Validator(int).is_optional().validate(id_) + Validator(str).is_optional().validate(type_) + Validator(str).is_optional().validate(name) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/ogr_gpkg_wales_stations/items", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .add_query("bbox", bbox, explode=False) + .add_query("limit", limit, explode=False) + .add_query("crs", crs, explode=False) + .add_query("bbox-crs", bbox_crs, explode=False) + .add_query("properties", properties, explode=False) + .add_query("vendorSpecificParameters", vendor_specific_parameters) + .add_query("skipGeometry", skip_geometry, explode=False) + .add_query("sortby", sortby, explode=False) + .add_query("offset", offset, explode=False) + .add_query("id", id_, explode=False) + .add_query("type", type_, explode=False) + .add_query("name", name, explode=False) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return FeatureCollectionGeoJson._unmap(response) + + @cast_models + def options_ogr_gpkg_wales_stations_features(self) -> Any: + """Railway stations in Wales (UK) from Ordnance Survey. Uses GeoPackage backend via OGR provider. + + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + """ + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/ogr_gpkg_wales_stations/items", + self.get_default_headers(), + ) + .serialize() + .set_method("OPTIONS") + ) + + response = self.send_request(serialized_request) + return response + + @cast_models + def get_ogr_gpkg_wales_stations_feature( + self, + feature_id: str, + crs: str = None, + f: GetLandingPageF = None, + lang: Lang = None, + ) -> FeatureGeoJson: + """Railway stations in Wales (UK) from Ordnance Survey. Uses GeoPackage backend via OGR provider. + + :param feature_id: local identifier of a feature + :type feature_id: str + :param crs: Indicates the coordinate reference system for the results., defaults to None + :type crs: str, optional + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: fetch the feature with id `featureId` in the feature collection + with id `collectionId` + :rtype: FeatureGeoJson + """ + + Validator(str).validate(feature_id) + Validator(str).is_optional().validate(crs) + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/ogr_gpkg_wales_stations/items/{{featureId}}", + self.get_default_headers(), + ) + .add_path("featureId", feature_id) + .add_query("crs", crs, explode=False) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return FeatureGeoJson._unmap(response) + + @cast_models + def options_ogr_gpkg_wales_stations_feature(self, feature_id: str) -> Any: + """Railway stations in Wales (UK) from Ordnance Survey. Uses GeoPackage backend via OGR provider. + + :param feature_id: local identifier of a feature + :type feature_id: str + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + """ + + Validator(str).validate(feature_id) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/ogr_gpkg_wales_stations/items/{{featureId}}", + self.get_default_headers(), + ) + .add_path("featureId", feature_id) + .serialize() + .set_method("OPTIONS") + ) + + response = self.send_request(serialized_request) + return response + + @cast_models + def get_ogr_gpkg_wales_stations_queryables( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Queryables: + """Railway stations in Wales (UK) from Ordnance Survey. Uses GeoPackage backend via OGR provider. + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: successful queryables operation + :rtype: Queryables + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/ogr_gpkg_wales_stations/queryables", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Queryables._unmap(response) + + @cast_models + def get_ogr_gpkg_wales_stations_schema( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Queryables: + """Railway stations in Wales (UK) from Ordnance Survey. Uses GeoPackage backend via OGR provider. + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: successful queryables operation + :rtype: Queryables + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/ogr_gpkg_wales_stations/schema", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Queryables._unmap(response) diff --git a/src/geobeyond_sdk/services/server.py b/src/geobeyond_sdk/services/server.py new file mode 100644 index 0000000..ccb4fe6 --- /dev/null +++ b/src/geobeyond_sdk/services/server.py @@ -0,0 +1,177 @@ +# This file was generated by liblab | https://liblab.com/ + +from typing import Any +from .utils.validator import Validator +from .utils.base_service import BaseService +from ..net.transport.serializer import Serializer +from ..models.utils.cast_models import cast_models +from ..models import GetLandingPageF, LandingPage, Lang, ProcessList, Ui + + +class ServerService(BaseService): + + @cast_models + def get_landing_page( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> LandingPage: + """Landing page + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: The landing page provides links to the API definition + (link relations `service-desc` and `service-doc`), + the Conformance declaration (path `/conformance`, + link relation `conformance`), and the Feature + Collections (path `/collections`, link relation + `data`). + :rtype: LandingPage + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer(f"{self.base_url}/", self.get_default_headers()) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return LandingPage._unmap(response) + + @cast_models + def get_collections( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> LandingPage: + """Collections + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: The landing page provides links to the API definition + (link relations `service-desc` and `service-doc`), + the Conformance declaration (path `/conformance`, + link relation `conformance`), and the Feature + Collections (path `/collections`, link relation + `data`). + :rtype: LandingPage + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer(f"{self.base_url}/collections", self.get_default_headers()) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return LandingPage._unmap(response) + + @cast_models + def get_conformance_declaration( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> LandingPage: + """API conformance definition + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: The landing page provides links to the API definition + (link relations `service-desc` and `service-doc`), + the Conformance declaration (path `/conformance`, + link relation `conformance`), and the Feature + Collections (path `/collections`, link relation + `data`). + :rtype: LandingPage + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer(f"{self.base_url}/conformance", self.get_default_headers()) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return LandingPage._unmap(response) + + @cast_models + def get_openapi( + self, f: GetLandingPageF = None, lang: Lang = None, ui: Ui = None + ) -> Any: + """This document + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + :param ui: UI to render the OpenAPI document, defaults to None + :type ui: Ui, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + Validator(Ui).is_optional().validate(ui) + + serialized_request = ( + Serializer(f"{self.base_url}/openapi", self.get_default_headers()) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .add_query("ui", ui, explode=False) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return response + + @cast_models + def get_processes(self, f: GetLandingPageF = None) -> ProcessList: + """Processes + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: Information about the available processes + :rtype: ProcessList + """ + + Validator(GetLandingPageF).is_optional().validate(f) + + serialized_request = ( + Serializer(f"{self.base_url}/processes", self.get_default_headers()) + .add_query("f", f, explode=False) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return ProcessList._unmap(response) diff --git a/src/geobeyond_sdk/services/stac.py b/src/geobeyond_sdk/services/stac.py new file mode 100644 index 0000000..f7cfcd8 --- /dev/null +++ b/src/geobeyond_sdk/services/stac.py @@ -0,0 +1,28 @@ +# This file was generated by liblab | https://liblab.com/ + +from typing import Any +from .utils.validator import Validator +from .utils.base_service import BaseService +from ..net.transport.serializer import Serializer +from ..models.utils.cast_models import cast_models + + +class StacService(BaseService): + + @cast_models + def get_stac_catalog(self) -> Any: + """SpatioTemporal Asset Catalog + + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + """ + + serialized_request = ( + Serializer(f"{self.base_url}/stac", self.get_default_headers()) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return response diff --git a/src/geobeyond_sdk/services/unesco_pois_italy.py b/src/geobeyond_sdk/services/unesco_pois_italy.py new file mode 100644 index 0000000..4e0b9d2 --- /dev/null +++ b/src/geobeyond_sdk/services/unesco_pois_italy.py @@ -0,0 +1,372 @@ +# This file was generated by liblab | https://liblab.com/ + +from typing import Any, List +from .utils.validator import Validator +from .utils.base_service import BaseService +from ..net.transport.serializer import Serializer +from ..models.utils.cast_models import cast_models +from ..models import ( + Collection, + FeatureCollectionGeoJson, + FeatureGeoJson, + GetLandingPageF, + GetUnescoPoisItalyFeaturesProperties, + Lang, + Queryables, +) + + +class UnescoPoisItalyService(BaseService): + + @cast_models + def describe_unesco_pois_italy_collection( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Collection: + """Unesco Points of Interest in Italy. Using GeoSolutions GeoServer WFS demo-server as backend WFS. + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: Information about the feature collection with id `collectionId`. + + The response contains a link to the items in the collection + (path `/collections/{collectionId}/items`, link relation `items`) + as well as key information about the collection. This information + includes: + + * A local identifier for the collection that is unique for the dataset; + * A list of coordinate reference systems (CRS) in which geometries may be returned by the server. The first CRS is the default coordinate reference system (the default is always WGS 84 with axis order longitude/latitude); + * An optional title and description for the collection; + * An optional extent that can be used to provide an indication of the spatial and temporal extent of the collection - typically derived from the data; + * An optional indicator about the type of the items in the collection (the default value, if the indicator is not provided, is 'feature'). + :rtype: Collection + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/unesco_pois_italy", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Collection._unmap(response) + + @cast_models + def get_unesco_pois_italy_features( + self, + f: GetLandingPageF = None, + lang: Lang = None, + bbox: List[float] = None, + limit: int = None, + crs: str = None, + bbox_crs: str = None, + properties: List[GetUnescoPoisItalyFeaturesProperties] = None, + vendor_specific_parameters: dict = None, + skip_geometry: bool = None, + sortby: List[str] = None, + offset: int = None, + gml_id: str = None, + cod_unesco: str = None, + sito: str = None, + seriale: int = None, + cod_compon: str = None, + componente: str = None, + tipo_area: str = None, + ) -> FeatureCollectionGeoJson: + """Unesco Points of Interest in Italy. Using GeoSolutions GeoServer WFS demo-server as backend WFS. + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + :param bbox: Only features that have a geometry that intersects the bounding box are selected.The bounding box is provided as four or six numbers, depending on whether the coordinate reference system includes a vertical axis (height or depth)., defaults to None + :type bbox: List[float], optional + :param limit: The optional limit parameter limits the number of items that are presented in the response document. + + Only items are counted that are on the first level of the collection in the response document. + Nested objects contained within the explicitly requested items shall not be counted. + + Minimum = 1. Maximum = 10000. Default = 10., defaults to None + :type limit: int, optional + :param crs: Indicates the coordinate reference system for the results., defaults to None + :type crs: str, optional + :param bbox_crs: Indicates the coordinate reference system for the given bbox coordinates., defaults to None + :type bbox_crs: str, optional + :param properties: The properties that should be included for each feature. The parameter value is a comma-separated list of property names., defaults to None + :type properties: List[GetUnescoPoisItalyFeaturesProperties], optional + :param vendor_specific_parameters: Additional "free-form" parameters that are not explicitly defined, defaults to None + :type vendor_specific_parameters: dict, optional + :param skip_geometry: This option can be used to skip response geometries for each feature., defaults to None + :type skip_geometry: bool, optional + :param sortby: Specifies a comma-separated list of property names by which the response shall + be sorted. If the property name is preceded by a plus (+) sign it indicates + an ascending sort for that property. If the property name is preceded by a + minus (-) sign it indicates a descending sort for that property. If the + property is not preceded by a plus or minus, then the default sort order + implied is ascending (+)., defaults to None + :type sortby: List[str], optional + :param offset: The optional offset parameter indicates the index within the result set from which the server shall begin presenting results in the response document. The first element has an index of 0 (default)., defaults to None + :type offset: int, optional + :param gml_id: gml_id, defaults to None + :type gml_id: str, optional + :param cod_unesco: cod_unesco, defaults to None + :type cod_unesco: str, optional + :param sito: sito, defaults to None + :type sito: str, optional + :param seriale: seriale, defaults to None + :type seriale: int, optional + :param cod_compon: cod_compon, defaults to None + :type cod_compon: str, optional + :param componente: componente, defaults to None + :type componente: str, optional + :param tipo_area: tipo_area, defaults to None + :type tipo_area: str, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: The response is a document consisting of features in the collection. + The features included in the response are determined by the server + based on the query parameters of the request. To support access to + larger collections without overloading the client, the API supports + paged access with links to the next page, if more features are selected + that the page size. + + The `bbox` and `datetime` parameter can be used to select only a + subset of the features in the collection (the features that are in the + bounding box or time interval). The `bbox` parameter matches all features + in the collection that are not associated with a location, too. The + `datetime` parameter matches all features in the collection that are + not associated with a time stamp or interval, too. + + The `limit` parameter may be used to control the subset of the + selected features that should be returned in the response, the page size. + Each page may include information about the number of selected and + returned features (`numberMatched` and `numberReturned`) as well as + links to support paging (link relation `next`). + :rtype: FeatureCollectionGeoJson + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + Validator(float).is_array().is_optional().validate(bbox) + Validator(int).is_optional().min(1).max(10000).validate(limit) + Validator(str).is_optional().validate(crs) + Validator(str).is_optional().validate(bbox_crs) + Validator( + GetUnescoPoisItalyFeaturesProperties + ).is_array().is_optional().validate(properties) + Validator(dict).is_optional().validate(vendor_specific_parameters) + Validator(bool).is_optional().validate(skip_geometry) + Validator(str).is_array().is_optional().validate(sortby) + Validator(int).is_optional().min(0).validate(offset) + Validator(str).is_optional().validate(gml_id) + Validator(str).is_optional().validate(cod_unesco) + Validator(str).is_optional().validate(sito) + Validator(int).is_optional().validate(seriale) + Validator(str).is_optional().validate(cod_compon) + Validator(str).is_optional().validate(componente) + Validator(str).is_optional().validate(tipo_area) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/unesco_pois_italy/items", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .add_query("bbox", bbox, explode=False) + .add_query("limit", limit, explode=False) + .add_query("crs", crs, explode=False) + .add_query("bbox-crs", bbox_crs, explode=False) + .add_query("properties", properties, explode=False) + .add_query("vendorSpecificParameters", vendor_specific_parameters) + .add_query("skipGeometry", skip_geometry, explode=False) + .add_query("sortby", sortby, explode=False) + .add_query("offset", offset, explode=False) + .add_query("gml_id", gml_id, explode=False) + .add_query("cod_unesco", cod_unesco, explode=False) + .add_query("sito", sito, explode=False) + .add_query("seriale", seriale, explode=False) + .add_query("cod_compon", cod_compon, explode=False) + .add_query("componente", componente, explode=False) + .add_query("tipo_area", tipo_area, explode=False) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return FeatureCollectionGeoJson._unmap(response) + + @cast_models + def options_unesco_pois_italy_features(self) -> Any: + """Unesco Points of Interest in Italy. Using GeoSolutions GeoServer WFS demo-server as backend WFS. + + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + """ + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/unesco_pois_italy/items", + self.get_default_headers(), + ) + .serialize() + .set_method("OPTIONS") + ) + + response = self.send_request(serialized_request) + return response + + @cast_models + def get_unesco_pois_italy_feature( + self, + feature_id: str, + crs: str = None, + f: GetLandingPageF = None, + lang: Lang = None, + ) -> FeatureGeoJson: + """Unesco Points of Interest in Italy. Using GeoSolutions GeoServer WFS demo-server as backend WFS. + + :param feature_id: local identifier of a feature + :type feature_id: str + :param crs: Indicates the coordinate reference system for the results., defaults to None + :type crs: str, optional + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: fetch the feature with id `featureId` in the feature collection + with id `collectionId` + :rtype: FeatureGeoJson + """ + + Validator(str).validate(feature_id) + Validator(str).is_optional().validate(crs) + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/unesco_pois_italy/items/{{featureId}}", + self.get_default_headers(), + ) + .add_path("featureId", feature_id) + .add_query("crs", crs, explode=False) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return FeatureGeoJson._unmap(response) + + @cast_models + def options_unesco_pois_italy_feature(self, feature_id: str) -> Any: + """Unesco Points of Interest in Italy. Using GeoSolutions GeoServer WFS demo-server as backend WFS. + + :param feature_id: local identifier of a feature + :type feature_id: str + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + """ + + Validator(str).validate(feature_id) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/unesco_pois_italy/items/{{featureId}}", + self.get_default_headers(), + ) + .add_path("featureId", feature_id) + .serialize() + .set_method("OPTIONS") + ) + + response = self.send_request(serialized_request) + return response + + @cast_models + def get_unesco_pois_italy_queryables( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Queryables: + """Unesco Points of Interest in Italy. Using GeoSolutions GeoServer WFS demo-server as backend WFS. + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: successful queryables operation + :rtype: Queryables + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/unesco_pois_italy/queryables", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Queryables._unmap(response) + + @cast_models + def get_unesco_pois_italy_schema( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Queryables: + """Unesco Points of Interest in Italy. Using GeoSolutions GeoServer WFS demo-server as backend WFS. + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: successful queryables operation + :rtype: Queryables + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/unesco_pois_italy/schema", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Queryables._unmap(response) diff --git a/src/geobeyond_sdk/services/utah_city_locations.py b/src/geobeyond_sdk/services/utah_city_locations.py new file mode 100644 index 0000000..299200c --- /dev/null +++ b/src/geobeyond_sdk/services/utah_city_locations.py @@ -0,0 +1,377 @@ +# This file was generated by liblab | https://liblab.com/ + +from typing import Any, List +from .utils.validator import Validator +from .utils.base_service import BaseService +from ..net.transport.serializer import Serializer +from ..models.utils.cast_models import cast_models +from ..models import ( + Collection, + FeatureCollectionGeoJson, + FeatureGeoJson, + GetLandingPageF, + GetUtahCityLocationsFeaturesProperties, + Lang, + Queryables, +) + + +class UtahCityLocationsService(BaseService): + + @cast_models + def describe_utah_city_locations_collection( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Collection: + """Data from the state of Utah. Standard demo dataset from the deegree WFS server that is used as backend WFS. + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: Information about the feature collection with id `collectionId`. + + The response contains a link to the items in the collection + (path `/collections/{collectionId}/items`, link relation `items`) + as well as key information about the collection. This information + includes: + + * A local identifier for the collection that is unique for the dataset; + * A list of coordinate reference systems (CRS) in which geometries may be returned by the server. The first CRS is the default coordinate reference system (the default is always WGS 84 with axis order longitude/latitude); + * An optional title and description for the collection; + * An optional extent that can be used to provide an indication of the spatial and temporal extent of the collection - typically derived from the data; + * An optional indicator about the type of the items in the collection (the default value, if the indicator is not provided, is 'feature'). + :rtype: Collection + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/utah_city_locations", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Collection._unmap(response) + + @cast_models + def get_utah_city_locations_features( + self, + f: GetLandingPageF = None, + lang: Lang = None, + bbox: List[float] = None, + limit: int = None, + crs: str = None, + bbox_crs: str = None, + properties: List[GetUtahCityLocationsFeaturesProperties] = None, + vendor_specific_parameters: dict = None, + skip_geometry: bool = None, + sortby: List[str] = None, + offset: int = None, + gml_id: str = None, + name: str = None, + co_seat: str = None, + pop_1999: float = None, + pop_sym_99: float = None, + pop_2000: float = None, + pop_sym_00: float = None, + state: str = None, + ) -> FeatureCollectionGeoJson: + """Data from the state of Utah. Standard demo dataset from the deegree WFS server that is used as backend WFS. + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + :param bbox: Only features that have a geometry that intersects the bounding box are selected.The bounding box is provided as four or six numbers, depending on whether the coordinate reference system includes a vertical axis (height or depth)., defaults to None + :type bbox: List[float], optional + :param limit: The optional limit parameter limits the number of items that are presented in the response document. + + Only items are counted that are on the first level of the collection in the response document. + Nested objects contained within the explicitly requested items shall not be counted. + + Minimum = 1. Maximum = 10000. Default = 10., defaults to None + :type limit: int, optional + :param crs: Indicates the coordinate reference system for the results., defaults to None + :type crs: str, optional + :param bbox_crs: Indicates the coordinate reference system for the given bbox coordinates., defaults to None + :type bbox_crs: str, optional + :param properties: The properties that should be included for each feature. The parameter value is a comma-separated list of property names., defaults to None + :type properties: List[GetUtahCityLocationsFeaturesProperties], optional + :param vendor_specific_parameters: Additional "free-form" parameters that are not explicitly defined, defaults to None + :type vendor_specific_parameters: dict, optional + :param skip_geometry: This option can be used to skip response geometries for each feature., defaults to None + :type skip_geometry: bool, optional + :param sortby: Specifies a comma-separated list of property names by which the response shall + be sorted. If the property name is preceded by a plus (+) sign it indicates + an ascending sort for that property. If the property name is preceded by a + minus (-) sign it indicates a descending sort for that property. If the + property is not preceded by a plus or minus, then the default sort order + implied is ascending (+)., defaults to None + :type sortby: List[str], optional + :param offset: The optional offset parameter indicates the index within the result set from which the server shall begin presenting results in the response document. The first element has an index of 0 (default)., defaults to None + :type offset: int, optional + :param gml_id: gml_id, defaults to None + :type gml_id: str, optional + :param name: name, defaults to None + :type name: str, optional + :param co_seat: co_seat, defaults to None + :type co_seat: str, optional + :param pop_1999: pop_1999, defaults to None + :type pop_1999: float, optional + :param pop_sym_99: pop_sym_99, defaults to None + :type pop_sym_99: float, optional + :param pop_2000: pop_2000, defaults to None + :type pop_2000: float, optional + :param pop_sym_00: pop_sym_00, defaults to None + :type pop_sym_00: float, optional + :param state: state, defaults to None + :type state: str, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: The response is a document consisting of features in the collection. + The features included in the response are determined by the server + based on the query parameters of the request. To support access to + larger collections without overloading the client, the API supports + paged access with links to the next page, if more features are selected + that the page size. + + The `bbox` and `datetime` parameter can be used to select only a + subset of the features in the collection (the features that are in the + bounding box or time interval). The `bbox` parameter matches all features + in the collection that are not associated with a location, too. The + `datetime` parameter matches all features in the collection that are + not associated with a time stamp or interval, too. + + The `limit` parameter may be used to control the subset of the + selected features that should be returned in the response, the page size. + Each page may include information about the number of selected and + returned features (`numberMatched` and `numberReturned`) as well as + links to support paging (link relation `next`). + :rtype: FeatureCollectionGeoJson + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + Validator(float).is_array().is_optional().validate(bbox) + Validator(int).is_optional().min(1).max(10000).validate(limit) + Validator(str).is_optional().validate(crs) + Validator(str).is_optional().validate(bbox_crs) + Validator( + GetUtahCityLocationsFeaturesProperties + ).is_array().is_optional().validate(properties) + Validator(dict).is_optional().validate(vendor_specific_parameters) + Validator(bool).is_optional().validate(skip_geometry) + Validator(str).is_array().is_optional().validate(sortby) + Validator(int).is_optional().min(0).validate(offset) + Validator(str).is_optional().validate(gml_id) + Validator(str).is_optional().validate(name) + Validator(str).is_optional().validate(co_seat) + Validator(float).is_optional().validate(pop_1999) + Validator(float).is_optional().validate(pop_sym_99) + Validator(float).is_optional().validate(pop_2000) + Validator(float).is_optional().validate(pop_sym_00) + Validator(str).is_optional().validate(state) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/utah_city_locations/items", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .add_query("bbox", bbox, explode=False) + .add_query("limit", limit, explode=False) + .add_query("crs", crs, explode=False) + .add_query("bbox-crs", bbox_crs, explode=False) + .add_query("properties", properties, explode=False) + .add_query("vendorSpecificParameters", vendor_specific_parameters) + .add_query("skipGeometry", skip_geometry, explode=False) + .add_query("sortby", sortby, explode=False) + .add_query("offset", offset, explode=False) + .add_query("gml_id", gml_id, explode=False) + .add_query("NAME", name, explode=False) + .add_query("CO_SEAT", co_seat, explode=False) + .add_query("POP_1999", pop_1999, explode=False) + .add_query("POP_SYM_99", pop_sym_99, explode=False) + .add_query("POP_2000", pop_2000, explode=False) + .add_query("POP_SYM_00", pop_sym_00, explode=False) + .add_query("STATE", state, explode=False) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return FeatureCollectionGeoJson._unmap(response) + + @cast_models + def options_utah_city_locations_features(self) -> Any: + """Data from the state of Utah. Standard demo dataset from the deegree WFS server that is used as backend WFS. + + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + """ + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/utah_city_locations/items", + self.get_default_headers(), + ) + .serialize() + .set_method("OPTIONS") + ) + + response = self.send_request(serialized_request) + return response + + @cast_models + def get_utah_city_locations_feature( + self, + feature_id: str, + crs: str = None, + f: GetLandingPageF = None, + lang: Lang = None, + ) -> FeatureGeoJson: + """Data from the state of Utah. Standard demo dataset from the deegree WFS server that is used as backend WFS. + + :param feature_id: local identifier of a feature + :type feature_id: str + :param crs: Indicates the coordinate reference system for the results., defaults to None + :type crs: str, optional + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: fetch the feature with id `featureId` in the feature collection + with id `collectionId` + :rtype: FeatureGeoJson + """ + + Validator(str).validate(feature_id) + Validator(str).is_optional().validate(crs) + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/utah_city_locations/items/{{featureId}}", + self.get_default_headers(), + ) + .add_path("featureId", feature_id) + .add_query("crs", crs, explode=False) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return FeatureGeoJson._unmap(response) + + @cast_models + def options_utah_city_locations_feature(self, feature_id: str) -> Any: + """Data from the state of Utah. Standard demo dataset from the deegree WFS server that is used as backend WFS. + + :param feature_id: local identifier of a feature + :type feature_id: str + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + """ + + Validator(str).validate(feature_id) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/utah_city_locations/items/{{featureId}}", + self.get_default_headers(), + ) + .add_path("featureId", feature_id) + .serialize() + .set_method("OPTIONS") + ) + + response = self.send_request(serialized_request) + return response + + @cast_models + def get_utah_city_locations_queryables( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Queryables: + """Data from the state of Utah. Standard demo dataset from the deegree WFS server that is used as backend WFS. + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: successful queryables operation + :rtype: Queryables + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/utah_city_locations/queryables", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Queryables._unmap(response) + + @cast_models + def get_utah_city_locations_schema( + self, f: GetLandingPageF = None, lang: Lang = None + ) -> Queryables: + """Data from the state of Utah. Standard demo dataset from the deegree WFS server that is used as backend WFS. + + :param f: The optional f parameter indicates the output format which the server shall provide as part of the response document. The default format is GeoJSON., defaults to None + :type f: GetLandingPageF, optional + :param lang: The optional lang parameter instructs the server return a response in a certain language, if supported. If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language. Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion., defaults to None + :type lang: Lang, optional + ... + :raises RequestError: Raised when a request fails, with optional HTTP status code and details. + ... + :return: successful queryables operation + :rtype: Queryables + """ + + Validator(GetLandingPageF).is_optional().validate(f) + Validator(Lang).is_optional().validate(lang) + + serialized_request = ( + Serializer( + f"{self.base_url}/collections/utah_city_locations/schema", + self.get_default_headers(), + ) + .add_query("f", f, explode=False) + .add_query("lang", lang) + .serialize() + .set_method("GET") + ) + + response = self.send_request(serialized_request) + return Queryables._unmap(response) diff --git a/src/geobeyond_sdk/services/utils/__init__.py b/src/geobeyond_sdk/services/utils/__init__.py new file mode 100644 index 0000000..f9c4328 --- /dev/null +++ b/src/geobeyond_sdk/services/utils/__init__.py @@ -0,0 +1 @@ +# This file was generated by liblab | https://liblab.com/ diff --git a/src/geobeyond_sdk/services/utils/base_service.py b/src/geobeyond_sdk/services/utils/base_service.py new file mode 100644 index 0000000..444c8cc --- /dev/null +++ b/src/geobeyond_sdk/services/utils/base_service.py @@ -0,0 +1,98 @@ +# This file was generated by liblab | https://liblab.com/ + +from typing import Any, Dict, Generator +from enum import Enum + +from .default_headers import DefaultHeaders, DefaultHeadersKeys +from ...net.transport.request import Request +from ...net.request_chain.request_chain import RequestChain +from ...net.request_chain.handlers.hook_handler import HookHandler +from ...net.request_chain.handlers.http_handler import HttpHandler +from ...net.request_chain.handlers.retry_handler import RetryHandler + + +class BaseService: + """ + A base class for services providing common functionality. + + :ivar str base_url: The base URL for the service. + :ivar dict _default_headers: A dictionary of default headers. + """ + + def __init__(self, base_url: str) -> None: + """ + Initializes a BaseService instance. + + :param str base_url: The base URL for the service. Defaults to None. + """ + self.base_url = base_url + self._default_headers = DefaultHeaders() + self._timeout = 60000 + + self._update_request_handler() + + def set_timeout(self, timeout: int): + """ + Sets the timeout for the service. + + :param int timeout: The timeout (ms) to be set. + :return: The service instance. + """ + self._timeout = timeout + self._update_request_handler() + + return self + + def set_base_url(self, base_url: str): + """ + Sets the base URL for the service. + + :param str base_url: The base URL to be set. + """ + self.base_url = base_url + + return self + + def send_request(self, request: Request) -> dict: + """ + Sends the given request. + + :param Request request: The request to be sent. + :return: The response data. + :rtype: dict + """ + response = self._request_handler.send(request) + return response.body + + def stream_request(self, request: Request) -> Generator[dict, None, None]: + for response in self._request_handler.stream(request): + yield response.body + + def get_default_headers(self) -> list: + """ + Get the default headers. + + :return: A list of the default headers. + :rtype: list + """ + return self._default_headers.get_headers() + + def _get_request_handler(self) -> RequestChain: + """ + Get the request chain. + + :return: The request chain. + :rtype: RequestChain + """ + return ( + RequestChain() + .add_handler(RetryHandler()) + .add_handler(HookHandler()) + .add_handler(HttpHandler(self._timeout)) + ) + + def _update_request_handler(self) -> None: + """ + Update the request handler. + """ + self._request_handler = self._get_request_handler() diff --git a/src/geobeyond_sdk/services/utils/default_headers.py b/src/geobeyond_sdk/services/utils/default_headers.py new file mode 100644 index 0000000..992bb57 --- /dev/null +++ b/src/geobeyond_sdk/services/utils/default_headers.py @@ -0,0 +1,59 @@ +# This file was generated by liblab | https://liblab.com/ + +from enum import Enum +from typing import Any, Dict + +from ...net.headers.base_header import BaseHeader + + +class DefaultHeadersKeys(Enum): + """ + An enumeration of default headers. + + :ivar str ACCESS_AUTH: The access token authentication header. + :ivar str BASIC_AUTH: The basic authentication header. + :ivar str API_KEY_AUTH: The API key authentication header. + """ + + ACCESS_AUTH = "access_token_auth" + BASIC_AUTH = "basic_auth" + API_KEY_AUTH = "api_key_auth" + + +class DefaultHeaders: + """ + A class to manage default headers. + + :ivar Dict[str, BaseHeader] _default_headers: The default headers. + """ + + def __init__(self): + self._default_headers: Dict[str, BaseHeader] = {} + + def set_header(self, key: DefaultHeadersKeys, value: BaseHeader) -> None: + """ + Set a default header. + + :param DefaultHeadersKeys key: The key of the header to set. + :param Any value: The value to set for the header. + """ + self._default_headers[key.value] = value + + def get_header(self, key: DefaultHeadersKeys) -> BaseHeader: + """ + Get a default header. + + :param DefaultHeadersKeys key: The key of the header to get. + :return: The value of the header. + :rtype: Any + """ + return self._default_headers[key.value] + + def get_headers(self) -> list: + """ + Get the default headers. + + :return: A list of the default headers. + :rtype: list + """ + return list(self._default_headers.values()) diff --git a/src/geobeyond_sdk/services/utils/validator.py b/src/geobeyond_sdk/services/utils/validator.py new file mode 100644 index 0000000..6e2082c --- /dev/null +++ b/src/geobeyond_sdk/services/utils/validator.py @@ -0,0 +1,218 @@ +# This file was generated by liblab | https://liblab.com/ + +import re +import operator +from typing import Union, Any, Type, Pattern, get_args +from ...models.utils.one_of_base_model import OneOfBaseModel + + +class Validator: + """ + A simple validator class for validating the type and pattern of a value. + + :ivar Type[Any] _type: The expected type for the value. + :ivar bool _is_optional: Flag indicating whether the value is optional. + :ivar bool _is_array: Flag indicating whether the value is an array. + :ivar Pattern[str] _pattern: The regular expression pattern for validating the value. + :ivar int _min: The minimum value for validating the value. + :ivar int _max: The maximum value for validating the value. + """ + + def __init__(self, _type: Type[Any] = None): + """ + Initializes a Validator instance. + + :param Type[Any] _type: The expected type for the value. Defaults to None. + """ + self._type: Type[Any] = _type + self._is_optional: bool = False + self._is_array: bool = False + self._pattern: Pattern[str] = None + self._min_length: int = None + self._max_length: int = None + self._min: int = None + self._min_exclusive: bool = False + self._max: int = None + self._max_exclusive: bool = False + + def is_array(self) -> "Validator": + """ + Marks the value as an array. + + :return: The Validator instance for method chaining. + :rtype: Validator + """ + self._is_array = True + return self + + def is_optional(self) -> "Validator": + """ + Marks the value as optional. + + :return: The Validator instance for method chaining. + :rtype: Validator + """ + self._is_optional = True + return self + + def pattern(self, pattern: str) -> "Validator": + """ + Specifies a regular expression pattern for validating the value. + + :param str pattern: The regular expression pattern. + :return: The Validator instance for method chaining. + :rtype: Validator + """ + self._pattern = re.compile(pattern) + return self + + def min(self, min: int, exclusive=False) -> "Validator": + """ + Specifies a minimum value for validating the value. + + :param int min: The minimum value to be validated against. + :param bool exclusive: (optional) If set to True, the minimum value is not inclusive. + :return: The Validator instance for method chaining. + :rtype: Validator + """ + self._min = min + self._min_exclusive = exclusive + return self + + def max(self, max: int, exclusive=False) -> "Validator": + """ + Specifies a maximum value for validating the value. + + :param int max: The maximum value. + :param bool exclusive: (optional) If set to True, the maximum value is not inclusive. + :return: The Validator instance for method chaining. + :rtype: Validator + """ + self._max = max + self._max_exclusive = exclusive + return self + + def min_length(self, min_length: int) -> "Validator": + """ + Specifies a minimum length for validating the value. + + :param int min_length: The minimum length to be validated against. + :return: The Validator instance for method chaining. + :rtype: Validator + """ + self._min_length = min_length + return self + + def max_length(self, max_length: int) -> "Validator": + """ + Specifies a maximum length for validating the value. + + :param int max_length: The maximum length. + :return: The Validator instance for method chaining. + :rtype: Validator + """ + self._max_length = max_length + return self + + def validate(self, value: Any) -> None: + """ + Validates the provided value based on the specified criteria. + + :param Any value: The input that needs to be checked + :raises ValueError: If the value does not meet the specified validation criteria. + """ + if not self._type: + raise TypeError("Invalid type: No type specified") + if self._is_optional and value is None: + return + + self._validate_type(value) + self._validate_rules(value) + + def _validate_type(self, value: Any) -> None: + """ + Validates the type of the value. + + :param Any value: The input that needs to be checked + :raises ValueError: If the value does not meet the expected type. + """ + if self._is_one_of_type(self._type): + self._validate_one_of_type(value) + elif self._is_array: + self._validate_array_type(value) + elif not self._match_type(value): + raise TypeError(f"Invalid type: Expected {self._type}, got {type(value)}") + + def _validate_one_of_type(self, value: Any) -> None: + """ + Validates oneOf model type. + + :param Any value: The input that needs to be checked + :raises ValueError: If the value does not match the oneOf rules. + """ + class_list = {arg.__name__: arg for arg in get_args(self._type) if arg.__name__} + OneOfBaseModel.class_list = class_list + OneOfBaseModel.return_one_of(value) + + def _validate_array_type(self, value: Any) -> None: + """ + Validates the type of an array value. + + :param Any value: The input that needs to be checked + :raises ValueError: If the array items do not match the expected type. + """ + if any(self._match_type(v) is False for v in value): + raise TypeError(f"Invalid type: Expected {self._type}, got {type(value)}") + + def _match_type(self, value: Any) -> bool: + """ + Checks if the value matches the expected type. + + :param Any value: The input that needs to be checked + :raises ValueError: If the value does not match the expected type. + """ + is_numeric = self._type is float and isinstance(value, int) + if isinstance(value, self._type) or is_numeric: + return True + return False + + def _validate_rules(self, value: Any) -> None: + """ + Validate the rules specified for the value. + + :param Any value: The input that needs to be validated + :raises ValueError: If the value does not meet the specified validation criteria. + """ + min_operator = operator.lt if self._min_exclusive else operator.le + max_operator = operator.gt if self._max_exclusive else operator.ge + + if self._min is not None and not min_operator(self._min, value): + raise ValueError( + f"Invalid value: {value} is {'less than or equal to' if self._min_exclusive else 'less than'} {self._min}" + ) + if self._max is not None and not max_operator(self._max, value): + raise ValueError( + f"Invalid value: {value} is {'greater than or equal to' if self._max_exclusive else 'greater than'} {self._max}" + ) + if self._min_length is not None and len(value) < self._min_length: + raise ValueError( + f"Invalid value: the length of {value} is less than {self._min_length}" + ) + if self._max_length is not None and len(value) > self._max_length: + raise ValueError( + f"Invalid value: the length of {value} is greater than {self._max_length}" + ) + if self._pattern and not self._pattern.match(str(value)): + raise ValueError( + f"Invalid value: {value} does not match pattern {self._pattern}" + ) + + def _is_one_of_type(self, cls_type): + """ + Checks if the provided type is a Union type. + + :param Type[Any] cls_type: The type to be checked. + :return: True if the type is a Union type, False otherwise. + :rtype: bool + """ + return hasattr(cls_type, "__origin__") and cls_type.__origin__ is Union