diff --git a/src/dtc/README.md b/src/dtc/README.md
new file mode 100644
index 0000000..217dbb7
--- /dev/null
+++ b/src/dtc/README.md
@@ -0,0 +1,185 @@
+# dtc
+The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+The `dtc` package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:
+
+- API version: v1
+- Package version: 0.1.0
+- Generator version: 7.5.0
+- Build package: com.infoblox.codegen.UniversalDdiPythonClientCodegen
+
+## Requirements.
+
+Python 3.7+
+
+## Installation & Usage
+
+This python library package is generated without supporting files like setup.py or requirements files
+
+To be able to use it, you will need these dependencies in your own package that uses this library:
+
+* urllib3 >= 1.25.3
+* python-dateutil
+* pydantic
+
+## Getting Started
+
+In your own code, to use this library to connect and interact with dtc,
+you can run the following:
+
+```python
+
+import dtc
+from dtc.rest import ApiException
+from pprint import pprint
+
+# Defining the Portal URL is optional and defaults to "https://csp.infoblox.com"
+# See configuration.py for a list of all supported configuration parameters.
+configuration = Configuration(
+ portal_url = os.getenv('INFOBLOX_PORTAL_URL'),
+)
+
+# The client must configure the authentication and authorization parameters
+# in accordance with the API server security policy.
+
+# Configure Portal key authorization: ApiKeyAuth
+configuration.portal_key = os.getenv("INFOBLOX_PORTAL_KEY")
+
+
+# Enter a context with an instance of the API client
+with dtc.ApiClient(configuration) as api_client:
+ # Create an instance of the API class
+ api_instance = dtc.HealthCheckHttpApi(api_client)
+ body = dtc.HTTPHealthCheck() # HTTPHealthCheck |
+
+ try:
+ # Create the HTTPHealthCheck object.
+ api_response = api_instance.create(body)
+ print("The response of HealthCheckHttpApi->create:\n")
+ pprint(api_response)
+ except ApiException as e:
+ print("Exception when calling HealthCheckHttpApi->create: %s\n" % e)
+
+```
+
+## Documentation for API Endpoints
+
+All URIs are relative to *http://localhost/api/ddi/v1*
+
+Class | Method | HTTP request | Description
+------------ | ------------- | ------------- | -------------
+*HealthCheckHttpApi* | [**create**](dtc/docs/HealthCheckHttpApi.md#create) | **POST** /dtc/health_check_http | Create the HTTPHealthCheck object.
+*HealthCheckHttpApi* | [**delete**](dtc/docs/HealthCheckHttpApi.md#delete) | **DELETE** /dtc/health_check_http/{id} | Delete the HTTPHealthCheck object.
+*HealthCheckHttpApi* | [**list**](dtc/docs/HealthCheckHttpApi.md#list) | **GET** /dtc/health_check_http | Retrieve HTTPHealthCheck objects.
+*HealthCheckHttpApi* | [**read**](dtc/docs/HealthCheckHttpApi.md#read) | **GET** /dtc/health_check_http/{id} | Retrieve the HTTPHealthCheck object.
+*HealthCheckHttpApi* | [**update**](dtc/docs/HealthCheckHttpApi.md#update) | **PATCH** /dtc/health_check_http/{id} | Update the HTTPHealthCheck object.
+*HealthCheckIcmpApi* | [**create**](dtc/docs/HealthCheckIcmpApi.md#create) | **POST** /dtc/health_check_icmp | Create the ICMPHealthCheck object.
+*HealthCheckIcmpApi* | [**delete**](dtc/docs/HealthCheckIcmpApi.md#delete) | **DELETE** /dtc/health_check_icmp/{id} | Delete the ICMPHealthCheck object.
+*HealthCheckIcmpApi* | [**list**](dtc/docs/HealthCheckIcmpApi.md#list) | **GET** /dtc/health_check_icmp | Retrieve ICMPHealthCheck objects.
+*HealthCheckIcmpApi* | [**read**](dtc/docs/HealthCheckIcmpApi.md#read) | **GET** /dtc/health_check_icmp/{id} | Retrieve the ICMPHealthCheck object.
+*HealthCheckIcmpApi* | [**update**](dtc/docs/HealthCheckIcmpApi.md#update) | **PATCH** /dtc/health_check_icmp/{id} | Update the ICMPHealthCheck object.
+*HealthCheckSnmpApi* | [**create**](dtc/docs/HealthCheckSnmpApi.md#create) | **POST** /dtc/health_check_snmp | Create the SNMPHealthCheck object.
+*HealthCheckSnmpApi* | [**delete**](dtc/docs/HealthCheckSnmpApi.md#delete) | **DELETE** /dtc/health_check_snmp/{id} | Delete the SNMPHealthCheck object.
+*HealthCheckSnmpApi* | [**list**](dtc/docs/HealthCheckSnmpApi.md#list) | **GET** /dtc/health_check_snmp | Retrieve SNMPHealthCheck objects.
+*HealthCheckSnmpApi* | [**read**](dtc/docs/HealthCheckSnmpApi.md#read) | **GET** /dtc/health_check_snmp/{id} | Retrieve the SNMPHealthCheck object.
+*HealthCheckSnmpApi* | [**update**](dtc/docs/HealthCheckSnmpApi.md#update) | **PATCH** /dtc/health_check_snmp/{id} | Update the SNMPHealthCheck object.
+*HealthCheckTcpApi* | [**create**](dtc/docs/HealthCheckTcpApi.md#create) | **POST** /dtc/health_check_tcp | Create the TCPHealthCheck object.
+*HealthCheckTcpApi* | [**delete**](dtc/docs/HealthCheckTcpApi.md#delete) | **DELETE** /dtc/health_check_tcp/{id} | Delete the TCPHealthCheck object.
+*HealthCheckTcpApi* | [**list**](dtc/docs/HealthCheckTcpApi.md#list) | **GET** /dtc/health_check_tcp | Retrieve TCPHealthCheck objects.
+*HealthCheckTcpApi* | [**read**](dtc/docs/HealthCheckTcpApi.md#read) | **GET** /dtc/health_check_tcp/{id} | Retrieve the TCPHealthCheck object.
+*HealthCheckTcpApi* | [**update**](dtc/docs/HealthCheckTcpApi.md#update) | **PATCH** /dtc/health_check_tcp/{id} | Update the TCPHealthCheck object.
+*PolicyApi* | [**create**](dtc/docs/PolicyApi.md#create) | **POST** /dtc/policy | Create the Policy object.
+*PolicyApi* | [**delete**](dtc/docs/PolicyApi.md#delete) | **DELETE** /dtc/policy/{id} | Delete the Policy object.
+*PolicyApi* | [**list**](dtc/docs/PolicyApi.md#list) | **GET** /dtc/policy | Retrieve Policy objects.
+*PolicyApi* | [**read**](dtc/docs/PolicyApi.md#read) | **GET** /dtc/policy/{id} | Retrieve the Policy object.
+*PolicyApi* | [**update**](dtc/docs/PolicyApi.md#update) | **PATCH** /dtc/policy/{id} | Update the Policy object.
+*PoolApi* | [**create**](dtc/docs/PoolApi.md#create) | **POST** /dtc/pool | Create the Pool object.
+*PoolApi* | [**delete**](dtc/docs/PoolApi.md#delete) | **DELETE** /dtc/pool/{id} | Delete the Pool object.
+*PoolApi* | [**list**](dtc/docs/PoolApi.md#list) | **GET** /dtc/pool | Retrieve Pool objects.
+*PoolApi* | [**read**](dtc/docs/PoolApi.md#read) | **GET** /dtc/pool/{id} | Retrieve the Pool object.
+*PoolApi* | [**update**](dtc/docs/PoolApi.md#update) | **PATCH** /dtc/pool/{id} | Update the Pool object.
+*ServerApi* | [**create**](dtc/docs/ServerApi.md#create) | **POST** /dtc/server | Create the Server object.
+*ServerApi* | [**delete**](dtc/docs/ServerApi.md#delete) | **DELETE** /dtc/server/{id} | Delete Server object.
+*ServerApi* | [**list**](dtc/docs/ServerApi.md#list) | **GET** /dtc/server | Retrieve Server objects.
+*ServerApi* | [**read**](dtc/docs/ServerApi.md#read) | **GET** /dtc/server/{id} | Retrieve the Server object.
+*ServerApi* | [**update**](dtc/docs/ServerApi.md#update) | **PATCH** /dtc/server/{id} | Update the Server object.
+*SnmpUserSecurityApi* | [**create**](dtc/docs/SnmpUserSecurityApi.md#create) | **POST** /dtc/snmp_user_security_model | Create the SNMPUserSecurityModel object. Use this method to create a __SNMPUserSecurityModel__ object.
+*SnmpUserSecurityApi* | [**delete**](dtc/docs/SnmpUserSecurityApi.md#delete) | **DELETE** /dtc/snmp_user_security_model/{id} | Delete the SNMPUserSecurityModel object. Use this method to delete a __SNMPUserSecurityModel__ object.
+*SnmpUserSecurityApi* | [**list**](dtc/docs/SnmpUserSecurityApi.md#list) | **GET** /dtc/snmp_user_security_model | Retrieve SNMPUserSecurityModel objects. Use this method to retrieve __SNMPUserSecurityModel__ objects.
+*SnmpUserSecurityApi* | [**read**](dtc/docs/SnmpUserSecurityApi.md#read) | **GET** /dtc/snmp_user_security_model/{id} | Retrieve the SNMPUserSecurityModel object. Use this method to retrieve a __SNMPUserSecurityModel__ object.
+*SnmpUserSecurityApi* | [**update**](dtc/docs/SnmpUserSecurityApi.md#update) | **PATCH** /dtc/snmp_user_security_model/{id} | Update the SNMPUserSecurityModel object. Use this method to update a __SNMPUserSecurityModel__ object.
+
+
+## Documentation For Models
+
+ - [CreateHTTPHealthCheckResponse](dtc/docs/CreateHTTPHealthCheckResponse.md)
+ - [CreateICMPHealthCheckResponse](dtc/docs/CreateICMPHealthCheckResponse.md)
+ - [CreatePolicyResponse](dtc/docs/CreatePolicyResponse.md)
+ - [CreatePoolResponse](dtc/docs/CreatePoolResponse.md)
+ - [CreateSNMPHealthCheckResponse](dtc/docs/CreateSNMPHealthCheckResponse.md)
+ - [CreateSNMPUserSecurityResponse](dtc/docs/CreateSNMPUserSecurityResponse.md)
+ - [CreateServerResponse](dtc/docs/CreateServerResponse.md)
+ - [CreateTCPHealthCheckResponse](dtc/docs/CreateTCPHealthCheckResponse.md)
+ - [HTTPHealthCheck](dtc/docs/HTTPHealthCheck.md)
+ - [HeaderRegex](dtc/docs/HeaderRegex.md)
+ - [ICMPHealthCheck](dtc/docs/ICMPHealthCheck.md)
+ - [Inheritance2InheritedUInt32](dtc/docs/Inheritance2InheritedUInt32.md)
+ - [ListHTTPHealthCheckResponse](dtc/docs/ListHTTPHealthCheckResponse.md)
+ - [ListICMPHealthCheckResponse](dtc/docs/ListICMPHealthCheckResponse.md)
+ - [ListPolicyResponse](dtc/docs/ListPolicyResponse.md)
+ - [ListPoolResponse](dtc/docs/ListPoolResponse.md)
+ - [ListSNMPHealthCheckResponse](dtc/docs/ListSNMPHealthCheckResponse.md)
+ - [ListSNMPUserSecurityResponse](dtc/docs/ListSNMPUserSecurityResponse.md)
+ - [ListServerResponse](dtc/docs/ListServerResponse.md)
+ - [ListTCPHealthCheckResponse](dtc/docs/ListTCPHealthCheckResponse.md)
+ - [Metadata](dtc/docs/Metadata.md)
+ - [MetadataResourceMeta](dtc/docs/MetadataResourceMeta.md)
+ - [Policy](dtc/docs/Policy.md)
+ - [PolicyPool](dtc/docs/PolicyPool.md)
+ - [Pool](dtc/docs/Pool.md)
+ - [PoolHealthCheck](dtc/docs/PoolHealthCheck.md)
+ - [PoolServer](dtc/docs/PoolServer.md)
+ - [ReadHTTPHealthCheckResponse](dtc/docs/ReadHTTPHealthCheckResponse.md)
+ - [ReadICMPHealthCheckResponse](dtc/docs/ReadICMPHealthCheckResponse.md)
+ - [ReadPolicyResponse](dtc/docs/ReadPolicyResponse.md)
+ - [ReadPoolResponse](dtc/docs/ReadPoolResponse.md)
+ - [ReadSNMPHealthCheckResponse](dtc/docs/ReadSNMPHealthCheckResponse.md)
+ - [ReadSNMPUserSecurityResponse](dtc/docs/ReadSNMPUserSecurityResponse.md)
+ - [ReadServerResponse](dtc/docs/ReadServerResponse.md)
+ - [ReadTCPHealthCheckResponse](dtc/docs/ReadTCPHealthCheckResponse.md)
+ - [Record](dtc/docs/Record.md)
+ - [SNMPHealthCheck](dtc/docs/SNMPHealthCheck.md)
+ - [SNMPHealthCheckEntryCheck](dtc/docs/SNMPHealthCheckEntryCheck.md)
+ - [SNMPUserSecurityModel](dtc/docs/SNMPUserSecurityModel.md)
+ - [Server](dtc/docs/Server.md)
+ - [TCPHealthCheck](dtc/docs/TCPHealthCheck.md)
+ - [TTLInheritance](dtc/docs/TTLInheritance.md)
+ - [TopologyRule](dtc/docs/TopologyRule.md)
+ - [UpdateHTTPHealthCheckResponse](dtc/docs/UpdateHTTPHealthCheckResponse.md)
+ - [UpdateICMPHealthCheckResponse](dtc/docs/UpdateICMPHealthCheckResponse.md)
+ - [UpdatePolicyResponse](dtc/docs/UpdatePolicyResponse.md)
+ - [UpdatePoolResponse](dtc/docs/UpdatePoolResponse.md)
+ - [UpdateSNMPHealthCheckResponse](dtc/docs/UpdateSNMPHealthCheckResponse.md)
+ - [UpdateSNMPUserSecurityResponse](dtc/docs/UpdateSNMPUserSecurityResponse.md)
+ - [UpdateServerResponse](dtc/docs/UpdateServerResponse.md)
+ - [UpdateTCPHealthCheckResponse](dtc/docs/UpdateTCPHealthCheckResponse.md)
+
+
+
+## Documentation For Authorization
+
+
+Authentication schemes defined for the API:
+
+### ApiKeyAuth
+
+- **Type**: API key
+- **API key parameter name**: Authorization
+- **Location**: HTTP header
+
+
+## Author
+
+
+
+
diff --git a/src/dtc/__init__.py b/src/dtc/__init__.py
new file mode 100644
index 0000000..6d591e2
--- /dev/null
+++ b/src/dtc/__init__.py
@@ -0,0 +1,79 @@
+# coding: utf-8
+
+# flake8: noqa
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+__version__ = "0.1.0"
+
+# import apis into sdk package
+from dtc.api.health_check_http_api import HealthCheckHttpApi
+from dtc.api.health_check_icmp_api import HealthCheckIcmpApi
+from dtc.api.health_check_snmp_api import HealthCheckSnmpApi
+from dtc.api.health_check_tcp_api import HealthCheckTcpApi
+from dtc.api.policy_api import PolicyApi
+from dtc.api.pool_api import PoolApi
+from dtc.api.server_api import ServerApi
+from dtc.api.snmp_user_security_api import SnmpUserSecurityApi
+
+# import models into sdk package
+from dtc.models.create_http_health_check_response import CreateHTTPHealthCheckResponse
+from dtc.models.create_icmp_health_check_response import CreateICMPHealthCheckResponse
+from dtc.models.create_policy_response import CreatePolicyResponse
+from dtc.models.create_pool_response import CreatePoolResponse
+from dtc.models.create_snmp_health_check_response import CreateSNMPHealthCheckResponse
+from dtc.models.create_snmp_user_security_response import CreateSNMPUserSecurityResponse
+from dtc.models.create_server_response import CreateServerResponse
+from dtc.models.create_tcp_health_check_response import CreateTCPHealthCheckResponse
+from dtc.models.http_health_check import HTTPHealthCheck
+from dtc.models.header_regex import HeaderRegex
+from dtc.models.icmp_health_check import ICMPHealthCheck
+from dtc.models.inheritance2_inherited_u_int32 import Inheritance2InheritedUInt32
+from dtc.models.list_http_health_check_response import ListHTTPHealthCheckResponse
+from dtc.models.list_icmp_health_check_response import ListICMPHealthCheckResponse
+from dtc.models.list_policy_response import ListPolicyResponse
+from dtc.models.list_pool_response import ListPoolResponse
+from dtc.models.list_snmp_health_check_response import ListSNMPHealthCheckResponse
+from dtc.models.list_snmp_user_security_response import ListSNMPUserSecurityResponse
+from dtc.models.list_server_response import ListServerResponse
+from dtc.models.list_tcp_health_check_response import ListTCPHealthCheckResponse
+from dtc.models.metadata import Metadata
+from dtc.models.metadata_resource_meta import MetadataResourceMeta
+from dtc.models.policy import Policy
+from dtc.models.policy_pool import PolicyPool
+from dtc.models.pool import Pool
+from dtc.models.pool_health_check import PoolHealthCheck
+from dtc.models.pool_server import PoolServer
+from dtc.models.read_http_health_check_response import ReadHTTPHealthCheckResponse
+from dtc.models.read_icmp_health_check_response import ReadICMPHealthCheckResponse
+from dtc.models.read_policy_response import ReadPolicyResponse
+from dtc.models.read_pool_response import ReadPoolResponse
+from dtc.models.read_snmp_health_check_response import ReadSNMPHealthCheckResponse
+from dtc.models.read_snmp_user_security_response import ReadSNMPUserSecurityResponse
+from dtc.models.read_server_response import ReadServerResponse
+from dtc.models.read_tcp_health_check_response import ReadTCPHealthCheckResponse
+from dtc.models.record import Record
+from dtc.models.snmp_health_check import SNMPHealthCheck
+from dtc.models.snmp_health_check_entry_check import SNMPHealthCheckEntryCheck
+from dtc.models.snmp_user_security_model import SNMPUserSecurityModel
+from dtc.models.server import Server
+from dtc.models.tcp_health_check import TCPHealthCheck
+from dtc.models.ttl_inheritance import TTLInheritance
+from dtc.models.topology_rule import TopologyRule
+from dtc.models.update_http_health_check_response import UpdateHTTPHealthCheckResponse
+from dtc.models.update_icmp_health_check_response import UpdateICMPHealthCheckResponse
+from dtc.models.update_policy_response import UpdatePolicyResponse
+from dtc.models.update_pool_response import UpdatePoolResponse
+from dtc.models.update_snmp_health_check_response import UpdateSNMPHealthCheckResponse
+from dtc.models.update_snmp_user_security_response import UpdateSNMPUserSecurityResponse
+from dtc.models.update_server_response import UpdateServerResponse
+from dtc.models.update_tcp_health_check_response import UpdateTCPHealthCheckResponse
diff --git a/src/dtc/api/__init__.py b/src/dtc/api/__init__.py
new file mode 100644
index 0000000..2756c26
--- /dev/null
+++ b/src/dtc/api/__init__.py
@@ -0,0 +1,11 @@
+# flake8: noqa
+
+# import apis into api package
+from dtc.api.health_check_http_api import HealthCheckHttpApi
+from dtc.api.health_check_icmp_api import HealthCheckIcmpApi
+from dtc.api.health_check_snmp_api import HealthCheckSnmpApi
+from dtc.api.health_check_tcp_api import HealthCheckTcpApi
+from dtc.api.policy_api import PolicyApi
+from dtc.api.pool_api import PoolApi
+from dtc.api.server_api import ServerApi
+from dtc.api.snmp_user_security_api import SnmpUserSecurityApi
diff --git a/src/dtc/api/health_check_http_api.py b/src/dtc/api/health_check_http_api.py
new file mode 100644
index 0000000..226d76a
--- /dev/null
+++ b/src/dtc/api/health_check_http_api.py
@@ -0,0 +1,1503 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+import warnings
+from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
+from typing import Any, Dict, List, Optional, Tuple, Union
+from typing_extensions import Annotated
+
+from pydantic import Field, StrictInt, StrictStr
+from typing import Optional
+from typing_extensions import Annotated
+from dtc.models.create_http_health_check_response import CreateHTTPHealthCheckResponse
+from dtc.models.http_health_check import HTTPHealthCheck
+from dtc.models.list_http_health_check_response import ListHTTPHealthCheckResponse
+from dtc.models.read_http_health_check_response import ReadHTTPHealthCheckResponse
+from dtc.models.update_http_health_check_response import UpdateHTTPHealthCheckResponse
+from dtc import models
+
+from universal_ddi_client.api_client import ApiClient, RequestSerialized
+from universal_ddi_client.api_response import ApiResponse
+from universal_ddi_client.rest import RESTResponseType
+
+
+class HealthCheckHttpApi:
+ """NOTE: This class is auto generated by OpenAPI Generator
+ Ref: https://openapi-generator.tech
+
+ Do not edit the class manually.
+ """
+
+ def __init__(self, api_client=None) -> None:
+ if api_client is None:
+ api_client = ApiClient.get_default()
+ self.api_client = api_client
+
+ @validate_call
+ def create(
+ self,
+ body: HTTPHealthCheck,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> CreateHTTPHealthCheckResponse:
+ """Create the HTTPHealthCheck object.
+
+ Use this method to create a __HTTPHealthCheck__ object.
+
+ :param body: (required)
+ :type body: HTTPHealthCheck
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._create_serialize(body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "CreateHTTPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ ).data
+
+ @validate_call
+ def create_with_http_info(
+ self,
+ body: HTTPHealthCheck,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ApiResponse[CreateHTTPHealthCheckResponse]:
+ """Create the HTTPHealthCheck object.
+
+ Use this method to create a __HTTPHealthCheck__ object.
+
+ :param body: (required)
+ :type body: HTTPHealthCheck
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._create_serialize(body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "CreateHTTPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ )
+
+ @validate_call
+ def create_without_preload_content(
+ self,
+ body: HTTPHealthCheck,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> RESTResponseType:
+ """Create the HTTPHealthCheck object.
+
+ Use this method to create a __HTTPHealthCheck__ object.
+
+ :param body: (required)
+ :type body: HTTPHealthCheck
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._create_serialize(body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "CreateHTTPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ return response_data.response
+
+ def _create_serialize(
+ self,
+ body,
+ _request_auth,
+ _content_type,
+ _headers,
+ _host_index,
+ ) -> RequestSerialized:
+
+ _host = None
+
+ _collection_formats: Dict[str, str] = {}
+
+ _path_params: Dict[str, str] = {}
+ _query_params: List[Tuple[str, str]] = []
+ _header_params: Dict[str, Optional[str]] = _headers or {}
+ _form_params: List[Tuple[str, str]] = []
+ _files: Dict[str, Union[str, bytes]] = {}
+ _body_params: Optional[bytes] = None
+
+ # process the path parameters
+ # process the query parameters
+ # process the header parameters
+ # process the form parameters
+ # process the body parameter
+ if body is not None:
+ _body_params = body
+
+ # set the HTTP header `Accept`
+ _header_params['Accept'] = self.api_client.select_header_accept(
+ ['application/json'])
+
+ # set the HTTP header `Content-Type`
+ if _content_type:
+ _header_params['Content-Type'] = _content_type
+ else:
+ _default_content_type = (
+ self.api_client.select_header_content_type(
+ ['application/json']))
+ if _default_content_type is not None:
+ _header_params['Content-Type'] = _default_content_type
+
+ # authentication setting
+ _auth_settings: List[str] = ['ApiKeyAuth']
+
+ return self.api_client.param_serialize(
+ method='POST',
+ base_path='/api/ddi/v1',
+ resource_path='/dtc/health_check_http',
+ path_params=_path_params,
+ query_params=_query_params,
+ header_params=_header_params,
+ body=_body_params,
+ post_params=_form_params,
+ files=_files,
+ auth_settings=_auth_settings,
+ collection_formats=_collection_formats,
+ _host=_host,
+ _request_auth=_request_auth)
+
+ @validate_call
+ def delete(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> None:
+ """Delete the HTTPHealthCheck object.
+
+ Use this method to delete a __HTTPHealthCheck__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._delete_serialize(id=id,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': None,
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ ).data
+
+ @validate_call
+ def delete_with_http_info(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ApiResponse[None]:
+ """Delete the HTTPHealthCheck object.
+
+ Use this method to delete a __HTTPHealthCheck__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._delete_serialize(id=id,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': None,
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ )
+
+ @validate_call
+ def delete_without_preload_content(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> RESTResponseType:
+ """Delete the HTTPHealthCheck object.
+
+ Use this method to delete a __HTTPHealthCheck__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._delete_serialize(id=id,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': None,
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ return response_data.response
+
+ def _delete_serialize(
+ self,
+ id,
+ _request_auth,
+ _content_type,
+ _headers,
+ _host_index,
+ ) -> RequestSerialized:
+
+ _host = None
+
+ _collection_formats: Dict[str, str] = {}
+
+ _path_params: Dict[str, str] = {}
+ _query_params: List[Tuple[str, str]] = []
+ _header_params: Dict[str, Optional[str]] = _headers or {}
+ _form_params: List[Tuple[str, str]] = []
+ _files: Dict[str, Union[str, bytes]] = {}
+ _body_params: Optional[bytes] = None
+
+ # process the path parameters
+ if id is not None:
+ _path_params['id'] = self.api_client.path_param_value('id', id)
+ # process the query parameters
+ # process the header parameters
+ # process the form parameters
+ # process the body parameter
+
+ # authentication setting
+ _auth_settings: List[str] = ['ApiKeyAuth']
+
+ return self.api_client.param_serialize(
+ method='DELETE',
+ base_path='/api/ddi/v1',
+ resource_path='/dtc/health_check_http/{id}',
+ path_params=_path_params,
+ query_params=_query_params,
+ header_params=_header_params,
+ body=_body_params,
+ post_params=_form_params,
+ files=_files,
+ auth_settings=_auth_settings,
+ collection_formats=_collection_formats,
+ _host=_host,
+ _request_auth=_request_auth)
+
+ @validate_call
+ def list(
+ self,
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ filter: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators | "
+ )] = None,
+ offset: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'. "
+ )] = None,
+ limit: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value. "
+ )] = None,
+ page_token: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " The service-defined string used to identify a page of resources. A null value indicates the first page. "
+ )] = None,
+ order_by: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order. "
+ )] = None,
+ tfilter: Annotated[
+ Optional[StrictStr],
+ Field(description="This parameter is used for filtering by tags."
+ )] = None,
+ torder_by: Annotated[
+ Optional[StrictStr],
+ Field(description="This parameter is used for sorting by tags."
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ListHTTPHealthCheckResponse:
+ """Retrieve HTTPHealthCheck objects.
+
+ Use this method to retrieve __HTTPHealthCheck__ objects.
+
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param filter: A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators |
+ :type filter: str
+ :param offset: The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'.
+ :type offset: int
+ :param limit: The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value.
+ :type limit: int
+ :param page_token: The service-defined string used to identify a page of resources. A null value indicates the first page.
+ :type page_token: str
+ :param order_by: A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order.
+ :type order_by: str
+ :param tfilter: This parameter is used for filtering by tags.
+ :type tfilter: str
+ :param torder_by: This parameter is used for sorting by tags.
+ :type torder_by: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._list_serialize(fields=fields,
+ filter=filter,
+ offset=offset,
+ limit=limit,
+ page_token=page_token,
+ order_by=order_by,
+ tfilter=tfilter,
+ torder_by=torder_by,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ListHTTPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ ).data
+
+ @validate_call
+ def list_with_http_info(
+ self,
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ filter: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators | "
+ )] = None,
+ offset: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'. "
+ )] = None,
+ limit: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value. "
+ )] = None,
+ page_token: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " The service-defined string used to identify a page of resources. A null value indicates the first page. "
+ )] = None,
+ order_by: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order. "
+ )] = None,
+ tfilter: Annotated[
+ Optional[StrictStr],
+ Field(description="This parameter is used for filtering by tags."
+ )] = None,
+ torder_by: Annotated[
+ Optional[StrictStr],
+ Field(description="This parameter is used for sorting by tags."
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ApiResponse[ListHTTPHealthCheckResponse]:
+ """Retrieve HTTPHealthCheck objects.
+
+ Use this method to retrieve __HTTPHealthCheck__ objects.
+
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param filter: A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators |
+ :type filter: str
+ :param offset: The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'.
+ :type offset: int
+ :param limit: The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value.
+ :type limit: int
+ :param page_token: The service-defined string used to identify a page of resources. A null value indicates the first page.
+ :type page_token: str
+ :param order_by: A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order.
+ :type order_by: str
+ :param tfilter: This parameter is used for filtering by tags.
+ :type tfilter: str
+ :param torder_by: This parameter is used for sorting by tags.
+ :type torder_by: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._list_serialize(fields=fields,
+ filter=filter,
+ offset=offset,
+ limit=limit,
+ page_token=page_token,
+ order_by=order_by,
+ tfilter=tfilter,
+ torder_by=torder_by,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ListHTTPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ )
+
+ @validate_call
+ def list_without_preload_content(
+ self,
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ filter: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators | "
+ )] = None,
+ offset: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'. "
+ )] = None,
+ limit: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value. "
+ )] = None,
+ page_token: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " The service-defined string used to identify a page of resources. A null value indicates the first page. "
+ )] = None,
+ order_by: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order. "
+ )] = None,
+ tfilter: Annotated[
+ Optional[StrictStr],
+ Field(description="This parameter is used for filtering by tags."
+ )] = None,
+ torder_by: Annotated[
+ Optional[StrictStr],
+ Field(description="This parameter is used for sorting by tags."
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> RESTResponseType:
+ """Retrieve HTTPHealthCheck objects.
+
+ Use this method to retrieve __HTTPHealthCheck__ objects.
+
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param filter: A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators |
+ :type filter: str
+ :param offset: The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'.
+ :type offset: int
+ :param limit: The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value.
+ :type limit: int
+ :param page_token: The service-defined string used to identify a page of resources. A null value indicates the first page.
+ :type page_token: str
+ :param order_by: A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order.
+ :type order_by: str
+ :param tfilter: This parameter is used for filtering by tags.
+ :type tfilter: str
+ :param torder_by: This parameter is used for sorting by tags.
+ :type torder_by: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._list_serialize(fields=fields,
+ filter=filter,
+ offset=offset,
+ limit=limit,
+ page_token=page_token,
+ order_by=order_by,
+ tfilter=tfilter,
+ torder_by=torder_by,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ListHTTPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ return response_data.response
+
+ def _list_serialize(
+ self,
+ fields,
+ filter,
+ offset,
+ limit,
+ page_token,
+ order_by,
+ tfilter,
+ torder_by,
+ _request_auth,
+ _content_type,
+ _headers,
+ _host_index,
+ ) -> RequestSerialized:
+
+ _host = None
+
+ _collection_formats: Dict[str, str] = {}
+
+ _path_params: Dict[str, str] = {}
+ _query_params: List[Tuple[str, str]] = []
+ _header_params: Dict[str, Optional[str]] = _headers or {}
+ _form_params: List[Tuple[str, str]] = []
+ _files: Dict[str, Union[str, bytes]] = {}
+ _body_params: Optional[bytes] = None
+
+ # process the path parameters
+ # process the query parameters
+ if fields is not None:
+
+ _query_params.append(('_fields', fields))
+
+ if filter is not None:
+
+ _query_params.append(('_filter', filter))
+
+ if offset is not None:
+
+ _query_params.append(('_offset', offset))
+
+ if limit is not None:
+
+ _query_params.append(('_limit', limit))
+
+ if page_token is not None:
+
+ _query_params.append(('_page_token', page_token))
+
+ if order_by is not None:
+
+ _query_params.append(('_order_by', order_by))
+
+ if tfilter is not None:
+
+ _query_params.append(('_tfilter', tfilter))
+
+ if torder_by is not None:
+
+ _query_params.append(('_torder_by', torder_by))
+
+ # process the header parameters
+ # process the form parameters
+ # process the body parameter
+
+ # set the HTTP header `Accept`
+ _header_params['Accept'] = self.api_client.select_header_accept(
+ ['application/json'])
+
+ # authentication setting
+ _auth_settings: List[str] = ['ApiKeyAuth']
+
+ return self.api_client.param_serialize(
+ method='GET',
+ base_path='/api/ddi/v1',
+ resource_path='/dtc/health_check_http',
+ path_params=_path_params,
+ query_params=_query_params,
+ header_params=_header_params,
+ body=_body_params,
+ post_params=_form_params,
+ files=_files,
+ auth_settings=_auth_settings,
+ collection_formats=_collection_formats,
+ _host=_host,
+ _request_auth=_request_auth)
+
+ @validate_call
+ def read(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ReadHTTPHealthCheckResponse:
+ """Retrieve the HTTPHealthCheck object.
+
+ Use this method to retrieve a __HTTPHealthCheck__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._read_serialize(id=id,
+ fields=fields,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ReadHTTPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ ).data
+
+ @validate_call
+ def read_with_http_info(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ApiResponse[ReadHTTPHealthCheckResponse]:
+ """Retrieve the HTTPHealthCheck object.
+
+ Use this method to retrieve a __HTTPHealthCheck__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._read_serialize(id=id,
+ fields=fields,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ReadHTTPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ )
+
+ @validate_call
+ def read_without_preload_content(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> RESTResponseType:
+ """Retrieve the HTTPHealthCheck object.
+
+ Use this method to retrieve a __HTTPHealthCheck__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._read_serialize(id=id,
+ fields=fields,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ReadHTTPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ return response_data.response
+
+ def _read_serialize(
+ self,
+ id,
+ fields,
+ _request_auth,
+ _content_type,
+ _headers,
+ _host_index,
+ ) -> RequestSerialized:
+
+ _host = None
+
+ _collection_formats: Dict[str, str] = {}
+
+ _path_params: Dict[str, str] = {}
+ _query_params: List[Tuple[str, str]] = []
+ _header_params: Dict[str, Optional[str]] = _headers or {}
+ _form_params: List[Tuple[str, str]] = []
+ _files: Dict[str, Union[str, bytes]] = {}
+ _body_params: Optional[bytes] = None
+
+ # process the path parameters
+ if id is not None:
+ _path_params['id'] = self.api_client.path_param_value('id', id)
+ # process the query parameters
+ if fields is not None:
+
+ _query_params.append(('_fields', fields))
+
+ # process the header parameters
+ # process the form parameters
+ # process the body parameter
+
+ # set the HTTP header `Accept`
+ _header_params['Accept'] = self.api_client.select_header_accept(
+ ['application/json'])
+
+ # authentication setting
+ _auth_settings: List[str] = ['ApiKeyAuth']
+
+ return self.api_client.param_serialize(
+ method='GET',
+ base_path='/api/ddi/v1',
+ resource_path='/dtc/health_check_http/{id}',
+ path_params=_path_params,
+ query_params=_query_params,
+ header_params=_header_params,
+ body=_body_params,
+ post_params=_form_params,
+ files=_files,
+ auth_settings=_auth_settings,
+ collection_formats=_collection_formats,
+ _host=_host,
+ _request_auth=_request_auth)
+
+ @validate_call
+ def update(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ body: HTTPHealthCheck,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> UpdateHTTPHealthCheckResponse:
+ """Update the HTTPHealthCheck object.
+
+ Use this method to update a __HTTPHealthCheck__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param body: (required)
+ :type body: HTTPHealthCheck
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._update_serialize(id=id,
+ body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "UpdateHTTPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ ).data
+
+ @validate_call
+ def update_with_http_info(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ body: HTTPHealthCheck,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ApiResponse[UpdateHTTPHealthCheckResponse]:
+ """Update the HTTPHealthCheck object.
+
+ Use this method to update a __HTTPHealthCheck__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param body: (required)
+ :type body: HTTPHealthCheck
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._update_serialize(id=id,
+ body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "UpdateHTTPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ )
+
+ @validate_call
+ def update_without_preload_content(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ body: HTTPHealthCheck,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> RESTResponseType:
+ """Update the HTTPHealthCheck object.
+
+ Use this method to update a __HTTPHealthCheck__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param body: (required)
+ :type body: HTTPHealthCheck
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._update_serialize(id=id,
+ body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "UpdateHTTPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ return response_data.response
+
+ def _update_serialize(
+ self,
+ id,
+ body,
+ _request_auth,
+ _content_type,
+ _headers,
+ _host_index,
+ ) -> RequestSerialized:
+
+ _host = None
+
+ _collection_formats: Dict[str, str] = {}
+
+ _path_params: Dict[str, str] = {}
+ _query_params: List[Tuple[str, str]] = []
+ _header_params: Dict[str, Optional[str]] = _headers or {}
+ _form_params: List[Tuple[str, str]] = []
+ _files: Dict[str, Union[str, bytes]] = {}
+ _body_params: Optional[bytes] = None
+
+ # process the path parameters
+ if id is not None:
+ _path_params['id'] = self.api_client.path_param_value('id', id)
+ # process the query parameters
+ # process the header parameters
+ # process the form parameters
+ # process the body parameter
+ if body is not None:
+ _body_params = body
+
+ # set the HTTP header `Accept`
+ _header_params['Accept'] = self.api_client.select_header_accept(
+ ['application/json'])
+
+ # set the HTTP header `Content-Type`
+ if _content_type:
+ _header_params['Content-Type'] = _content_type
+ else:
+ _default_content_type = (
+ self.api_client.select_header_content_type(
+ ['application/json']))
+ if _default_content_type is not None:
+ _header_params['Content-Type'] = _default_content_type
+
+ # authentication setting
+ _auth_settings: List[str] = ['ApiKeyAuth']
+
+ return self.api_client.param_serialize(
+ method='PATCH',
+ base_path='/api/ddi/v1',
+ resource_path='/dtc/health_check_http/{id}',
+ path_params=_path_params,
+ query_params=_query_params,
+ header_params=_header_params,
+ body=_body_params,
+ post_params=_form_params,
+ files=_files,
+ auth_settings=_auth_settings,
+ collection_formats=_collection_formats,
+ _host=_host,
+ _request_auth=_request_auth)
diff --git a/src/dtc/api/health_check_icmp_api.py b/src/dtc/api/health_check_icmp_api.py
new file mode 100644
index 0000000..77aa95b
--- /dev/null
+++ b/src/dtc/api/health_check_icmp_api.py
@@ -0,0 +1,1503 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+import warnings
+from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
+from typing import Any, Dict, List, Optional, Tuple, Union
+from typing_extensions import Annotated
+
+from pydantic import Field, StrictInt, StrictStr
+from typing import Optional
+from typing_extensions import Annotated
+from dtc.models.create_icmp_health_check_response import CreateICMPHealthCheckResponse
+from dtc.models.icmp_health_check import ICMPHealthCheck
+from dtc.models.list_icmp_health_check_response import ListICMPHealthCheckResponse
+from dtc.models.read_icmp_health_check_response import ReadICMPHealthCheckResponse
+from dtc.models.update_icmp_health_check_response import UpdateICMPHealthCheckResponse
+from dtc import models
+
+from universal_ddi_client.api_client import ApiClient, RequestSerialized
+from universal_ddi_client.api_response import ApiResponse
+from universal_ddi_client.rest import RESTResponseType
+
+
+class HealthCheckIcmpApi:
+ """NOTE: This class is auto generated by OpenAPI Generator
+ Ref: https://openapi-generator.tech
+
+ Do not edit the class manually.
+ """
+
+ def __init__(self, api_client=None) -> None:
+ if api_client is None:
+ api_client = ApiClient.get_default()
+ self.api_client = api_client
+
+ @validate_call
+ def create(
+ self,
+ body: ICMPHealthCheck,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> CreateICMPHealthCheckResponse:
+ """Create the ICMPHealthCheck object.
+
+ Use this method to create a __ICMPHealthCheck__ object.
+
+ :param body: (required)
+ :type body: ICMPHealthCheck
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._create_serialize(body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "CreateICMPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ ).data
+
+ @validate_call
+ def create_with_http_info(
+ self,
+ body: ICMPHealthCheck,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ApiResponse[CreateICMPHealthCheckResponse]:
+ """Create the ICMPHealthCheck object.
+
+ Use this method to create a __ICMPHealthCheck__ object.
+
+ :param body: (required)
+ :type body: ICMPHealthCheck
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._create_serialize(body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "CreateICMPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ )
+
+ @validate_call
+ def create_without_preload_content(
+ self,
+ body: ICMPHealthCheck,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> RESTResponseType:
+ """Create the ICMPHealthCheck object.
+
+ Use this method to create a __ICMPHealthCheck__ object.
+
+ :param body: (required)
+ :type body: ICMPHealthCheck
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._create_serialize(body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "CreateICMPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ return response_data.response
+
+ def _create_serialize(
+ self,
+ body,
+ _request_auth,
+ _content_type,
+ _headers,
+ _host_index,
+ ) -> RequestSerialized:
+
+ _host = None
+
+ _collection_formats: Dict[str, str] = {}
+
+ _path_params: Dict[str, str] = {}
+ _query_params: List[Tuple[str, str]] = []
+ _header_params: Dict[str, Optional[str]] = _headers or {}
+ _form_params: List[Tuple[str, str]] = []
+ _files: Dict[str, Union[str, bytes]] = {}
+ _body_params: Optional[bytes] = None
+
+ # process the path parameters
+ # process the query parameters
+ # process the header parameters
+ # process the form parameters
+ # process the body parameter
+ if body is not None:
+ _body_params = body
+
+ # set the HTTP header `Accept`
+ _header_params['Accept'] = self.api_client.select_header_accept(
+ ['application/json'])
+
+ # set the HTTP header `Content-Type`
+ if _content_type:
+ _header_params['Content-Type'] = _content_type
+ else:
+ _default_content_type = (
+ self.api_client.select_header_content_type(
+ ['application/json']))
+ if _default_content_type is not None:
+ _header_params['Content-Type'] = _default_content_type
+
+ # authentication setting
+ _auth_settings: List[str] = ['ApiKeyAuth']
+
+ return self.api_client.param_serialize(
+ method='POST',
+ base_path='/api/ddi/v1',
+ resource_path='/dtc/health_check_icmp',
+ path_params=_path_params,
+ query_params=_query_params,
+ header_params=_header_params,
+ body=_body_params,
+ post_params=_form_params,
+ files=_files,
+ auth_settings=_auth_settings,
+ collection_formats=_collection_formats,
+ _host=_host,
+ _request_auth=_request_auth)
+
+ @validate_call
+ def delete(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> None:
+ """Delete the ICMPHealthCheck object.
+
+ Use this method to delete a __ICMPHealthCheck__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._delete_serialize(id=id,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': None,
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ ).data
+
+ @validate_call
+ def delete_with_http_info(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ApiResponse[None]:
+ """Delete the ICMPHealthCheck object.
+
+ Use this method to delete a __ICMPHealthCheck__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._delete_serialize(id=id,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': None,
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ )
+
+ @validate_call
+ def delete_without_preload_content(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> RESTResponseType:
+ """Delete the ICMPHealthCheck object.
+
+ Use this method to delete a __ICMPHealthCheck__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._delete_serialize(id=id,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': None,
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ return response_data.response
+
+ def _delete_serialize(
+ self,
+ id,
+ _request_auth,
+ _content_type,
+ _headers,
+ _host_index,
+ ) -> RequestSerialized:
+
+ _host = None
+
+ _collection_formats: Dict[str, str] = {}
+
+ _path_params: Dict[str, str] = {}
+ _query_params: List[Tuple[str, str]] = []
+ _header_params: Dict[str, Optional[str]] = _headers or {}
+ _form_params: List[Tuple[str, str]] = []
+ _files: Dict[str, Union[str, bytes]] = {}
+ _body_params: Optional[bytes] = None
+
+ # process the path parameters
+ if id is not None:
+ _path_params['id'] = self.api_client.path_param_value('id', id)
+ # process the query parameters
+ # process the header parameters
+ # process the form parameters
+ # process the body parameter
+
+ # authentication setting
+ _auth_settings: List[str] = ['ApiKeyAuth']
+
+ return self.api_client.param_serialize(
+ method='DELETE',
+ base_path='/api/ddi/v1',
+ resource_path='/dtc/health_check_icmp/{id}',
+ path_params=_path_params,
+ query_params=_query_params,
+ header_params=_header_params,
+ body=_body_params,
+ post_params=_form_params,
+ files=_files,
+ auth_settings=_auth_settings,
+ collection_formats=_collection_formats,
+ _host=_host,
+ _request_auth=_request_auth)
+
+ @validate_call
+ def list(
+ self,
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ filter: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators | "
+ )] = None,
+ offset: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'. "
+ )] = None,
+ limit: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value. "
+ )] = None,
+ page_token: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " The service-defined string used to identify a page of resources. A null value indicates the first page. "
+ )] = None,
+ order_by: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order. "
+ )] = None,
+ tfilter: Annotated[
+ Optional[StrictStr],
+ Field(description="This parameter is used for filtering by tags."
+ )] = None,
+ torder_by: Annotated[
+ Optional[StrictStr],
+ Field(description="This parameter is used for sorting by tags."
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ListICMPHealthCheckResponse:
+ """Retrieve ICMPHealthCheck objects.
+
+ Use this method to retrieve __ICMPHealthCheck__ objects.
+
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param filter: A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators |
+ :type filter: str
+ :param offset: The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'.
+ :type offset: int
+ :param limit: The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value.
+ :type limit: int
+ :param page_token: The service-defined string used to identify a page of resources. A null value indicates the first page.
+ :type page_token: str
+ :param order_by: A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order.
+ :type order_by: str
+ :param tfilter: This parameter is used for filtering by tags.
+ :type tfilter: str
+ :param torder_by: This parameter is used for sorting by tags.
+ :type torder_by: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._list_serialize(fields=fields,
+ filter=filter,
+ offset=offset,
+ limit=limit,
+ page_token=page_token,
+ order_by=order_by,
+ tfilter=tfilter,
+ torder_by=torder_by,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ListICMPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ ).data
+
+ @validate_call
+ def list_with_http_info(
+ self,
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ filter: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators | "
+ )] = None,
+ offset: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'. "
+ )] = None,
+ limit: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value. "
+ )] = None,
+ page_token: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " The service-defined string used to identify a page of resources. A null value indicates the first page. "
+ )] = None,
+ order_by: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order. "
+ )] = None,
+ tfilter: Annotated[
+ Optional[StrictStr],
+ Field(description="This parameter is used for filtering by tags."
+ )] = None,
+ torder_by: Annotated[
+ Optional[StrictStr],
+ Field(description="This parameter is used for sorting by tags."
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ApiResponse[ListICMPHealthCheckResponse]:
+ """Retrieve ICMPHealthCheck objects.
+
+ Use this method to retrieve __ICMPHealthCheck__ objects.
+
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param filter: A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators |
+ :type filter: str
+ :param offset: The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'.
+ :type offset: int
+ :param limit: The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value.
+ :type limit: int
+ :param page_token: The service-defined string used to identify a page of resources. A null value indicates the first page.
+ :type page_token: str
+ :param order_by: A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order.
+ :type order_by: str
+ :param tfilter: This parameter is used for filtering by tags.
+ :type tfilter: str
+ :param torder_by: This parameter is used for sorting by tags.
+ :type torder_by: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._list_serialize(fields=fields,
+ filter=filter,
+ offset=offset,
+ limit=limit,
+ page_token=page_token,
+ order_by=order_by,
+ tfilter=tfilter,
+ torder_by=torder_by,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ListICMPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ )
+
+ @validate_call
+ def list_without_preload_content(
+ self,
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ filter: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators | "
+ )] = None,
+ offset: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'. "
+ )] = None,
+ limit: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value. "
+ )] = None,
+ page_token: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " The service-defined string used to identify a page of resources. A null value indicates the first page. "
+ )] = None,
+ order_by: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order. "
+ )] = None,
+ tfilter: Annotated[
+ Optional[StrictStr],
+ Field(description="This parameter is used for filtering by tags."
+ )] = None,
+ torder_by: Annotated[
+ Optional[StrictStr],
+ Field(description="This parameter is used for sorting by tags."
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> RESTResponseType:
+ """Retrieve ICMPHealthCheck objects.
+
+ Use this method to retrieve __ICMPHealthCheck__ objects.
+
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param filter: A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators |
+ :type filter: str
+ :param offset: The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'.
+ :type offset: int
+ :param limit: The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value.
+ :type limit: int
+ :param page_token: The service-defined string used to identify a page of resources. A null value indicates the first page.
+ :type page_token: str
+ :param order_by: A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order.
+ :type order_by: str
+ :param tfilter: This parameter is used for filtering by tags.
+ :type tfilter: str
+ :param torder_by: This parameter is used for sorting by tags.
+ :type torder_by: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._list_serialize(fields=fields,
+ filter=filter,
+ offset=offset,
+ limit=limit,
+ page_token=page_token,
+ order_by=order_by,
+ tfilter=tfilter,
+ torder_by=torder_by,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ListICMPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ return response_data.response
+
+ def _list_serialize(
+ self,
+ fields,
+ filter,
+ offset,
+ limit,
+ page_token,
+ order_by,
+ tfilter,
+ torder_by,
+ _request_auth,
+ _content_type,
+ _headers,
+ _host_index,
+ ) -> RequestSerialized:
+
+ _host = None
+
+ _collection_formats: Dict[str, str] = {}
+
+ _path_params: Dict[str, str] = {}
+ _query_params: List[Tuple[str, str]] = []
+ _header_params: Dict[str, Optional[str]] = _headers or {}
+ _form_params: List[Tuple[str, str]] = []
+ _files: Dict[str, Union[str, bytes]] = {}
+ _body_params: Optional[bytes] = None
+
+ # process the path parameters
+ # process the query parameters
+ if fields is not None:
+
+ _query_params.append(('_fields', fields))
+
+ if filter is not None:
+
+ _query_params.append(('_filter', filter))
+
+ if offset is not None:
+
+ _query_params.append(('_offset', offset))
+
+ if limit is not None:
+
+ _query_params.append(('_limit', limit))
+
+ if page_token is not None:
+
+ _query_params.append(('_page_token', page_token))
+
+ if order_by is not None:
+
+ _query_params.append(('_order_by', order_by))
+
+ if tfilter is not None:
+
+ _query_params.append(('_tfilter', tfilter))
+
+ if torder_by is not None:
+
+ _query_params.append(('_torder_by', torder_by))
+
+ # process the header parameters
+ # process the form parameters
+ # process the body parameter
+
+ # set the HTTP header `Accept`
+ _header_params['Accept'] = self.api_client.select_header_accept(
+ ['application/json'])
+
+ # authentication setting
+ _auth_settings: List[str] = ['ApiKeyAuth']
+
+ return self.api_client.param_serialize(
+ method='GET',
+ base_path='/api/ddi/v1',
+ resource_path='/dtc/health_check_icmp',
+ path_params=_path_params,
+ query_params=_query_params,
+ header_params=_header_params,
+ body=_body_params,
+ post_params=_form_params,
+ files=_files,
+ auth_settings=_auth_settings,
+ collection_formats=_collection_formats,
+ _host=_host,
+ _request_auth=_request_auth)
+
+ @validate_call
+ def read(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ReadICMPHealthCheckResponse:
+ """Retrieve the ICMPHealthCheck object.
+
+ Use this method to retrieve a __ICMPHealthCheck__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._read_serialize(id=id,
+ fields=fields,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ReadICMPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ ).data
+
+ @validate_call
+ def read_with_http_info(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ApiResponse[ReadICMPHealthCheckResponse]:
+ """Retrieve the ICMPHealthCheck object.
+
+ Use this method to retrieve a __ICMPHealthCheck__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._read_serialize(id=id,
+ fields=fields,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ReadICMPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ )
+
+ @validate_call
+ def read_without_preload_content(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> RESTResponseType:
+ """Retrieve the ICMPHealthCheck object.
+
+ Use this method to retrieve a __ICMPHealthCheck__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._read_serialize(id=id,
+ fields=fields,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ReadICMPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ return response_data.response
+
+ def _read_serialize(
+ self,
+ id,
+ fields,
+ _request_auth,
+ _content_type,
+ _headers,
+ _host_index,
+ ) -> RequestSerialized:
+
+ _host = None
+
+ _collection_formats: Dict[str, str] = {}
+
+ _path_params: Dict[str, str] = {}
+ _query_params: List[Tuple[str, str]] = []
+ _header_params: Dict[str, Optional[str]] = _headers or {}
+ _form_params: List[Tuple[str, str]] = []
+ _files: Dict[str, Union[str, bytes]] = {}
+ _body_params: Optional[bytes] = None
+
+ # process the path parameters
+ if id is not None:
+ _path_params['id'] = self.api_client.path_param_value('id', id)
+ # process the query parameters
+ if fields is not None:
+
+ _query_params.append(('_fields', fields))
+
+ # process the header parameters
+ # process the form parameters
+ # process the body parameter
+
+ # set the HTTP header `Accept`
+ _header_params['Accept'] = self.api_client.select_header_accept(
+ ['application/json'])
+
+ # authentication setting
+ _auth_settings: List[str] = ['ApiKeyAuth']
+
+ return self.api_client.param_serialize(
+ method='GET',
+ base_path='/api/ddi/v1',
+ resource_path='/dtc/health_check_icmp/{id}',
+ path_params=_path_params,
+ query_params=_query_params,
+ header_params=_header_params,
+ body=_body_params,
+ post_params=_form_params,
+ files=_files,
+ auth_settings=_auth_settings,
+ collection_formats=_collection_formats,
+ _host=_host,
+ _request_auth=_request_auth)
+
+ @validate_call
+ def update(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ body: ICMPHealthCheck,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> UpdateICMPHealthCheckResponse:
+ """Update the ICMPHealthCheck object.
+
+ Use this method to update a __ICMPHealthCheck__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param body: (required)
+ :type body: ICMPHealthCheck
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._update_serialize(id=id,
+ body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "UpdateICMPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ ).data
+
+ @validate_call
+ def update_with_http_info(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ body: ICMPHealthCheck,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ApiResponse[UpdateICMPHealthCheckResponse]:
+ """Update the ICMPHealthCheck object.
+
+ Use this method to update a __ICMPHealthCheck__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param body: (required)
+ :type body: ICMPHealthCheck
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._update_serialize(id=id,
+ body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "UpdateICMPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ )
+
+ @validate_call
+ def update_without_preload_content(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ body: ICMPHealthCheck,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> RESTResponseType:
+ """Update the ICMPHealthCheck object.
+
+ Use this method to update a __ICMPHealthCheck__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param body: (required)
+ :type body: ICMPHealthCheck
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._update_serialize(id=id,
+ body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "UpdateICMPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ return response_data.response
+
+ def _update_serialize(
+ self,
+ id,
+ body,
+ _request_auth,
+ _content_type,
+ _headers,
+ _host_index,
+ ) -> RequestSerialized:
+
+ _host = None
+
+ _collection_formats: Dict[str, str] = {}
+
+ _path_params: Dict[str, str] = {}
+ _query_params: List[Tuple[str, str]] = []
+ _header_params: Dict[str, Optional[str]] = _headers or {}
+ _form_params: List[Tuple[str, str]] = []
+ _files: Dict[str, Union[str, bytes]] = {}
+ _body_params: Optional[bytes] = None
+
+ # process the path parameters
+ if id is not None:
+ _path_params['id'] = self.api_client.path_param_value('id', id)
+ # process the query parameters
+ # process the header parameters
+ # process the form parameters
+ # process the body parameter
+ if body is not None:
+ _body_params = body
+
+ # set the HTTP header `Accept`
+ _header_params['Accept'] = self.api_client.select_header_accept(
+ ['application/json'])
+
+ # set the HTTP header `Content-Type`
+ if _content_type:
+ _header_params['Content-Type'] = _content_type
+ else:
+ _default_content_type = (
+ self.api_client.select_header_content_type(
+ ['application/json']))
+ if _default_content_type is not None:
+ _header_params['Content-Type'] = _default_content_type
+
+ # authentication setting
+ _auth_settings: List[str] = ['ApiKeyAuth']
+
+ return self.api_client.param_serialize(
+ method='PATCH',
+ base_path='/api/ddi/v1',
+ resource_path='/dtc/health_check_icmp/{id}',
+ path_params=_path_params,
+ query_params=_query_params,
+ header_params=_header_params,
+ body=_body_params,
+ post_params=_form_params,
+ files=_files,
+ auth_settings=_auth_settings,
+ collection_formats=_collection_formats,
+ _host=_host,
+ _request_auth=_request_auth)
diff --git a/src/dtc/api/health_check_snmp_api.py b/src/dtc/api/health_check_snmp_api.py
new file mode 100644
index 0000000..e9ab91c
--- /dev/null
+++ b/src/dtc/api/health_check_snmp_api.py
@@ -0,0 +1,1503 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+import warnings
+from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
+from typing import Any, Dict, List, Optional, Tuple, Union
+from typing_extensions import Annotated
+
+from pydantic import Field, StrictInt, StrictStr
+from typing import Optional
+from typing_extensions import Annotated
+from dtc.models.create_snmp_health_check_response import CreateSNMPHealthCheckResponse
+from dtc.models.list_snmp_health_check_response import ListSNMPHealthCheckResponse
+from dtc.models.read_snmp_health_check_response import ReadSNMPHealthCheckResponse
+from dtc.models.snmp_health_check import SNMPHealthCheck
+from dtc.models.update_snmp_health_check_response import UpdateSNMPHealthCheckResponse
+from dtc import models
+
+from universal_ddi_client.api_client import ApiClient, RequestSerialized
+from universal_ddi_client.api_response import ApiResponse
+from universal_ddi_client.rest import RESTResponseType
+
+
+class HealthCheckSnmpApi:
+ """NOTE: This class is auto generated by OpenAPI Generator
+ Ref: https://openapi-generator.tech
+
+ Do not edit the class manually.
+ """
+
+ def __init__(self, api_client=None) -> None:
+ if api_client is None:
+ api_client = ApiClient.get_default()
+ self.api_client = api_client
+
+ @validate_call
+ def create(
+ self,
+ body: SNMPHealthCheck,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> CreateSNMPHealthCheckResponse:
+ """Create the SNMPHealthCheck object.
+
+ Use this method to create a __SNMPHealthCheck__ object.
+
+ :param body: (required)
+ :type body: SNMPHealthCheck
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._create_serialize(body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "CreateSNMPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ ).data
+
+ @validate_call
+ def create_with_http_info(
+ self,
+ body: SNMPHealthCheck,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ApiResponse[CreateSNMPHealthCheckResponse]:
+ """Create the SNMPHealthCheck object.
+
+ Use this method to create a __SNMPHealthCheck__ object.
+
+ :param body: (required)
+ :type body: SNMPHealthCheck
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._create_serialize(body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "CreateSNMPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ )
+
+ @validate_call
+ def create_without_preload_content(
+ self,
+ body: SNMPHealthCheck,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> RESTResponseType:
+ """Create the SNMPHealthCheck object.
+
+ Use this method to create a __SNMPHealthCheck__ object.
+
+ :param body: (required)
+ :type body: SNMPHealthCheck
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._create_serialize(body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "CreateSNMPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ return response_data.response
+
+ def _create_serialize(
+ self,
+ body,
+ _request_auth,
+ _content_type,
+ _headers,
+ _host_index,
+ ) -> RequestSerialized:
+
+ _host = None
+
+ _collection_formats: Dict[str, str] = {}
+
+ _path_params: Dict[str, str] = {}
+ _query_params: List[Tuple[str, str]] = []
+ _header_params: Dict[str, Optional[str]] = _headers or {}
+ _form_params: List[Tuple[str, str]] = []
+ _files: Dict[str, Union[str, bytes]] = {}
+ _body_params: Optional[bytes] = None
+
+ # process the path parameters
+ # process the query parameters
+ # process the header parameters
+ # process the form parameters
+ # process the body parameter
+ if body is not None:
+ _body_params = body
+
+ # set the HTTP header `Accept`
+ _header_params['Accept'] = self.api_client.select_header_accept(
+ ['application/json'])
+
+ # set the HTTP header `Content-Type`
+ if _content_type:
+ _header_params['Content-Type'] = _content_type
+ else:
+ _default_content_type = (
+ self.api_client.select_header_content_type(
+ ['application/json']))
+ if _default_content_type is not None:
+ _header_params['Content-Type'] = _default_content_type
+
+ # authentication setting
+ _auth_settings: List[str] = ['ApiKeyAuth']
+
+ return self.api_client.param_serialize(
+ method='POST',
+ base_path='/api/ddi/v1',
+ resource_path='/dtc/health_check_snmp',
+ path_params=_path_params,
+ query_params=_query_params,
+ header_params=_header_params,
+ body=_body_params,
+ post_params=_form_params,
+ files=_files,
+ auth_settings=_auth_settings,
+ collection_formats=_collection_formats,
+ _host=_host,
+ _request_auth=_request_auth)
+
+ @validate_call
+ def delete(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> None:
+ """Delete the SNMPHealthCheck object.
+
+ Use this method to delete a __SNMPHealthCheck__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._delete_serialize(id=id,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': None,
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ ).data
+
+ @validate_call
+ def delete_with_http_info(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ApiResponse[None]:
+ """Delete the SNMPHealthCheck object.
+
+ Use this method to delete a __SNMPHealthCheck__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._delete_serialize(id=id,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': None,
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ )
+
+ @validate_call
+ def delete_without_preload_content(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> RESTResponseType:
+ """Delete the SNMPHealthCheck object.
+
+ Use this method to delete a __SNMPHealthCheck__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._delete_serialize(id=id,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': None,
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ return response_data.response
+
+ def _delete_serialize(
+ self,
+ id,
+ _request_auth,
+ _content_type,
+ _headers,
+ _host_index,
+ ) -> RequestSerialized:
+
+ _host = None
+
+ _collection_formats: Dict[str, str] = {}
+
+ _path_params: Dict[str, str] = {}
+ _query_params: List[Tuple[str, str]] = []
+ _header_params: Dict[str, Optional[str]] = _headers or {}
+ _form_params: List[Tuple[str, str]] = []
+ _files: Dict[str, Union[str, bytes]] = {}
+ _body_params: Optional[bytes] = None
+
+ # process the path parameters
+ if id is not None:
+ _path_params['id'] = self.api_client.path_param_value('id', id)
+ # process the query parameters
+ # process the header parameters
+ # process the form parameters
+ # process the body parameter
+
+ # authentication setting
+ _auth_settings: List[str] = ['ApiKeyAuth']
+
+ return self.api_client.param_serialize(
+ method='DELETE',
+ base_path='/api/ddi/v1',
+ resource_path='/dtc/health_check_snmp/{id}',
+ path_params=_path_params,
+ query_params=_query_params,
+ header_params=_header_params,
+ body=_body_params,
+ post_params=_form_params,
+ files=_files,
+ auth_settings=_auth_settings,
+ collection_formats=_collection_formats,
+ _host=_host,
+ _request_auth=_request_auth)
+
+ @validate_call
+ def list(
+ self,
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ filter: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators | "
+ )] = None,
+ offset: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'. "
+ )] = None,
+ limit: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value. "
+ )] = None,
+ page_token: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " The service-defined string used to identify a page of resources. A null value indicates the first page. "
+ )] = None,
+ order_by: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order. "
+ )] = None,
+ tfilter: Annotated[
+ Optional[StrictStr],
+ Field(description="This parameter is used for filtering by tags."
+ )] = None,
+ torder_by: Annotated[
+ Optional[StrictStr],
+ Field(description="This parameter is used for sorting by tags."
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ListSNMPHealthCheckResponse:
+ """Retrieve SNMPHealthCheck objects.
+
+ Use this method to retrieve __SNMPHealthCheck__ objects.
+
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param filter: A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators |
+ :type filter: str
+ :param offset: The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'.
+ :type offset: int
+ :param limit: The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value.
+ :type limit: int
+ :param page_token: The service-defined string used to identify a page of resources. A null value indicates the first page.
+ :type page_token: str
+ :param order_by: A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order.
+ :type order_by: str
+ :param tfilter: This parameter is used for filtering by tags.
+ :type tfilter: str
+ :param torder_by: This parameter is used for sorting by tags.
+ :type torder_by: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._list_serialize(fields=fields,
+ filter=filter,
+ offset=offset,
+ limit=limit,
+ page_token=page_token,
+ order_by=order_by,
+ tfilter=tfilter,
+ torder_by=torder_by,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ListSNMPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ ).data
+
+ @validate_call
+ def list_with_http_info(
+ self,
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ filter: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators | "
+ )] = None,
+ offset: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'. "
+ )] = None,
+ limit: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value. "
+ )] = None,
+ page_token: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " The service-defined string used to identify a page of resources. A null value indicates the first page. "
+ )] = None,
+ order_by: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order. "
+ )] = None,
+ tfilter: Annotated[
+ Optional[StrictStr],
+ Field(description="This parameter is used for filtering by tags."
+ )] = None,
+ torder_by: Annotated[
+ Optional[StrictStr],
+ Field(description="This parameter is used for sorting by tags."
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ApiResponse[ListSNMPHealthCheckResponse]:
+ """Retrieve SNMPHealthCheck objects.
+
+ Use this method to retrieve __SNMPHealthCheck__ objects.
+
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param filter: A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators |
+ :type filter: str
+ :param offset: The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'.
+ :type offset: int
+ :param limit: The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value.
+ :type limit: int
+ :param page_token: The service-defined string used to identify a page of resources. A null value indicates the first page.
+ :type page_token: str
+ :param order_by: A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order.
+ :type order_by: str
+ :param tfilter: This parameter is used for filtering by tags.
+ :type tfilter: str
+ :param torder_by: This parameter is used for sorting by tags.
+ :type torder_by: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._list_serialize(fields=fields,
+ filter=filter,
+ offset=offset,
+ limit=limit,
+ page_token=page_token,
+ order_by=order_by,
+ tfilter=tfilter,
+ torder_by=torder_by,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ListSNMPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ )
+
+ @validate_call
+ def list_without_preload_content(
+ self,
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ filter: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators | "
+ )] = None,
+ offset: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'. "
+ )] = None,
+ limit: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value. "
+ )] = None,
+ page_token: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " The service-defined string used to identify a page of resources. A null value indicates the first page. "
+ )] = None,
+ order_by: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order. "
+ )] = None,
+ tfilter: Annotated[
+ Optional[StrictStr],
+ Field(description="This parameter is used for filtering by tags."
+ )] = None,
+ torder_by: Annotated[
+ Optional[StrictStr],
+ Field(description="This parameter is used for sorting by tags."
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> RESTResponseType:
+ """Retrieve SNMPHealthCheck objects.
+
+ Use this method to retrieve __SNMPHealthCheck__ objects.
+
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param filter: A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators |
+ :type filter: str
+ :param offset: The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'.
+ :type offset: int
+ :param limit: The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value.
+ :type limit: int
+ :param page_token: The service-defined string used to identify a page of resources. A null value indicates the first page.
+ :type page_token: str
+ :param order_by: A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order.
+ :type order_by: str
+ :param tfilter: This parameter is used for filtering by tags.
+ :type tfilter: str
+ :param torder_by: This parameter is used for sorting by tags.
+ :type torder_by: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._list_serialize(fields=fields,
+ filter=filter,
+ offset=offset,
+ limit=limit,
+ page_token=page_token,
+ order_by=order_by,
+ tfilter=tfilter,
+ torder_by=torder_by,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ListSNMPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ return response_data.response
+
+ def _list_serialize(
+ self,
+ fields,
+ filter,
+ offset,
+ limit,
+ page_token,
+ order_by,
+ tfilter,
+ torder_by,
+ _request_auth,
+ _content_type,
+ _headers,
+ _host_index,
+ ) -> RequestSerialized:
+
+ _host = None
+
+ _collection_formats: Dict[str, str] = {}
+
+ _path_params: Dict[str, str] = {}
+ _query_params: List[Tuple[str, str]] = []
+ _header_params: Dict[str, Optional[str]] = _headers or {}
+ _form_params: List[Tuple[str, str]] = []
+ _files: Dict[str, Union[str, bytes]] = {}
+ _body_params: Optional[bytes] = None
+
+ # process the path parameters
+ # process the query parameters
+ if fields is not None:
+
+ _query_params.append(('_fields', fields))
+
+ if filter is not None:
+
+ _query_params.append(('_filter', filter))
+
+ if offset is not None:
+
+ _query_params.append(('_offset', offset))
+
+ if limit is not None:
+
+ _query_params.append(('_limit', limit))
+
+ if page_token is not None:
+
+ _query_params.append(('_page_token', page_token))
+
+ if order_by is not None:
+
+ _query_params.append(('_order_by', order_by))
+
+ if tfilter is not None:
+
+ _query_params.append(('_tfilter', tfilter))
+
+ if torder_by is not None:
+
+ _query_params.append(('_torder_by', torder_by))
+
+ # process the header parameters
+ # process the form parameters
+ # process the body parameter
+
+ # set the HTTP header `Accept`
+ _header_params['Accept'] = self.api_client.select_header_accept(
+ ['application/json'])
+
+ # authentication setting
+ _auth_settings: List[str] = ['ApiKeyAuth']
+
+ return self.api_client.param_serialize(
+ method='GET',
+ base_path='/api/ddi/v1',
+ resource_path='/dtc/health_check_snmp',
+ path_params=_path_params,
+ query_params=_query_params,
+ header_params=_header_params,
+ body=_body_params,
+ post_params=_form_params,
+ files=_files,
+ auth_settings=_auth_settings,
+ collection_formats=_collection_formats,
+ _host=_host,
+ _request_auth=_request_auth)
+
+ @validate_call
+ def read(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ReadSNMPHealthCheckResponse:
+ """Retrieve the SNMPHealthCheck object.
+
+ Use this method to retrieve a __SNMPHealthCheck__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._read_serialize(id=id,
+ fields=fields,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ReadSNMPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ ).data
+
+ @validate_call
+ def read_with_http_info(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ApiResponse[ReadSNMPHealthCheckResponse]:
+ """Retrieve the SNMPHealthCheck object.
+
+ Use this method to retrieve a __SNMPHealthCheck__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._read_serialize(id=id,
+ fields=fields,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ReadSNMPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ )
+
+ @validate_call
+ def read_without_preload_content(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> RESTResponseType:
+ """Retrieve the SNMPHealthCheck object.
+
+ Use this method to retrieve a __SNMPHealthCheck__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._read_serialize(id=id,
+ fields=fields,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ReadSNMPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ return response_data.response
+
+ def _read_serialize(
+ self,
+ id,
+ fields,
+ _request_auth,
+ _content_type,
+ _headers,
+ _host_index,
+ ) -> RequestSerialized:
+
+ _host = None
+
+ _collection_formats: Dict[str, str] = {}
+
+ _path_params: Dict[str, str] = {}
+ _query_params: List[Tuple[str, str]] = []
+ _header_params: Dict[str, Optional[str]] = _headers or {}
+ _form_params: List[Tuple[str, str]] = []
+ _files: Dict[str, Union[str, bytes]] = {}
+ _body_params: Optional[bytes] = None
+
+ # process the path parameters
+ if id is not None:
+ _path_params['id'] = self.api_client.path_param_value('id', id)
+ # process the query parameters
+ if fields is not None:
+
+ _query_params.append(('_fields', fields))
+
+ # process the header parameters
+ # process the form parameters
+ # process the body parameter
+
+ # set the HTTP header `Accept`
+ _header_params['Accept'] = self.api_client.select_header_accept(
+ ['application/json'])
+
+ # authentication setting
+ _auth_settings: List[str] = ['ApiKeyAuth']
+
+ return self.api_client.param_serialize(
+ method='GET',
+ base_path='/api/ddi/v1',
+ resource_path='/dtc/health_check_snmp/{id}',
+ path_params=_path_params,
+ query_params=_query_params,
+ header_params=_header_params,
+ body=_body_params,
+ post_params=_form_params,
+ files=_files,
+ auth_settings=_auth_settings,
+ collection_formats=_collection_formats,
+ _host=_host,
+ _request_auth=_request_auth)
+
+ @validate_call
+ def update(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ body: SNMPHealthCheck,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> UpdateSNMPHealthCheckResponse:
+ """Update the SNMPHealthCheck object.
+
+ Use this method to update a __SNMPHealthCheck__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param body: (required)
+ :type body: SNMPHealthCheck
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._update_serialize(id=id,
+ body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "UpdateSNMPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ ).data
+
+ @validate_call
+ def update_with_http_info(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ body: SNMPHealthCheck,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ApiResponse[UpdateSNMPHealthCheckResponse]:
+ """Update the SNMPHealthCheck object.
+
+ Use this method to update a __SNMPHealthCheck__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param body: (required)
+ :type body: SNMPHealthCheck
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._update_serialize(id=id,
+ body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "UpdateSNMPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ )
+
+ @validate_call
+ def update_without_preload_content(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ body: SNMPHealthCheck,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> RESTResponseType:
+ """Update the SNMPHealthCheck object.
+
+ Use this method to update a __SNMPHealthCheck__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param body: (required)
+ :type body: SNMPHealthCheck
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._update_serialize(id=id,
+ body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "UpdateSNMPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ return response_data.response
+
+ def _update_serialize(
+ self,
+ id,
+ body,
+ _request_auth,
+ _content_type,
+ _headers,
+ _host_index,
+ ) -> RequestSerialized:
+
+ _host = None
+
+ _collection_formats: Dict[str, str] = {}
+
+ _path_params: Dict[str, str] = {}
+ _query_params: List[Tuple[str, str]] = []
+ _header_params: Dict[str, Optional[str]] = _headers or {}
+ _form_params: List[Tuple[str, str]] = []
+ _files: Dict[str, Union[str, bytes]] = {}
+ _body_params: Optional[bytes] = None
+
+ # process the path parameters
+ if id is not None:
+ _path_params['id'] = self.api_client.path_param_value('id', id)
+ # process the query parameters
+ # process the header parameters
+ # process the form parameters
+ # process the body parameter
+ if body is not None:
+ _body_params = body
+
+ # set the HTTP header `Accept`
+ _header_params['Accept'] = self.api_client.select_header_accept(
+ ['application/json'])
+
+ # set the HTTP header `Content-Type`
+ if _content_type:
+ _header_params['Content-Type'] = _content_type
+ else:
+ _default_content_type = (
+ self.api_client.select_header_content_type(
+ ['application/json']))
+ if _default_content_type is not None:
+ _header_params['Content-Type'] = _default_content_type
+
+ # authentication setting
+ _auth_settings: List[str] = ['ApiKeyAuth']
+
+ return self.api_client.param_serialize(
+ method='PATCH',
+ base_path='/api/ddi/v1',
+ resource_path='/dtc/health_check_snmp/{id}',
+ path_params=_path_params,
+ query_params=_query_params,
+ header_params=_header_params,
+ body=_body_params,
+ post_params=_form_params,
+ files=_files,
+ auth_settings=_auth_settings,
+ collection_formats=_collection_formats,
+ _host=_host,
+ _request_auth=_request_auth)
diff --git a/src/dtc/api/health_check_tcp_api.py b/src/dtc/api/health_check_tcp_api.py
new file mode 100644
index 0000000..3ed1002
--- /dev/null
+++ b/src/dtc/api/health_check_tcp_api.py
@@ -0,0 +1,1503 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+import warnings
+from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
+from typing import Any, Dict, List, Optional, Tuple, Union
+from typing_extensions import Annotated
+
+from pydantic import Field, StrictInt, StrictStr
+from typing import Optional
+from typing_extensions import Annotated
+from dtc.models.create_tcp_health_check_response import CreateTCPHealthCheckResponse
+from dtc.models.list_tcp_health_check_response import ListTCPHealthCheckResponse
+from dtc.models.read_tcp_health_check_response import ReadTCPHealthCheckResponse
+from dtc.models.tcp_health_check import TCPHealthCheck
+from dtc.models.update_tcp_health_check_response import UpdateTCPHealthCheckResponse
+from dtc import models
+
+from universal_ddi_client.api_client import ApiClient, RequestSerialized
+from universal_ddi_client.api_response import ApiResponse
+from universal_ddi_client.rest import RESTResponseType
+
+
+class HealthCheckTcpApi:
+ """NOTE: This class is auto generated by OpenAPI Generator
+ Ref: https://openapi-generator.tech
+
+ Do not edit the class manually.
+ """
+
+ def __init__(self, api_client=None) -> None:
+ if api_client is None:
+ api_client = ApiClient.get_default()
+ self.api_client = api_client
+
+ @validate_call
+ def create(
+ self,
+ body: TCPHealthCheck,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> CreateTCPHealthCheckResponse:
+ """Create the TCPHealthCheck object.
+
+ Use this method to create a __TCPHealthCheck__ object.
+
+ :param body: (required)
+ :type body: TCPHealthCheck
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._create_serialize(body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "CreateTCPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ ).data
+
+ @validate_call
+ def create_with_http_info(
+ self,
+ body: TCPHealthCheck,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ApiResponse[CreateTCPHealthCheckResponse]:
+ """Create the TCPHealthCheck object.
+
+ Use this method to create a __TCPHealthCheck__ object.
+
+ :param body: (required)
+ :type body: TCPHealthCheck
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._create_serialize(body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "CreateTCPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ )
+
+ @validate_call
+ def create_without_preload_content(
+ self,
+ body: TCPHealthCheck,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> RESTResponseType:
+ """Create the TCPHealthCheck object.
+
+ Use this method to create a __TCPHealthCheck__ object.
+
+ :param body: (required)
+ :type body: TCPHealthCheck
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._create_serialize(body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "CreateTCPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ return response_data.response
+
+ def _create_serialize(
+ self,
+ body,
+ _request_auth,
+ _content_type,
+ _headers,
+ _host_index,
+ ) -> RequestSerialized:
+
+ _host = None
+
+ _collection_formats: Dict[str, str] = {}
+
+ _path_params: Dict[str, str] = {}
+ _query_params: List[Tuple[str, str]] = []
+ _header_params: Dict[str, Optional[str]] = _headers or {}
+ _form_params: List[Tuple[str, str]] = []
+ _files: Dict[str, Union[str, bytes]] = {}
+ _body_params: Optional[bytes] = None
+
+ # process the path parameters
+ # process the query parameters
+ # process the header parameters
+ # process the form parameters
+ # process the body parameter
+ if body is not None:
+ _body_params = body
+
+ # set the HTTP header `Accept`
+ _header_params['Accept'] = self.api_client.select_header_accept(
+ ['application/json'])
+
+ # set the HTTP header `Content-Type`
+ if _content_type:
+ _header_params['Content-Type'] = _content_type
+ else:
+ _default_content_type = (
+ self.api_client.select_header_content_type(
+ ['application/json']))
+ if _default_content_type is not None:
+ _header_params['Content-Type'] = _default_content_type
+
+ # authentication setting
+ _auth_settings: List[str] = ['ApiKeyAuth']
+
+ return self.api_client.param_serialize(
+ method='POST',
+ base_path='/api/ddi/v1',
+ resource_path='/dtc/health_check_tcp',
+ path_params=_path_params,
+ query_params=_query_params,
+ header_params=_header_params,
+ body=_body_params,
+ post_params=_form_params,
+ files=_files,
+ auth_settings=_auth_settings,
+ collection_formats=_collection_formats,
+ _host=_host,
+ _request_auth=_request_auth)
+
+ @validate_call
+ def delete(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> None:
+ """Delete the TCPHealthCheck object.
+
+ Use this method to delete a __TCPHealthCheck__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._delete_serialize(id=id,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': None,
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ ).data
+
+ @validate_call
+ def delete_with_http_info(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ApiResponse[None]:
+ """Delete the TCPHealthCheck object.
+
+ Use this method to delete a __TCPHealthCheck__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._delete_serialize(id=id,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': None,
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ )
+
+ @validate_call
+ def delete_without_preload_content(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> RESTResponseType:
+ """Delete the TCPHealthCheck object.
+
+ Use this method to delete a __TCPHealthCheck__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._delete_serialize(id=id,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': None,
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ return response_data.response
+
+ def _delete_serialize(
+ self,
+ id,
+ _request_auth,
+ _content_type,
+ _headers,
+ _host_index,
+ ) -> RequestSerialized:
+
+ _host = None
+
+ _collection_formats: Dict[str, str] = {}
+
+ _path_params: Dict[str, str] = {}
+ _query_params: List[Tuple[str, str]] = []
+ _header_params: Dict[str, Optional[str]] = _headers or {}
+ _form_params: List[Tuple[str, str]] = []
+ _files: Dict[str, Union[str, bytes]] = {}
+ _body_params: Optional[bytes] = None
+
+ # process the path parameters
+ if id is not None:
+ _path_params['id'] = self.api_client.path_param_value('id', id)
+ # process the query parameters
+ # process the header parameters
+ # process the form parameters
+ # process the body parameter
+
+ # authentication setting
+ _auth_settings: List[str] = ['ApiKeyAuth']
+
+ return self.api_client.param_serialize(
+ method='DELETE',
+ base_path='/api/ddi/v1',
+ resource_path='/dtc/health_check_tcp/{id}',
+ path_params=_path_params,
+ query_params=_query_params,
+ header_params=_header_params,
+ body=_body_params,
+ post_params=_form_params,
+ files=_files,
+ auth_settings=_auth_settings,
+ collection_formats=_collection_formats,
+ _host=_host,
+ _request_auth=_request_auth)
+
+ @validate_call
+ def list(
+ self,
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ filter: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators | "
+ )] = None,
+ offset: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'. "
+ )] = None,
+ limit: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value. "
+ )] = None,
+ page_token: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " The service-defined string used to identify a page of resources. A null value indicates the first page. "
+ )] = None,
+ order_by: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order. "
+ )] = None,
+ tfilter: Annotated[
+ Optional[StrictStr],
+ Field(description="This parameter is used for filtering by tags."
+ )] = None,
+ torder_by: Annotated[
+ Optional[StrictStr],
+ Field(description="This parameter is used for sorting by tags."
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ListTCPHealthCheckResponse:
+ """Retrieve TCPHealthCheck objects.
+
+ Use this method to retrieve __TCPHealthCheck__ objects.
+
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param filter: A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators |
+ :type filter: str
+ :param offset: The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'.
+ :type offset: int
+ :param limit: The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value.
+ :type limit: int
+ :param page_token: The service-defined string used to identify a page of resources. A null value indicates the first page.
+ :type page_token: str
+ :param order_by: A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order.
+ :type order_by: str
+ :param tfilter: This parameter is used for filtering by tags.
+ :type tfilter: str
+ :param torder_by: This parameter is used for sorting by tags.
+ :type torder_by: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._list_serialize(fields=fields,
+ filter=filter,
+ offset=offset,
+ limit=limit,
+ page_token=page_token,
+ order_by=order_by,
+ tfilter=tfilter,
+ torder_by=torder_by,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ListTCPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ ).data
+
+ @validate_call
+ def list_with_http_info(
+ self,
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ filter: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators | "
+ )] = None,
+ offset: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'. "
+ )] = None,
+ limit: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value. "
+ )] = None,
+ page_token: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " The service-defined string used to identify a page of resources. A null value indicates the first page. "
+ )] = None,
+ order_by: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order. "
+ )] = None,
+ tfilter: Annotated[
+ Optional[StrictStr],
+ Field(description="This parameter is used for filtering by tags."
+ )] = None,
+ torder_by: Annotated[
+ Optional[StrictStr],
+ Field(description="This parameter is used for sorting by tags."
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ApiResponse[ListTCPHealthCheckResponse]:
+ """Retrieve TCPHealthCheck objects.
+
+ Use this method to retrieve __TCPHealthCheck__ objects.
+
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param filter: A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators |
+ :type filter: str
+ :param offset: The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'.
+ :type offset: int
+ :param limit: The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value.
+ :type limit: int
+ :param page_token: The service-defined string used to identify a page of resources. A null value indicates the first page.
+ :type page_token: str
+ :param order_by: A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order.
+ :type order_by: str
+ :param tfilter: This parameter is used for filtering by tags.
+ :type tfilter: str
+ :param torder_by: This parameter is used for sorting by tags.
+ :type torder_by: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._list_serialize(fields=fields,
+ filter=filter,
+ offset=offset,
+ limit=limit,
+ page_token=page_token,
+ order_by=order_by,
+ tfilter=tfilter,
+ torder_by=torder_by,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ListTCPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ )
+
+ @validate_call
+ def list_without_preload_content(
+ self,
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ filter: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators | "
+ )] = None,
+ offset: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'. "
+ )] = None,
+ limit: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value. "
+ )] = None,
+ page_token: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " The service-defined string used to identify a page of resources. A null value indicates the first page. "
+ )] = None,
+ order_by: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order. "
+ )] = None,
+ tfilter: Annotated[
+ Optional[StrictStr],
+ Field(description="This parameter is used for filtering by tags."
+ )] = None,
+ torder_by: Annotated[
+ Optional[StrictStr],
+ Field(description="This parameter is used for sorting by tags."
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> RESTResponseType:
+ """Retrieve TCPHealthCheck objects.
+
+ Use this method to retrieve __TCPHealthCheck__ objects.
+
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param filter: A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators |
+ :type filter: str
+ :param offset: The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'.
+ :type offset: int
+ :param limit: The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value.
+ :type limit: int
+ :param page_token: The service-defined string used to identify a page of resources. A null value indicates the first page.
+ :type page_token: str
+ :param order_by: A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order.
+ :type order_by: str
+ :param tfilter: This parameter is used for filtering by tags.
+ :type tfilter: str
+ :param torder_by: This parameter is used for sorting by tags.
+ :type torder_by: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._list_serialize(fields=fields,
+ filter=filter,
+ offset=offset,
+ limit=limit,
+ page_token=page_token,
+ order_by=order_by,
+ tfilter=tfilter,
+ torder_by=torder_by,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ListTCPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ return response_data.response
+
+ def _list_serialize(
+ self,
+ fields,
+ filter,
+ offset,
+ limit,
+ page_token,
+ order_by,
+ tfilter,
+ torder_by,
+ _request_auth,
+ _content_type,
+ _headers,
+ _host_index,
+ ) -> RequestSerialized:
+
+ _host = None
+
+ _collection_formats: Dict[str, str] = {}
+
+ _path_params: Dict[str, str] = {}
+ _query_params: List[Tuple[str, str]] = []
+ _header_params: Dict[str, Optional[str]] = _headers or {}
+ _form_params: List[Tuple[str, str]] = []
+ _files: Dict[str, Union[str, bytes]] = {}
+ _body_params: Optional[bytes] = None
+
+ # process the path parameters
+ # process the query parameters
+ if fields is not None:
+
+ _query_params.append(('_fields', fields))
+
+ if filter is not None:
+
+ _query_params.append(('_filter', filter))
+
+ if offset is not None:
+
+ _query_params.append(('_offset', offset))
+
+ if limit is not None:
+
+ _query_params.append(('_limit', limit))
+
+ if page_token is not None:
+
+ _query_params.append(('_page_token', page_token))
+
+ if order_by is not None:
+
+ _query_params.append(('_order_by', order_by))
+
+ if tfilter is not None:
+
+ _query_params.append(('_tfilter', tfilter))
+
+ if torder_by is not None:
+
+ _query_params.append(('_torder_by', torder_by))
+
+ # process the header parameters
+ # process the form parameters
+ # process the body parameter
+
+ # set the HTTP header `Accept`
+ _header_params['Accept'] = self.api_client.select_header_accept(
+ ['application/json'])
+
+ # authentication setting
+ _auth_settings: List[str] = ['ApiKeyAuth']
+
+ return self.api_client.param_serialize(
+ method='GET',
+ base_path='/api/ddi/v1',
+ resource_path='/dtc/health_check_tcp',
+ path_params=_path_params,
+ query_params=_query_params,
+ header_params=_header_params,
+ body=_body_params,
+ post_params=_form_params,
+ files=_files,
+ auth_settings=_auth_settings,
+ collection_formats=_collection_formats,
+ _host=_host,
+ _request_auth=_request_auth)
+
+ @validate_call
+ def read(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ReadTCPHealthCheckResponse:
+ """Retrieve the TCPHealthCheck object.
+
+ Use this method to retrieve a __TCPHealthCheck__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._read_serialize(id=id,
+ fields=fields,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ReadTCPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ ).data
+
+ @validate_call
+ def read_with_http_info(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ApiResponse[ReadTCPHealthCheckResponse]:
+ """Retrieve the TCPHealthCheck object.
+
+ Use this method to retrieve a __TCPHealthCheck__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._read_serialize(id=id,
+ fields=fields,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ReadTCPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ )
+
+ @validate_call
+ def read_without_preload_content(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> RESTResponseType:
+ """Retrieve the TCPHealthCheck object.
+
+ Use this method to retrieve a __TCPHealthCheck__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._read_serialize(id=id,
+ fields=fields,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ReadTCPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ return response_data.response
+
+ def _read_serialize(
+ self,
+ id,
+ fields,
+ _request_auth,
+ _content_type,
+ _headers,
+ _host_index,
+ ) -> RequestSerialized:
+
+ _host = None
+
+ _collection_formats: Dict[str, str] = {}
+
+ _path_params: Dict[str, str] = {}
+ _query_params: List[Tuple[str, str]] = []
+ _header_params: Dict[str, Optional[str]] = _headers or {}
+ _form_params: List[Tuple[str, str]] = []
+ _files: Dict[str, Union[str, bytes]] = {}
+ _body_params: Optional[bytes] = None
+
+ # process the path parameters
+ if id is not None:
+ _path_params['id'] = self.api_client.path_param_value('id', id)
+ # process the query parameters
+ if fields is not None:
+
+ _query_params.append(('_fields', fields))
+
+ # process the header parameters
+ # process the form parameters
+ # process the body parameter
+
+ # set the HTTP header `Accept`
+ _header_params['Accept'] = self.api_client.select_header_accept(
+ ['application/json'])
+
+ # authentication setting
+ _auth_settings: List[str] = ['ApiKeyAuth']
+
+ return self.api_client.param_serialize(
+ method='GET',
+ base_path='/api/ddi/v1',
+ resource_path='/dtc/health_check_tcp/{id}',
+ path_params=_path_params,
+ query_params=_query_params,
+ header_params=_header_params,
+ body=_body_params,
+ post_params=_form_params,
+ files=_files,
+ auth_settings=_auth_settings,
+ collection_formats=_collection_formats,
+ _host=_host,
+ _request_auth=_request_auth)
+
+ @validate_call
+ def update(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ body: TCPHealthCheck,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> UpdateTCPHealthCheckResponse:
+ """Update the TCPHealthCheck object.
+
+ Use this method to update a __TCPHealthCheck__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param body: (required)
+ :type body: TCPHealthCheck
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._update_serialize(id=id,
+ body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "UpdateTCPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ ).data
+
+ @validate_call
+ def update_with_http_info(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ body: TCPHealthCheck,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ApiResponse[UpdateTCPHealthCheckResponse]:
+ """Update the TCPHealthCheck object.
+
+ Use this method to update a __TCPHealthCheck__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param body: (required)
+ :type body: TCPHealthCheck
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._update_serialize(id=id,
+ body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "UpdateTCPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ )
+
+ @validate_call
+ def update_without_preload_content(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ body: TCPHealthCheck,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> RESTResponseType:
+ """Update the TCPHealthCheck object.
+
+ Use this method to update a __TCPHealthCheck__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param body: (required)
+ :type body: TCPHealthCheck
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._update_serialize(id=id,
+ body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "UpdateTCPHealthCheckResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ return response_data.response
+
+ def _update_serialize(
+ self,
+ id,
+ body,
+ _request_auth,
+ _content_type,
+ _headers,
+ _host_index,
+ ) -> RequestSerialized:
+
+ _host = None
+
+ _collection_formats: Dict[str, str] = {}
+
+ _path_params: Dict[str, str] = {}
+ _query_params: List[Tuple[str, str]] = []
+ _header_params: Dict[str, Optional[str]] = _headers or {}
+ _form_params: List[Tuple[str, str]] = []
+ _files: Dict[str, Union[str, bytes]] = {}
+ _body_params: Optional[bytes] = None
+
+ # process the path parameters
+ if id is not None:
+ _path_params['id'] = self.api_client.path_param_value('id', id)
+ # process the query parameters
+ # process the header parameters
+ # process the form parameters
+ # process the body parameter
+ if body is not None:
+ _body_params = body
+
+ # set the HTTP header `Accept`
+ _header_params['Accept'] = self.api_client.select_header_accept(
+ ['application/json'])
+
+ # set the HTTP header `Content-Type`
+ if _content_type:
+ _header_params['Content-Type'] = _content_type
+ else:
+ _default_content_type = (
+ self.api_client.select_header_content_type(
+ ['application/json']))
+ if _default_content_type is not None:
+ _header_params['Content-Type'] = _default_content_type
+
+ # authentication setting
+ _auth_settings: List[str] = ['ApiKeyAuth']
+
+ return self.api_client.param_serialize(
+ method='PATCH',
+ base_path='/api/ddi/v1',
+ resource_path='/dtc/health_check_tcp/{id}',
+ path_params=_path_params,
+ query_params=_query_params,
+ header_params=_header_params,
+ body=_body_params,
+ post_params=_form_params,
+ files=_files,
+ auth_settings=_auth_settings,
+ collection_formats=_collection_formats,
+ _host=_host,
+ _request_auth=_request_auth)
diff --git a/src/dtc/api/policy_api.py b/src/dtc/api/policy_api.py
new file mode 100644
index 0000000..a587e34
--- /dev/null
+++ b/src/dtc/api/policy_api.py
@@ -0,0 +1,1503 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+import warnings
+from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
+from typing import Any, Dict, List, Optional, Tuple, Union
+from typing_extensions import Annotated
+
+from pydantic import Field, StrictInt, StrictStr
+from typing import Optional
+from typing_extensions import Annotated
+from dtc.models.create_policy_response import CreatePolicyResponse
+from dtc.models.list_policy_response import ListPolicyResponse
+from dtc.models.policy import Policy
+from dtc.models.read_policy_response import ReadPolicyResponse
+from dtc.models.update_policy_response import UpdatePolicyResponse
+from dtc import models
+
+from universal_ddi_client.api_client import ApiClient, RequestSerialized
+from universal_ddi_client.api_response import ApiResponse
+from universal_ddi_client.rest import RESTResponseType
+
+
+class PolicyApi:
+ """NOTE: This class is auto generated by OpenAPI Generator
+ Ref: https://openapi-generator.tech
+
+ Do not edit the class manually.
+ """
+
+ def __init__(self, api_client=None) -> None:
+ if api_client is None:
+ api_client = ApiClient.get_default()
+ self.api_client = api_client
+
+ @validate_call
+ def create(
+ self,
+ body: Policy,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> CreatePolicyResponse:
+ """Create the Policy object.
+
+ Use this method to create a __Policy__ object.
+
+ :param body: (required)
+ :type body: Policy
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._create_serialize(body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "CreatePolicyResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ ).data
+
+ @validate_call
+ def create_with_http_info(
+ self,
+ body: Policy,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ApiResponse[CreatePolicyResponse]:
+ """Create the Policy object.
+
+ Use this method to create a __Policy__ object.
+
+ :param body: (required)
+ :type body: Policy
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._create_serialize(body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "CreatePolicyResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ )
+
+ @validate_call
+ def create_without_preload_content(
+ self,
+ body: Policy,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> RESTResponseType:
+ """Create the Policy object.
+
+ Use this method to create a __Policy__ object.
+
+ :param body: (required)
+ :type body: Policy
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._create_serialize(body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "CreatePolicyResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ return response_data.response
+
+ def _create_serialize(
+ self,
+ body,
+ _request_auth,
+ _content_type,
+ _headers,
+ _host_index,
+ ) -> RequestSerialized:
+
+ _host = None
+
+ _collection_formats: Dict[str, str] = {}
+
+ _path_params: Dict[str, str] = {}
+ _query_params: List[Tuple[str, str]] = []
+ _header_params: Dict[str, Optional[str]] = _headers or {}
+ _form_params: List[Tuple[str, str]] = []
+ _files: Dict[str, Union[str, bytes]] = {}
+ _body_params: Optional[bytes] = None
+
+ # process the path parameters
+ # process the query parameters
+ # process the header parameters
+ # process the form parameters
+ # process the body parameter
+ if body is not None:
+ _body_params = body
+
+ # set the HTTP header `Accept`
+ _header_params['Accept'] = self.api_client.select_header_accept(
+ ['application/json'])
+
+ # set the HTTP header `Content-Type`
+ if _content_type:
+ _header_params['Content-Type'] = _content_type
+ else:
+ _default_content_type = (
+ self.api_client.select_header_content_type(
+ ['application/json']))
+ if _default_content_type is not None:
+ _header_params['Content-Type'] = _default_content_type
+
+ # authentication setting
+ _auth_settings: List[str] = ['ApiKeyAuth']
+
+ return self.api_client.param_serialize(
+ method='POST',
+ base_path='/api/ddi/v1',
+ resource_path='/dtc/policy',
+ path_params=_path_params,
+ query_params=_query_params,
+ header_params=_header_params,
+ body=_body_params,
+ post_params=_form_params,
+ files=_files,
+ auth_settings=_auth_settings,
+ collection_formats=_collection_formats,
+ _host=_host,
+ _request_auth=_request_auth)
+
+ @validate_call
+ def delete(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> None:
+ """Delete the Policy object.
+
+ Use this method to delete a __Policy__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._delete_serialize(id=id,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': None,
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ ).data
+
+ @validate_call
+ def delete_with_http_info(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ApiResponse[None]:
+ """Delete the Policy object.
+
+ Use this method to delete a __Policy__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._delete_serialize(id=id,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': None,
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ )
+
+ @validate_call
+ def delete_without_preload_content(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> RESTResponseType:
+ """Delete the Policy object.
+
+ Use this method to delete a __Policy__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._delete_serialize(id=id,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': None,
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ return response_data.response
+
+ def _delete_serialize(
+ self,
+ id,
+ _request_auth,
+ _content_type,
+ _headers,
+ _host_index,
+ ) -> RequestSerialized:
+
+ _host = None
+
+ _collection_formats: Dict[str, str] = {}
+
+ _path_params: Dict[str, str] = {}
+ _query_params: List[Tuple[str, str]] = []
+ _header_params: Dict[str, Optional[str]] = _headers or {}
+ _form_params: List[Tuple[str, str]] = []
+ _files: Dict[str, Union[str, bytes]] = {}
+ _body_params: Optional[bytes] = None
+
+ # process the path parameters
+ if id is not None:
+ _path_params['id'] = self.api_client.path_param_value('id', id)
+ # process the query parameters
+ # process the header parameters
+ # process the form parameters
+ # process the body parameter
+
+ # authentication setting
+ _auth_settings: List[str] = ['ApiKeyAuth']
+
+ return self.api_client.param_serialize(
+ method='DELETE',
+ base_path='/api/ddi/v1',
+ resource_path='/dtc/policy/{id}',
+ path_params=_path_params,
+ query_params=_query_params,
+ header_params=_header_params,
+ body=_body_params,
+ post_params=_form_params,
+ files=_files,
+ auth_settings=_auth_settings,
+ collection_formats=_collection_formats,
+ _host=_host,
+ _request_auth=_request_auth)
+
+ @validate_call
+ def list(
+ self,
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ filter: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators | "
+ )] = None,
+ offset: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'. "
+ )] = None,
+ limit: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value. "
+ )] = None,
+ page_token: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " The service-defined string used to identify a page of resources. A null value indicates the first page. "
+ )] = None,
+ order_by: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order. "
+ )] = None,
+ tfilter: Annotated[
+ Optional[StrictStr],
+ Field(description="This parameter is used for filtering by tags."
+ )] = None,
+ torder_by: Annotated[
+ Optional[StrictStr],
+ Field(description="This parameter is used for sorting by tags."
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ListPolicyResponse:
+ """Retrieve Policy objects.
+
+ Use this method to retrieve __Policy__ objects.
+
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param filter: A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators |
+ :type filter: str
+ :param offset: The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'.
+ :type offset: int
+ :param limit: The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value.
+ :type limit: int
+ :param page_token: The service-defined string used to identify a page of resources. A null value indicates the first page.
+ :type page_token: str
+ :param order_by: A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order.
+ :type order_by: str
+ :param tfilter: This parameter is used for filtering by tags.
+ :type tfilter: str
+ :param torder_by: This parameter is used for sorting by tags.
+ :type torder_by: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._list_serialize(fields=fields,
+ filter=filter,
+ offset=offset,
+ limit=limit,
+ page_token=page_token,
+ order_by=order_by,
+ tfilter=tfilter,
+ torder_by=torder_by,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ListPolicyResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ ).data
+
+ @validate_call
+ def list_with_http_info(
+ self,
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ filter: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators | "
+ )] = None,
+ offset: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'. "
+ )] = None,
+ limit: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value. "
+ )] = None,
+ page_token: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " The service-defined string used to identify a page of resources. A null value indicates the first page. "
+ )] = None,
+ order_by: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order. "
+ )] = None,
+ tfilter: Annotated[
+ Optional[StrictStr],
+ Field(description="This parameter is used for filtering by tags."
+ )] = None,
+ torder_by: Annotated[
+ Optional[StrictStr],
+ Field(description="This parameter is used for sorting by tags."
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ApiResponse[ListPolicyResponse]:
+ """Retrieve Policy objects.
+
+ Use this method to retrieve __Policy__ objects.
+
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param filter: A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators |
+ :type filter: str
+ :param offset: The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'.
+ :type offset: int
+ :param limit: The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value.
+ :type limit: int
+ :param page_token: The service-defined string used to identify a page of resources. A null value indicates the first page.
+ :type page_token: str
+ :param order_by: A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order.
+ :type order_by: str
+ :param tfilter: This parameter is used for filtering by tags.
+ :type tfilter: str
+ :param torder_by: This parameter is used for sorting by tags.
+ :type torder_by: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._list_serialize(fields=fields,
+ filter=filter,
+ offset=offset,
+ limit=limit,
+ page_token=page_token,
+ order_by=order_by,
+ tfilter=tfilter,
+ torder_by=torder_by,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ListPolicyResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ )
+
+ @validate_call
+ def list_without_preload_content(
+ self,
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ filter: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators | "
+ )] = None,
+ offset: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'. "
+ )] = None,
+ limit: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value. "
+ )] = None,
+ page_token: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " The service-defined string used to identify a page of resources. A null value indicates the first page. "
+ )] = None,
+ order_by: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order. "
+ )] = None,
+ tfilter: Annotated[
+ Optional[StrictStr],
+ Field(description="This parameter is used for filtering by tags."
+ )] = None,
+ torder_by: Annotated[
+ Optional[StrictStr],
+ Field(description="This parameter is used for sorting by tags."
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> RESTResponseType:
+ """Retrieve Policy objects.
+
+ Use this method to retrieve __Policy__ objects.
+
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param filter: A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators |
+ :type filter: str
+ :param offset: The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'.
+ :type offset: int
+ :param limit: The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value.
+ :type limit: int
+ :param page_token: The service-defined string used to identify a page of resources. A null value indicates the first page.
+ :type page_token: str
+ :param order_by: A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order.
+ :type order_by: str
+ :param tfilter: This parameter is used for filtering by tags.
+ :type tfilter: str
+ :param torder_by: This parameter is used for sorting by tags.
+ :type torder_by: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._list_serialize(fields=fields,
+ filter=filter,
+ offset=offset,
+ limit=limit,
+ page_token=page_token,
+ order_by=order_by,
+ tfilter=tfilter,
+ torder_by=torder_by,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ListPolicyResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ return response_data.response
+
+ def _list_serialize(
+ self,
+ fields,
+ filter,
+ offset,
+ limit,
+ page_token,
+ order_by,
+ tfilter,
+ torder_by,
+ _request_auth,
+ _content_type,
+ _headers,
+ _host_index,
+ ) -> RequestSerialized:
+
+ _host = None
+
+ _collection_formats: Dict[str, str] = {}
+
+ _path_params: Dict[str, str] = {}
+ _query_params: List[Tuple[str, str]] = []
+ _header_params: Dict[str, Optional[str]] = _headers or {}
+ _form_params: List[Tuple[str, str]] = []
+ _files: Dict[str, Union[str, bytes]] = {}
+ _body_params: Optional[bytes] = None
+
+ # process the path parameters
+ # process the query parameters
+ if fields is not None:
+
+ _query_params.append(('_fields', fields))
+
+ if filter is not None:
+
+ _query_params.append(('_filter', filter))
+
+ if offset is not None:
+
+ _query_params.append(('_offset', offset))
+
+ if limit is not None:
+
+ _query_params.append(('_limit', limit))
+
+ if page_token is not None:
+
+ _query_params.append(('_page_token', page_token))
+
+ if order_by is not None:
+
+ _query_params.append(('_order_by', order_by))
+
+ if tfilter is not None:
+
+ _query_params.append(('_tfilter', tfilter))
+
+ if torder_by is not None:
+
+ _query_params.append(('_torder_by', torder_by))
+
+ # process the header parameters
+ # process the form parameters
+ # process the body parameter
+
+ # set the HTTP header `Accept`
+ _header_params['Accept'] = self.api_client.select_header_accept(
+ ['application/json'])
+
+ # authentication setting
+ _auth_settings: List[str] = ['ApiKeyAuth']
+
+ return self.api_client.param_serialize(
+ method='GET',
+ base_path='/api/ddi/v1',
+ resource_path='/dtc/policy',
+ path_params=_path_params,
+ query_params=_query_params,
+ header_params=_header_params,
+ body=_body_params,
+ post_params=_form_params,
+ files=_files,
+ auth_settings=_auth_settings,
+ collection_formats=_collection_formats,
+ _host=_host,
+ _request_auth=_request_auth)
+
+ @validate_call
+ def read(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ReadPolicyResponse:
+ """Retrieve the Policy object.
+
+ Use this method to retrieve a __Policy__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._read_serialize(id=id,
+ fields=fields,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ReadPolicyResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ ).data
+
+ @validate_call
+ def read_with_http_info(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ApiResponse[ReadPolicyResponse]:
+ """Retrieve the Policy object.
+
+ Use this method to retrieve a __Policy__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._read_serialize(id=id,
+ fields=fields,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ReadPolicyResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ )
+
+ @validate_call
+ def read_without_preload_content(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> RESTResponseType:
+ """Retrieve the Policy object.
+
+ Use this method to retrieve a __Policy__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._read_serialize(id=id,
+ fields=fields,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ReadPolicyResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ return response_data.response
+
+ def _read_serialize(
+ self,
+ id,
+ fields,
+ _request_auth,
+ _content_type,
+ _headers,
+ _host_index,
+ ) -> RequestSerialized:
+
+ _host = None
+
+ _collection_formats: Dict[str, str] = {}
+
+ _path_params: Dict[str, str] = {}
+ _query_params: List[Tuple[str, str]] = []
+ _header_params: Dict[str, Optional[str]] = _headers or {}
+ _form_params: List[Tuple[str, str]] = []
+ _files: Dict[str, Union[str, bytes]] = {}
+ _body_params: Optional[bytes] = None
+
+ # process the path parameters
+ if id is not None:
+ _path_params['id'] = self.api_client.path_param_value('id', id)
+ # process the query parameters
+ if fields is not None:
+
+ _query_params.append(('_fields', fields))
+
+ # process the header parameters
+ # process the form parameters
+ # process the body parameter
+
+ # set the HTTP header `Accept`
+ _header_params['Accept'] = self.api_client.select_header_accept(
+ ['application/json'])
+
+ # authentication setting
+ _auth_settings: List[str] = ['ApiKeyAuth']
+
+ return self.api_client.param_serialize(
+ method='GET',
+ base_path='/api/ddi/v1',
+ resource_path='/dtc/policy/{id}',
+ path_params=_path_params,
+ query_params=_query_params,
+ header_params=_header_params,
+ body=_body_params,
+ post_params=_form_params,
+ files=_files,
+ auth_settings=_auth_settings,
+ collection_formats=_collection_formats,
+ _host=_host,
+ _request_auth=_request_auth)
+
+ @validate_call
+ def update(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ body: Policy,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> UpdatePolicyResponse:
+ """Update the Policy object.
+
+ Use this method to update a __Policy__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param body: (required)
+ :type body: Policy
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._update_serialize(id=id,
+ body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "UpdatePolicyResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ ).data
+
+ @validate_call
+ def update_with_http_info(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ body: Policy,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ApiResponse[UpdatePolicyResponse]:
+ """Update the Policy object.
+
+ Use this method to update a __Policy__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param body: (required)
+ :type body: Policy
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._update_serialize(id=id,
+ body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "UpdatePolicyResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ )
+
+ @validate_call
+ def update_without_preload_content(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ body: Policy,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> RESTResponseType:
+ """Update the Policy object.
+
+ Use this method to update a __Policy__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param body: (required)
+ :type body: Policy
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._update_serialize(id=id,
+ body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "UpdatePolicyResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ return response_data.response
+
+ def _update_serialize(
+ self,
+ id,
+ body,
+ _request_auth,
+ _content_type,
+ _headers,
+ _host_index,
+ ) -> RequestSerialized:
+
+ _host = None
+
+ _collection_formats: Dict[str, str] = {}
+
+ _path_params: Dict[str, str] = {}
+ _query_params: List[Tuple[str, str]] = []
+ _header_params: Dict[str, Optional[str]] = _headers or {}
+ _form_params: List[Tuple[str, str]] = []
+ _files: Dict[str, Union[str, bytes]] = {}
+ _body_params: Optional[bytes] = None
+
+ # process the path parameters
+ if id is not None:
+ _path_params['id'] = self.api_client.path_param_value('id', id)
+ # process the query parameters
+ # process the header parameters
+ # process the form parameters
+ # process the body parameter
+ if body is not None:
+ _body_params = body
+
+ # set the HTTP header `Accept`
+ _header_params['Accept'] = self.api_client.select_header_accept(
+ ['application/json'])
+
+ # set the HTTP header `Content-Type`
+ if _content_type:
+ _header_params['Content-Type'] = _content_type
+ else:
+ _default_content_type = (
+ self.api_client.select_header_content_type(
+ ['application/json']))
+ if _default_content_type is not None:
+ _header_params['Content-Type'] = _default_content_type
+
+ # authentication setting
+ _auth_settings: List[str] = ['ApiKeyAuth']
+
+ return self.api_client.param_serialize(
+ method='PATCH',
+ base_path='/api/ddi/v1',
+ resource_path='/dtc/policy/{id}',
+ path_params=_path_params,
+ query_params=_query_params,
+ header_params=_header_params,
+ body=_body_params,
+ post_params=_form_params,
+ files=_files,
+ auth_settings=_auth_settings,
+ collection_formats=_collection_formats,
+ _host=_host,
+ _request_auth=_request_auth)
diff --git a/src/dtc/api/pool_api.py b/src/dtc/api/pool_api.py
new file mode 100644
index 0000000..cc4e4bf
--- /dev/null
+++ b/src/dtc/api/pool_api.py
@@ -0,0 +1,1503 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+import warnings
+from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
+from typing import Any, Dict, List, Optional, Tuple, Union
+from typing_extensions import Annotated
+
+from pydantic import Field, StrictInt, StrictStr
+from typing import Optional
+from typing_extensions import Annotated
+from dtc.models.create_pool_response import CreatePoolResponse
+from dtc.models.list_pool_response import ListPoolResponse
+from dtc.models.pool import Pool
+from dtc.models.read_pool_response import ReadPoolResponse
+from dtc.models.update_pool_response import UpdatePoolResponse
+from dtc import models
+
+from universal_ddi_client.api_client import ApiClient, RequestSerialized
+from universal_ddi_client.api_response import ApiResponse
+from universal_ddi_client.rest import RESTResponseType
+
+
+class PoolApi:
+ """NOTE: This class is auto generated by OpenAPI Generator
+ Ref: https://openapi-generator.tech
+
+ Do not edit the class manually.
+ """
+
+ def __init__(self, api_client=None) -> None:
+ if api_client is None:
+ api_client = ApiClient.get_default()
+ self.api_client = api_client
+
+ @validate_call
+ def create(
+ self,
+ body: Pool,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> CreatePoolResponse:
+ """Create the Pool object.
+
+ Use this method to create a __Pool__ object.
+
+ :param body: (required)
+ :type body: Pool
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._create_serialize(body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "CreatePoolResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ ).data
+
+ @validate_call
+ def create_with_http_info(
+ self,
+ body: Pool,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ApiResponse[CreatePoolResponse]:
+ """Create the Pool object.
+
+ Use this method to create a __Pool__ object.
+
+ :param body: (required)
+ :type body: Pool
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._create_serialize(body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "CreatePoolResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ )
+
+ @validate_call
+ def create_without_preload_content(
+ self,
+ body: Pool,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> RESTResponseType:
+ """Create the Pool object.
+
+ Use this method to create a __Pool__ object.
+
+ :param body: (required)
+ :type body: Pool
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._create_serialize(body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "CreatePoolResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ return response_data.response
+
+ def _create_serialize(
+ self,
+ body,
+ _request_auth,
+ _content_type,
+ _headers,
+ _host_index,
+ ) -> RequestSerialized:
+
+ _host = None
+
+ _collection_formats: Dict[str, str] = {}
+
+ _path_params: Dict[str, str] = {}
+ _query_params: List[Tuple[str, str]] = []
+ _header_params: Dict[str, Optional[str]] = _headers or {}
+ _form_params: List[Tuple[str, str]] = []
+ _files: Dict[str, Union[str, bytes]] = {}
+ _body_params: Optional[bytes] = None
+
+ # process the path parameters
+ # process the query parameters
+ # process the header parameters
+ # process the form parameters
+ # process the body parameter
+ if body is not None:
+ _body_params = body
+
+ # set the HTTP header `Accept`
+ _header_params['Accept'] = self.api_client.select_header_accept(
+ ['application/json'])
+
+ # set the HTTP header `Content-Type`
+ if _content_type:
+ _header_params['Content-Type'] = _content_type
+ else:
+ _default_content_type = (
+ self.api_client.select_header_content_type(
+ ['application/json']))
+ if _default_content_type is not None:
+ _header_params['Content-Type'] = _default_content_type
+
+ # authentication setting
+ _auth_settings: List[str] = ['ApiKeyAuth']
+
+ return self.api_client.param_serialize(
+ method='POST',
+ base_path='/api/ddi/v1',
+ resource_path='/dtc/pool',
+ path_params=_path_params,
+ query_params=_query_params,
+ header_params=_header_params,
+ body=_body_params,
+ post_params=_form_params,
+ files=_files,
+ auth_settings=_auth_settings,
+ collection_formats=_collection_formats,
+ _host=_host,
+ _request_auth=_request_auth)
+
+ @validate_call
+ def delete(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> None:
+ """Delete the Pool object.
+
+ Use this method to delete a __Pool__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._delete_serialize(id=id,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': None,
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ ).data
+
+ @validate_call
+ def delete_with_http_info(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ApiResponse[None]:
+ """Delete the Pool object.
+
+ Use this method to delete a __Pool__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._delete_serialize(id=id,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': None,
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ )
+
+ @validate_call
+ def delete_without_preload_content(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> RESTResponseType:
+ """Delete the Pool object.
+
+ Use this method to delete a __Pool__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._delete_serialize(id=id,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': None,
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ return response_data.response
+
+ def _delete_serialize(
+ self,
+ id,
+ _request_auth,
+ _content_type,
+ _headers,
+ _host_index,
+ ) -> RequestSerialized:
+
+ _host = None
+
+ _collection_formats: Dict[str, str] = {}
+
+ _path_params: Dict[str, str] = {}
+ _query_params: List[Tuple[str, str]] = []
+ _header_params: Dict[str, Optional[str]] = _headers or {}
+ _form_params: List[Tuple[str, str]] = []
+ _files: Dict[str, Union[str, bytes]] = {}
+ _body_params: Optional[bytes] = None
+
+ # process the path parameters
+ if id is not None:
+ _path_params['id'] = self.api_client.path_param_value('id', id)
+ # process the query parameters
+ # process the header parameters
+ # process the form parameters
+ # process the body parameter
+
+ # authentication setting
+ _auth_settings: List[str] = ['ApiKeyAuth']
+
+ return self.api_client.param_serialize(
+ method='DELETE',
+ base_path='/api/ddi/v1',
+ resource_path='/dtc/pool/{id}',
+ path_params=_path_params,
+ query_params=_query_params,
+ header_params=_header_params,
+ body=_body_params,
+ post_params=_form_params,
+ files=_files,
+ auth_settings=_auth_settings,
+ collection_formats=_collection_formats,
+ _host=_host,
+ _request_auth=_request_auth)
+
+ @validate_call
+ def list(
+ self,
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ filter: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators | "
+ )] = None,
+ offset: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'. "
+ )] = None,
+ limit: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value. "
+ )] = None,
+ page_token: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " The service-defined string used to identify a page of resources. A null value indicates the first page. "
+ )] = None,
+ order_by: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order. "
+ )] = None,
+ tfilter: Annotated[
+ Optional[StrictStr],
+ Field(description="This parameter is used for filtering by tags."
+ )] = None,
+ torder_by: Annotated[
+ Optional[StrictStr],
+ Field(description="This parameter is used for sorting by tags."
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ListPoolResponse:
+ """Retrieve Pool objects.
+
+ Use this method to retrieve __Pool__ objects.
+
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param filter: A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators |
+ :type filter: str
+ :param offset: The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'.
+ :type offset: int
+ :param limit: The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value.
+ :type limit: int
+ :param page_token: The service-defined string used to identify a page of resources. A null value indicates the first page.
+ :type page_token: str
+ :param order_by: A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order.
+ :type order_by: str
+ :param tfilter: This parameter is used for filtering by tags.
+ :type tfilter: str
+ :param torder_by: This parameter is used for sorting by tags.
+ :type torder_by: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._list_serialize(fields=fields,
+ filter=filter,
+ offset=offset,
+ limit=limit,
+ page_token=page_token,
+ order_by=order_by,
+ tfilter=tfilter,
+ torder_by=torder_by,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ListPoolResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ ).data
+
+ @validate_call
+ def list_with_http_info(
+ self,
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ filter: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators | "
+ )] = None,
+ offset: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'. "
+ )] = None,
+ limit: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value. "
+ )] = None,
+ page_token: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " The service-defined string used to identify a page of resources. A null value indicates the first page. "
+ )] = None,
+ order_by: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order. "
+ )] = None,
+ tfilter: Annotated[
+ Optional[StrictStr],
+ Field(description="This parameter is used for filtering by tags."
+ )] = None,
+ torder_by: Annotated[
+ Optional[StrictStr],
+ Field(description="This parameter is used for sorting by tags."
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ApiResponse[ListPoolResponse]:
+ """Retrieve Pool objects.
+
+ Use this method to retrieve __Pool__ objects.
+
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param filter: A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators |
+ :type filter: str
+ :param offset: The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'.
+ :type offset: int
+ :param limit: The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value.
+ :type limit: int
+ :param page_token: The service-defined string used to identify a page of resources. A null value indicates the first page.
+ :type page_token: str
+ :param order_by: A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order.
+ :type order_by: str
+ :param tfilter: This parameter is used for filtering by tags.
+ :type tfilter: str
+ :param torder_by: This parameter is used for sorting by tags.
+ :type torder_by: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._list_serialize(fields=fields,
+ filter=filter,
+ offset=offset,
+ limit=limit,
+ page_token=page_token,
+ order_by=order_by,
+ tfilter=tfilter,
+ torder_by=torder_by,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ListPoolResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ )
+
+ @validate_call
+ def list_without_preload_content(
+ self,
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ filter: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators | "
+ )] = None,
+ offset: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'. "
+ )] = None,
+ limit: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value. "
+ )] = None,
+ page_token: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " The service-defined string used to identify a page of resources. A null value indicates the first page. "
+ )] = None,
+ order_by: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order. "
+ )] = None,
+ tfilter: Annotated[
+ Optional[StrictStr],
+ Field(description="This parameter is used for filtering by tags."
+ )] = None,
+ torder_by: Annotated[
+ Optional[StrictStr],
+ Field(description="This parameter is used for sorting by tags."
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> RESTResponseType:
+ """Retrieve Pool objects.
+
+ Use this method to retrieve __Pool__ objects.
+
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param filter: A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators |
+ :type filter: str
+ :param offset: The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'.
+ :type offset: int
+ :param limit: The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value.
+ :type limit: int
+ :param page_token: The service-defined string used to identify a page of resources. A null value indicates the first page.
+ :type page_token: str
+ :param order_by: A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order.
+ :type order_by: str
+ :param tfilter: This parameter is used for filtering by tags.
+ :type tfilter: str
+ :param torder_by: This parameter is used for sorting by tags.
+ :type torder_by: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._list_serialize(fields=fields,
+ filter=filter,
+ offset=offset,
+ limit=limit,
+ page_token=page_token,
+ order_by=order_by,
+ tfilter=tfilter,
+ torder_by=torder_by,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ListPoolResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ return response_data.response
+
+ def _list_serialize(
+ self,
+ fields,
+ filter,
+ offset,
+ limit,
+ page_token,
+ order_by,
+ tfilter,
+ torder_by,
+ _request_auth,
+ _content_type,
+ _headers,
+ _host_index,
+ ) -> RequestSerialized:
+
+ _host = None
+
+ _collection_formats: Dict[str, str] = {}
+
+ _path_params: Dict[str, str] = {}
+ _query_params: List[Tuple[str, str]] = []
+ _header_params: Dict[str, Optional[str]] = _headers or {}
+ _form_params: List[Tuple[str, str]] = []
+ _files: Dict[str, Union[str, bytes]] = {}
+ _body_params: Optional[bytes] = None
+
+ # process the path parameters
+ # process the query parameters
+ if fields is not None:
+
+ _query_params.append(('_fields', fields))
+
+ if filter is not None:
+
+ _query_params.append(('_filter', filter))
+
+ if offset is not None:
+
+ _query_params.append(('_offset', offset))
+
+ if limit is not None:
+
+ _query_params.append(('_limit', limit))
+
+ if page_token is not None:
+
+ _query_params.append(('_page_token', page_token))
+
+ if order_by is not None:
+
+ _query_params.append(('_order_by', order_by))
+
+ if tfilter is not None:
+
+ _query_params.append(('_tfilter', tfilter))
+
+ if torder_by is not None:
+
+ _query_params.append(('_torder_by', torder_by))
+
+ # process the header parameters
+ # process the form parameters
+ # process the body parameter
+
+ # set the HTTP header `Accept`
+ _header_params['Accept'] = self.api_client.select_header_accept(
+ ['application/json'])
+
+ # authentication setting
+ _auth_settings: List[str] = ['ApiKeyAuth']
+
+ return self.api_client.param_serialize(
+ method='GET',
+ base_path='/api/ddi/v1',
+ resource_path='/dtc/pool',
+ path_params=_path_params,
+ query_params=_query_params,
+ header_params=_header_params,
+ body=_body_params,
+ post_params=_form_params,
+ files=_files,
+ auth_settings=_auth_settings,
+ collection_formats=_collection_formats,
+ _host=_host,
+ _request_auth=_request_auth)
+
+ @validate_call
+ def read(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ReadPoolResponse:
+ """Retrieve the Pool object.
+
+ Use this method to retrieve a __Pool__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._read_serialize(id=id,
+ fields=fields,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ReadPoolResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ ).data
+
+ @validate_call
+ def read_with_http_info(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ApiResponse[ReadPoolResponse]:
+ """Retrieve the Pool object.
+
+ Use this method to retrieve a __Pool__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._read_serialize(id=id,
+ fields=fields,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ReadPoolResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ )
+
+ @validate_call
+ def read_without_preload_content(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> RESTResponseType:
+ """Retrieve the Pool object.
+
+ Use this method to retrieve a __Pool__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._read_serialize(id=id,
+ fields=fields,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ReadPoolResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ return response_data.response
+
+ def _read_serialize(
+ self,
+ id,
+ fields,
+ _request_auth,
+ _content_type,
+ _headers,
+ _host_index,
+ ) -> RequestSerialized:
+
+ _host = None
+
+ _collection_formats: Dict[str, str] = {}
+
+ _path_params: Dict[str, str] = {}
+ _query_params: List[Tuple[str, str]] = []
+ _header_params: Dict[str, Optional[str]] = _headers or {}
+ _form_params: List[Tuple[str, str]] = []
+ _files: Dict[str, Union[str, bytes]] = {}
+ _body_params: Optional[bytes] = None
+
+ # process the path parameters
+ if id is not None:
+ _path_params['id'] = self.api_client.path_param_value('id', id)
+ # process the query parameters
+ if fields is not None:
+
+ _query_params.append(('_fields', fields))
+
+ # process the header parameters
+ # process the form parameters
+ # process the body parameter
+
+ # set the HTTP header `Accept`
+ _header_params['Accept'] = self.api_client.select_header_accept(
+ ['application/json'])
+
+ # authentication setting
+ _auth_settings: List[str] = ['ApiKeyAuth']
+
+ return self.api_client.param_serialize(
+ method='GET',
+ base_path='/api/ddi/v1',
+ resource_path='/dtc/pool/{id}',
+ path_params=_path_params,
+ query_params=_query_params,
+ header_params=_header_params,
+ body=_body_params,
+ post_params=_form_params,
+ files=_files,
+ auth_settings=_auth_settings,
+ collection_formats=_collection_formats,
+ _host=_host,
+ _request_auth=_request_auth)
+
+ @validate_call
+ def update(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ body: Pool,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> UpdatePoolResponse:
+ """Update the Pool object.
+
+ Use this method to update a __Pool__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param body: (required)
+ :type body: Pool
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._update_serialize(id=id,
+ body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "UpdatePoolResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ ).data
+
+ @validate_call
+ def update_with_http_info(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ body: Pool,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ApiResponse[UpdatePoolResponse]:
+ """Update the Pool object.
+
+ Use this method to update a __Pool__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param body: (required)
+ :type body: Pool
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._update_serialize(id=id,
+ body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "UpdatePoolResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ )
+
+ @validate_call
+ def update_without_preload_content(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ body: Pool,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> RESTResponseType:
+ """Update the Pool object.
+
+ Use this method to update a __Pool__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param body: (required)
+ :type body: Pool
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._update_serialize(id=id,
+ body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "UpdatePoolResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ return response_data.response
+
+ def _update_serialize(
+ self,
+ id,
+ body,
+ _request_auth,
+ _content_type,
+ _headers,
+ _host_index,
+ ) -> RequestSerialized:
+
+ _host = None
+
+ _collection_formats: Dict[str, str] = {}
+
+ _path_params: Dict[str, str] = {}
+ _query_params: List[Tuple[str, str]] = []
+ _header_params: Dict[str, Optional[str]] = _headers or {}
+ _form_params: List[Tuple[str, str]] = []
+ _files: Dict[str, Union[str, bytes]] = {}
+ _body_params: Optional[bytes] = None
+
+ # process the path parameters
+ if id is not None:
+ _path_params['id'] = self.api_client.path_param_value('id', id)
+ # process the query parameters
+ # process the header parameters
+ # process the form parameters
+ # process the body parameter
+ if body is not None:
+ _body_params = body
+
+ # set the HTTP header `Accept`
+ _header_params['Accept'] = self.api_client.select_header_accept(
+ ['application/json'])
+
+ # set the HTTP header `Content-Type`
+ if _content_type:
+ _header_params['Content-Type'] = _content_type
+ else:
+ _default_content_type = (
+ self.api_client.select_header_content_type(
+ ['application/json']))
+ if _default_content_type is not None:
+ _header_params['Content-Type'] = _default_content_type
+
+ # authentication setting
+ _auth_settings: List[str] = ['ApiKeyAuth']
+
+ return self.api_client.param_serialize(
+ method='PATCH',
+ base_path='/api/ddi/v1',
+ resource_path='/dtc/pool/{id}',
+ path_params=_path_params,
+ query_params=_query_params,
+ header_params=_header_params,
+ body=_body_params,
+ post_params=_form_params,
+ files=_files,
+ auth_settings=_auth_settings,
+ collection_formats=_collection_formats,
+ _host=_host,
+ _request_auth=_request_auth)
diff --git a/src/dtc/api/server_api.py b/src/dtc/api/server_api.py
new file mode 100644
index 0000000..0fc5e76
--- /dev/null
+++ b/src/dtc/api/server_api.py
@@ -0,0 +1,1503 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+import warnings
+from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
+from typing import Any, Dict, List, Optional, Tuple, Union
+from typing_extensions import Annotated
+
+from pydantic import Field, StrictInt, StrictStr
+from typing import Optional
+from typing_extensions import Annotated
+from dtc.models.create_server_response import CreateServerResponse
+from dtc.models.list_server_response import ListServerResponse
+from dtc.models.read_server_response import ReadServerResponse
+from dtc.models.server import Server
+from dtc.models.update_server_response import UpdateServerResponse
+from dtc import models
+
+from universal_ddi_client.api_client import ApiClient, RequestSerialized
+from universal_ddi_client.api_response import ApiResponse
+from universal_ddi_client.rest import RESTResponseType
+
+
+class ServerApi:
+ """NOTE: This class is auto generated by OpenAPI Generator
+ Ref: https://openapi-generator.tech
+
+ Do not edit the class manually.
+ """
+
+ def __init__(self, api_client=None) -> None:
+ if api_client is None:
+ api_client = ApiClient.get_default()
+ self.api_client = api_client
+
+ @validate_call
+ def create(
+ self,
+ body: Server,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> CreateServerResponse:
+ """Create the Server object.
+
+ Use this method to create an __Server__ object.
+
+ :param body: (required)
+ :type body: Server
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._create_serialize(body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "CreateServerResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ ).data
+
+ @validate_call
+ def create_with_http_info(
+ self,
+ body: Server,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ApiResponse[CreateServerResponse]:
+ """Create the Server object.
+
+ Use this method to create an __Server__ object.
+
+ :param body: (required)
+ :type body: Server
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._create_serialize(body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "CreateServerResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ )
+
+ @validate_call
+ def create_without_preload_content(
+ self,
+ body: Server,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> RESTResponseType:
+ """Create the Server object.
+
+ Use this method to create an __Server__ object.
+
+ :param body: (required)
+ :type body: Server
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._create_serialize(body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "CreateServerResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ return response_data.response
+
+ def _create_serialize(
+ self,
+ body,
+ _request_auth,
+ _content_type,
+ _headers,
+ _host_index,
+ ) -> RequestSerialized:
+
+ _host = None
+
+ _collection_formats: Dict[str, str] = {}
+
+ _path_params: Dict[str, str] = {}
+ _query_params: List[Tuple[str, str]] = []
+ _header_params: Dict[str, Optional[str]] = _headers or {}
+ _form_params: List[Tuple[str, str]] = []
+ _files: Dict[str, Union[str, bytes]] = {}
+ _body_params: Optional[bytes] = None
+
+ # process the path parameters
+ # process the query parameters
+ # process the header parameters
+ # process the form parameters
+ # process the body parameter
+ if body is not None:
+ _body_params = body
+
+ # set the HTTP header `Accept`
+ _header_params['Accept'] = self.api_client.select_header_accept(
+ ['application/json'])
+
+ # set the HTTP header `Content-Type`
+ if _content_type:
+ _header_params['Content-Type'] = _content_type
+ else:
+ _default_content_type = (
+ self.api_client.select_header_content_type(
+ ['application/json']))
+ if _default_content_type is not None:
+ _header_params['Content-Type'] = _default_content_type
+
+ # authentication setting
+ _auth_settings: List[str] = ['ApiKeyAuth']
+
+ return self.api_client.param_serialize(
+ method='POST',
+ base_path='/api/ddi/v1',
+ resource_path='/dtc/server',
+ path_params=_path_params,
+ query_params=_query_params,
+ header_params=_header_params,
+ body=_body_params,
+ post_params=_form_params,
+ files=_files,
+ auth_settings=_auth_settings,
+ collection_formats=_collection_formats,
+ _host=_host,
+ _request_auth=_request_auth)
+
+ @validate_call
+ def delete(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> None:
+ """Delete Server object.
+
+ Use this method to delete an __Server__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._delete_serialize(id=id,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': None,
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ ).data
+
+ @validate_call
+ def delete_with_http_info(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ApiResponse[None]:
+ """Delete Server object.
+
+ Use this method to delete an __Server__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._delete_serialize(id=id,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': None,
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ )
+
+ @validate_call
+ def delete_without_preload_content(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> RESTResponseType:
+ """Delete Server object.
+
+ Use this method to delete an __Server__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._delete_serialize(id=id,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': None,
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ return response_data.response
+
+ def _delete_serialize(
+ self,
+ id,
+ _request_auth,
+ _content_type,
+ _headers,
+ _host_index,
+ ) -> RequestSerialized:
+
+ _host = None
+
+ _collection_formats: Dict[str, str] = {}
+
+ _path_params: Dict[str, str] = {}
+ _query_params: List[Tuple[str, str]] = []
+ _header_params: Dict[str, Optional[str]] = _headers or {}
+ _form_params: List[Tuple[str, str]] = []
+ _files: Dict[str, Union[str, bytes]] = {}
+ _body_params: Optional[bytes] = None
+
+ # process the path parameters
+ if id is not None:
+ _path_params['id'] = self.api_client.path_param_value('id', id)
+ # process the query parameters
+ # process the header parameters
+ # process the form parameters
+ # process the body parameter
+
+ # authentication setting
+ _auth_settings: List[str] = ['ApiKeyAuth']
+
+ return self.api_client.param_serialize(
+ method='DELETE',
+ base_path='/api/ddi/v1',
+ resource_path='/dtc/server/{id}',
+ path_params=_path_params,
+ query_params=_query_params,
+ header_params=_header_params,
+ body=_body_params,
+ post_params=_form_params,
+ files=_files,
+ auth_settings=_auth_settings,
+ collection_formats=_collection_formats,
+ _host=_host,
+ _request_auth=_request_auth)
+
+ @validate_call
+ def list(
+ self,
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ filter: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators | "
+ )] = None,
+ offset: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'. "
+ )] = None,
+ limit: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value. "
+ )] = None,
+ page_token: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " The service-defined string used to identify a page of resources. A null value indicates the first page. "
+ )] = None,
+ order_by: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order. "
+ )] = None,
+ tfilter: Annotated[
+ Optional[StrictStr],
+ Field(description="This parameter is used for filtering by tags."
+ )] = None,
+ torder_by: Annotated[
+ Optional[StrictStr],
+ Field(description="This parameter is used for sorting by tags."
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ListServerResponse:
+ """Retrieve Server objects.
+
+ Use this method to retrieve __Server__ objects.
+
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param filter: A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators |
+ :type filter: str
+ :param offset: The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'.
+ :type offset: int
+ :param limit: The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value.
+ :type limit: int
+ :param page_token: The service-defined string used to identify a page of resources. A null value indicates the first page.
+ :type page_token: str
+ :param order_by: A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order.
+ :type order_by: str
+ :param tfilter: This parameter is used for filtering by tags.
+ :type tfilter: str
+ :param torder_by: This parameter is used for sorting by tags.
+ :type torder_by: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._list_serialize(fields=fields,
+ filter=filter,
+ offset=offset,
+ limit=limit,
+ page_token=page_token,
+ order_by=order_by,
+ tfilter=tfilter,
+ torder_by=torder_by,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ListServerResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ ).data
+
+ @validate_call
+ def list_with_http_info(
+ self,
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ filter: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators | "
+ )] = None,
+ offset: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'. "
+ )] = None,
+ limit: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value. "
+ )] = None,
+ page_token: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " The service-defined string used to identify a page of resources. A null value indicates the first page. "
+ )] = None,
+ order_by: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order. "
+ )] = None,
+ tfilter: Annotated[
+ Optional[StrictStr],
+ Field(description="This parameter is used for filtering by tags."
+ )] = None,
+ torder_by: Annotated[
+ Optional[StrictStr],
+ Field(description="This parameter is used for sorting by tags."
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ApiResponse[ListServerResponse]:
+ """Retrieve Server objects.
+
+ Use this method to retrieve __Server__ objects.
+
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param filter: A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators |
+ :type filter: str
+ :param offset: The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'.
+ :type offset: int
+ :param limit: The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value.
+ :type limit: int
+ :param page_token: The service-defined string used to identify a page of resources. A null value indicates the first page.
+ :type page_token: str
+ :param order_by: A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order.
+ :type order_by: str
+ :param tfilter: This parameter is used for filtering by tags.
+ :type tfilter: str
+ :param torder_by: This parameter is used for sorting by tags.
+ :type torder_by: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._list_serialize(fields=fields,
+ filter=filter,
+ offset=offset,
+ limit=limit,
+ page_token=page_token,
+ order_by=order_by,
+ tfilter=tfilter,
+ torder_by=torder_by,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ListServerResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ )
+
+ @validate_call
+ def list_without_preload_content(
+ self,
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ filter: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators | "
+ )] = None,
+ offset: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'. "
+ )] = None,
+ limit: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value. "
+ )] = None,
+ page_token: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " The service-defined string used to identify a page of resources. A null value indicates the first page. "
+ )] = None,
+ order_by: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order. "
+ )] = None,
+ tfilter: Annotated[
+ Optional[StrictStr],
+ Field(description="This parameter is used for filtering by tags."
+ )] = None,
+ torder_by: Annotated[
+ Optional[StrictStr],
+ Field(description="This parameter is used for sorting by tags."
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> RESTResponseType:
+ """Retrieve Server objects.
+
+ Use this method to retrieve __Server__ objects.
+
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param filter: A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators |
+ :type filter: str
+ :param offset: The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'.
+ :type offset: int
+ :param limit: The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value.
+ :type limit: int
+ :param page_token: The service-defined string used to identify a page of resources. A null value indicates the first page.
+ :type page_token: str
+ :param order_by: A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order.
+ :type order_by: str
+ :param tfilter: This parameter is used for filtering by tags.
+ :type tfilter: str
+ :param torder_by: This parameter is used for sorting by tags.
+ :type torder_by: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._list_serialize(fields=fields,
+ filter=filter,
+ offset=offset,
+ limit=limit,
+ page_token=page_token,
+ order_by=order_by,
+ tfilter=tfilter,
+ torder_by=torder_by,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ListServerResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ return response_data.response
+
+ def _list_serialize(
+ self,
+ fields,
+ filter,
+ offset,
+ limit,
+ page_token,
+ order_by,
+ tfilter,
+ torder_by,
+ _request_auth,
+ _content_type,
+ _headers,
+ _host_index,
+ ) -> RequestSerialized:
+
+ _host = None
+
+ _collection_formats: Dict[str, str] = {}
+
+ _path_params: Dict[str, str] = {}
+ _query_params: List[Tuple[str, str]] = []
+ _header_params: Dict[str, Optional[str]] = _headers or {}
+ _form_params: List[Tuple[str, str]] = []
+ _files: Dict[str, Union[str, bytes]] = {}
+ _body_params: Optional[bytes] = None
+
+ # process the path parameters
+ # process the query parameters
+ if fields is not None:
+
+ _query_params.append(('_fields', fields))
+
+ if filter is not None:
+
+ _query_params.append(('_filter', filter))
+
+ if offset is not None:
+
+ _query_params.append(('_offset', offset))
+
+ if limit is not None:
+
+ _query_params.append(('_limit', limit))
+
+ if page_token is not None:
+
+ _query_params.append(('_page_token', page_token))
+
+ if order_by is not None:
+
+ _query_params.append(('_order_by', order_by))
+
+ if tfilter is not None:
+
+ _query_params.append(('_tfilter', tfilter))
+
+ if torder_by is not None:
+
+ _query_params.append(('_torder_by', torder_by))
+
+ # process the header parameters
+ # process the form parameters
+ # process the body parameter
+
+ # set the HTTP header `Accept`
+ _header_params['Accept'] = self.api_client.select_header_accept(
+ ['application/json'])
+
+ # authentication setting
+ _auth_settings: List[str] = ['ApiKeyAuth']
+
+ return self.api_client.param_serialize(
+ method='GET',
+ base_path='/api/ddi/v1',
+ resource_path='/dtc/server',
+ path_params=_path_params,
+ query_params=_query_params,
+ header_params=_header_params,
+ body=_body_params,
+ post_params=_form_params,
+ files=_files,
+ auth_settings=_auth_settings,
+ collection_formats=_collection_formats,
+ _host=_host,
+ _request_auth=_request_auth)
+
+ @validate_call
+ def read(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ReadServerResponse:
+ """Retrieve the Server object.
+
+ Use this method to retrieve a __Server__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._read_serialize(id=id,
+ fields=fields,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ReadServerResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ ).data
+
+ @validate_call
+ def read_with_http_info(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ApiResponse[ReadServerResponse]:
+ """Retrieve the Server object.
+
+ Use this method to retrieve a __Server__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._read_serialize(id=id,
+ fields=fields,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ReadServerResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ )
+
+ @validate_call
+ def read_without_preload_content(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> RESTResponseType:
+ """Retrieve the Server object.
+
+ Use this method to retrieve a __Server__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._read_serialize(id=id,
+ fields=fields,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ReadServerResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ return response_data.response
+
+ def _read_serialize(
+ self,
+ id,
+ fields,
+ _request_auth,
+ _content_type,
+ _headers,
+ _host_index,
+ ) -> RequestSerialized:
+
+ _host = None
+
+ _collection_formats: Dict[str, str] = {}
+
+ _path_params: Dict[str, str] = {}
+ _query_params: List[Tuple[str, str]] = []
+ _header_params: Dict[str, Optional[str]] = _headers or {}
+ _form_params: List[Tuple[str, str]] = []
+ _files: Dict[str, Union[str, bytes]] = {}
+ _body_params: Optional[bytes] = None
+
+ # process the path parameters
+ if id is not None:
+ _path_params['id'] = self.api_client.path_param_value('id', id)
+ # process the query parameters
+ if fields is not None:
+
+ _query_params.append(('_fields', fields))
+
+ # process the header parameters
+ # process the form parameters
+ # process the body parameter
+
+ # set the HTTP header `Accept`
+ _header_params['Accept'] = self.api_client.select_header_accept(
+ ['application/json'])
+
+ # authentication setting
+ _auth_settings: List[str] = ['ApiKeyAuth']
+
+ return self.api_client.param_serialize(
+ method='GET',
+ base_path='/api/ddi/v1',
+ resource_path='/dtc/server/{id}',
+ path_params=_path_params,
+ query_params=_query_params,
+ header_params=_header_params,
+ body=_body_params,
+ post_params=_form_params,
+ files=_files,
+ auth_settings=_auth_settings,
+ collection_formats=_collection_formats,
+ _host=_host,
+ _request_auth=_request_auth)
+
+ @validate_call
+ def update(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ body: Server,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> UpdateServerResponse:
+ """Update the Server object.
+
+ Use this method to update an __Server__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param body: (required)
+ :type body: Server
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._update_serialize(id=id,
+ body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "UpdateServerResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ ).data
+
+ @validate_call
+ def update_with_http_info(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ body: Server,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ApiResponse[UpdateServerResponse]:
+ """Update the Server object.
+
+ Use this method to update an __Server__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param body: (required)
+ :type body: Server
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._update_serialize(id=id,
+ body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "UpdateServerResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ )
+
+ @validate_call
+ def update_without_preload_content(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ body: Server,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> RESTResponseType:
+ """Update the Server object.
+
+ Use this method to update an __Server__ object.
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param body: (required)
+ :type body: Server
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._update_serialize(id=id,
+ body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "UpdateServerResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ return response_data.response
+
+ def _update_serialize(
+ self,
+ id,
+ body,
+ _request_auth,
+ _content_type,
+ _headers,
+ _host_index,
+ ) -> RequestSerialized:
+
+ _host = None
+
+ _collection_formats: Dict[str, str] = {}
+
+ _path_params: Dict[str, str] = {}
+ _query_params: List[Tuple[str, str]] = []
+ _header_params: Dict[str, Optional[str]] = _headers or {}
+ _form_params: List[Tuple[str, str]] = []
+ _files: Dict[str, Union[str, bytes]] = {}
+ _body_params: Optional[bytes] = None
+
+ # process the path parameters
+ if id is not None:
+ _path_params['id'] = self.api_client.path_param_value('id', id)
+ # process the query parameters
+ # process the header parameters
+ # process the form parameters
+ # process the body parameter
+ if body is not None:
+ _body_params = body
+
+ # set the HTTP header `Accept`
+ _header_params['Accept'] = self.api_client.select_header_accept(
+ ['application/json'])
+
+ # set the HTTP header `Content-Type`
+ if _content_type:
+ _header_params['Content-Type'] = _content_type
+ else:
+ _default_content_type = (
+ self.api_client.select_header_content_type(
+ ['application/json']))
+ if _default_content_type is not None:
+ _header_params['Content-Type'] = _default_content_type
+
+ # authentication setting
+ _auth_settings: List[str] = ['ApiKeyAuth']
+
+ return self.api_client.param_serialize(
+ method='PATCH',
+ base_path='/api/ddi/v1',
+ resource_path='/dtc/server/{id}',
+ path_params=_path_params,
+ query_params=_query_params,
+ header_params=_header_params,
+ body=_body_params,
+ post_params=_form_params,
+ files=_files,
+ auth_settings=_auth_settings,
+ collection_formats=_collection_formats,
+ _host=_host,
+ _request_auth=_request_auth)
diff --git a/src/dtc/api/snmp_user_security_api.py b/src/dtc/api/snmp_user_security_api.py
new file mode 100644
index 0000000..7b121dc
--- /dev/null
+++ b/src/dtc/api/snmp_user_security_api.py
@@ -0,0 +1,1436 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+import warnings
+from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
+from typing import Any, Dict, List, Optional, Tuple, Union
+from typing_extensions import Annotated
+
+from pydantic import Field, StrictInt, StrictStr
+from typing import Optional
+from typing_extensions import Annotated
+from dtc.models.create_snmp_user_security_response import CreateSNMPUserSecurityResponse
+from dtc.models.list_snmp_user_security_response import ListSNMPUserSecurityResponse
+from dtc.models.read_snmp_user_security_response import ReadSNMPUserSecurityResponse
+from dtc.models.snmp_user_security_model import SNMPUserSecurityModel
+from dtc.models.update_snmp_user_security_response import UpdateSNMPUserSecurityResponse
+from dtc import models
+
+from universal_ddi_client.api_client import ApiClient, RequestSerialized
+from universal_ddi_client.api_response import ApiResponse
+from universal_ddi_client.rest import RESTResponseType
+
+
+class SnmpUserSecurityApi:
+ """NOTE: This class is auto generated by OpenAPI Generator
+ Ref: https://openapi-generator.tech
+
+ Do not edit the class manually.
+ """
+
+ def __init__(self, api_client=None) -> None:
+ if api_client is None:
+ api_client = ApiClient.get_default()
+ self.api_client = api_client
+
+ @validate_call
+ def create(
+ self,
+ body: SNMPUserSecurityModel,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> CreateSNMPUserSecurityResponse:
+ """Create the SNMPUserSecurityModel object. Use this method to create a __SNMPUserSecurityModel__ object.
+
+
+ :param body: (required)
+ :type body: SNMPUserSecurityModel
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._create_serialize(body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "CreateSNMPUserSecurityResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ ).data
+
+ @validate_call
+ def create_with_http_info(
+ self,
+ body: SNMPUserSecurityModel,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ApiResponse[CreateSNMPUserSecurityResponse]:
+ """Create the SNMPUserSecurityModel object. Use this method to create a __SNMPUserSecurityModel__ object.
+
+
+ :param body: (required)
+ :type body: SNMPUserSecurityModel
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._create_serialize(body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "CreateSNMPUserSecurityResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ )
+
+ @validate_call
+ def create_without_preload_content(
+ self,
+ body: SNMPUserSecurityModel,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> RESTResponseType:
+ """Create the SNMPUserSecurityModel object. Use this method to create a __SNMPUserSecurityModel__ object.
+
+
+ :param body: (required)
+ :type body: SNMPUserSecurityModel
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._create_serialize(body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "CreateSNMPUserSecurityResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ return response_data.response
+
+ def _create_serialize(
+ self,
+ body,
+ _request_auth,
+ _content_type,
+ _headers,
+ _host_index,
+ ) -> RequestSerialized:
+
+ _host = None
+
+ _collection_formats: Dict[str, str] = {}
+
+ _path_params: Dict[str, str] = {}
+ _query_params: List[Tuple[str, str]] = []
+ _header_params: Dict[str, Optional[str]] = _headers or {}
+ _form_params: List[Tuple[str, str]] = []
+ _files: Dict[str, Union[str, bytes]] = {}
+ _body_params: Optional[bytes] = None
+
+ # process the path parameters
+ # process the query parameters
+ # process the header parameters
+ # process the form parameters
+ # process the body parameter
+ if body is not None:
+ _body_params = body
+
+ # set the HTTP header `Accept`
+ _header_params['Accept'] = self.api_client.select_header_accept(
+ ['application/json'])
+
+ # set the HTTP header `Content-Type`
+ if _content_type:
+ _header_params['Content-Type'] = _content_type
+ else:
+ _default_content_type = (
+ self.api_client.select_header_content_type(
+ ['application/json']))
+ if _default_content_type is not None:
+ _header_params['Content-Type'] = _default_content_type
+
+ # authentication setting
+ _auth_settings: List[str] = ['ApiKeyAuth']
+
+ return self.api_client.param_serialize(
+ method='POST',
+ base_path='/api/ddi/v1',
+ resource_path='/dtc/snmp_user_security_model',
+ path_params=_path_params,
+ query_params=_query_params,
+ header_params=_header_params,
+ body=_body_params,
+ post_params=_form_params,
+ files=_files,
+ auth_settings=_auth_settings,
+ collection_formats=_collection_formats,
+ _host=_host,
+ _request_auth=_request_auth)
+
+ @validate_call
+ def delete(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> None:
+ """Delete the SNMPUserSecurityModel object. Use this method to delete a __SNMPUserSecurityModel__ object.
+
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._delete_serialize(id=id,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': None,
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ ).data
+
+ @validate_call
+ def delete_with_http_info(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ApiResponse[None]:
+ """Delete the SNMPUserSecurityModel object. Use this method to delete a __SNMPUserSecurityModel__ object.
+
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._delete_serialize(id=id,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': None,
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ )
+
+ @validate_call
+ def delete_without_preload_content(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> RESTResponseType:
+ """Delete the SNMPUserSecurityModel object. Use this method to delete a __SNMPUserSecurityModel__ object.
+
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._delete_serialize(id=id,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': None,
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ return response_data.response
+
+ def _delete_serialize(
+ self,
+ id,
+ _request_auth,
+ _content_type,
+ _headers,
+ _host_index,
+ ) -> RequestSerialized:
+
+ _host = None
+
+ _collection_formats: Dict[str, str] = {}
+
+ _path_params: Dict[str, str] = {}
+ _query_params: List[Tuple[str, str]] = []
+ _header_params: Dict[str, Optional[str]] = _headers or {}
+ _form_params: List[Tuple[str, str]] = []
+ _files: Dict[str, Union[str, bytes]] = {}
+ _body_params: Optional[bytes] = None
+
+ # process the path parameters
+ if id is not None:
+ _path_params['id'] = self.api_client.path_param_value('id', id)
+ # process the query parameters
+ # process the header parameters
+ # process the form parameters
+ # process the body parameter
+
+ # authentication setting
+ _auth_settings: List[str] = ['ApiKeyAuth']
+
+ return self.api_client.param_serialize(
+ method='DELETE',
+ base_path='/api/ddi/v1',
+ resource_path='/dtc/snmp_user_security_model/{id}',
+ path_params=_path_params,
+ query_params=_query_params,
+ header_params=_header_params,
+ body=_body_params,
+ post_params=_form_params,
+ files=_files,
+ auth_settings=_auth_settings,
+ collection_formats=_collection_formats,
+ _host=_host,
+ _request_auth=_request_auth)
+
+ @validate_call
+ def list(
+ self,
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ filter: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators | "
+ )] = None,
+ offset: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'. "
+ )] = None,
+ limit: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value. "
+ )] = None,
+ page_token: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " The service-defined string used to identify a page of resources. A null value indicates the first page. "
+ )] = None,
+ order_by: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order. "
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ListSNMPUserSecurityResponse:
+ """Retrieve SNMPUserSecurityModel objects. Use this method to retrieve __SNMPUserSecurityModel__ objects.
+
+
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param filter: A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators |
+ :type filter: str
+ :param offset: The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'.
+ :type offset: int
+ :param limit: The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value.
+ :type limit: int
+ :param page_token: The service-defined string used to identify a page of resources. A null value indicates the first page.
+ :type page_token: str
+ :param order_by: A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order.
+ :type order_by: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._list_serialize(fields=fields,
+ filter=filter,
+ offset=offset,
+ limit=limit,
+ page_token=page_token,
+ order_by=order_by,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ListSNMPUserSecurityResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ ).data
+
+ @validate_call
+ def list_with_http_info(
+ self,
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ filter: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators | "
+ )] = None,
+ offset: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'. "
+ )] = None,
+ limit: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value. "
+ )] = None,
+ page_token: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " The service-defined string used to identify a page of resources. A null value indicates the first page. "
+ )] = None,
+ order_by: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order. "
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ApiResponse[ListSNMPUserSecurityResponse]:
+ """Retrieve SNMPUserSecurityModel objects. Use this method to retrieve __SNMPUserSecurityModel__ objects.
+
+
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param filter: A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators |
+ :type filter: str
+ :param offset: The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'.
+ :type offset: int
+ :param limit: The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value.
+ :type limit: int
+ :param page_token: The service-defined string used to identify a page of resources. A null value indicates the first page.
+ :type page_token: str
+ :param order_by: A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order.
+ :type order_by: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._list_serialize(fields=fields,
+ filter=filter,
+ offset=offset,
+ limit=limit,
+ page_token=page_token,
+ order_by=order_by,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ListSNMPUserSecurityResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ )
+
+ @validate_call
+ def list_without_preload_content(
+ self,
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ filter: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators | "
+ )] = None,
+ offset: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'. "
+ )] = None,
+ limit: Annotated[
+ Optional[StrictInt],
+ Field(
+ description=
+ " The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value. "
+ )] = None,
+ page_token: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " The service-defined string used to identify a page of resources. A null value indicates the first page. "
+ )] = None,
+ order_by: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order. "
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> RESTResponseType:
+ """Retrieve SNMPUserSecurityModel objects. Use this method to retrieve __SNMPUserSecurityModel__ objects.
+
+
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param filter: A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators |
+ :type filter: str
+ :param offset: The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'.
+ :type offset: int
+ :param limit: The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value.
+ :type limit: int
+ :param page_token: The service-defined string used to identify a page of resources. A null value indicates the first page.
+ :type page_token: str
+ :param order_by: A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order.
+ :type order_by: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._list_serialize(fields=fields,
+ filter=filter,
+ offset=offset,
+ limit=limit,
+ page_token=page_token,
+ order_by=order_by,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ListSNMPUserSecurityResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ return response_data.response
+
+ def _list_serialize(
+ self,
+ fields,
+ filter,
+ offset,
+ limit,
+ page_token,
+ order_by,
+ _request_auth,
+ _content_type,
+ _headers,
+ _host_index,
+ ) -> RequestSerialized:
+
+ _host = None
+
+ _collection_formats: Dict[str, str] = {}
+
+ _path_params: Dict[str, str] = {}
+ _query_params: List[Tuple[str, str]] = []
+ _header_params: Dict[str, Optional[str]] = _headers or {}
+ _form_params: List[Tuple[str, str]] = []
+ _files: Dict[str, Union[str, bytes]] = {}
+ _body_params: Optional[bytes] = None
+
+ # process the path parameters
+ # process the query parameters
+ if fields is not None:
+
+ _query_params.append(('_fields', fields))
+
+ if filter is not None:
+
+ _query_params.append(('_filter', filter))
+
+ if offset is not None:
+
+ _query_params.append(('_offset', offset))
+
+ if limit is not None:
+
+ _query_params.append(('_limit', limit))
+
+ if page_token is not None:
+
+ _query_params.append(('_page_token', page_token))
+
+ if order_by is not None:
+
+ _query_params.append(('_order_by', order_by))
+
+ # process the header parameters
+ # process the form parameters
+ # process the body parameter
+
+ # set the HTTP header `Accept`
+ _header_params['Accept'] = self.api_client.select_header_accept(
+ ['application/json'])
+
+ # authentication setting
+ _auth_settings: List[str] = ['ApiKeyAuth']
+
+ return self.api_client.param_serialize(
+ method='GET',
+ base_path='/api/ddi/v1',
+ resource_path='/dtc/snmp_user_security_model',
+ path_params=_path_params,
+ query_params=_query_params,
+ header_params=_header_params,
+ body=_body_params,
+ post_params=_form_params,
+ files=_files,
+ auth_settings=_auth_settings,
+ collection_formats=_collection_formats,
+ _host=_host,
+ _request_auth=_request_auth)
+
+ @validate_call
+ def read(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ReadSNMPUserSecurityResponse:
+ """Retrieve the SNMPUserSecurityModel object. Use this method to retrieve a __SNMPUserSecurityModel__ object.
+
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._read_serialize(id=id,
+ fields=fields,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ReadSNMPUserSecurityResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ ).data
+
+ @validate_call
+ def read_with_http_info(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ApiResponse[ReadSNMPUserSecurityResponse]:
+ """Retrieve the SNMPUserSecurityModel object. Use this method to retrieve a __SNMPUserSecurityModel__ object.
+
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._read_serialize(id=id,
+ fields=fields,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ReadSNMPUserSecurityResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ )
+
+ @validate_call
+ def read_without_preload_content(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ fields: Annotated[
+ Optional[StrictStr],
+ Field(
+ description=
+ " A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. "
+ )] = None,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> RESTResponseType:
+ """Retrieve the SNMPUserSecurityModel object. Use this method to retrieve a __SNMPUserSecurityModel__ object.
+
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param fields: A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names.
+ :type fields: str
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._read_serialize(id=id,
+ fields=fields,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "ReadSNMPUserSecurityResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ return response_data.response
+
+ def _read_serialize(
+ self,
+ id,
+ fields,
+ _request_auth,
+ _content_type,
+ _headers,
+ _host_index,
+ ) -> RequestSerialized:
+
+ _host = None
+
+ _collection_formats: Dict[str, str] = {}
+
+ _path_params: Dict[str, str] = {}
+ _query_params: List[Tuple[str, str]] = []
+ _header_params: Dict[str, Optional[str]] = _headers or {}
+ _form_params: List[Tuple[str, str]] = []
+ _files: Dict[str, Union[str, bytes]] = {}
+ _body_params: Optional[bytes] = None
+
+ # process the path parameters
+ if id is not None:
+ _path_params['id'] = self.api_client.path_param_value('id', id)
+ # process the query parameters
+ if fields is not None:
+
+ _query_params.append(('_fields', fields))
+
+ # process the header parameters
+ # process the form parameters
+ # process the body parameter
+
+ # set the HTTP header `Accept`
+ _header_params['Accept'] = self.api_client.select_header_accept(
+ ['application/json'])
+
+ # authentication setting
+ _auth_settings: List[str] = ['ApiKeyAuth']
+
+ return self.api_client.param_serialize(
+ method='GET',
+ base_path='/api/ddi/v1',
+ resource_path='/dtc/snmp_user_security_model/{id}',
+ path_params=_path_params,
+ query_params=_query_params,
+ header_params=_header_params,
+ body=_body_params,
+ post_params=_form_params,
+ files=_files,
+ auth_settings=_auth_settings,
+ collection_formats=_collection_formats,
+ _host=_host,
+ _request_auth=_request_auth)
+
+ @validate_call
+ def update(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ body: SNMPUserSecurityModel,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> UpdateSNMPUserSecurityResponse:
+ """Update the SNMPUserSecurityModel object. Use this method to update a __SNMPUserSecurityModel__ object.
+
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param body: (required)
+ :type body: SNMPUserSecurityModel
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._update_serialize(id=id,
+ body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "UpdateSNMPUserSecurityResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ ).data
+
+ @validate_call
+ def update_with_http_info(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ body: SNMPUserSecurityModel,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ApiResponse[UpdateSNMPUserSecurityResponse]:
+ """Update the SNMPUserSecurityModel object. Use this method to update a __SNMPUserSecurityModel__ object.
+
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param body: (required)
+ :type body: SNMPUserSecurityModel
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._update_serialize(id=id,
+ body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "UpdateSNMPUserSecurityResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ response_data.read()
+ return self.api_client.response_deserialize(
+ models=models,
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ )
+
+ @validate_call
+ def update_without_preload_content(
+ self,
+ id: Annotated[
+ StrictStr,
+ Field(description=
+ "An application specific resource identity of a resource")],
+ body: SNMPUserSecurityModel,
+ _request_timeout: Union[None, Annotated[StrictFloat,
+ Field(gt=0)],
+ Tuple[Annotated[StrictFloat,
+ Field(gt=0)],
+ Annotated[StrictFloat,
+ Field(gt=0)]]] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> RESTResponseType:
+ """Update the SNMPUserSecurityModel object. Use this method to update a __SNMPUserSecurityModel__ object.
+
+
+ :param id: An application specific resource identity of a resource (required)
+ :type id: str
+ :param body: (required)
+ :type body: SNMPUserSecurityModel
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._update_serialize(id=id,
+ body=body,
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index)
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "UpdateSNMPUserSecurityResponse",
+ }
+ response_data = self.api_client.call_api(
+ *_param, _request_timeout=_request_timeout)
+ return response_data.response
+
+ def _update_serialize(
+ self,
+ id,
+ body,
+ _request_auth,
+ _content_type,
+ _headers,
+ _host_index,
+ ) -> RequestSerialized:
+
+ _host = None
+
+ _collection_formats: Dict[str, str] = {}
+
+ _path_params: Dict[str, str] = {}
+ _query_params: List[Tuple[str, str]] = []
+ _header_params: Dict[str, Optional[str]] = _headers or {}
+ _form_params: List[Tuple[str, str]] = []
+ _files: Dict[str, Union[str, bytes]] = {}
+ _body_params: Optional[bytes] = None
+
+ # process the path parameters
+ if id is not None:
+ _path_params['id'] = self.api_client.path_param_value('id', id)
+ # process the query parameters
+ # process the header parameters
+ # process the form parameters
+ # process the body parameter
+ if body is not None:
+ _body_params = body
+
+ # set the HTTP header `Accept`
+ _header_params['Accept'] = self.api_client.select_header_accept(
+ ['application/json'])
+
+ # set the HTTP header `Content-Type`
+ if _content_type:
+ _header_params['Content-Type'] = _content_type
+ else:
+ _default_content_type = (
+ self.api_client.select_header_content_type(
+ ['application/json']))
+ if _default_content_type is not None:
+ _header_params['Content-Type'] = _default_content_type
+
+ # authentication setting
+ _auth_settings: List[str] = ['ApiKeyAuth']
+
+ return self.api_client.param_serialize(
+ method='PATCH',
+ base_path='/api/ddi/v1',
+ resource_path='/dtc/snmp_user_security_model/{id}',
+ path_params=_path_params,
+ query_params=_query_params,
+ header_params=_header_params,
+ body=_body_params,
+ post_params=_form_params,
+ files=_files,
+ auth_settings=_auth_settings,
+ collection_formats=_collection_formats,
+ _host=_host,
+ _request_auth=_request_auth)
diff --git a/src/dtc/docs/CreateHTTPHealthCheckResponse.md b/src/dtc/docs/CreateHTTPHealthCheckResponse.md
new file mode 100644
index 0000000..4e8b853
--- /dev/null
+++ b/src/dtc/docs/CreateHTTPHealthCheckResponse.md
@@ -0,0 +1,30 @@
+# CreateHTTPHealthCheckResponse
+
+The __HTTPHealthCheck__ object create response format.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**result** | [**HTTPHealthCheck**](HTTPHealthCheck.md) | The created __HTTPHealthCheck__ object. | [optional]
+
+## Example
+
+```python
+from dtc.models.create_http_health_check_response import CreateHTTPHealthCheckResponse
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of CreateHTTPHealthCheckResponse from a JSON string
+create_http_health_check_response_instance = CreateHTTPHealthCheckResponse.from_json(json)
+# print the JSON string representation of the object
+print(CreateHTTPHealthCheckResponse.to_json())
+
+# convert the object into a dict
+create_http_health_check_response_dict = create_http_health_check_response_instance.to_dict()
+# create an instance of CreateHTTPHealthCheckResponse from a dict
+create_http_health_check_response_from_dict = CreateHTTPHealthCheckResponse.from_dict(create_http_health_check_response_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/CreateICMPHealthCheckResponse.md b/src/dtc/docs/CreateICMPHealthCheckResponse.md
new file mode 100644
index 0000000..7a1a414
--- /dev/null
+++ b/src/dtc/docs/CreateICMPHealthCheckResponse.md
@@ -0,0 +1,30 @@
+# CreateICMPHealthCheckResponse
+
+The __ICMPHealthCheck__ object create response format.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**result** | [**ICMPHealthCheck**](ICMPHealthCheck.md) | The created __ICMPHealthCheck__ object. | [optional]
+
+## Example
+
+```python
+from dtc.models.create_icmp_health_check_response import CreateICMPHealthCheckResponse
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of CreateICMPHealthCheckResponse from a JSON string
+create_icmp_health_check_response_instance = CreateICMPHealthCheckResponse.from_json(json)
+# print the JSON string representation of the object
+print(CreateICMPHealthCheckResponse.to_json())
+
+# convert the object into a dict
+create_icmp_health_check_response_dict = create_icmp_health_check_response_instance.to_dict()
+# create an instance of CreateICMPHealthCheckResponse from a dict
+create_icmp_health_check_response_from_dict = CreateICMPHealthCheckResponse.from_dict(create_icmp_health_check_response_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/CreatePolicyResponse.md b/src/dtc/docs/CreatePolicyResponse.md
new file mode 100644
index 0000000..00f2118
--- /dev/null
+++ b/src/dtc/docs/CreatePolicyResponse.md
@@ -0,0 +1,30 @@
+# CreatePolicyResponse
+
+The __Policy__ object create response format.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**result** | [**Policy**](Policy.md) | The created __Policy__ object. | [optional]
+
+## Example
+
+```python
+from dtc.models.create_policy_response import CreatePolicyResponse
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of CreatePolicyResponse from a JSON string
+create_policy_response_instance = CreatePolicyResponse.from_json(json)
+# print the JSON string representation of the object
+print(CreatePolicyResponse.to_json())
+
+# convert the object into a dict
+create_policy_response_dict = create_policy_response_instance.to_dict()
+# create an instance of CreatePolicyResponse from a dict
+create_policy_response_from_dict = CreatePolicyResponse.from_dict(create_policy_response_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/CreatePoolResponse.md b/src/dtc/docs/CreatePoolResponse.md
new file mode 100644
index 0000000..700cc6b
--- /dev/null
+++ b/src/dtc/docs/CreatePoolResponse.md
@@ -0,0 +1,30 @@
+# CreatePoolResponse
+
+The __Pool__ object create response format.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**result** | [**Pool**](Pool.md) | The created __Pool__ object. | [optional]
+
+## Example
+
+```python
+from dtc.models.create_pool_response import CreatePoolResponse
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of CreatePoolResponse from a JSON string
+create_pool_response_instance = CreatePoolResponse.from_json(json)
+# print the JSON string representation of the object
+print(CreatePoolResponse.to_json())
+
+# convert the object into a dict
+create_pool_response_dict = create_pool_response_instance.to_dict()
+# create an instance of CreatePoolResponse from a dict
+create_pool_response_from_dict = CreatePoolResponse.from_dict(create_pool_response_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/CreateSNMPHealthCheckResponse.md b/src/dtc/docs/CreateSNMPHealthCheckResponse.md
new file mode 100644
index 0000000..3f1c348
--- /dev/null
+++ b/src/dtc/docs/CreateSNMPHealthCheckResponse.md
@@ -0,0 +1,30 @@
+# CreateSNMPHealthCheckResponse
+
+The __SNMPHealthCheck__ object create response format.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**result** | [**SNMPHealthCheck**](SNMPHealthCheck.md) | The created __SNMPHealthCheck__ object. | [optional]
+
+## Example
+
+```python
+from dtc.models.create_snmp_health_check_response import CreateSNMPHealthCheckResponse
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of CreateSNMPHealthCheckResponse from a JSON string
+create_snmp_health_check_response_instance = CreateSNMPHealthCheckResponse.from_json(json)
+# print the JSON string representation of the object
+print(CreateSNMPHealthCheckResponse.to_json())
+
+# convert the object into a dict
+create_snmp_health_check_response_dict = create_snmp_health_check_response_instance.to_dict()
+# create an instance of CreateSNMPHealthCheckResponse from a dict
+create_snmp_health_check_response_from_dict = CreateSNMPHealthCheckResponse.from_dict(create_snmp_health_check_response_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/CreateSNMPUserSecurityResponse.md b/src/dtc/docs/CreateSNMPUserSecurityResponse.md
new file mode 100644
index 0000000..e6a65fd
--- /dev/null
+++ b/src/dtc/docs/CreateSNMPUserSecurityResponse.md
@@ -0,0 +1,30 @@
+# CreateSNMPUserSecurityResponse
+
+The __SNMPUserSecurityModel__ object create response format.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**result** | [**SNMPUserSecurityModel**](SNMPUserSecurityModel.md) | | [optional]
+
+## Example
+
+```python
+from dtc.models.create_snmp_user_security_response import CreateSNMPUserSecurityResponse
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of CreateSNMPUserSecurityResponse from a JSON string
+create_snmp_user_security_response_instance = CreateSNMPUserSecurityResponse.from_json(json)
+# print the JSON string representation of the object
+print(CreateSNMPUserSecurityResponse.to_json())
+
+# convert the object into a dict
+create_snmp_user_security_response_dict = create_snmp_user_security_response_instance.to_dict()
+# create an instance of CreateSNMPUserSecurityResponse from a dict
+create_snmp_user_security_response_from_dict = CreateSNMPUserSecurityResponse.from_dict(create_snmp_user_security_response_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/CreateServerResponse.md b/src/dtc/docs/CreateServerResponse.md
new file mode 100644
index 0000000..e9d3ab3
--- /dev/null
+++ b/src/dtc/docs/CreateServerResponse.md
@@ -0,0 +1,30 @@
+# CreateServerResponse
+
+The __Server__ object create response format.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**result** | [**Server**](Server.md) | The created __Server__ object. | [optional]
+
+## Example
+
+```python
+from dtc.models.create_server_response import CreateServerResponse
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of CreateServerResponse from a JSON string
+create_server_response_instance = CreateServerResponse.from_json(json)
+# print the JSON string representation of the object
+print(CreateServerResponse.to_json())
+
+# convert the object into a dict
+create_server_response_dict = create_server_response_instance.to_dict()
+# create an instance of CreateServerResponse from a dict
+create_server_response_from_dict = CreateServerResponse.from_dict(create_server_response_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/CreateTCPHealthCheckResponse.md b/src/dtc/docs/CreateTCPHealthCheckResponse.md
new file mode 100644
index 0000000..d071707
--- /dev/null
+++ b/src/dtc/docs/CreateTCPHealthCheckResponse.md
@@ -0,0 +1,30 @@
+# CreateTCPHealthCheckResponse
+
+The __TCPHealthCheck__ object create response format.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**result** | [**TCPHealthCheck**](TCPHealthCheck.md) | The created __TCPHealthCheck__ object. | [optional]
+
+## Example
+
+```python
+from dtc.models.create_tcp_health_check_response import CreateTCPHealthCheckResponse
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of CreateTCPHealthCheckResponse from a JSON string
+create_tcp_health_check_response_instance = CreateTCPHealthCheckResponse.from_json(json)
+# print the JSON string representation of the object
+print(CreateTCPHealthCheckResponse.to_json())
+
+# convert the object into a dict
+create_tcp_health_check_response_dict = create_tcp_health_check_response_instance.to_dict()
+# create an instance of CreateTCPHealthCheckResponse from a dict
+create_tcp_health_check_response_from_dict = CreateTCPHealthCheckResponse.from_dict(create_tcp_health_check_response_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/HTTPHealthCheck.md b/src/dtc/docs/HTTPHealthCheck.md
new file mode 100644
index 0000000..0974033
--- /dev/null
+++ b/src/dtc/docs/HTTPHealthCheck.md
@@ -0,0 +1,49 @@
+# HTTPHealthCheck
+
+A __HTTPHealthCheck__ (_dtc/health_check_http_) represents a DTC __Server__ health check based on the Hypertext Transfer Protocol (HTTP).
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**check_response_body** | **bool** | Optional. Flag which enables checking of the HTTP response body content. Defaults to _false_. | [optional]
+**check_response_body_negative** | **bool** | Optional. Flag which changes the meaning of the regex match result. If set to _true_, the response is valid if regular expression matches not found. Defaults to _false_. The flag is currently not supported. | [optional]
+**check_response_body_regex** | **str** | Optional. Regular expression to search for a string in the HTTP response body. Error if empty while _check_response_body_ is _true_. Defaults to empty. | [optional]
+**check_response_header** | **bool** | Optional. Flag which enables checking of the HTTP response header(s) content. Defaults to _false_. | [optional]
+**check_response_header_negative** | **bool** | Optional. Flag which changes the meaning of the header regexes match result. If set to _true_, neither expression matches must be found in their respective headers for the headers to be considered valid. Defaults to _false_. | [optional]
+**check_response_header_regexes** | [**List[HeaderRegex]**](HeaderRegex.md) | Optional. List of (header, regular expression) pairs. All expression matches must be found in their respective headers for the headers to be considered valid. Error if empty while _check_response_header_ is _true_. Defaults to empty. | [optional]
+**codes** | **str** | Optional. Response Status Codes meaning the health check is successful. If empty, any code means success. Individual codes and code ranges are supported, ex. \"102,105-107,109-110,120\". | [optional]
+**comment** | **str** | Optional. Comment for __HTTPHealthCheck__. | [optional]
+**disabled** | **bool** | Optional. Flag which enables/disables __HTTPHealthCheck__. Defaults to _false_. | [optional]
+**https** | **bool** | Optional. Flag which enables Hypertext Transfer Protocol Secure (HTTPS) in a health check. Defaults to _false_. | [optional]
+**id** | **str** | The resource identifier. | [optional] [readonly]
+**interval** | **int** | Optional. Interval value in seconds. The health check runs only for the specified interval and it is measured from the beginning of the previous check cycle. Defaults to _15_. | [optional]
+**metadata** | [**Metadata**](Metadata.md) | Output only. __HTTPHealthCheck__ metadata. Defaults to empty object and should be explicitly requested using field selection. | [optional]
+**name** | **str** | Display name of __HTTPHealthCheck__. |
+**port** | **int** | Destination TCP port of __HTTPHealthCheck__. |
+**request** | **str** | HTTP request in a text format, it consists of HTTP method, request target, HTTP headers, request body. | [optional]
+**retry_down** | **int** | Optional. Retry down count. The value determines how many bad health checks in a row must be received by the onprem host from the DTC Server for treating the health check as failed. Defaults to _1_. | [optional]
+**retry_up** | **int** | Optional. Retry up count. The value determines how many good health checks in a row must be received by the onprem host from the DTC Server for treating the health check as successful. Defaults to _1_. | [optional]
+**tags** | **object** | Optional. The tags for __HTTPHealthCheck__ in JSON format. | [optional]
+**timeout** | **int** | Optional. Timeout value in seconds. The health check waits for the specified number of seconds after sending a request. If it does not receive a response within the number of seconds, then the health check is considered as failed. Defaults to _10_. | [optional]
+
+## Example
+
+```python
+from dtc.models.http_health_check import HTTPHealthCheck
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of HTTPHealthCheck from a JSON string
+http_health_check_instance = HTTPHealthCheck.from_json(json)
+# print the JSON string representation of the object
+print(HTTPHealthCheck.to_json())
+
+# convert the object into a dict
+http_health_check_dict = http_health_check_instance.to_dict()
+# create an instance of HTTPHealthCheck from a dict
+http_health_check_from_dict = HTTPHealthCheck.from_dict(http_health_check_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/HeaderRegex.md b/src/dtc/docs/HeaderRegex.md
new file mode 100644
index 0000000..de5c764
--- /dev/null
+++ b/src/dtc/docs/HeaderRegex.md
@@ -0,0 +1,31 @@
+# HeaderRegex
+
+A __HeaderRegex__ represents a pair of HTTP header name and regular expression to match against the header value.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**header** | **str** | HTTP header name. |
+**regex** | **str** | Regular expression to match against HTTP header value. |
+
+## Example
+
+```python
+from dtc.models.header_regex import HeaderRegex
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of HeaderRegex from a JSON string
+header_regex_instance = HeaderRegex.from_json(json)
+# print the JSON string representation of the object
+print(HeaderRegex.to_json())
+
+# convert the object into a dict
+header_regex_dict = header_regex_instance.to_dict()
+# create an instance of HeaderRegex from a dict
+header_regex_from_dict = HeaderRegex.from_dict(header_regex_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/HealthCheckHttpApi.md b/src/dtc/docs/HealthCheckHttpApi.md
new file mode 100644
index 0000000..7adff13
--- /dev/null
+++ b/src/dtc/docs/HealthCheckHttpApi.md
@@ -0,0 +1,400 @@
+# dtc.HealthCheckHttpApi
+
+All URIs are relative to *http://localhost/api/ddi/v1*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**create**](HealthCheckHttpApi.md#create) | **POST** /dtc/health_check_http | Create the HTTPHealthCheck object.
+[**delete**](HealthCheckHttpApi.md#delete) | **DELETE** /dtc/health_check_http/{id} | Delete the HTTPHealthCheck object.
+[**list**](HealthCheckHttpApi.md#list) | **GET** /dtc/health_check_http | Retrieve HTTPHealthCheck objects.
+[**read**](HealthCheckHttpApi.md#read) | **GET** /dtc/health_check_http/{id} | Retrieve the HTTPHealthCheck object.
+[**update**](HealthCheckHttpApi.md#update) | **PATCH** /dtc/health_check_http/{id} | Update the HTTPHealthCheck object.
+
+
+# **create**
+> CreateHTTPHealthCheckResponse create(body)
+
+Create the HTTPHealthCheck object.
+
+Use this method to create a __HTTPHealthCheck__ object.
+
+### Example
+
+* Api Key Authentication (ApiKeyAuth):
+```python
+import os
+from pprint import pprint
+
+import dtc
+
+from universal_ddi_client.api_client import ApiClient
+from universal_ddi_client.configuration import Configuration
+
+# Defining the Portal URL is optional and defaults to "https://csp.infoblox.com"
+# See configuration.py for a list of all supported configuration parameters.
+configuration = Configuration(
+ portal_url = os.getenv('INFOBLOX_PORTAL_URL'),
+)
+
+# The client must configure the authentication and authorization parameters
+# in accordance with the API server security policy.
+
+# Configure Portal key authorization: ApiKeyAuth
+configuration.portal_key = os.getenv("INFOBLOX_PORTAL_KEY")
+
+# Enter a context with an instance of the API client
+with ApiClient(configuration) as api_client:
+ # Create an instance of the API class
+ api_instance = dtc.HealthCheckHttpApi(api_client)
+ body = dtc.HTTPHealthCheck() # HTTPHealthCheck |
+
+ try:
+ # Create the HTTPHealthCheck object.
+ api_response = api_instance.create(body)
+ pprint("The response of HealthCheckHttpApi->create:\n")
+ pprint(api_response)
+ except Exception as e:
+ pprint("Exception when calling HealthCheckHttpApi->create: %s\n" % e)
+```
+
+
+
+### Parameters
+
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **body** | [**HTTPHealthCheck**](HTTPHealthCheck.md)| |
+
+### Return type
+
+[**CreateHTTPHealthCheckResponse**](CreateHTTPHealthCheckResponse.md)
+
+### Authorization
+
+[ApiKeyAuth](../README.md#ApiKeyAuth)
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json
+
+### HTTP response details
+
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+**200** | POST operation response | - |
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **delete**
+> delete(id)
+
+Delete the HTTPHealthCheck object.
+
+Use this method to delete a __HTTPHealthCheck__ object.
+
+### Example
+
+* Api Key Authentication (ApiKeyAuth):
+```python
+import os
+from pprint import pprint
+
+import dtc
+
+from universal_ddi_client.api_client import ApiClient
+from universal_ddi_client.configuration import Configuration
+
+# Defining the Portal URL is optional and defaults to "https://csp.infoblox.com"
+# See configuration.py for a list of all supported configuration parameters.
+configuration = Configuration(
+ portal_url = os.getenv('INFOBLOX_PORTAL_URL'),
+)
+
+# The client must configure the authentication and authorization parameters
+# in accordance with the API server security policy.
+
+# Configure Portal key authorization: ApiKeyAuth
+configuration.portal_key = os.getenv("INFOBLOX_PORTAL_KEY")
+
+# Enter a context with an instance of the API client
+with ApiClient(configuration) as api_client:
+ # Create an instance of the API class
+ api_instance = dtc.HealthCheckHttpApi(api_client)
+ id = 'id_example' # str | An application specific resource identity of a resource
+
+ try:
+ # Delete the HTTPHealthCheck object.
+ api_instance.delete(id)
+ except Exception as e:
+ pprint("Exception when calling HealthCheckHttpApi->delete: %s\n" % e)
+```
+
+
+
+### Parameters
+
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **str**| An application specific resource identity of a resource |
+
+### Return type
+
+void (empty response body)
+
+### Authorization
+
+[ApiKeyAuth](../README.md#ApiKeyAuth)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: Not defined
+
+### HTTP response details
+
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+**200** | OK | - |
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **list**
+> ListHTTPHealthCheckResponse list(fields=fields, filter=filter, offset=offset, limit=limit, page_token=page_token, order_by=order_by, tfilter=tfilter, torder_by=torder_by)
+
+Retrieve HTTPHealthCheck objects.
+
+Use this method to retrieve __HTTPHealthCheck__ objects.
+
+### Example
+
+* Api Key Authentication (ApiKeyAuth):
+```python
+import os
+from pprint import pprint
+
+import dtc
+
+from universal_ddi_client.api_client import ApiClient
+from universal_ddi_client.configuration import Configuration
+
+# Defining the Portal URL is optional and defaults to "https://csp.infoblox.com"
+# See configuration.py for a list of all supported configuration parameters.
+configuration = Configuration(
+ portal_url = os.getenv('INFOBLOX_PORTAL_URL'),
+)
+
+# The client must configure the authentication and authorization parameters
+# in accordance with the API server security policy.
+
+# Configure Portal key authorization: ApiKeyAuth
+configuration.portal_key = os.getenv("INFOBLOX_PORTAL_KEY")
+
+# Enter a context with an instance of the API client
+with ApiClient(configuration) as api_client:
+ # Create an instance of the API class
+ api_instance = dtc.HealthCheckHttpApi(api_client)
+
+ try:
+ # Retrieve HTTPHealthCheck objects.
+ api_response = api_instance.list()
+ pprint("The response of HealthCheckHttpApi->list:\n")
+ pprint(api_response)
+ except Exception as e:
+ pprint("Exception when calling HealthCheckHttpApi->list: %s\n" % e)
+```
+
+
+
+### Parameters
+
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **fields** | **str**| A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. | [optional]
+ **filter** | **str**| A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators | | [optional]
+ **offset** | **int**| The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'. | [optional]
+ **limit** | **int**| The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value. | [optional]
+ **page_token** | **str**| The service-defined string used to identify a page of resources. A null value indicates the first page. | [optional]
+ **order_by** | **str**| A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order. | [optional]
+ **tfilter** | **str**| This parameter is used for filtering by tags. | [optional]
+ **torder_by** | **str**| This parameter is used for sorting by tags. | [optional]
+
+### Return type
+
+[**ListHTTPHealthCheckResponse**](ListHTTPHealthCheckResponse.md)
+
+### Authorization
+
+[ApiKeyAuth](../README.md#ApiKeyAuth)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+### HTTP response details
+
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+**200** | GET operation response | - |
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **read**
+> ReadHTTPHealthCheckResponse read(id, fields=fields)
+
+Retrieve the HTTPHealthCheck object.
+
+Use this method to retrieve a __HTTPHealthCheck__ object.
+
+### Example
+
+* Api Key Authentication (ApiKeyAuth):
+```python
+import os
+from pprint import pprint
+
+import dtc
+
+from universal_ddi_client.api_client import ApiClient
+from universal_ddi_client.configuration import Configuration
+
+# Defining the Portal URL is optional and defaults to "https://csp.infoblox.com"
+# See configuration.py for a list of all supported configuration parameters.
+configuration = Configuration(
+ portal_url = os.getenv('INFOBLOX_PORTAL_URL'),
+)
+
+# The client must configure the authentication and authorization parameters
+# in accordance with the API server security policy.
+
+# Configure Portal key authorization: ApiKeyAuth
+configuration.portal_key = os.getenv("INFOBLOX_PORTAL_KEY")
+
+# Enter a context with an instance of the API client
+with ApiClient(configuration) as api_client:
+ # Create an instance of the API class
+ api_instance = dtc.HealthCheckHttpApi(api_client)
+ id = 'id_example' # str | An application specific resource identity of a resource
+
+ try:
+ # Retrieve the HTTPHealthCheck object.
+ api_response = api_instance.read(id)
+ pprint("The response of HealthCheckHttpApi->read:\n")
+ pprint(api_response)
+ except Exception as e:
+ pprint("Exception when calling HealthCheckHttpApi->read: %s\n" % e)
+```
+
+
+
+### Parameters
+
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **str**| An application specific resource identity of a resource |
+ **fields** | **str**| A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. | [optional]
+
+### Return type
+
+[**ReadHTTPHealthCheckResponse**](ReadHTTPHealthCheckResponse.md)
+
+### Authorization
+
+[ApiKeyAuth](../README.md#ApiKeyAuth)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+### HTTP response details
+
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+**200** | GET operation response | - |
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **update**
+> UpdateHTTPHealthCheckResponse update(id, body)
+
+Update the HTTPHealthCheck object.
+
+Use this method to update a __HTTPHealthCheck__ object.
+
+### Example
+
+* Api Key Authentication (ApiKeyAuth):
+```python
+import os
+from pprint import pprint
+
+import dtc
+
+from universal_ddi_client.api_client import ApiClient
+from universal_ddi_client.configuration import Configuration
+
+# Defining the Portal URL is optional and defaults to "https://csp.infoblox.com"
+# See configuration.py for a list of all supported configuration parameters.
+configuration = Configuration(
+ portal_url = os.getenv('INFOBLOX_PORTAL_URL'),
+)
+
+# The client must configure the authentication and authorization parameters
+# in accordance with the API server security policy.
+
+# Configure Portal key authorization: ApiKeyAuth
+configuration.portal_key = os.getenv("INFOBLOX_PORTAL_KEY")
+
+# Enter a context with an instance of the API client
+with ApiClient(configuration) as api_client:
+ # Create an instance of the API class
+ api_instance = dtc.HealthCheckHttpApi(api_client)
+ id = 'id_example' # str | An application specific resource identity of a resource
+ body = dtc.HTTPHealthCheck() # HTTPHealthCheck |
+
+ try:
+ # Update the HTTPHealthCheck object.
+ api_response = api_instance.update(id, body)
+ pprint("The response of HealthCheckHttpApi->update:\n")
+ pprint(api_response)
+ except Exception as e:
+ pprint("Exception when calling HealthCheckHttpApi->update: %s\n" % e)
+```
+
+
+
+### Parameters
+
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **str**| An application specific resource identity of a resource |
+ **body** | [**HTTPHealthCheck**](HTTPHealthCheck.md)| |
+
+### Return type
+
+[**UpdateHTTPHealthCheckResponse**](UpdateHTTPHealthCheckResponse.md)
+
+### Authorization
+
+[ApiKeyAuth](../README.md#ApiKeyAuth)
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json
+
+### HTTP response details
+
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+**200** | PATCH operation response | - |
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
diff --git a/src/dtc/docs/HealthCheckIcmpApi.md b/src/dtc/docs/HealthCheckIcmpApi.md
new file mode 100644
index 0000000..3318007
--- /dev/null
+++ b/src/dtc/docs/HealthCheckIcmpApi.md
@@ -0,0 +1,400 @@
+# dtc.HealthCheckIcmpApi
+
+All URIs are relative to *http://localhost/api/ddi/v1*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**create**](HealthCheckIcmpApi.md#create) | **POST** /dtc/health_check_icmp | Create the ICMPHealthCheck object.
+[**delete**](HealthCheckIcmpApi.md#delete) | **DELETE** /dtc/health_check_icmp/{id} | Delete the ICMPHealthCheck object.
+[**list**](HealthCheckIcmpApi.md#list) | **GET** /dtc/health_check_icmp | Retrieve ICMPHealthCheck objects.
+[**read**](HealthCheckIcmpApi.md#read) | **GET** /dtc/health_check_icmp/{id} | Retrieve the ICMPHealthCheck object.
+[**update**](HealthCheckIcmpApi.md#update) | **PATCH** /dtc/health_check_icmp/{id} | Update the ICMPHealthCheck object.
+
+
+# **create**
+> CreateICMPHealthCheckResponse create(body)
+
+Create the ICMPHealthCheck object.
+
+Use this method to create a __ICMPHealthCheck__ object.
+
+### Example
+
+* Api Key Authentication (ApiKeyAuth):
+```python
+import os
+from pprint import pprint
+
+import dtc
+
+from universal_ddi_client.api_client import ApiClient
+from universal_ddi_client.configuration import Configuration
+
+# Defining the Portal URL is optional and defaults to "https://csp.infoblox.com"
+# See configuration.py for a list of all supported configuration parameters.
+configuration = Configuration(
+ portal_url = os.getenv('INFOBLOX_PORTAL_URL'),
+)
+
+# The client must configure the authentication and authorization parameters
+# in accordance with the API server security policy.
+
+# Configure Portal key authorization: ApiKeyAuth
+configuration.portal_key = os.getenv("INFOBLOX_PORTAL_KEY")
+
+# Enter a context with an instance of the API client
+with ApiClient(configuration) as api_client:
+ # Create an instance of the API class
+ api_instance = dtc.HealthCheckIcmpApi(api_client)
+ body = dtc.ICMPHealthCheck() # ICMPHealthCheck |
+
+ try:
+ # Create the ICMPHealthCheck object.
+ api_response = api_instance.create(body)
+ pprint("The response of HealthCheckIcmpApi->create:\n")
+ pprint(api_response)
+ except Exception as e:
+ pprint("Exception when calling HealthCheckIcmpApi->create: %s\n" % e)
+```
+
+
+
+### Parameters
+
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **body** | [**ICMPHealthCheck**](ICMPHealthCheck.md)| |
+
+### Return type
+
+[**CreateICMPHealthCheckResponse**](CreateICMPHealthCheckResponse.md)
+
+### Authorization
+
+[ApiKeyAuth](../README.md#ApiKeyAuth)
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json
+
+### HTTP response details
+
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+**200** | POST operation response | - |
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **delete**
+> delete(id)
+
+Delete the ICMPHealthCheck object.
+
+Use this method to delete a __ICMPHealthCheck__ object.
+
+### Example
+
+* Api Key Authentication (ApiKeyAuth):
+```python
+import os
+from pprint import pprint
+
+import dtc
+
+from universal_ddi_client.api_client import ApiClient
+from universal_ddi_client.configuration import Configuration
+
+# Defining the Portal URL is optional and defaults to "https://csp.infoblox.com"
+# See configuration.py for a list of all supported configuration parameters.
+configuration = Configuration(
+ portal_url = os.getenv('INFOBLOX_PORTAL_URL'),
+)
+
+# The client must configure the authentication and authorization parameters
+# in accordance with the API server security policy.
+
+# Configure Portal key authorization: ApiKeyAuth
+configuration.portal_key = os.getenv("INFOBLOX_PORTAL_KEY")
+
+# Enter a context with an instance of the API client
+with ApiClient(configuration) as api_client:
+ # Create an instance of the API class
+ api_instance = dtc.HealthCheckIcmpApi(api_client)
+ id = 'id_example' # str | An application specific resource identity of a resource
+
+ try:
+ # Delete the ICMPHealthCheck object.
+ api_instance.delete(id)
+ except Exception as e:
+ pprint("Exception when calling HealthCheckIcmpApi->delete: %s\n" % e)
+```
+
+
+
+### Parameters
+
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **str**| An application specific resource identity of a resource |
+
+### Return type
+
+void (empty response body)
+
+### Authorization
+
+[ApiKeyAuth](../README.md#ApiKeyAuth)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: Not defined
+
+### HTTP response details
+
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+**200** | OK | - |
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **list**
+> ListICMPHealthCheckResponse list(fields=fields, filter=filter, offset=offset, limit=limit, page_token=page_token, order_by=order_by, tfilter=tfilter, torder_by=torder_by)
+
+Retrieve ICMPHealthCheck objects.
+
+Use this method to retrieve __ICMPHealthCheck__ objects.
+
+### Example
+
+* Api Key Authentication (ApiKeyAuth):
+```python
+import os
+from pprint import pprint
+
+import dtc
+
+from universal_ddi_client.api_client import ApiClient
+from universal_ddi_client.configuration import Configuration
+
+# Defining the Portal URL is optional and defaults to "https://csp.infoblox.com"
+# See configuration.py for a list of all supported configuration parameters.
+configuration = Configuration(
+ portal_url = os.getenv('INFOBLOX_PORTAL_URL'),
+)
+
+# The client must configure the authentication and authorization parameters
+# in accordance with the API server security policy.
+
+# Configure Portal key authorization: ApiKeyAuth
+configuration.portal_key = os.getenv("INFOBLOX_PORTAL_KEY")
+
+# Enter a context with an instance of the API client
+with ApiClient(configuration) as api_client:
+ # Create an instance of the API class
+ api_instance = dtc.HealthCheckIcmpApi(api_client)
+
+ try:
+ # Retrieve ICMPHealthCheck objects.
+ api_response = api_instance.list()
+ pprint("The response of HealthCheckIcmpApi->list:\n")
+ pprint(api_response)
+ except Exception as e:
+ pprint("Exception when calling HealthCheckIcmpApi->list: %s\n" % e)
+```
+
+
+
+### Parameters
+
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **fields** | **str**| A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. | [optional]
+ **filter** | **str**| A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators | | [optional]
+ **offset** | **int**| The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'. | [optional]
+ **limit** | **int**| The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value. | [optional]
+ **page_token** | **str**| The service-defined string used to identify a page of resources. A null value indicates the first page. | [optional]
+ **order_by** | **str**| A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order. | [optional]
+ **tfilter** | **str**| This parameter is used for filtering by tags. | [optional]
+ **torder_by** | **str**| This parameter is used for sorting by tags. | [optional]
+
+### Return type
+
+[**ListICMPHealthCheckResponse**](ListICMPHealthCheckResponse.md)
+
+### Authorization
+
+[ApiKeyAuth](../README.md#ApiKeyAuth)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+### HTTP response details
+
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+**200** | GET operation response | - |
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **read**
+> ReadICMPHealthCheckResponse read(id, fields=fields)
+
+Retrieve the ICMPHealthCheck object.
+
+Use this method to retrieve a __ICMPHealthCheck__ object.
+
+### Example
+
+* Api Key Authentication (ApiKeyAuth):
+```python
+import os
+from pprint import pprint
+
+import dtc
+
+from universal_ddi_client.api_client import ApiClient
+from universal_ddi_client.configuration import Configuration
+
+# Defining the Portal URL is optional and defaults to "https://csp.infoblox.com"
+# See configuration.py for a list of all supported configuration parameters.
+configuration = Configuration(
+ portal_url = os.getenv('INFOBLOX_PORTAL_URL'),
+)
+
+# The client must configure the authentication and authorization parameters
+# in accordance with the API server security policy.
+
+# Configure Portal key authorization: ApiKeyAuth
+configuration.portal_key = os.getenv("INFOBLOX_PORTAL_KEY")
+
+# Enter a context with an instance of the API client
+with ApiClient(configuration) as api_client:
+ # Create an instance of the API class
+ api_instance = dtc.HealthCheckIcmpApi(api_client)
+ id = 'id_example' # str | An application specific resource identity of a resource
+
+ try:
+ # Retrieve the ICMPHealthCheck object.
+ api_response = api_instance.read(id)
+ pprint("The response of HealthCheckIcmpApi->read:\n")
+ pprint(api_response)
+ except Exception as e:
+ pprint("Exception when calling HealthCheckIcmpApi->read: %s\n" % e)
+```
+
+
+
+### Parameters
+
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **str**| An application specific resource identity of a resource |
+ **fields** | **str**| A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. | [optional]
+
+### Return type
+
+[**ReadICMPHealthCheckResponse**](ReadICMPHealthCheckResponse.md)
+
+### Authorization
+
+[ApiKeyAuth](../README.md#ApiKeyAuth)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+### HTTP response details
+
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+**200** | GET operation response | - |
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **update**
+> UpdateICMPHealthCheckResponse update(id, body)
+
+Update the ICMPHealthCheck object.
+
+Use this method to update a __ICMPHealthCheck__ object.
+
+### Example
+
+* Api Key Authentication (ApiKeyAuth):
+```python
+import os
+from pprint import pprint
+
+import dtc
+
+from universal_ddi_client.api_client import ApiClient
+from universal_ddi_client.configuration import Configuration
+
+# Defining the Portal URL is optional and defaults to "https://csp.infoblox.com"
+# See configuration.py for a list of all supported configuration parameters.
+configuration = Configuration(
+ portal_url = os.getenv('INFOBLOX_PORTAL_URL'),
+)
+
+# The client must configure the authentication and authorization parameters
+# in accordance with the API server security policy.
+
+# Configure Portal key authorization: ApiKeyAuth
+configuration.portal_key = os.getenv("INFOBLOX_PORTAL_KEY")
+
+# Enter a context with an instance of the API client
+with ApiClient(configuration) as api_client:
+ # Create an instance of the API class
+ api_instance = dtc.HealthCheckIcmpApi(api_client)
+ id = 'id_example' # str | An application specific resource identity of a resource
+ body = dtc.ICMPHealthCheck() # ICMPHealthCheck |
+
+ try:
+ # Update the ICMPHealthCheck object.
+ api_response = api_instance.update(id, body)
+ pprint("The response of HealthCheckIcmpApi->update:\n")
+ pprint(api_response)
+ except Exception as e:
+ pprint("Exception when calling HealthCheckIcmpApi->update: %s\n" % e)
+```
+
+
+
+### Parameters
+
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **str**| An application specific resource identity of a resource |
+ **body** | [**ICMPHealthCheck**](ICMPHealthCheck.md)| |
+
+### Return type
+
+[**UpdateICMPHealthCheckResponse**](UpdateICMPHealthCheckResponse.md)
+
+### Authorization
+
+[ApiKeyAuth](../README.md#ApiKeyAuth)
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json
+
+### HTTP response details
+
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+**200** | PATCH operation response | - |
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
diff --git a/src/dtc/docs/HealthCheckSnmpApi.md b/src/dtc/docs/HealthCheckSnmpApi.md
new file mode 100644
index 0000000..955aaff
--- /dev/null
+++ b/src/dtc/docs/HealthCheckSnmpApi.md
@@ -0,0 +1,400 @@
+# dtc.HealthCheckSnmpApi
+
+All URIs are relative to *http://localhost/api/ddi/v1*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**create**](HealthCheckSnmpApi.md#create) | **POST** /dtc/health_check_snmp | Create the SNMPHealthCheck object.
+[**delete**](HealthCheckSnmpApi.md#delete) | **DELETE** /dtc/health_check_snmp/{id} | Delete the SNMPHealthCheck object.
+[**list**](HealthCheckSnmpApi.md#list) | **GET** /dtc/health_check_snmp | Retrieve SNMPHealthCheck objects.
+[**read**](HealthCheckSnmpApi.md#read) | **GET** /dtc/health_check_snmp/{id} | Retrieve the SNMPHealthCheck object.
+[**update**](HealthCheckSnmpApi.md#update) | **PATCH** /dtc/health_check_snmp/{id} | Update the SNMPHealthCheck object.
+
+
+# **create**
+> CreateSNMPHealthCheckResponse create(body)
+
+Create the SNMPHealthCheck object.
+
+Use this method to create a __SNMPHealthCheck__ object.
+
+### Example
+
+* Api Key Authentication (ApiKeyAuth):
+```python
+import os
+from pprint import pprint
+
+import dtc
+
+from universal_ddi_client.api_client import ApiClient
+from universal_ddi_client.configuration import Configuration
+
+# Defining the Portal URL is optional and defaults to "https://csp.infoblox.com"
+# See configuration.py for a list of all supported configuration parameters.
+configuration = Configuration(
+ portal_url = os.getenv('INFOBLOX_PORTAL_URL'),
+)
+
+# The client must configure the authentication and authorization parameters
+# in accordance with the API server security policy.
+
+# Configure Portal key authorization: ApiKeyAuth
+configuration.portal_key = os.getenv("INFOBLOX_PORTAL_KEY")
+
+# Enter a context with an instance of the API client
+with ApiClient(configuration) as api_client:
+ # Create an instance of the API class
+ api_instance = dtc.HealthCheckSnmpApi(api_client)
+ body = dtc.SNMPHealthCheck() # SNMPHealthCheck |
+
+ try:
+ # Create the SNMPHealthCheck object.
+ api_response = api_instance.create(body)
+ pprint("The response of HealthCheckSnmpApi->create:\n")
+ pprint(api_response)
+ except Exception as e:
+ pprint("Exception when calling HealthCheckSnmpApi->create: %s\n" % e)
+```
+
+
+
+### Parameters
+
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **body** | [**SNMPHealthCheck**](SNMPHealthCheck.md)| |
+
+### Return type
+
+[**CreateSNMPHealthCheckResponse**](CreateSNMPHealthCheckResponse.md)
+
+### Authorization
+
+[ApiKeyAuth](../README.md#ApiKeyAuth)
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json
+
+### HTTP response details
+
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+**200** | POST operation response | - |
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **delete**
+> delete(id)
+
+Delete the SNMPHealthCheck object.
+
+Use this method to delete a __SNMPHealthCheck__ object.
+
+### Example
+
+* Api Key Authentication (ApiKeyAuth):
+```python
+import os
+from pprint import pprint
+
+import dtc
+
+from universal_ddi_client.api_client import ApiClient
+from universal_ddi_client.configuration import Configuration
+
+# Defining the Portal URL is optional and defaults to "https://csp.infoblox.com"
+# See configuration.py for a list of all supported configuration parameters.
+configuration = Configuration(
+ portal_url = os.getenv('INFOBLOX_PORTAL_URL'),
+)
+
+# The client must configure the authentication and authorization parameters
+# in accordance with the API server security policy.
+
+# Configure Portal key authorization: ApiKeyAuth
+configuration.portal_key = os.getenv("INFOBLOX_PORTAL_KEY")
+
+# Enter a context with an instance of the API client
+with ApiClient(configuration) as api_client:
+ # Create an instance of the API class
+ api_instance = dtc.HealthCheckSnmpApi(api_client)
+ id = 'id_example' # str | An application specific resource identity of a resource
+
+ try:
+ # Delete the SNMPHealthCheck object.
+ api_instance.delete(id)
+ except Exception as e:
+ pprint("Exception when calling HealthCheckSnmpApi->delete: %s\n" % e)
+```
+
+
+
+### Parameters
+
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **str**| An application specific resource identity of a resource |
+
+### Return type
+
+void (empty response body)
+
+### Authorization
+
+[ApiKeyAuth](../README.md#ApiKeyAuth)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: Not defined
+
+### HTTP response details
+
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+**200** | OK | - |
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **list**
+> ListSNMPHealthCheckResponse list(fields=fields, filter=filter, offset=offset, limit=limit, page_token=page_token, order_by=order_by, tfilter=tfilter, torder_by=torder_by)
+
+Retrieve SNMPHealthCheck objects.
+
+Use this method to retrieve __SNMPHealthCheck__ objects.
+
+### Example
+
+* Api Key Authentication (ApiKeyAuth):
+```python
+import os
+from pprint import pprint
+
+import dtc
+
+from universal_ddi_client.api_client import ApiClient
+from universal_ddi_client.configuration import Configuration
+
+# Defining the Portal URL is optional and defaults to "https://csp.infoblox.com"
+# See configuration.py for a list of all supported configuration parameters.
+configuration = Configuration(
+ portal_url = os.getenv('INFOBLOX_PORTAL_URL'),
+)
+
+# The client must configure the authentication and authorization parameters
+# in accordance with the API server security policy.
+
+# Configure Portal key authorization: ApiKeyAuth
+configuration.portal_key = os.getenv("INFOBLOX_PORTAL_KEY")
+
+# Enter a context with an instance of the API client
+with ApiClient(configuration) as api_client:
+ # Create an instance of the API class
+ api_instance = dtc.HealthCheckSnmpApi(api_client)
+
+ try:
+ # Retrieve SNMPHealthCheck objects.
+ api_response = api_instance.list()
+ pprint("The response of HealthCheckSnmpApi->list:\n")
+ pprint(api_response)
+ except Exception as e:
+ pprint("Exception when calling HealthCheckSnmpApi->list: %s\n" % e)
+```
+
+
+
+### Parameters
+
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **fields** | **str**| A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. | [optional]
+ **filter** | **str**| A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators | | [optional]
+ **offset** | **int**| The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'. | [optional]
+ **limit** | **int**| The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value. | [optional]
+ **page_token** | **str**| The service-defined string used to identify a page of resources. A null value indicates the first page. | [optional]
+ **order_by** | **str**| A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order. | [optional]
+ **tfilter** | **str**| This parameter is used for filtering by tags. | [optional]
+ **torder_by** | **str**| This parameter is used for sorting by tags. | [optional]
+
+### Return type
+
+[**ListSNMPHealthCheckResponse**](ListSNMPHealthCheckResponse.md)
+
+### Authorization
+
+[ApiKeyAuth](../README.md#ApiKeyAuth)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+### HTTP response details
+
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+**200** | GET operation response | - |
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **read**
+> ReadSNMPHealthCheckResponse read(id, fields=fields)
+
+Retrieve the SNMPHealthCheck object.
+
+Use this method to retrieve a __SNMPHealthCheck__ object.
+
+### Example
+
+* Api Key Authentication (ApiKeyAuth):
+```python
+import os
+from pprint import pprint
+
+import dtc
+
+from universal_ddi_client.api_client import ApiClient
+from universal_ddi_client.configuration import Configuration
+
+# Defining the Portal URL is optional and defaults to "https://csp.infoblox.com"
+# See configuration.py for a list of all supported configuration parameters.
+configuration = Configuration(
+ portal_url = os.getenv('INFOBLOX_PORTAL_URL'),
+)
+
+# The client must configure the authentication and authorization parameters
+# in accordance with the API server security policy.
+
+# Configure Portal key authorization: ApiKeyAuth
+configuration.portal_key = os.getenv("INFOBLOX_PORTAL_KEY")
+
+# Enter a context with an instance of the API client
+with ApiClient(configuration) as api_client:
+ # Create an instance of the API class
+ api_instance = dtc.HealthCheckSnmpApi(api_client)
+ id = 'id_example' # str | An application specific resource identity of a resource
+
+ try:
+ # Retrieve the SNMPHealthCheck object.
+ api_response = api_instance.read(id)
+ pprint("The response of HealthCheckSnmpApi->read:\n")
+ pprint(api_response)
+ except Exception as e:
+ pprint("Exception when calling HealthCheckSnmpApi->read: %s\n" % e)
+```
+
+
+
+### Parameters
+
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **str**| An application specific resource identity of a resource |
+ **fields** | **str**| A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. | [optional]
+
+### Return type
+
+[**ReadSNMPHealthCheckResponse**](ReadSNMPHealthCheckResponse.md)
+
+### Authorization
+
+[ApiKeyAuth](../README.md#ApiKeyAuth)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+### HTTP response details
+
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+**200** | GET operation response | - |
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **update**
+> UpdateSNMPHealthCheckResponse update(id, body)
+
+Update the SNMPHealthCheck object.
+
+Use this method to update a __SNMPHealthCheck__ object.
+
+### Example
+
+* Api Key Authentication (ApiKeyAuth):
+```python
+import os
+from pprint import pprint
+
+import dtc
+
+from universal_ddi_client.api_client import ApiClient
+from universal_ddi_client.configuration import Configuration
+
+# Defining the Portal URL is optional and defaults to "https://csp.infoblox.com"
+# See configuration.py for a list of all supported configuration parameters.
+configuration = Configuration(
+ portal_url = os.getenv('INFOBLOX_PORTAL_URL'),
+)
+
+# The client must configure the authentication and authorization parameters
+# in accordance with the API server security policy.
+
+# Configure Portal key authorization: ApiKeyAuth
+configuration.portal_key = os.getenv("INFOBLOX_PORTAL_KEY")
+
+# Enter a context with an instance of the API client
+with ApiClient(configuration) as api_client:
+ # Create an instance of the API class
+ api_instance = dtc.HealthCheckSnmpApi(api_client)
+ id = 'id_example' # str | An application specific resource identity of a resource
+ body = dtc.SNMPHealthCheck() # SNMPHealthCheck |
+
+ try:
+ # Update the SNMPHealthCheck object.
+ api_response = api_instance.update(id, body)
+ pprint("The response of HealthCheckSnmpApi->update:\n")
+ pprint(api_response)
+ except Exception as e:
+ pprint("Exception when calling HealthCheckSnmpApi->update: %s\n" % e)
+```
+
+
+
+### Parameters
+
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **str**| An application specific resource identity of a resource |
+ **body** | [**SNMPHealthCheck**](SNMPHealthCheck.md)| |
+
+### Return type
+
+[**UpdateSNMPHealthCheckResponse**](UpdateSNMPHealthCheckResponse.md)
+
+### Authorization
+
+[ApiKeyAuth](../README.md#ApiKeyAuth)
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json
+
+### HTTP response details
+
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+**200** | PATCH operation response | - |
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
diff --git a/src/dtc/docs/HealthCheckTcpApi.md b/src/dtc/docs/HealthCheckTcpApi.md
new file mode 100644
index 0000000..427bbc8
--- /dev/null
+++ b/src/dtc/docs/HealthCheckTcpApi.md
@@ -0,0 +1,400 @@
+# dtc.HealthCheckTcpApi
+
+All URIs are relative to *http://localhost/api/ddi/v1*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**create**](HealthCheckTcpApi.md#create) | **POST** /dtc/health_check_tcp | Create the TCPHealthCheck object.
+[**delete**](HealthCheckTcpApi.md#delete) | **DELETE** /dtc/health_check_tcp/{id} | Delete the TCPHealthCheck object.
+[**list**](HealthCheckTcpApi.md#list) | **GET** /dtc/health_check_tcp | Retrieve TCPHealthCheck objects.
+[**read**](HealthCheckTcpApi.md#read) | **GET** /dtc/health_check_tcp/{id} | Retrieve the TCPHealthCheck object.
+[**update**](HealthCheckTcpApi.md#update) | **PATCH** /dtc/health_check_tcp/{id} | Update the TCPHealthCheck object.
+
+
+# **create**
+> CreateTCPHealthCheckResponse create(body)
+
+Create the TCPHealthCheck object.
+
+Use this method to create a __TCPHealthCheck__ object.
+
+### Example
+
+* Api Key Authentication (ApiKeyAuth):
+```python
+import os
+from pprint import pprint
+
+import dtc
+
+from universal_ddi_client.api_client import ApiClient
+from universal_ddi_client.configuration import Configuration
+
+# Defining the Portal URL is optional and defaults to "https://csp.infoblox.com"
+# See configuration.py for a list of all supported configuration parameters.
+configuration = Configuration(
+ portal_url = os.getenv('INFOBLOX_PORTAL_URL'),
+)
+
+# The client must configure the authentication and authorization parameters
+# in accordance with the API server security policy.
+
+# Configure Portal key authorization: ApiKeyAuth
+configuration.portal_key = os.getenv("INFOBLOX_PORTAL_KEY")
+
+# Enter a context with an instance of the API client
+with ApiClient(configuration) as api_client:
+ # Create an instance of the API class
+ api_instance = dtc.HealthCheckTcpApi(api_client)
+ body = dtc.TCPHealthCheck() # TCPHealthCheck |
+
+ try:
+ # Create the TCPHealthCheck object.
+ api_response = api_instance.create(body)
+ pprint("The response of HealthCheckTcpApi->create:\n")
+ pprint(api_response)
+ except Exception as e:
+ pprint("Exception when calling HealthCheckTcpApi->create: %s\n" % e)
+```
+
+
+
+### Parameters
+
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **body** | [**TCPHealthCheck**](TCPHealthCheck.md)| |
+
+### Return type
+
+[**CreateTCPHealthCheckResponse**](CreateTCPHealthCheckResponse.md)
+
+### Authorization
+
+[ApiKeyAuth](../README.md#ApiKeyAuth)
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json
+
+### HTTP response details
+
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+**200** | POST operation response | - |
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **delete**
+> delete(id)
+
+Delete the TCPHealthCheck object.
+
+Use this method to delete a __TCPHealthCheck__ object.
+
+### Example
+
+* Api Key Authentication (ApiKeyAuth):
+```python
+import os
+from pprint import pprint
+
+import dtc
+
+from universal_ddi_client.api_client import ApiClient
+from universal_ddi_client.configuration import Configuration
+
+# Defining the Portal URL is optional and defaults to "https://csp.infoblox.com"
+# See configuration.py for a list of all supported configuration parameters.
+configuration = Configuration(
+ portal_url = os.getenv('INFOBLOX_PORTAL_URL'),
+)
+
+# The client must configure the authentication and authorization parameters
+# in accordance with the API server security policy.
+
+# Configure Portal key authorization: ApiKeyAuth
+configuration.portal_key = os.getenv("INFOBLOX_PORTAL_KEY")
+
+# Enter a context with an instance of the API client
+with ApiClient(configuration) as api_client:
+ # Create an instance of the API class
+ api_instance = dtc.HealthCheckTcpApi(api_client)
+ id = 'id_example' # str | An application specific resource identity of a resource
+
+ try:
+ # Delete the TCPHealthCheck object.
+ api_instance.delete(id)
+ except Exception as e:
+ pprint("Exception when calling HealthCheckTcpApi->delete: %s\n" % e)
+```
+
+
+
+### Parameters
+
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **str**| An application specific resource identity of a resource |
+
+### Return type
+
+void (empty response body)
+
+### Authorization
+
+[ApiKeyAuth](../README.md#ApiKeyAuth)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: Not defined
+
+### HTTP response details
+
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+**200** | OK | - |
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **list**
+> ListTCPHealthCheckResponse list(fields=fields, filter=filter, offset=offset, limit=limit, page_token=page_token, order_by=order_by, tfilter=tfilter, torder_by=torder_by)
+
+Retrieve TCPHealthCheck objects.
+
+Use this method to retrieve __TCPHealthCheck__ objects.
+
+### Example
+
+* Api Key Authentication (ApiKeyAuth):
+```python
+import os
+from pprint import pprint
+
+import dtc
+
+from universal_ddi_client.api_client import ApiClient
+from universal_ddi_client.configuration import Configuration
+
+# Defining the Portal URL is optional and defaults to "https://csp.infoblox.com"
+# See configuration.py for a list of all supported configuration parameters.
+configuration = Configuration(
+ portal_url = os.getenv('INFOBLOX_PORTAL_URL'),
+)
+
+# The client must configure the authentication and authorization parameters
+# in accordance with the API server security policy.
+
+# Configure Portal key authorization: ApiKeyAuth
+configuration.portal_key = os.getenv("INFOBLOX_PORTAL_KEY")
+
+# Enter a context with an instance of the API client
+with ApiClient(configuration) as api_client:
+ # Create an instance of the API class
+ api_instance = dtc.HealthCheckTcpApi(api_client)
+
+ try:
+ # Retrieve TCPHealthCheck objects.
+ api_response = api_instance.list()
+ pprint("The response of HealthCheckTcpApi->list:\n")
+ pprint(api_response)
+ except Exception as e:
+ pprint("Exception when calling HealthCheckTcpApi->list: %s\n" % e)
+```
+
+
+
+### Parameters
+
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **fields** | **str**| A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. | [optional]
+ **filter** | **str**| A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators | | [optional]
+ **offset** | **int**| The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'. | [optional]
+ **limit** | **int**| The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value. | [optional]
+ **page_token** | **str**| The service-defined string used to identify a page of resources. A null value indicates the first page. | [optional]
+ **order_by** | **str**| A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order. | [optional]
+ **tfilter** | **str**| This parameter is used for filtering by tags. | [optional]
+ **torder_by** | **str**| This parameter is used for sorting by tags. | [optional]
+
+### Return type
+
+[**ListTCPHealthCheckResponse**](ListTCPHealthCheckResponse.md)
+
+### Authorization
+
+[ApiKeyAuth](../README.md#ApiKeyAuth)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+### HTTP response details
+
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+**200** | GET operation response | - |
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **read**
+> ReadTCPHealthCheckResponse read(id, fields=fields)
+
+Retrieve the TCPHealthCheck object.
+
+Use this method to retrieve a __TCPHealthCheck__ object.
+
+### Example
+
+* Api Key Authentication (ApiKeyAuth):
+```python
+import os
+from pprint import pprint
+
+import dtc
+
+from universal_ddi_client.api_client import ApiClient
+from universal_ddi_client.configuration import Configuration
+
+# Defining the Portal URL is optional and defaults to "https://csp.infoblox.com"
+# See configuration.py for a list of all supported configuration parameters.
+configuration = Configuration(
+ portal_url = os.getenv('INFOBLOX_PORTAL_URL'),
+)
+
+# The client must configure the authentication and authorization parameters
+# in accordance with the API server security policy.
+
+# Configure Portal key authorization: ApiKeyAuth
+configuration.portal_key = os.getenv("INFOBLOX_PORTAL_KEY")
+
+# Enter a context with an instance of the API client
+with ApiClient(configuration) as api_client:
+ # Create an instance of the API class
+ api_instance = dtc.HealthCheckTcpApi(api_client)
+ id = 'id_example' # str | An application specific resource identity of a resource
+
+ try:
+ # Retrieve the TCPHealthCheck object.
+ api_response = api_instance.read(id)
+ pprint("The response of HealthCheckTcpApi->read:\n")
+ pprint(api_response)
+ except Exception as e:
+ pprint("Exception when calling HealthCheckTcpApi->read: %s\n" % e)
+```
+
+
+
+### Parameters
+
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **str**| An application specific resource identity of a resource |
+ **fields** | **str**| A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. | [optional]
+
+### Return type
+
+[**ReadTCPHealthCheckResponse**](ReadTCPHealthCheckResponse.md)
+
+### Authorization
+
+[ApiKeyAuth](../README.md#ApiKeyAuth)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+### HTTP response details
+
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+**200** | GET operation response | - |
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **update**
+> UpdateTCPHealthCheckResponse update(id, body)
+
+Update the TCPHealthCheck object.
+
+Use this method to update a __TCPHealthCheck__ object.
+
+### Example
+
+* Api Key Authentication (ApiKeyAuth):
+```python
+import os
+from pprint import pprint
+
+import dtc
+
+from universal_ddi_client.api_client import ApiClient
+from universal_ddi_client.configuration import Configuration
+
+# Defining the Portal URL is optional and defaults to "https://csp.infoblox.com"
+# See configuration.py for a list of all supported configuration parameters.
+configuration = Configuration(
+ portal_url = os.getenv('INFOBLOX_PORTAL_URL'),
+)
+
+# The client must configure the authentication and authorization parameters
+# in accordance with the API server security policy.
+
+# Configure Portal key authorization: ApiKeyAuth
+configuration.portal_key = os.getenv("INFOBLOX_PORTAL_KEY")
+
+# Enter a context with an instance of the API client
+with ApiClient(configuration) as api_client:
+ # Create an instance of the API class
+ api_instance = dtc.HealthCheckTcpApi(api_client)
+ id = 'id_example' # str | An application specific resource identity of a resource
+ body = dtc.TCPHealthCheck() # TCPHealthCheck |
+
+ try:
+ # Update the TCPHealthCheck object.
+ api_response = api_instance.update(id, body)
+ pprint("The response of HealthCheckTcpApi->update:\n")
+ pprint(api_response)
+ except Exception as e:
+ pprint("Exception when calling HealthCheckTcpApi->update: %s\n" % e)
+```
+
+
+
+### Parameters
+
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **str**| An application specific resource identity of a resource |
+ **body** | [**TCPHealthCheck**](TCPHealthCheck.md)| |
+
+### Return type
+
+[**UpdateTCPHealthCheckResponse**](UpdateTCPHealthCheckResponse.md)
+
+### Authorization
+
+[ApiKeyAuth](../README.md#ApiKeyAuth)
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json
+
+### HTTP response details
+
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+**200** | PATCH operation response | - |
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
diff --git a/src/dtc/docs/ICMPHealthCheck.md b/src/dtc/docs/ICMPHealthCheck.md
new file mode 100644
index 0000000..e4db683
--- /dev/null
+++ b/src/dtc/docs/ICMPHealthCheck.md
@@ -0,0 +1,39 @@
+# ICMPHealthCheck
+
+A __ICMPHealthCheck__ (_dtc/health_check_icmp_) represents a DTC __Server__ health check based on the Internet Control Message Protocol (ICMP).
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**comment** | **str** | Optional. Comment for __ICMPHealthCheck__. | [optional]
+**disabled** | **bool** | Optional. Flag which enables/disables __ICMPHealthCheck__. Defaults to _false_. | [optional]
+**id** | **str** | The resource identifier. | [optional] [readonly]
+**interval** | **int** | Optional. Interval value in seconds. The health check runs only for the specified interval and it is measured from the beginning of the previous check cycle. Defaults to _15_. | [optional]
+**metadata** | [**Metadata**](Metadata.md) | Output only. __ICMPHealthCheck__ metadata. Defaults to empty object and should be explicitly requested using field selection. | [optional]
+**name** | **str** | Display name of __ICMPHealthCheck__. |
+**retry_down** | **int** | Optional. Retry down count. The value determines how many bad health checks in a row must be received by the onprem host from the DTC Server for treating the health check as failed. Defaults to _1_. | [optional]
+**retry_up** | **int** | Optional. Retry up count. The value determines how many good health checks in a row must be received by the onprem host from the DTC Server for treating the health check as successful. Defaults to _1_. | [optional]
+**tags** | **object** | Optional. The tags for __ICMPHealthCheck__ in JSON format. | [optional]
+**timeout** | **int** | Optional. Timeout value in seconds. The health check waits for the specified number of seconds after sending a request. If it does not receive a response within the number of seconds, then the health check is considered as failed. Defaults to _10_. | [optional]
+
+## Example
+
+```python
+from dtc.models.icmp_health_check import ICMPHealthCheck
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of ICMPHealthCheck from a JSON string
+icmp_health_check_instance = ICMPHealthCheck.from_json(json)
+# print the JSON string representation of the object
+print(ICMPHealthCheck.to_json())
+
+# convert the object into a dict
+icmp_health_check_dict = icmp_health_check_instance.to_dict()
+# create an instance of ICMPHealthCheck from a dict
+icmp_health_check_from_dict = ICMPHealthCheck.from_dict(icmp_health_check_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/Inheritance2InheritedUInt32.md b/src/dtc/docs/Inheritance2InheritedUInt32.md
new file mode 100644
index 0000000..2e5477b
--- /dev/null
+++ b/src/dtc/docs/Inheritance2InheritedUInt32.md
@@ -0,0 +1,33 @@
+# Inheritance2InheritedUInt32
+
+The inheritance configuration for a field of type _UInt32_.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**action** | **str** | The inheritance setting for a field. Valid values are: * _inherit_: Use the inherited value. * _override_: Use the value set in the object. Defaults to _inherit_. | [optional]
+**display_name** | **str** | The human-readable display name for the object referred to by _source_. | [optional] [readonly]
+**source** | **str** | The resource identifier. | [optional]
+**value** | **int** | The inherited value. | [optional] [readonly]
+
+## Example
+
+```python
+from dtc.models.inheritance2_inherited_u_int32 import Inheritance2InheritedUInt32
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of Inheritance2InheritedUInt32 from a JSON string
+inheritance2_inherited_u_int32_instance = Inheritance2InheritedUInt32.from_json(json)
+# print the JSON string representation of the object
+print(Inheritance2InheritedUInt32.to_json())
+
+# convert the object into a dict
+inheritance2_inherited_u_int32_dict = inheritance2_inherited_u_int32_instance.to_dict()
+# create an instance of Inheritance2InheritedUInt32 from a dict
+inheritance2_inherited_u_int32_from_dict = Inheritance2InheritedUInt32.from_dict(inheritance2_inherited_u_int32_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/ListHTTPHealthCheckResponse.md b/src/dtc/docs/ListHTTPHealthCheckResponse.md
new file mode 100644
index 0000000..650d987
--- /dev/null
+++ b/src/dtc/docs/ListHTTPHealthCheckResponse.md
@@ -0,0 +1,30 @@
+# ListHTTPHealthCheckResponse
+
+The __HTTPHealthCheck__ object list response format.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**results** | [**List[HTTPHealthCheck]**](HTTPHealthCheck.md) | List of __HTTPHealthCheck__ objects. | [optional]
+
+## Example
+
+```python
+from dtc.models.list_http_health_check_response import ListHTTPHealthCheckResponse
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of ListHTTPHealthCheckResponse from a JSON string
+list_http_health_check_response_instance = ListHTTPHealthCheckResponse.from_json(json)
+# print the JSON string representation of the object
+print(ListHTTPHealthCheckResponse.to_json())
+
+# convert the object into a dict
+list_http_health_check_response_dict = list_http_health_check_response_instance.to_dict()
+# create an instance of ListHTTPHealthCheckResponse from a dict
+list_http_health_check_response_from_dict = ListHTTPHealthCheckResponse.from_dict(list_http_health_check_response_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/ListICMPHealthCheckResponse.md b/src/dtc/docs/ListICMPHealthCheckResponse.md
new file mode 100644
index 0000000..6a4a016
--- /dev/null
+++ b/src/dtc/docs/ListICMPHealthCheckResponse.md
@@ -0,0 +1,30 @@
+# ListICMPHealthCheckResponse
+
+The __ICMPHealthCheck__ object list response format.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**results** | [**List[ICMPHealthCheck]**](ICMPHealthCheck.md) | List of __ICMPHealthCheck__ objects. | [optional]
+
+## Example
+
+```python
+from dtc.models.list_icmp_health_check_response import ListICMPHealthCheckResponse
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of ListICMPHealthCheckResponse from a JSON string
+list_icmp_health_check_response_instance = ListICMPHealthCheckResponse.from_json(json)
+# print the JSON string representation of the object
+print(ListICMPHealthCheckResponse.to_json())
+
+# convert the object into a dict
+list_icmp_health_check_response_dict = list_icmp_health_check_response_instance.to_dict()
+# create an instance of ListICMPHealthCheckResponse from a dict
+list_icmp_health_check_response_from_dict = ListICMPHealthCheckResponse.from_dict(list_icmp_health_check_response_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/ListPolicyResponse.md b/src/dtc/docs/ListPolicyResponse.md
new file mode 100644
index 0000000..fe199f1
--- /dev/null
+++ b/src/dtc/docs/ListPolicyResponse.md
@@ -0,0 +1,30 @@
+# ListPolicyResponse
+
+The __Policy__ object list response format.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**results** | [**List[Policy]**](Policy.md) | List of __Policy__ objects. | [optional]
+
+## Example
+
+```python
+from dtc.models.list_policy_response import ListPolicyResponse
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of ListPolicyResponse from a JSON string
+list_policy_response_instance = ListPolicyResponse.from_json(json)
+# print the JSON string representation of the object
+print(ListPolicyResponse.to_json())
+
+# convert the object into a dict
+list_policy_response_dict = list_policy_response_instance.to_dict()
+# create an instance of ListPolicyResponse from a dict
+list_policy_response_from_dict = ListPolicyResponse.from_dict(list_policy_response_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/ListPoolResponse.md b/src/dtc/docs/ListPoolResponse.md
new file mode 100644
index 0000000..ef4ad73
--- /dev/null
+++ b/src/dtc/docs/ListPoolResponse.md
@@ -0,0 +1,30 @@
+# ListPoolResponse
+
+The __Pool__ object list response format.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**results** | [**List[Pool]**](Pool.md) | List of __Pool__ objects. | [optional]
+
+## Example
+
+```python
+from dtc.models.list_pool_response import ListPoolResponse
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of ListPoolResponse from a JSON string
+list_pool_response_instance = ListPoolResponse.from_json(json)
+# print the JSON string representation of the object
+print(ListPoolResponse.to_json())
+
+# convert the object into a dict
+list_pool_response_dict = list_pool_response_instance.to_dict()
+# create an instance of ListPoolResponse from a dict
+list_pool_response_from_dict = ListPoolResponse.from_dict(list_pool_response_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/ListSNMPHealthCheckResponse.md b/src/dtc/docs/ListSNMPHealthCheckResponse.md
new file mode 100644
index 0000000..615c541
--- /dev/null
+++ b/src/dtc/docs/ListSNMPHealthCheckResponse.md
@@ -0,0 +1,30 @@
+# ListSNMPHealthCheckResponse
+
+The __SNMPHealthCheck__ object list response format.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**results** | [**List[SNMPHealthCheck]**](SNMPHealthCheck.md) | List of __SNMPHealthCheck__ objects. | [optional]
+
+## Example
+
+```python
+from dtc.models.list_snmp_health_check_response import ListSNMPHealthCheckResponse
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of ListSNMPHealthCheckResponse from a JSON string
+list_snmp_health_check_response_instance = ListSNMPHealthCheckResponse.from_json(json)
+# print the JSON string representation of the object
+print(ListSNMPHealthCheckResponse.to_json())
+
+# convert the object into a dict
+list_snmp_health_check_response_dict = list_snmp_health_check_response_instance.to_dict()
+# create an instance of ListSNMPHealthCheckResponse from a dict
+list_snmp_health_check_response_from_dict = ListSNMPHealthCheckResponse.from_dict(list_snmp_health_check_response_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/ListSNMPUserSecurityResponse.md b/src/dtc/docs/ListSNMPUserSecurityResponse.md
new file mode 100644
index 0000000..c46c9ec
--- /dev/null
+++ b/src/dtc/docs/ListSNMPUserSecurityResponse.md
@@ -0,0 +1,30 @@
+# ListSNMPUserSecurityResponse
+
+The __SNMPUserSecurityModel__ object list response format.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**results** | [**List[SNMPUserSecurityModel]**](SNMPUserSecurityModel.md) | List of __SNMPUserSecurityModel__ objects. | [optional]
+
+## Example
+
+```python
+from dtc.models.list_snmp_user_security_response import ListSNMPUserSecurityResponse
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of ListSNMPUserSecurityResponse from a JSON string
+list_snmp_user_security_response_instance = ListSNMPUserSecurityResponse.from_json(json)
+# print the JSON string representation of the object
+print(ListSNMPUserSecurityResponse.to_json())
+
+# convert the object into a dict
+list_snmp_user_security_response_dict = list_snmp_user_security_response_instance.to_dict()
+# create an instance of ListSNMPUserSecurityResponse from a dict
+list_snmp_user_security_response_from_dict = ListSNMPUserSecurityResponse.from_dict(list_snmp_user_security_response_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/ListServerResponse.md b/src/dtc/docs/ListServerResponse.md
new file mode 100644
index 0000000..698ef31
--- /dev/null
+++ b/src/dtc/docs/ListServerResponse.md
@@ -0,0 +1,30 @@
+# ListServerResponse
+
+The __Server__ object list response format.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**results** | [**List[Server]**](Server.md) | List of __Server__ objects. | [optional]
+
+## Example
+
+```python
+from dtc.models.list_server_response import ListServerResponse
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of ListServerResponse from a JSON string
+list_server_response_instance = ListServerResponse.from_json(json)
+# print the JSON string representation of the object
+print(ListServerResponse.to_json())
+
+# convert the object into a dict
+list_server_response_dict = list_server_response_instance.to_dict()
+# create an instance of ListServerResponse from a dict
+list_server_response_from_dict = ListServerResponse.from_dict(list_server_response_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/ListTCPHealthCheckResponse.md b/src/dtc/docs/ListTCPHealthCheckResponse.md
new file mode 100644
index 0000000..8f60615
--- /dev/null
+++ b/src/dtc/docs/ListTCPHealthCheckResponse.md
@@ -0,0 +1,30 @@
+# ListTCPHealthCheckResponse
+
+The __TCPHealthCheck__ object list response format.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**results** | [**List[TCPHealthCheck]**](TCPHealthCheck.md) | List of __TCPHealthCheck__ objects. | [optional]
+
+## Example
+
+```python
+from dtc.models.list_tcp_health_check_response import ListTCPHealthCheckResponse
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of ListTCPHealthCheckResponse from a JSON string
+list_tcp_health_check_response_instance = ListTCPHealthCheckResponse.from_json(json)
+# print the JSON string representation of the object
+print(ListTCPHealthCheckResponse.to_json())
+
+# convert the object into a dict
+list_tcp_health_check_response_dict = list_tcp_health_check_response_instance.to_dict()
+# create an instance of ListTCPHealthCheckResponse from a dict
+list_tcp_health_check_response_from_dict = ListTCPHealthCheckResponse.from_dict(list_tcp_health_check_response_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/Metadata.md b/src/dtc/docs/Metadata.md
new file mode 100644
index 0000000..c6a1fce
--- /dev/null
+++ b/src/dtc/docs/Metadata.md
@@ -0,0 +1,30 @@
+# Metadata
+
+Metadata of a configuration resource.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**used_by** | [**List[MetadataResourceMeta]**](MetadataResourceMeta.md) | List of structs representing a limited view on configuration objects that use a resource the metadata is provided for. | [optional]
+
+## Example
+
+```python
+from dtc.models.metadata import Metadata
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of Metadata from a JSON string
+metadata_instance = Metadata.from_json(json)
+# print the JSON string representation of the object
+print(Metadata.to_json())
+
+# convert the object into a dict
+metadata_dict = metadata_instance.to_dict()
+# create an instance of Metadata from a dict
+metadata_from_dict = Metadata.from_dict(metadata_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/MetadataResourceMeta.md b/src/dtc/docs/MetadataResourceMeta.md
new file mode 100644
index 0000000..b0985b8
--- /dev/null
+++ b/src/dtc/docs/MetadataResourceMeta.md
@@ -0,0 +1,32 @@
+# MetadataResourceMeta
+
+Limited view on a configuration resource.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**details** | **Dict[str, str]** | Structured data consisting of additional details of the configuration resource. | [optional]
+**display_name** | **str** | Display name of the configuration resource. | [optional]
+**id** | **str** | The resource identifier. | [optional] [readonly]
+
+## Example
+
+```python
+from dtc.models.metadata_resource_meta import MetadataResourceMeta
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of MetadataResourceMeta from a JSON string
+metadata_resource_meta_instance = MetadataResourceMeta.from_json(json)
+# print the JSON string representation of the object
+print(MetadataResourceMeta.to_json())
+
+# convert the object into a dict
+metadata_resource_meta_dict = metadata_resource_meta_instance.to_dict()
+# create an instance of MetadataResourceMeta from a dict
+metadata_resource_meta_from_dict = MetadataResourceMeta.from_dict(metadata_resource_meta_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/Policy.md b/src/dtc/docs/Policy.md
new file mode 100644
index 0000000..5945ab7
--- /dev/null
+++ b/src/dtc/docs/Policy.md
@@ -0,0 +1,40 @@
+# Policy
+
+A __Policy__ (_dtc/policy_) represents a DNS load balancing policy.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**comment** | **str** | Optional. Comment for __Policy__. | [optional]
+**disabled** | **bool** | Optional. Flag which enables/disables __Policy__. Defaults to _false_. | [optional]
+**id** | **str** | The resource identifier. | [optional] [readonly]
+**inheritance_sources** | [**TTLInheritance**](TTLInheritance.md) | Optional. The inheritance configuration. | [optional]
+**metadata** | [**Metadata**](Metadata.md) | Output only. __Policy__ metadata. Defaults to empty object and should be explicitly requested using field selection. | [optional]
+**method** | **str** | Load balancing method used for selecting __Pool__ assigned to __Policy__. Valid values are: * _round_robin_ If the _round_robin_ load balancing method is selected, BloxOne DDI adjusts the response to a query in a sequential and circular manner, directing clients to pools. * _ratio_ If _ratio_ load balancing method is selected, BloxOne DDI adjusts the response to a query so that clients are directed to pool using weighted round robin, a load-balancing pattern in which requests are distributed among several resources based on weight assigned to each resource. The distribution of responses over time will be equal for all available pools but the sequence of the responses won't be guaranteed. When equal weights are assigned for resources (pools) it effectively leads to basic round robin configuration which directs clients to pools in a sequential and circular manner. * _topology_ If _topology_ load balancing method is selected the pools configured for the policy are ignored and topology rules are used instead. * _global_availability_ If _global_availability_ load balancing method is selected clients are directed to the first pool that is up in the _pools_ list. Defaults to _round_robin_. |
+**name** | **str** | Display name of __Policy__. |
+**pools** | [**List[PolicyPool]**](PolicyPool.md) | Optional. List of __Pool__ objects assigned to __Policy__. Defaults to _empty_. | [optional]
+**rules** | [**List[TopologyRule]**](TopologyRule.md) | Optional. List of __TopologyRule__ objects defining the resolving strategy for __Policy__. Defaults to a list of single, default __TopologyRule__. | [optional]
+**tags** | **object** | Optional. The tags for __Policy__ in JSON format. | [optional]
+**ttl** | **int** | Optional. Time to live value (in seconds) to be used for records in DTC response. Unsigned integer, min: 0, max 2147483647 (31-bits per RFC-2181). | [optional]
+
+## Example
+
+```python
+from dtc.models.policy import Policy
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of Policy from a JSON string
+policy_instance = Policy.from_json(json)
+# print the JSON string representation of the object
+print(Policy.to_json())
+
+# convert the object into a dict
+policy_dict = policy_instance.to_dict()
+# create an instance of Policy from a dict
+policy_from_dict = Policy.from_dict(policy_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/PolicyApi.md b/src/dtc/docs/PolicyApi.md
new file mode 100644
index 0000000..b0b51de
--- /dev/null
+++ b/src/dtc/docs/PolicyApi.md
@@ -0,0 +1,400 @@
+# dtc.PolicyApi
+
+All URIs are relative to *http://localhost/api/ddi/v1*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**create**](PolicyApi.md#create) | **POST** /dtc/policy | Create the Policy object.
+[**delete**](PolicyApi.md#delete) | **DELETE** /dtc/policy/{id} | Delete the Policy object.
+[**list**](PolicyApi.md#list) | **GET** /dtc/policy | Retrieve Policy objects.
+[**read**](PolicyApi.md#read) | **GET** /dtc/policy/{id} | Retrieve the Policy object.
+[**update**](PolicyApi.md#update) | **PATCH** /dtc/policy/{id} | Update the Policy object.
+
+
+# **create**
+> CreatePolicyResponse create(body)
+
+Create the Policy object.
+
+Use this method to create a __Policy__ object.
+
+### Example
+
+* Api Key Authentication (ApiKeyAuth):
+```python
+import os
+from pprint import pprint
+
+import dtc
+
+from universal_ddi_client.api_client import ApiClient
+from universal_ddi_client.configuration import Configuration
+
+# Defining the Portal URL is optional and defaults to "https://csp.infoblox.com"
+# See configuration.py for a list of all supported configuration parameters.
+configuration = Configuration(
+ portal_url = os.getenv('INFOBLOX_PORTAL_URL'),
+)
+
+# The client must configure the authentication and authorization parameters
+# in accordance with the API server security policy.
+
+# Configure Portal key authorization: ApiKeyAuth
+configuration.portal_key = os.getenv("INFOBLOX_PORTAL_KEY")
+
+# Enter a context with an instance of the API client
+with ApiClient(configuration) as api_client:
+ # Create an instance of the API class
+ api_instance = dtc.PolicyApi(api_client)
+ body = dtc.Policy() # Policy |
+
+ try:
+ # Create the Policy object.
+ api_response = api_instance.create(body)
+ pprint("The response of PolicyApi->create:\n")
+ pprint(api_response)
+ except Exception as e:
+ pprint("Exception when calling PolicyApi->create: %s\n" % e)
+```
+
+
+
+### Parameters
+
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **body** | [**Policy**](Policy.md)| |
+
+### Return type
+
+[**CreatePolicyResponse**](CreatePolicyResponse.md)
+
+### Authorization
+
+[ApiKeyAuth](../README.md#ApiKeyAuth)
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json
+
+### HTTP response details
+
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+**200** | POST operation response | - |
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **delete**
+> delete(id)
+
+Delete the Policy object.
+
+Use this method to delete a __Policy__ object.
+
+### Example
+
+* Api Key Authentication (ApiKeyAuth):
+```python
+import os
+from pprint import pprint
+
+import dtc
+
+from universal_ddi_client.api_client import ApiClient
+from universal_ddi_client.configuration import Configuration
+
+# Defining the Portal URL is optional and defaults to "https://csp.infoblox.com"
+# See configuration.py for a list of all supported configuration parameters.
+configuration = Configuration(
+ portal_url = os.getenv('INFOBLOX_PORTAL_URL'),
+)
+
+# The client must configure the authentication and authorization parameters
+# in accordance with the API server security policy.
+
+# Configure Portal key authorization: ApiKeyAuth
+configuration.portal_key = os.getenv("INFOBLOX_PORTAL_KEY")
+
+# Enter a context with an instance of the API client
+with ApiClient(configuration) as api_client:
+ # Create an instance of the API class
+ api_instance = dtc.PolicyApi(api_client)
+ id = 'id_example' # str | An application specific resource identity of a resource
+
+ try:
+ # Delete the Policy object.
+ api_instance.delete(id)
+ except Exception as e:
+ pprint("Exception when calling PolicyApi->delete: %s\n" % e)
+```
+
+
+
+### Parameters
+
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **str**| An application specific resource identity of a resource |
+
+### Return type
+
+void (empty response body)
+
+### Authorization
+
+[ApiKeyAuth](../README.md#ApiKeyAuth)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: Not defined
+
+### HTTP response details
+
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+**200** | OK | - |
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **list**
+> ListPolicyResponse list(fields=fields, filter=filter, offset=offset, limit=limit, page_token=page_token, order_by=order_by, tfilter=tfilter, torder_by=torder_by)
+
+Retrieve Policy objects.
+
+Use this method to retrieve __Policy__ objects.
+
+### Example
+
+* Api Key Authentication (ApiKeyAuth):
+```python
+import os
+from pprint import pprint
+
+import dtc
+
+from universal_ddi_client.api_client import ApiClient
+from universal_ddi_client.configuration import Configuration
+
+# Defining the Portal URL is optional and defaults to "https://csp.infoblox.com"
+# See configuration.py for a list of all supported configuration parameters.
+configuration = Configuration(
+ portal_url = os.getenv('INFOBLOX_PORTAL_URL'),
+)
+
+# The client must configure the authentication and authorization parameters
+# in accordance with the API server security policy.
+
+# Configure Portal key authorization: ApiKeyAuth
+configuration.portal_key = os.getenv("INFOBLOX_PORTAL_KEY")
+
+# Enter a context with an instance of the API client
+with ApiClient(configuration) as api_client:
+ # Create an instance of the API class
+ api_instance = dtc.PolicyApi(api_client)
+
+ try:
+ # Retrieve Policy objects.
+ api_response = api_instance.list()
+ pprint("The response of PolicyApi->list:\n")
+ pprint(api_response)
+ except Exception as e:
+ pprint("Exception when calling PolicyApi->list: %s\n" % e)
+```
+
+
+
+### Parameters
+
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **fields** | **str**| A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. | [optional]
+ **filter** | **str**| A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators | | [optional]
+ **offset** | **int**| The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'. | [optional]
+ **limit** | **int**| The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value. | [optional]
+ **page_token** | **str**| The service-defined string used to identify a page of resources. A null value indicates the first page. | [optional]
+ **order_by** | **str**| A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order. | [optional]
+ **tfilter** | **str**| This parameter is used for filtering by tags. | [optional]
+ **torder_by** | **str**| This parameter is used for sorting by tags. | [optional]
+
+### Return type
+
+[**ListPolicyResponse**](ListPolicyResponse.md)
+
+### Authorization
+
+[ApiKeyAuth](../README.md#ApiKeyAuth)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+### HTTP response details
+
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+**200** | GET operation response | - |
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **read**
+> ReadPolicyResponse read(id, fields=fields)
+
+Retrieve the Policy object.
+
+Use this method to retrieve a __Policy__ object.
+
+### Example
+
+* Api Key Authentication (ApiKeyAuth):
+```python
+import os
+from pprint import pprint
+
+import dtc
+
+from universal_ddi_client.api_client import ApiClient
+from universal_ddi_client.configuration import Configuration
+
+# Defining the Portal URL is optional and defaults to "https://csp.infoblox.com"
+# See configuration.py for a list of all supported configuration parameters.
+configuration = Configuration(
+ portal_url = os.getenv('INFOBLOX_PORTAL_URL'),
+)
+
+# The client must configure the authentication and authorization parameters
+# in accordance with the API server security policy.
+
+# Configure Portal key authorization: ApiKeyAuth
+configuration.portal_key = os.getenv("INFOBLOX_PORTAL_KEY")
+
+# Enter a context with an instance of the API client
+with ApiClient(configuration) as api_client:
+ # Create an instance of the API class
+ api_instance = dtc.PolicyApi(api_client)
+ id = 'id_example' # str | An application specific resource identity of a resource
+
+ try:
+ # Retrieve the Policy object.
+ api_response = api_instance.read(id)
+ pprint("The response of PolicyApi->read:\n")
+ pprint(api_response)
+ except Exception as e:
+ pprint("Exception when calling PolicyApi->read: %s\n" % e)
+```
+
+
+
+### Parameters
+
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **str**| An application specific resource identity of a resource |
+ **fields** | **str**| A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. | [optional]
+
+### Return type
+
+[**ReadPolicyResponse**](ReadPolicyResponse.md)
+
+### Authorization
+
+[ApiKeyAuth](../README.md#ApiKeyAuth)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+### HTTP response details
+
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+**200** | GET operation response | - |
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **update**
+> UpdatePolicyResponse update(id, body)
+
+Update the Policy object.
+
+Use this method to update a __Policy__ object.
+
+### Example
+
+* Api Key Authentication (ApiKeyAuth):
+```python
+import os
+from pprint import pprint
+
+import dtc
+
+from universal_ddi_client.api_client import ApiClient
+from universal_ddi_client.configuration import Configuration
+
+# Defining the Portal URL is optional and defaults to "https://csp.infoblox.com"
+# See configuration.py for a list of all supported configuration parameters.
+configuration = Configuration(
+ portal_url = os.getenv('INFOBLOX_PORTAL_URL'),
+)
+
+# The client must configure the authentication and authorization parameters
+# in accordance with the API server security policy.
+
+# Configure Portal key authorization: ApiKeyAuth
+configuration.portal_key = os.getenv("INFOBLOX_PORTAL_KEY")
+
+# Enter a context with an instance of the API client
+with ApiClient(configuration) as api_client:
+ # Create an instance of the API class
+ api_instance = dtc.PolicyApi(api_client)
+ id = 'id_example' # str | An application specific resource identity of a resource
+ body = dtc.Policy() # Policy |
+
+ try:
+ # Update the Policy object.
+ api_response = api_instance.update(id, body)
+ pprint("The response of PolicyApi->update:\n")
+ pprint(api_response)
+ except Exception as e:
+ pprint("Exception when calling PolicyApi->update: %s\n" % e)
+```
+
+
+
+### Parameters
+
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **str**| An application specific resource identity of a resource |
+ **body** | [**Policy**](Policy.md)| |
+
+### Return type
+
+[**UpdatePolicyResponse**](UpdatePolicyResponse.md)
+
+### Authorization
+
+[ApiKeyAuth](../README.md#ApiKeyAuth)
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json
+
+### HTTP response details
+
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+**200** | PATCH operation response | - |
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
diff --git a/src/dtc/docs/PolicyPool.md b/src/dtc/docs/PolicyPool.md
new file mode 100644
index 0000000..3ef2452
--- /dev/null
+++ b/src/dtc/docs/PolicyPool.md
@@ -0,0 +1,32 @@
+# PolicyPool
+
+A __PolicyPool__ represents a link between __Policy__ and __Pool__.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**name** | **str** | Display name of __Pool__. | [optional] [readonly]
+**pool_id** | **str** | The resource identifier. |
+**weight** | **int** | Weight of __Pool__ to be used for load balancing. Unsigned integer, min 1; max 65535. |
+
+## Example
+
+```python
+from dtc.models.policy_pool import PolicyPool
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of PolicyPool from a JSON string
+policy_pool_instance = PolicyPool.from_json(json)
+# print the JSON string representation of the object
+print(PolicyPool.to_json())
+
+# convert the object into a dict
+policy_pool_dict = policy_pool_instance.to_dict()
+# create an instance of PolicyPool from a dict
+policy_pool_from_dict = PolicyPool.from_dict(policy_pool_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/Pool.md b/src/dtc/docs/Pool.md
new file mode 100644
index 0000000..e8eef37
--- /dev/null
+++ b/src/dtc/docs/Pool.md
@@ -0,0 +1,44 @@
+# Pool
+
+A __Pool__ (_dtc/pool_) represents a collection of servers, it is associated with a __Policy__ (_dtc/policy_).
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**comment** | **str** | Optional. Comment for __Pool__. | [optional]
+**disabled** | **bool** | Optional. Flag which enables/disables __Pool__. Defaults to _false_. | [optional]
+**health_checks** | [**List[PoolHealthCheck]**](PoolHealthCheck.md) | Optional. List of __HealthCheck__ objects IDs assigned to __Pool__. Defaults to _empty_. | [optional]
+**id** | **str** | The resource identifier. | [optional] [readonly]
+**inheritance_sources** | [**TTLInheritance**](TTLInheritance.md) | Optional. The inheritance configuration. | [optional]
+**metadata** | [**Metadata**](Metadata.md) | Output only. __Pool__ metadata. Defaults to empty object and should be explicitly requested using field selection. | [optional]
+**method** | **str** | Load balancing method used for selecting __Server__ assigned to __Pool__. Valid values are: * _round_robin_ If the _round_robin_ load balancing method is selected, BloxOne DDI adjusts the response to a query in a sequential and circular manner, directing clients to pools. * _ratio_ If _ratio_ load balancing method is selected, BloxOne DDI adjusts the response to a query so that clients are directed to pool using weighted round robin, a load-balancing pattern in which requests are distributed among several resources based on weight assigned to each resource. The distribution of responses over time will be equal for all available pools but the sequence of the responses won't be guaranteed. When equal weights are assigned for resources (pools) it effectively leads to basic round robin which directs clients to pools in sequential and circular manner. * _global_availability_ If _global_availability_ load balancing method is selected clients are directed to the first server that is up in the _servers_ list. Defaults to _round_robin_. |
+**name** | **str** | Display name of __Pool__. |
+**pool_availability** | **str** | Optional. Pool Availability setting defines how __Pool__ health is calculated. Valid values are: * _all_ If _all_ availability selected then __Pool__ is treated healthy when all pool's servers are healthy. * _quorum_ If _quorum_ availability selected then __Pool__ is treated healthy when at least N pool's servers are healthy. N is configurable via the value from _pool_servers_quorum_ setting. * _any_ If _any_ availability selected then __Pool__ is treated healthy when at least one pool's server is healthy. Defaults to _any_. | [optional]
+**pool_servers_quorum** | **int** | Pool Servers Quorum defines a minimal number of pool's healthy servers required for treating __Pool__ as healthy when Pool Availability is set to _quorum_. | [optional]
+**server_availability** | **str** | Optional. Server Availability setting defines how __Server__ health is calculated. Valid values are: * _all_ If _all_ availability selected then __Server__ is treated healthy when all pool's health checks are positive. * _quorum_ If _quorum_ availability selected then __Server__ is treated healthy when at least N pool's health checks are positive. N is configurable via the value from _server_health_checks_quorum_ setting. * _any_ If _any_ availability selected then __Server__ is treated healthy when at least one pool's health check is positive Defaults to _all_. | [optional]
+**server_health_checks_quorum** | **int** | Server Health Checks Quorum defines a minimal number of pool's positive health checks required for treating __Server__ as healthy when Server Availability is set to _quorum_. | [optional]
+**servers** | [**List[PoolServer]**](PoolServer.md) | Optional. List of __Server__ objects assigned to __Pool__. Defaults to _empty_. | [optional]
+**tags** | **object** | Optional. The tags for __Pool__ in JSON format. | [optional]
+**ttl** | **int** | Optional. Time to live value (in seconds) to be used for records in DTC response. Unsigned integer, min: 0, max 2147483647 (31-bits per RFC-2181). | [optional]
+
+## Example
+
+```python
+from dtc.models.pool import Pool
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of Pool from a JSON string
+pool_instance = Pool.from_json(json)
+# print the JSON string representation of the object
+print(Pool.to_json())
+
+# convert the object into a dict
+pool_dict = pool_instance.to_dict()
+# create an instance of Pool from a dict
+pool_from_dict = Pool.from_dict(pool_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/PoolApi.md b/src/dtc/docs/PoolApi.md
new file mode 100644
index 0000000..22e797f
--- /dev/null
+++ b/src/dtc/docs/PoolApi.md
@@ -0,0 +1,400 @@
+# dtc.PoolApi
+
+All URIs are relative to *http://localhost/api/ddi/v1*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**create**](PoolApi.md#create) | **POST** /dtc/pool | Create the Pool object.
+[**delete**](PoolApi.md#delete) | **DELETE** /dtc/pool/{id} | Delete the Pool object.
+[**list**](PoolApi.md#list) | **GET** /dtc/pool | Retrieve Pool objects.
+[**read**](PoolApi.md#read) | **GET** /dtc/pool/{id} | Retrieve the Pool object.
+[**update**](PoolApi.md#update) | **PATCH** /dtc/pool/{id} | Update the Pool object.
+
+
+# **create**
+> CreatePoolResponse create(body)
+
+Create the Pool object.
+
+Use this method to create a __Pool__ object.
+
+### Example
+
+* Api Key Authentication (ApiKeyAuth):
+```python
+import os
+from pprint import pprint
+
+import dtc
+
+from universal_ddi_client.api_client import ApiClient
+from universal_ddi_client.configuration import Configuration
+
+# Defining the Portal URL is optional and defaults to "https://csp.infoblox.com"
+# See configuration.py for a list of all supported configuration parameters.
+configuration = Configuration(
+ portal_url = os.getenv('INFOBLOX_PORTAL_URL'),
+)
+
+# The client must configure the authentication and authorization parameters
+# in accordance with the API server security policy.
+
+# Configure Portal key authorization: ApiKeyAuth
+configuration.portal_key = os.getenv("INFOBLOX_PORTAL_KEY")
+
+# Enter a context with an instance of the API client
+with ApiClient(configuration) as api_client:
+ # Create an instance of the API class
+ api_instance = dtc.PoolApi(api_client)
+ body = dtc.Pool() # Pool |
+
+ try:
+ # Create the Pool object.
+ api_response = api_instance.create(body)
+ pprint("The response of PoolApi->create:\n")
+ pprint(api_response)
+ except Exception as e:
+ pprint("Exception when calling PoolApi->create: %s\n" % e)
+```
+
+
+
+### Parameters
+
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **body** | [**Pool**](Pool.md)| |
+
+### Return type
+
+[**CreatePoolResponse**](CreatePoolResponse.md)
+
+### Authorization
+
+[ApiKeyAuth](../README.md#ApiKeyAuth)
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json
+
+### HTTP response details
+
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+**200** | POST operation response | - |
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **delete**
+> delete(id)
+
+Delete the Pool object.
+
+Use this method to delete a __Pool__ object.
+
+### Example
+
+* Api Key Authentication (ApiKeyAuth):
+```python
+import os
+from pprint import pprint
+
+import dtc
+
+from universal_ddi_client.api_client import ApiClient
+from universal_ddi_client.configuration import Configuration
+
+# Defining the Portal URL is optional and defaults to "https://csp.infoblox.com"
+# See configuration.py for a list of all supported configuration parameters.
+configuration = Configuration(
+ portal_url = os.getenv('INFOBLOX_PORTAL_URL'),
+)
+
+# The client must configure the authentication and authorization parameters
+# in accordance with the API server security policy.
+
+# Configure Portal key authorization: ApiKeyAuth
+configuration.portal_key = os.getenv("INFOBLOX_PORTAL_KEY")
+
+# Enter a context with an instance of the API client
+with ApiClient(configuration) as api_client:
+ # Create an instance of the API class
+ api_instance = dtc.PoolApi(api_client)
+ id = 'id_example' # str | An application specific resource identity of a resource
+
+ try:
+ # Delete the Pool object.
+ api_instance.delete(id)
+ except Exception as e:
+ pprint("Exception when calling PoolApi->delete: %s\n" % e)
+```
+
+
+
+### Parameters
+
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **str**| An application specific resource identity of a resource |
+
+### Return type
+
+void (empty response body)
+
+### Authorization
+
+[ApiKeyAuth](../README.md#ApiKeyAuth)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: Not defined
+
+### HTTP response details
+
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+**200** | OK | - |
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **list**
+> ListPoolResponse list(fields=fields, filter=filter, offset=offset, limit=limit, page_token=page_token, order_by=order_by, tfilter=tfilter, torder_by=torder_by)
+
+Retrieve Pool objects.
+
+Use this method to retrieve __Pool__ objects.
+
+### Example
+
+* Api Key Authentication (ApiKeyAuth):
+```python
+import os
+from pprint import pprint
+
+import dtc
+
+from universal_ddi_client.api_client import ApiClient
+from universal_ddi_client.configuration import Configuration
+
+# Defining the Portal URL is optional and defaults to "https://csp.infoblox.com"
+# See configuration.py for a list of all supported configuration parameters.
+configuration = Configuration(
+ portal_url = os.getenv('INFOBLOX_PORTAL_URL'),
+)
+
+# The client must configure the authentication and authorization parameters
+# in accordance with the API server security policy.
+
+# Configure Portal key authorization: ApiKeyAuth
+configuration.portal_key = os.getenv("INFOBLOX_PORTAL_KEY")
+
+# Enter a context with an instance of the API client
+with ApiClient(configuration) as api_client:
+ # Create an instance of the API class
+ api_instance = dtc.PoolApi(api_client)
+
+ try:
+ # Retrieve Pool objects.
+ api_response = api_instance.list()
+ pprint("The response of PoolApi->list:\n")
+ pprint(api_response)
+ except Exception as e:
+ pprint("Exception when calling PoolApi->list: %s\n" % e)
+```
+
+
+
+### Parameters
+
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **fields** | **str**| A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. | [optional]
+ **filter** | **str**| A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators | | [optional]
+ **offset** | **int**| The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'. | [optional]
+ **limit** | **int**| The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value. | [optional]
+ **page_token** | **str**| The service-defined string used to identify a page of resources. A null value indicates the first page. | [optional]
+ **order_by** | **str**| A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order. | [optional]
+ **tfilter** | **str**| This parameter is used for filtering by tags. | [optional]
+ **torder_by** | **str**| This parameter is used for sorting by tags. | [optional]
+
+### Return type
+
+[**ListPoolResponse**](ListPoolResponse.md)
+
+### Authorization
+
+[ApiKeyAuth](../README.md#ApiKeyAuth)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+### HTTP response details
+
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+**200** | GET operation response | - |
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **read**
+> ReadPoolResponse read(id, fields=fields)
+
+Retrieve the Pool object.
+
+Use this method to retrieve a __Pool__ object.
+
+### Example
+
+* Api Key Authentication (ApiKeyAuth):
+```python
+import os
+from pprint import pprint
+
+import dtc
+
+from universal_ddi_client.api_client import ApiClient
+from universal_ddi_client.configuration import Configuration
+
+# Defining the Portal URL is optional and defaults to "https://csp.infoblox.com"
+# See configuration.py for a list of all supported configuration parameters.
+configuration = Configuration(
+ portal_url = os.getenv('INFOBLOX_PORTAL_URL'),
+)
+
+# The client must configure the authentication and authorization parameters
+# in accordance with the API server security policy.
+
+# Configure Portal key authorization: ApiKeyAuth
+configuration.portal_key = os.getenv("INFOBLOX_PORTAL_KEY")
+
+# Enter a context with an instance of the API client
+with ApiClient(configuration) as api_client:
+ # Create an instance of the API class
+ api_instance = dtc.PoolApi(api_client)
+ id = 'id_example' # str | An application specific resource identity of a resource
+
+ try:
+ # Retrieve the Pool object.
+ api_response = api_instance.read(id)
+ pprint("The response of PoolApi->read:\n")
+ pprint(api_response)
+ except Exception as e:
+ pprint("Exception when calling PoolApi->read: %s\n" % e)
+```
+
+
+
+### Parameters
+
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **str**| An application specific resource identity of a resource |
+ **fields** | **str**| A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. | [optional]
+
+### Return type
+
+[**ReadPoolResponse**](ReadPoolResponse.md)
+
+### Authorization
+
+[ApiKeyAuth](../README.md#ApiKeyAuth)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+### HTTP response details
+
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+**200** | GET operation response | - |
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **update**
+> UpdatePoolResponse update(id, body)
+
+Update the Pool object.
+
+Use this method to update a __Pool__ object.
+
+### Example
+
+* Api Key Authentication (ApiKeyAuth):
+```python
+import os
+from pprint import pprint
+
+import dtc
+
+from universal_ddi_client.api_client import ApiClient
+from universal_ddi_client.configuration import Configuration
+
+# Defining the Portal URL is optional and defaults to "https://csp.infoblox.com"
+# See configuration.py for a list of all supported configuration parameters.
+configuration = Configuration(
+ portal_url = os.getenv('INFOBLOX_PORTAL_URL'),
+)
+
+# The client must configure the authentication and authorization parameters
+# in accordance with the API server security policy.
+
+# Configure Portal key authorization: ApiKeyAuth
+configuration.portal_key = os.getenv("INFOBLOX_PORTAL_KEY")
+
+# Enter a context with an instance of the API client
+with ApiClient(configuration) as api_client:
+ # Create an instance of the API class
+ api_instance = dtc.PoolApi(api_client)
+ id = 'id_example' # str | An application specific resource identity of a resource
+ body = dtc.Pool() # Pool |
+
+ try:
+ # Update the Pool object.
+ api_response = api_instance.update(id, body)
+ pprint("The response of PoolApi->update:\n")
+ pprint(api_response)
+ except Exception as e:
+ pprint("Exception when calling PoolApi->update: %s\n" % e)
+```
+
+
+
+### Parameters
+
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **str**| An application specific resource identity of a resource |
+ **body** | [**Pool**](Pool.md)| |
+
+### Return type
+
+[**UpdatePoolResponse**](UpdatePoolResponse.md)
+
+### Authorization
+
+[ApiKeyAuth](../README.md#ApiKeyAuth)
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json
+
+### HTTP response details
+
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+**200** | PATCH operation response | - |
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
diff --git a/src/dtc/docs/PoolHealthCheck.md b/src/dtc/docs/PoolHealthCheck.md
new file mode 100644
index 0000000..4767270
--- /dev/null
+++ b/src/dtc/docs/PoolHealthCheck.md
@@ -0,0 +1,31 @@
+# PoolHealthCheck
+
+A __PoolHealthCheck__ represents a link between __Pool__ and __HealthCheck__.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**health_check_id** | **str** | The resource identifier. |
+**name** | **str** | Display name of __HealthCheck__. | [optional] [readonly]
+
+## Example
+
+```python
+from dtc.models.pool_health_check import PoolHealthCheck
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of PoolHealthCheck from a JSON string
+pool_health_check_instance = PoolHealthCheck.from_json(json)
+# print the JSON string representation of the object
+print(PoolHealthCheck.to_json())
+
+# convert the object into a dict
+pool_health_check_dict = pool_health_check_instance.to_dict()
+# create an instance of PoolHealthCheck from a dict
+pool_health_check_from_dict = PoolHealthCheck.from_dict(pool_health_check_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/PoolServer.md b/src/dtc/docs/PoolServer.md
new file mode 100644
index 0000000..99587b3
--- /dev/null
+++ b/src/dtc/docs/PoolServer.md
@@ -0,0 +1,32 @@
+# PoolServer
+
+A __PoolServer__ represents a link between __Pool__ and __Server__.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**name** | **str** | Display name of __Server__. | [optional] [readonly]
+**server_id** | **str** | The resource identifier. |
+**weight** | **int** | Weight of __Server__ to be used for load balancing. Unsigned integer, min 1; max 65535. |
+
+## Example
+
+```python
+from dtc.models.pool_server import PoolServer
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of PoolServer from a JSON string
+pool_server_instance = PoolServer.from_json(json)
+# print the JSON string representation of the object
+print(PoolServer.to_json())
+
+# convert the object into a dict
+pool_server_dict = pool_server_instance.to_dict()
+# create an instance of PoolServer from a dict
+pool_server_from_dict = PoolServer.from_dict(pool_server_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/ReadHTTPHealthCheckResponse.md b/src/dtc/docs/ReadHTTPHealthCheckResponse.md
new file mode 100644
index 0000000..8d21c85
--- /dev/null
+++ b/src/dtc/docs/ReadHTTPHealthCheckResponse.md
@@ -0,0 +1,30 @@
+# ReadHTTPHealthCheckResponse
+
+The __HTTPHealthCheck__ object read response format.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**result** | [**HTTPHealthCheck**](HTTPHealthCheck.md) | The __HTTPHealthCheck__ object. | [optional]
+
+## Example
+
+```python
+from dtc.models.read_http_health_check_response import ReadHTTPHealthCheckResponse
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of ReadHTTPHealthCheckResponse from a JSON string
+read_http_health_check_response_instance = ReadHTTPHealthCheckResponse.from_json(json)
+# print the JSON string representation of the object
+print(ReadHTTPHealthCheckResponse.to_json())
+
+# convert the object into a dict
+read_http_health_check_response_dict = read_http_health_check_response_instance.to_dict()
+# create an instance of ReadHTTPHealthCheckResponse from a dict
+read_http_health_check_response_from_dict = ReadHTTPHealthCheckResponse.from_dict(read_http_health_check_response_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/ReadICMPHealthCheckResponse.md b/src/dtc/docs/ReadICMPHealthCheckResponse.md
new file mode 100644
index 0000000..676b9f1
--- /dev/null
+++ b/src/dtc/docs/ReadICMPHealthCheckResponse.md
@@ -0,0 +1,30 @@
+# ReadICMPHealthCheckResponse
+
+The __ICMPHealthCheck__ object read response format.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**result** | [**ICMPHealthCheck**](ICMPHealthCheck.md) | The __ICMPHealthCheck__ object. | [optional]
+
+## Example
+
+```python
+from dtc.models.read_icmp_health_check_response import ReadICMPHealthCheckResponse
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of ReadICMPHealthCheckResponse from a JSON string
+read_icmp_health_check_response_instance = ReadICMPHealthCheckResponse.from_json(json)
+# print the JSON string representation of the object
+print(ReadICMPHealthCheckResponse.to_json())
+
+# convert the object into a dict
+read_icmp_health_check_response_dict = read_icmp_health_check_response_instance.to_dict()
+# create an instance of ReadICMPHealthCheckResponse from a dict
+read_icmp_health_check_response_from_dict = ReadICMPHealthCheckResponse.from_dict(read_icmp_health_check_response_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/ReadPolicyResponse.md b/src/dtc/docs/ReadPolicyResponse.md
new file mode 100644
index 0000000..5447ded
--- /dev/null
+++ b/src/dtc/docs/ReadPolicyResponse.md
@@ -0,0 +1,30 @@
+# ReadPolicyResponse
+
+The __Policy__ object read response format.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**result** | [**Policy**](Policy.md) | The __Policy__ object. | [optional]
+
+## Example
+
+```python
+from dtc.models.read_policy_response import ReadPolicyResponse
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of ReadPolicyResponse from a JSON string
+read_policy_response_instance = ReadPolicyResponse.from_json(json)
+# print the JSON string representation of the object
+print(ReadPolicyResponse.to_json())
+
+# convert the object into a dict
+read_policy_response_dict = read_policy_response_instance.to_dict()
+# create an instance of ReadPolicyResponse from a dict
+read_policy_response_from_dict = ReadPolicyResponse.from_dict(read_policy_response_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/ReadPoolResponse.md b/src/dtc/docs/ReadPoolResponse.md
new file mode 100644
index 0000000..b8f9141
--- /dev/null
+++ b/src/dtc/docs/ReadPoolResponse.md
@@ -0,0 +1,30 @@
+# ReadPoolResponse
+
+The __Pool__ object read response format.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**result** | [**Pool**](Pool.md) | The __Pool__ object. | [optional]
+
+## Example
+
+```python
+from dtc.models.read_pool_response import ReadPoolResponse
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of ReadPoolResponse from a JSON string
+read_pool_response_instance = ReadPoolResponse.from_json(json)
+# print the JSON string representation of the object
+print(ReadPoolResponse.to_json())
+
+# convert the object into a dict
+read_pool_response_dict = read_pool_response_instance.to_dict()
+# create an instance of ReadPoolResponse from a dict
+read_pool_response_from_dict = ReadPoolResponse.from_dict(read_pool_response_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/ReadSNMPHealthCheckResponse.md b/src/dtc/docs/ReadSNMPHealthCheckResponse.md
new file mode 100644
index 0000000..83416ef
--- /dev/null
+++ b/src/dtc/docs/ReadSNMPHealthCheckResponse.md
@@ -0,0 +1,30 @@
+# ReadSNMPHealthCheckResponse
+
+The __SNMPHealthCheck__ object read response format.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**result** | [**SNMPHealthCheck**](SNMPHealthCheck.md) | The __SNMPHealthCheck__ object. | [optional]
+
+## Example
+
+```python
+from dtc.models.read_snmp_health_check_response import ReadSNMPHealthCheckResponse
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of ReadSNMPHealthCheckResponse from a JSON string
+read_snmp_health_check_response_instance = ReadSNMPHealthCheckResponse.from_json(json)
+# print the JSON string representation of the object
+print(ReadSNMPHealthCheckResponse.to_json())
+
+# convert the object into a dict
+read_snmp_health_check_response_dict = read_snmp_health_check_response_instance.to_dict()
+# create an instance of ReadSNMPHealthCheckResponse from a dict
+read_snmp_health_check_response_from_dict = ReadSNMPHealthCheckResponse.from_dict(read_snmp_health_check_response_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/ReadSNMPUserSecurityResponse.md b/src/dtc/docs/ReadSNMPUserSecurityResponse.md
new file mode 100644
index 0000000..336790c
--- /dev/null
+++ b/src/dtc/docs/ReadSNMPUserSecurityResponse.md
@@ -0,0 +1,30 @@
+# ReadSNMPUserSecurityResponse
+
+The __SNMPUserSecurityModel__ object read response format.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**result** | [**SNMPUserSecurityModel**](SNMPUserSecurityModel.md) | | [optional]
+
+## Example
+
+```python
+from dtc.models.read_snmp_user_security_response import ReadSNMPUserSecurityResponse
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of ReadSNMPUserSecurityResponse from a JSON string
+read_snmp_user_security_response_instance = ReadSNMPUserSecurityResponse.from_json(json)
+# print the JSON string representation of the object
+print(ReadSNMPUserSecurityResponse.to_json())
+
+# convert the object into a dict
+read_snmp_user_security_response_dict = read_snmp_user_security_response_instance.to_dict()
+# create an instance of ReadSNMPUserSecurityResponse from a dict
+read_snmp_user_security_response_from_dict = ReadSNMPUserSecurityResponse.from_dict(read_snmp_user_security_response_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/ReadServerResponse.md b/src/dtc/docs/ReadServerResponse.md
new file mode 100644
index 0000000..c53ee6b
--- /dev/null
+++ b/src/dtc/docs/ReadServerResponse.md
@@ -0,0 +1,30 @@
+# ReadServerResponse
+
+The __Server__ object read response format.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**result** | [**Server**](Server.md) | | [optional]
+
+## Example
+
+```python
+from dtc.models.read_server_response import ReadServerResponse
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of ReadServerResponse from a JSON string
+read_server_response_instance = ReadServerResponse.from_json(json)
+# print the JSON string representation of the object
+print(ReadServerResponse.to_json())
+
+# convert the object into a dict
+read_server_response_dict = read_server_response_instance.to_dict()
+# create an instance of ReadServerResponse from a dict
+read_server_response_from_dict = ReadServerResponse.from_dict(read_server_response_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/ReadTCPHealthCheckResponse.md b/src/dtc/docs/ReadTCPHealthCheckResponse.md
new file mode 100644
index 0000000..081de5e
--- /dev/null
+++ b/src/dtc/docs/ReadTCPHealthCheckResponse.md
@@ -0,0 +1,30 @@
+# ReadTCPHealthCheckResponse
+
+The __TCPHealthCheck__ object read response format.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**result** | [**TCPHealthCheck**](TCPHealthCheck.md) | The __TCPHealthCheck__ object. | [optional]
+
+## Example
+
+```python
+from dtc.models.read_tcp_health_check_response import ReadTCPHealthCheckResponse
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of ReadTCPHealthCheckResponse from a JSON string
+read_tcp_health_check_response_instance = ReadTCPHealthCheckResponse.from_json(json)
+# print the JSON string representation of the object
+print(ReadTCPHealthCheckResponse.to_json())
+
+# convert the object into a dict
+read_tcp_health_check_response_dict = read_tcp_health_check_response_instance.to_dict()
+# create an instance of ReadTCPHealthCheckResponse from a dict
+read_tcp_health_check_response_from_dict = ReadTCPHealthCheckResponse.from_dict(read_tcp_health_check_response_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/Record.md b/src/dtc/docs/Record.md
new file mode 100644
index 0000000..0effd5e
--- /dev/null
+++ b/src/dtc/docs/Record.md
@@ -0,0 +1,32 @@
+# Record
+
+__Record__ represents a resource record which is returned in response to load balanced DNS queries.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**dns_rdata** | **str** | The DNS protocol textual representation of the record data. | [optional] [readonly]
+**rdata** | **object** | JSON representation of resource record data. |
+**type** | **str** | Resource record type. List of supported types: * _A_ (_TYPE1_) * _AAAA_ (_TYPE28_) * _CNAME_ (_TYPE5_) * _HTTPS_ (_TYPE65_) * _SRV_ (_TYPE33_) * _SVCB_ (_TYPE64_) |
+
+## Example
+
+```python
+from dtc.models.record import Record
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of Record from a JSON string
+record_instance = Record.from_json(json)
+# print the JSON string representation of the object
+print(Record.to_json())
+
+# convert the object into a dict
+record_dict = record_instance.to_dict()
+# create an instance of Record from a dict
+record_from_dict = Record.from_dict(record_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/SNMPHealthCheck.md b/src/dtc/docs/SNMPHealthCheck.md
new file mode 100644
index 0000000..72a0eb3
--- /dev/null
+++ b/src/dtc/docs/SNMPHealthCheck.md
@@ -0,0 +1,46 @@
+# SNMPHealthCheck
+
+A __SNMPHealthCheck__ (_dtc/health_check_snmp_) represents a DTC __Server__ health check based on the Simple Network Management Protocol (SNMP).
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**check_list** | [**List[SNMPHealthCheckEntryCheck]**](SNMPHealthCheckEntryCheck.md) | List of specific checks for SNMP entries and their values in MIB hierarchy. Supported up to 15 checks. | [optional]
+**comment** | **str** | Optional. Comment for __SNMPHealthCheck__. | [optional]
+**community** | **str** | Optional. SNMP community string used for authentication. Mandatory for __v1__ and __v2c__ versions, ignored for __v3__. Defaults to __public__. | [optional]
+**context_engine_id** | **str** | Optional. Uniquely identifies an SNMP entity that may realize an instance of a context with a particular context name. Format is an arbitrary string that can contain from 10 to 64 hexadecimal digits (5 to 32 octet numbers). Ignored for __v1__ and __v2c__ versions. | [optional]
+**context_name** | **str** | Optional. Name of administratively unique context for __v3__ version. Ignored for __v1__ and __v2c__ versions. | [optional]
+**disabled** | **bool** | Optional. Flag which enables/disables __SNMPHealthCheck__. Defaults to _false_. | [optional]
+**id** | **str** | The resource identifier. | [optional] [readonly]
+**interval** | **int** | Optional. Interval value in seconds. The health check runs only for the specified interval and it is measured from the beginning of the previous check cycle. Defaults to _15_. | [optional]
+**metadata** | [**Metadata**](Metadata.md) | Output only. __SNMPHealthCheck__ metadata. Defaults to empty object and should be explicitly requested using field selection. | [optional]
+**name** | **str** | Display name of __SNMPHealthCheck__. |
+**port** | **int** | Optional. Destination UDP port of __SNMPHealthCheck__. Defaults to _161_. | [optional]
+**retry_down** | **int** | Optional. Retry down count. The value determines how many bad health checks in a row must be received by the onprem host from the DTC Server for treating the health check as failed. Defaults to _1_. | [optional]
+**retry_up** | **int** | Optional. Retry up count. The value determines how many good health checks in a row must be received by the onprem host from the DTC Server for treating the health check as successful. Defaults to _1_. | [optional]
+**tags** | **object** | Optional. The tags for __SNMPHealthCheck__ in JSON format. | [optional]
+**timeout** | **int** | Optional. Timeout value in seconds. The health check waits for the specified number of seconds after sending a request. If it does not receive a response within the number of seconds, then the health check is considered as failed. Defaults to _10_. | [optional]
+**user_security_model** | **str** | The resource identifier. | [optional]
+**version** | **str** | SNMP version. Allowed values: * v1 - version 1 * v2c - version 2 community * v3 - version 3 |
+
+## Example
+
+```python
+from dtc.models.snmp_health_check import SNMPHealthCheck
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of SNMPHealthCheck from a JSON string
+snmp_health_check_instance = SNMPHealthCheck.from_json(json)
+# print the JSON string representation of the object
+print(SNMPHealthCheck.to_json())
+
+# convert the object into a dict
+snmp_health_check_dict = snmp_health_check_instance.to_dict()
+# create an instance of SNMPHealthCheck from a dict
+snmp_health_check_from_dict = SNMPHealthCheck.from_dict(snmp_health_check_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/SNMPHealthCheckEntryCheck.md b/src/dtc/docs/SNMPHealthCheckEntryCheck.md
new file mode 100644
index 0000000..ee2ad47
--- /dev/null
+++ b/src/dtc/docs/SNMPHealthCheckEntryCheck.md
@@ -0,0 +1,35 @@
+# SNMPHealthCheckEntryCheck
+
+Specific check for an SNMP entry and its value in MIB hierarchy.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**comment** | **str** | Optional. Comment for __EntryCheck__. | [optional]
+**max_value** | **str** | Optional. Expected max value of an entry to check against. Used for __in__ operator only, otherwise ignored. | [optional]
+**name** | **str** | Name is a dotted-decimal number that defines the location of the entry in the universal MIB tree. |
+**operator** | **str** | Operator defines operation to perform on an entry value. Allowed values: * any - any value must be present * eq - entry value must be equal to check's __value__. * leq - entry value must less or equal to check's __value__. * geq - entry value must be great or equal to check's __value__. * in - entry value must be greater or equal than __value__ and less or equal than __max_value__. Operator __in__ is supported only for __integer__ types. |
+**type** | **str** | Type defines type of an entry value. Allowed values: * string * integer String type does not support __in__ operator. |
+**value** | **str** | Optional. Expected value of an entry to check against. Ignored for __any__ operator. | [optional]
+
+## Example
+
+```python
+from dtc.models.snmp_health_check_entry_check import SNMPHealthCheckEntryCheck
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of SNMPHealthCheckEntryCheck from a JSON string
+snmp_health_check_entry_check_instance = SNMPHealthCheckEntryCheck.from_json(json)
+# print the JSON string representation of the object
+print(SNMPHealthCheckEntryCheck.to_json())
+
+# convert the object into a dict
+snmp_health_check_entry_check_dict = snmp_health_check_entry_check_instance.to_dict()
+# create an instance of SNMPHealthCheckEntryCheck from a dict
+snmp_health_check_entry_check_from_dict = SNMPHealthCheckEntryCheck.from_dict(snmp_health_check_entry_check_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/SNMPUserSecurityModel.md b/src/dtc/docs/SNMPUserSecurityModel.md
new file mode 100644
index 0000000..1c37c03
--- /dev/null
+++ b/src/dtc/docs/SNMPUserSecurityModel.md
@@ -0,0 +1,35 @@
+# SNMPUserSecurityModel
+
+Parameters for user-based security model of SNMPv3.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**auth_passphrase** | **str** | User passphrase for authentication. Ignored for __NoAuth__, otherwise mandatory. | [optional]
+**auth_protocol** | **str** | Authentication protocol. Allowed values: * NoAuth * MD5 * SHA Defaults to __NoAuth__. | [optional]
+**id** | **str** | The resource identifier. | [optional] [readonly]
+**privacy_passphrase** | **str** | User passphrase for privacy. Ignored for __NoPrivacy__, otherwise mandatory. | [optional]
+**privacy_protocol** | **str** | Privacy protocol. Must be __NoPrivacy__ if auth_protocol set to __NoAuth__. Allowed values: * NoPrivacy * DES * AES Defaults to __NoPrivacy__. | [optional]
+**username** | **str** | User name with which to associate security information. | [optional]
+
+## Example
+
+```python
+from dtc.models.snmp_user_security_model import SNMPUserSecurityModel
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of SNMPUserSecurityModel from a JSON string
+snmp_user_security_model_instance = SNMPUserSecurityModel.from_json(json)
+# print the JSON string representation of the object
+print(SNMPUserSecurityModel.to_json())
+
+# convert the object into a dict
+snmp_user_security_model_dict = snmp_user_security_model_instance.to_dict()
+# create an instance of SNMPUserSecurityModel from a dict
+snmp_user_security_model_from_dict = SNMPUserSecurityModel.from_dict(snmp_user_security_model_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/Server.md b/src/dtc/docs/Server.md
new file mode 100644
index 0000000..4427a36
--- /dev/null
+++ b/src/dtc/docs/Server.md
@@ -0,0 +1,40 @@
+# Server
+
+An __Server__ (_dtc/server_) represents a target resource for load balancing.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**address** | **str** | IP Address of the __Server__. Must be set to a valid IP address if __endpoint_type__ is set to __address__. Alternatively, it can be left blank. | [optional]
+**auto_create_response_records** | **bool** | Optional. If the flag is enabled, A, AAAA or CNAME __Record__ is automatically generated. Defaults to _false_. | [optional]
+**comment** | **str** | Optional. Comment for __Server__. | [optional]
+**disabled** | **bool** | Optional. Flag which enables/disables __Server__. Defaults to _false_. | [optional]
+**endpoint_type** | **str** | The endpoint type configured for the __Server__. Can be IP Address or FQDN. The values of both fields __address__ and __fqdn__ are preserved and are not mutually exclusive, and the __endpoint_type__ defines which one to use. Allowed values: * address * fqdn Defaults to __address__. | [optional]
+**fqdn** | **str** | Fully Qualified Domain name of the __Server__. Must be set to a valid FQDN if __endpoint_type__ is set to __fqdn__. Alternatively, it can be left blank. | [optional]
+**id** | **str** | The resource identifier. | [optional] [readonly]
+**metadata** | [**Metadata**](Metadata.md) | Output only. __Server__ metadata. Defaults to empty object and should be explicitly requested using field selection. | [optional]
+**name** | **str** | Display name of __Server__. |
+**records** | [**List[Record]**](Record.md) | Optional. List of __Records__ of the __Server__. | [optional]
+**tags** | **object** | Optional. The tags for __Server__ in JSON format. | [optional]
+
+## Example
+
+```python
+from dtc.models.server import Server
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of Server from a JSON string
+server_instance = Server.from_json(json)
+# print the JSON string representation of the object
+print(Server.to_json())
+
+# convert the object into a dict
+server_dict = server_instance.to_dict()
+# create an instance of Server from a dict
+server_from_dict = Server.from_dict(server_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/ServerApi.md b/src/dtc/docs/ServerApi.md
new file mode 100644
index 0000000..c504190
--- /dev/null
+++ b/src/dtc/docs/ServerApi.md
@@ -0,0 +1,400 @@
+# dtc.ServerApi
+
+All URIs are relative to *http://localhost/api/ddi/v1*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**create**](ServerApi.md#create) | **POST** /dtc/server | Create the Server object.
+[**delete**](ServerApi.md#delete) | **DELETE** /dtc/server/{id} | Delete Server object.
+[**list**](ServerApi.md#list) | **GET** /dtc/server | Retrieve Server objects.
+[**read**](ServerApi.md#read) | **GET** /dtc/server/{id} | Retrieve the Server object.
+[**update**](ServerApi.md#update) | **PATCH** /dtc/server/{id} | Update the Server object.
+
+
+# **create**
+> CreateServerResponse create(body)
+
+Create the Server object.
+
+Use this method to create an __Server__ object.
+
+### Example
+
+* Api Key Authentication (ApiKeyAuth):
+```python
+import os
+from pprint import pprint
+
+import dtc
+
+from universal_ddi_client.api_client import ApiClient
+from universal_ddi_client.configuration import Configuration
+
+# Defining the Portal URL is optional and defaults to "https://csp.infoblox.com"
+# See configuration.py for a list of all supported configuration parameters.
+configuration = Configuration(
+ portal_url = os.getenv('INFOBLOX_PORTAL_URL'),
+)
+
+# The client must configure the authentication and authorization parameters
+# in accordance with the API server security policy.
+
+# Configure Portal key authorization: ApiKeyAuth
+configuration.portal_key = os.getenv("INFOBLOX_PORTAL_KEY")
+
+# Enter a context with an instance of the API client
+with ApiClient(configuration) as api_client:
+ # Create an instance of the API class
+ api_instance = dtc.ServerApi(api_client)
+ body = dtc.Server() # Server |
+
+ try:
+ # Create the Server object.
+ api_response = api_instance.create(body)
+ pprint("The response of ServerApi->create:\n")
+ pprint(api_response)
+ except Exception as e:
+ pprint("Exception when calling ServerApi->create: %s\n" % e)
+```
+
+
+
+### Parameters
+
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **body** | [**Server**](Server.md)| |
+
+### Return type
+
+[**CreateServerResponse**](CreateServerResponse.md)
+
+### Authorization
+
+[ApiKeyAuth](../README.md#ApiKeyAuth)
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json
+
+### HTTP response details
+
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+**200** | POST operation response | - |
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **delete**
+> delete(id)
+
+Delete Server object.
+
+Use this method to delete an __Server__ object.
+
+### Example
+
+* Api Key Authentication (ApiKeyAuth):
+```python
+import os
+from pprint import pprint
+
+import dtc
+
+from universal_ddi_client.api_client import ApiClient
+from universal_ddi_client.configuration import Configuration
+
+# Defining the Portal URL is optional and defaults to "https://csp.infoblox.com"
+# See configuration.py for a list of all supported configuration parameters.
+configuration = Configuration(
+ portal_url = os.getenv('INFOBLOX_PORTAL_URL'),
+)
+
+# The client must configure the authentication and authorization parameters
+# in accordance with the API server security policy.
+
+# Configure Portal key authorization: ApiKeyAuth
+configuration.portal_key = os.getenv("INFOBLOX_PORTAL_KEY")
+
+# Enter a context with an instance of the API client
+with ApiClient(configuration) as api_client:
+ # Create an instance of the API class
+ api_instance = dtc.ServerApi(api_client)
+ id = 'id_example' # str | An application specific resource identity of a resource
+
+ try:
+ # Delete Server object.
+ api_instance.delete(id)
+ except Exception as e:
+ pprint("Exception when calling ServerApi->delete: %s\n" % e)
+```
+
+
+
+### Parameters
+
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **str**| An application specific resource identity of a resource |
+
+### Return type
+
+void (empty response body)
+
+### Authorization
+
+[ApiKeyAuth](../README.md#ApiKeyAuth)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: Not defined
+
+### HTTP response details
+
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+**200** | OK | - |
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **list**
+> ListServerResponse list(fields=fields, filter=filter, offset=offset, limit=limit, page_token=page_token, order_by=order_by, tfilter=tfilter, torder_by=torder_by)
+
+Retrieve Server objects.
+
+Use this method to retrieve __Server__ objects.
+
+### Example
+
+* Api Key Authentication (ApiKeyAuth):
+```python
+import os
+from pprint import pprint
+
+import dtc
+
+from universal_ddi_client.api_client import ApiClient
+from universal_ddi_client.configuration import Configuration
+
+# Defining the Portal URL is optional and defaults to "https://csp.infoblox.com"
+# See configuration.py for a list of all supported configuration parameters.
+configuration = Configuration(
+ portal_url = os.getenv('INFOBLOX_PORTAL_URL'),
+)
+
+# The client must configure the authentication and authorization parameters
+# in accordance with the API server security policy.
+
+# Configure Portal key authorization: ApiKeyAuth
+configuration.portal_key = os.getenv("INFOBLOX_PORTAL_KEY")
+
+# Enter a context with an instance of the API client
+with ApiClient(configuration) as api_client:
+ # Create an instance of the API class
+ api_instance = dtc.ServerApi(api_client)
+
+ try:
+ # Retrieve Server objects.
+ api_response = api_instance.list()
+ pprint("The response of ServerApi->list:\n")
+ pprint(api_response)
+ except Exception as e:
+ pprint("Exception when calling ServerApi->list: %s\n" % e)
+```
+
+
+
+### Parameters
+
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **fields** | **str**| A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. | [optional]
+ **filter** | **str**| A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators | | [optional]
+ **offset** | **int**| The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'. | [optional]
+ **limit** | **int**| The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value. | [optional]
+ **page_token** | **str**| The service-defined string used to identify a page of resources. A null value indicates the first page. | [optional]
+ **order_by** | **str**| A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order. | [optional]
+ **tfilter** | **str**| This parameter is used for filtering by tags. | [optional]
+ **torder_by** | **str**| This parameter is used for sorting by tags. | [optional]
+
+### Return type
+
+[**ListServerResponse**](ListServerResponse.md)
+
+### Authorization
+
+[ApiKeyAuth](../README.md#ApiKeyAuth)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+### HTTP response details
+
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+**200** | GET operation response | - |
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **read**
+> ReadServerResponse read(id, fields=fields)
+
+Retrieve the Server object.
+
+Use this method to retrieve a __Server__ object.
+
+### Example
+
+* Api Key Authentication (ApiKeyAuth):
+```python
+import os
+from pprint import pprint
+
+import dtc
+
+from universal_ddi_client.api_client import ApiClient
+from universal_ddi_client.configuration import Configuration
+
+# Defining the Portal URL is optional and defaults to "https://csp.infoblox.com"
+# See configuration.py for a list of all supported configuration parameters.
+configuration = Configuration(
+ portal_url = os.getenv('INFOBLOX_PORTAL_URL'),
+)
+
+# The client must configure the authentication and authorization parameters
+# in accordance with the API server security policy.
+
+# Configure Portal key authorization: ApiKeyAuth
+configuration.portal_key = os.getenv("INFOBLOX_PORTAL_KEY")
+
+# Enter a context with an instance of the API client
+with ApiClient(configuration) as api_client:
+ # Create an instance of the API class
+ api_instance = dtc.ServerApi(api_client)
+ id = 'id_example' # str | An application specific resource identity of a resource
+
+ try:
+ # Retrieve the Server object.
+ api_response = api_instance.read(id)
+ pprint("The response of ServerApi->read:\n")
+ pprint(api_response)
+ except Exception as e:
+ pprint("Exception when calling ServerApi->read: %s\n" % e)
+```
+
+
+
+### Parameters
+
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **str**| An application specific resource identity of a resource |
+ **fields** | **str**| A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. | [optional]
+
+### Return type
+
+[**ReadServerResponse**](ReadServerResponse.md)
+
+### Authorization
+
+[ApiKeyAuth](../README.md#ApiKeyAuth)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+### HTTP response details
+
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+**200** | GET operation response | - |
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **update**
+> UpdateServerResponse update(id, body)
+
+Update the Server object.
+
+Use this method to update an __Server__ object.
+
+### Example
+
+* Api Key Authentication (ApiKeyAuth):
+```python
+import os
+from pprint import pprint
+
+import dtc
+
+from universal_ddi_client.api_client import ApiClient
+from universal_ddi_client.configuration import Configuration
+
+# Defining the Portal URL is optional and defaults to "https://csp.infoblox.com"
+# See configuration.py for a list of all supported configuration parameters.
+configuration = Configuration(
+ portal_url = os.getenv('INFOBLOX_PORTAL_URL'),
+)
+
+# The client must configure the authentication and authorization parameters
+# in accordance with the API server security policy.
+
+# Configure Portal key authorization: ApiKeyAuth
+configuration.portal_key = os.getenv("INFOBLOX_PORTAL_KEY")
+
+# Enter a context with an instance of the API client
+with ApiClient(configuration) as api_client:
+ # Create an instance of the API class
+ api_instance = dtc.ServerApi(api_client)
+ id = 'id_example' # str | An application specific resource identity of a resource
+ body = dtc.Server() # Server |
+
+ try:
+ # Update the Server object.
+ api_response = api_instance.update(id, body)
+ pprint("The response of ServerApi->update:\n")
+ pprint(api_response)
+ except Exception as e:
+ pprint("Exception when calling ServerApi->update: %s\n" % e)
+```
+
+
+
+### Parameters
+
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **str**| An application specific resource identity of a resource |
+ **body** | [**Server**](Server.md)| |
+
+### Return type
+
+[**UpdateServerResponse**](UpdateServerResponse.md)
+
+### Authorization
+
+[ApiKeyAuth](../README.md#ApiKeyAuth)
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json
+
+### HTTP response details
+
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+**200** | PATCH operation response | - |
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
diff --git a/src/dtc/docs/SnmpUserSecurityApi.md b/src/dtc/docs/SnmpUserSecurityApi.md
new file mode 100644
index 0000000..6eeaca6
--- /dev/null
+++ b/src/dtc/docs/SnmpUserSecurityApi.md
@@ -0,0 +1,388 @@
+# dtc.SnmpUserSecurityApi
+
+All URIs are relative to *http://localhost/api/ddi/v1*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**create**](SnmpUserSecurityApi.md#create) | **POST** /dtc/snmp_user_security_model | Create the SNMPUserSecurityModel object. Use this method to create a __SNMPUserSecurityModel__ object.
+[**delete**](SnmpUserSecurityApi.md#delete) | **DELETE** /dtc/snmp_user_security_model/{id} | Delete the SNMPUserSecurityModel object. Use this method to delete a __SNMPUserSecurityModel__ object.
+[**list**](SnmpUserSecurityApi.md#list) | **GET** /dtc/snmp_user_security_model | Retrieve SNMPUserSecurityModel objects. Use this method to retrieve __SNMPUserSecurityModel__ objects.
+[**read**](SnmpUserSecurityApi.md#read) | **GET** /dtc/snmp_user_security_model/{id} | Retrieve the SNMPUserSecurityModel object. Use this method to retrieve a __SNMPUserSecurityModel__ object.
+[**update**](SnmpUserSecurityApi.md#update) | **PATCH** /dtc/snmp_user_security_model/{id} | Update the SNMPUserSecurityModel object. Use this method to update a __SNMPUserSecurityModel__ object.
+
+
+# **create**
+> CreateSNMPUserSecurityResponse create(body)
+
+Create the SNMPUserSecurityModel object. Use this method to create a __SNMPUserSecurityModel__ object.
+
+### Example
+
+* Api Key Authentication (ApiKeyAuth):
+```python
+import os
+from pprint import pprint
+
+import dtc
+
+from universal_ddi_client.api_client import ApiClient
+from universal_ddi_client.configuration import Configuration
+
+# Defining the Portal URL is optional and defaults to "https://csp.infoblox.com"
+# See configuration.py for a list of all supported configuration parameters.
+configuration = Configuration(
+ portal_url = os.getenv('INFOBLOX_PORTAL_URL'),
+)
+
+# The client must configure the authentication and authorization parameters
+# in accordance with the API server security policy.
+
+# Configure Portal key authorization: ApiKeyAuth
+configuration.portal_key = os.getenv("INFOBLOX_PORTAL_KEY")
+
+# Enter a context with an instance of the API client
+with ApiClient(configuration) as api_client:
+ # Create an instance of the API class
+ api_instance = dtc.SnmpUserSecurityApi(api_client)
+ body = dtc.SNMPUserSecurityModel() # SNMPUserSecurityModel |
+
+ try:
+ # Create the SNMPUserSecurityModel object. Use this method to create a __SNMPUserSecurityModel__ object.
+ api_response = api_instance.create(body)
+ pprint("The response of SnmpUserSecurityApi->create:\n")
+ pprint(api_response)
+ except Exception as e:
+ pprint("Exception when calling SnmpUserSecurityApi->create: %s\n" % e)
+```
+
+
+
+### Parameters
+
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **body** | [**SNMPUserSecurityModel**](SNMPUserSecurityModel.md)| |
+
+### Return type
+
+[**CreateSNMPUserSecurityResponse**](CreateSNMPUserSecurityResponse.md)
+
+### Authorization
+
+[ApiKeyAuth](../README.md#ApiKeyAuth)
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json
+
+### HTTP response details
+
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+**200** | POST operation response | - |
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **delete**
+> delete(id)
+
+Delete the SNMPUserSecurityModel object. Use this method to delete a __SNMPUserSecurityModel__ object.
+
+### Example
+
+* Api Key Authentication (ApiKeyAuth):
+```python
+import os
+from pprint import pprint
+
+import dtc
+
+from universal_ddi_client.api_client import ApiClient
+from universal_ddi_client.configuration import Configuration
+
+# Defining the Portal URL is optional and defaults to "https://csp.infoblox.com"
+# See configuration.py for a list of all supported configuration parameters.
+configuration = Configuration(
+ portal_url = os.getenv('INFOBLOX_PORTAL_URL'),
+)
+
+# The client must configure the authentication and authorization parameters
+# in accordance with the API server security policy.
+
+# Configure Portal key authorization: ApiKeyAuth
+configuration.portal_key = os.getenv("INFOBLOX_PORTAL_KEY")
+
+# Enter a context with an instance of the API client
+with ApiClient(configuration) as api_client:
+ # Create an instance of the API class
+ api_instance = dtc.SnmpUserSecurityApi(api_client)
+ id = 'id_example' # str | An application specific resource identity of a resource
+
+ try:
+ # Delete the SNMPUserSecurityModel object. Use this method to delete a __SNMPUserSecurityModel__ object.
+ api_instance.delete(id)
+ except Exception as e:
+ pprint("Exception when calling SnmpUserSecurityApi->delete: %s\n" % e)
+```
+
+
+
+### Parameters
+
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **str**| An application specific resource identity of a resource |
+
+### Return type
+
+void (empty response body)
+
+### Authorization
+
+[ApiKeyAuth](../README.md#ApiKeyAuth)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: Not defined
+
+### HTTP response details
+
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+**200** | OK | - |
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **list**
+> ListSNMPUserSecurityResponse list(fields=fields, filter=filter, offset=offset, limit=limit, page_token=page_token, order_by=order_by)
+
+Retrieve SNMPUserSecurityModel objects. Use this method to retrieve __SNMPUserSecurityModel__ objects.
+
+### Example
+
+* Api Key Authentication (ApiKeyAuth):
+```python
+import os
+from pprint import pprint
+
+import dtc
+
+from universal_ddi_client.api_client import ApiClient
+from universal_ddi_client.configuration import Configuration
+
+# Defining the Portal URL is optional and defaults to "https://csp.infoblox.com"
+# See configuration.py for a list of all supported configuration parameters.
+configuration = Configuration(
+ portal_url = os.getenv('INFOBLOX_PORTAL_URL'),
+)
+
+# The client must configure the authentication and authorization parameters
+# in accordance with the API server security policy.
+
+# Configure Portal key authorization: ApiKeyAuth
+configuration.portal_key = os.getenv("INFOBLOX_PORTAL_KEY")
+
+# Enter a context with an instance of the API client
+with ApiClient(configuration) as api_client:
+ # Create an instance of the API class
+ api_instance = dtc.SnmpUserSecurityApi(api_client)
+
+ try:
+ # Retrieve SNMPUserSecurityModel objects. Use this method to retrieve __SNMPUserSecurityModel__ objects.
+ api_response = api_instance.list()
+ pprint("The response of SnmpUserSecurityApi->list:\n")
+ pprint(api_response)
+ except Exception as e:
+ pprint("Exception when calling SnmpUserSecurityApi->list: %s\n" % e)
+```
+
+
+
+### Parameters
+
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **fields** | **str**| A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. | [optional]
+ **filter** | **str**| A collection of response resources can be filtered by a logical expression string that includes JSON tag references to values in each resource, literal values, and logical operators. If a resource does not have the specified tag, its value is assumed to be null. Literal values include numbers (integer and floating-point), and quoted (both single- or double-quoted) literal strings, and 'null'. The following operators are commonly used in filter expressions: | Op | Description | | -- | ----------- | | == | Equal | | != | Not Equal | | > | Greater Than | | >= | Greater Than or Equal To | | < | Less Than | | <= | Less Than or Equal To | | and | Logical AND | | ~ | Matches Regex | | !~ | Does Not Match Regex | | or | Logical OR | | not | Logical NOT | | () | Groupping Operators | | [optional]
+ **offset** | **int**| The integer index (zero-origin) of the offset into a collection of resources. If omitted or null the value is assumed to be '0'. | [optional]
+ **limit** | **int**| The integer number of resources to be returned in the response. The service may impose maximum value. If omitted the service may impose a default value. | [optional]
+ **page_token** | **str**| The service-defined string used to identify a page of resources. A null value indicates the first page. | [optional]
+ **order_by** | **str**| A collection of response resources can be sorted by their JSON tags. For a 'flat' resource, the tag name is straightforward. If sorting is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, its value is assumed to be null.) Specify this parameter as a comma-separated list of JSON tag names. The sort direction can be specified by a suffix separated by whitespace before the tag name. The suffix 'asc' sorts the data in ascending order. The suffix 'desc' sorts the data in descending order. If no suffix is specified the data is sorted in ascending order. | [optional]
+
+### Return type
+
+[**ListSNMPUserSecurityResponse**](ListSNMPUserSecurityResponse.md)
+
+### Authorization
+
+[ApiKeyAuth](../README.md#ApiKeyAuth)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+### HTTP response details
+
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+**200** | GET operation response | - |
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **read**
+> ReadSNMPUserSecurityResponse read(id, fields=fields)
+
+Retrieve the SNMPUserSecurityModel object. Use this method to retrieve a __SNMPUserSecurityModel__ object.
+
+### Example
+
+* Api Key Authentication (ApiKeyAuth):
+```python
+import os
+from pprint import pprint
+
+import dtc
+
+from universal_ddi_client.api_client import ApiClient
+from universal_ddi_client.configuration import Configuration
+
+# Defining the Portal URL is optional and defaults to "https://csp.infoblox.com"
+# See configuration.py for a list of all supported configuration parameters.
+configuration = Configuration(
+ portal_url = os.getenv('INFOBLOX_PORTAL_URL'),
+)
+
+# The client must configure the authentication and authorization parameters
+# in accordance with the API server security policy.
+
+# Configure Portal key authorization: ApiKeyAuth
+configuration.portal_key = os.getenv("INFOBLOX_PORTAL_KEY")
+
+# Enter a context with an instance of the API client
+with ApiClient(configuration) as api_client:
+ # Create an instance of the API class
+ api_instance = dtc.SnmpUserSecurityApi(api_client)
+ id = 'id_example' # str | An application specific resource identity of a resource
+
+ try:
+ # Retrieve the SNMPUserSecurityModel object. Use this method to retrieve a __SNMPUserSecurityModel__ object.
+ api_response = api_instance.read(id)
+ pprint("The response of SnmpUserSecurityApi->read:\n")
+ pprint(api_response)
+ except Exception as e:
+ pprint("Exception when calling SnmpUserSecurityApi->read: %s\n" % e)
+```
+
+
+
+### Parameters
+
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **str**| An application specific resource identity of a resource |
+ **fields** | **str**| A collection of response resources can be transformed by specifying a set of JSON tags to be returned. For a “flat” resource, the tag name is straightforward. If field selection is allowed on non-flat hierarchical resources, the service should implement a qualified naming scheme such as dot-qualification to reference data down the hierarchy. If a resource does not have the specified tag, the tag does not appear in the output resource. Specify this parameter as a comma-separated list of JSON tag names. | [optional]
+
+### Return type
+
+[**ReadSNMPUserSecurityResponse**](ReadSNMPUserSecurityResponse.md)
+
+### Authorization
+
+[ApiKeyAuth](../README.md#ApiKeyAuth)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+### HTTP response details
+
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+**200** | GET operation response | - |
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **update**
+> UpdateSNMPUserSecurityResponse update(id, body)
+
+Update the SNMPUserSecurityModel object. Use this method to update a __SNMPUserSecurityModel__ object.
+
+### Example
+
+* Api Key Authentication (ApiKeyAuth):
+```python
+import os
+from pprint import pprint
+
+import dtc
+
+from universal_ddi_client.api_client import ApiClient
+from universal_ddi_client.configuration import Configuration
+
+# Defining the Portal URL is optional and defaults to "https://csp.infoblox.com"
+# See configuration.py for a list of all supported configuration parameters.
+configuration = Configuration(
+ portal_url = os.getenv('INFOBLOX_PORTAL_URL'),
+)
+
+# The client must configure the authentication and authorization parameters
+# in accordance with the API server security policy.
+
+# Configure Portal key authorization: ApiKeyAuth
+configuration.portal_key = os.getenv("INFOBLOX_PORTAL_KEY")
+
+# Enter a context with an instance of the API client
+with ApiClient(configuration) as api_client:
+ # Create an instance of the API class
+ api_instance = dtc.SnmpUserSecurityApi(api_client)
+ id = 'id_example' # str | An application specific resource identity of a resource
+ body = dtc.SNMPUserSecurityModel() # SNMPUserSecurityModel |
+
+ try:
+ # Update the SNMPUserSecurityModel object. Use this method to update a __SNMPUserSecurityModel__ object.
+ api_response = api_instance.update(id, body)
+ pprint("The response of SnmpUserSecurityApi->update:\n")
+ pprint(api_response)
+ except Exception as e:
+ pprint("Exception when calling SnmpUserSecurityApi->update: %s\n" % e)
+```
+
+
+
+### Parameters
+
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **str**| An application specific resource identity of a resource |
+ **body** | [**SNMPUserSecurityModel**](SNMPUserSecurityModel.md)| |
+
+### Return type
+
+[**UpdateSNMPUserSecurityResponse**](UpdateSNMPUserSecurityResponse.md)
+
+### Authorization
+
+[ApiKeyAuth](../README.md#ApiKeyAuth)
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json
+
+### HTTP response details
+
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+**200** | PATCH operation response | - |
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
diff --git a/src/dtc/docs/TCPHealthCheck.md b/src/dtc/docs/TCPHealthCheck.md
new file mode 100644
index 0000000..50e2c70
--- /dev/null
+++ b/src/dtc/docs/TCPHealthCheck.md
@@ -0,0 +1,40 @@
+# TCPHealthCheck
+
+A __TCPHealthCheck__ (_dtc/health_check_tcp_) represents a DTC __Server__ health check based on the Transmission Control Protocol (TCP).
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**comment** | **str** | Optional. Comment for __TCPHealthCheck__. | [optional]
+**disabled** | **bool** | Optional. Flag which enables/disables __TCPHealthCheck__. Defaults to _false_. | [optional]
+**id** | **str** | The resource identifier. | [optional] [readonly]
+**interval** | **int** | Optional. Interval value in seconds. The health check runs only for the specified interval and it is measured from the beginning of the previous check cycle. Defaults to _15_. | [optional]
+**metadata** | [**Metadata**](Metadata.md) | Output only. __TCPHealthCheck__ metadata. Defaults to empty object and should be explicitly requested using field selection. | [optional]
+**name** | **str** | Display name of __TCPHealthCheck__. |
+**port** | **int** | Destination TCP port of __TCPHealthCheck__. |
+**retry_down** | **int** | Optional. Retry down count. The value determines how many bad health checks in a row must be received by the onprem host from the DTC Server for treating the health check as failed. Defaults to _1_. | [optional]
+**retry_up** | **int** | Optional. Retry up count. The value determines how many good health checks in a row must be received by the onprem host from the DTC Server for treating the health check as successful. Defaults to _1_. | [optional]
+**tags** | **object** | Optional. The tags for __TCPHealthCheck__ in JSON format. | [optional]
+**timeout** | **int** | Optional. Timeout value in seconds. The health check waits for the specified number of seconds after sending a request. If it does not receive a response within the number of seconds, then the health check is considered as failed. Defaults to _10_. | [optional]
+
+## Example
+
+```python
+from dtc.models.tcp_health_check import TCPHealthCheck
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of TCPHealthCheck from a JSON string
+tcp_health_check_instance = TCPHealthCheck.from_json(json)
+# print the JSON string representation of the object
+print(TCPHealthCheck.to_json())
+
+# convert the object into a dict
+tcp_health_check_dict = tcp_health_check_instance.to_dict()
+# create an instance of TCPHealthCheck from a dict
+tcp_health_check_from_dict = TCPHealthCheck.from_dict(tcp_health_check_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/TTLInheritance.md b/src/dtc/docs/TTLInheritance.md
new file mode 100644
index 0000000..d08401c
--- /dev/null
+++ b/src/dtc/docs/TTLInheritance.md
@@ -0,0 +1,30 @@
+# TTLInheritance
+
+The inheritance configuration specifies how the object inherits the _ttl_ field.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**ttl** | [**Inheritance2InheritedUInt32**](Inheritance2InheritedUInt32.md) | | [optional]
+
+## Example
+
+```python
+from dtc.models.ttl_inheritance import TTLInheritance
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of TTLInheritance from a JSON string
+ttl_inheritance_instance = TTLInheritance.from_json(json)
+# print the JSON string representation of the object
+print(TTLInheritance.to_json())
+
+# convert the object into a dict
+ttl_inheritance_dict = ttl_inheritance_instance.to_dict()
+# create an instance of TTLInheritance from a dict
+ttl_inheritance_from_dict = TTLInheritance.from_dict(ttl_inheritance_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/TopologyRule.md b/src/dtc/docs/TopologyRule.md
new file mode 100644
index 0000000..ad4c885
--- /dev/null
+++ b/src/dtc/docs/TopologyRule.md
@@ -0,0 +1,35 @@
+# TopologyRule
+
+A __TopologyRule__ represents a rule for topology load balancing method.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**code** | **str** | Optional. DNS code to return if rule matches. Must be set if _destination_ is set to _code_. Allowed values: - nodata - nxdomain Defaults to _nodata_. | [optional]
+**destination** | **str** | Destination of __TopologyRule__. Allowed values: - code - pool Defaults to _code_. | [optional]
+**name** | **str** | Display name of __TopologyRule__. |
+**pool_id** | **str** | The resource identifier. | [optional]
+**source** | **str** | Type of source. Allowed values: - subnet - default Defaults to _default_. | [optional]
+**subnets** | **List[str]** | Optional. List of subnets in CIDR format. Must be set if _source_ is _subnet_, otherwise must be empty. | [optional]
+
+## Example
+
+```python
+from dtc.models.topology_rule import TopologyRule
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of TopologyRule from a JSON string
+topology_rule_instance = TopologyRule.from_json(json)
+# print the JSON string representation of the object
+print(TopologyRule.to_json())
+
+# convert the object into a dict
+topology_rule_dict = topology_rule_instance.to_dict()
+# create an instance of TopologyRule from a dict
+topology_rule_from_dict = TopologyRule.from_dict(topology_rule_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/UpdateHTTPHealthCheckResponse.md b/src/dtc/docs/UpdateHTTPHealthCheckResponse.md
new file mode 100644
index 0000000..ce36bd5
--- /dev/null
+++ b/src/dtc/docs/UpdateHTTPHealthCheckResponse.md
@@ -0,0 +1,30 @@
+# UpdateHTTPHealthCheckResponse
+
+The __HTTPHealthCheck__ object update response format.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**result** | [**HTTPHealthCheck**](HTTPHealthCheck.md) | The __HTTPHealthCheck__ object. | [optional]
+
+## Example
+
+```python
+from dtc.models.update_http_health_check_response import UpdateHTTPHealthCheckResponse
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of UpdateHTTPHealthCheckResponse from a JSON string
+update_http_health_check_response_instance = UpdateHTTPHealthCheckResponse.from_json(json)
+# print the JSON string representation of the object
+print(UpdateHTTPHealthCheckResponse.to_json())
+
+# convert the object into a dict
+update_http_health_check_response_dict = update_http_health_check_response_instance.to_dict()
+# create an instance of UpdateHTTPHealthCheckResponse from a dict
+update_http_health_check_response_from_dict = UpdateHTTPHealthCheckResponse.from_dict(update_http_health_check_response_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/UpdateICMPHealthCheckResponse.md b/src/dtc/docs/UpdateICMPHealthCheckResponse.md
new file mode 100644
index 0000000..1e53e0c
--- /dev/null
+++ b/src/dtc/docs/UpdateICMPHealthCheckResponse.md
@@ -0,0 +1,30 @@
+# UpdateICMPHealthCheckResponse
+
+The __ICMPHealthCheck__ object update response format.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**result** | [**ICMPHealthCheck**](ICMPHealthCheck.md) | The __ICMPHealthCheck__ object. | [optional]
+
+## Example
+
+```python
+from dtc.models.update_icmp_health_check_response import UpdateICMPHealthCheckResponse
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of UpdateICMPHealthCheckResponse from a JSON string
+update_icmp_health_check_response_instance = UpdateICMPHealthCheckResponse.from_json(json)
+# print the JSON string representation of the object
+print(UpdateICMPHealthCheckResponse.to_json())
+
+# convert the object into a dict
+update_icmp_health_check_response_dict = update_icmp_health_check_response_instance.to_dict()
+# create an instance of UpdateICMPHealthCheckResponse from a dict
+update_icmp_health_check_response_from_dict = UpdateICMPHealthCheckResponse.from_dict(update_icmp_health_check_response_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/UpdatePolicyResponse.md b/src/dtc/docs/UpdatePolicyResponse.md
new file mode 100644
index 0000000..982ca8b
--- /dev/null
+++ b/src/dtc/docs/UpdatePolicyResponse.md
@@ -0,0 +1,30 @@
+# UpdatePolicyResponse
+
+The __Policy__ object update response format.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**result** | [**Policy**](Policy.md) | The __Policy__ object. | [optional]
+
+## Example
+
+```python
+from dtc.models.update_policy_response import UpdatePolicyResponse
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of UpdatePolicyResponse from a JSON string
+update_policy_response_instance = UpdatePolicyResponse.from_json(json)
+# print the JSON string representation of the object
+print(UpdatePolicyResponse.to_json())
+
+# convert the object into a dict
+update_policy_response_dict = update_policy_response_instance.to_dict()
+# create an instance of UpdatePolicyResponse from a dict
+update_policy_response_from_dict = UpdatePolicyResponse.from_dict(update_policy_response_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/UpdatePoolResponse.md b/src/dtc/docs/UpdatePoolResponse.md
new file mode 100644
index 0000000..a75c702
--- /dev/null
+++ b/src/dtc/docs/UpdatePoolResponse.md
@@ -0,0 +1,30 @@
+# UpdatePoolResponse
+
+The __Pool__ object update response format.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**result** | [**Pool**](Pool.md) | The __Pool__ object. | [optional]
+
+## Example
+
+```python
+from dtc.models.update_pool_response import UpdatePoolResponse
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of UpdatePoolResponse from a JSON string
+update_pool_response_instance = UpdatePoolResponse.from_json(json)
+# print the JSON string representation of the object
+print(UpdatePoolResponse.to_json())
+
+# convert the object into a dict
+update_pool_response_dict = update_pool_response_instance.to_dict()
+# create an instance of UpdatePoolResponse from a dict
+update_pool_response_from_dict = UpdatePoolResponse.from_dict(update_pool_response_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/UpdateSNMPHealthCheckResponse.md b/src/dtc/docs/UpdateSNMPHealthCheckResponse.md
new file mode 100644
index 0000000..fa33839
--- /dev/null
+++ b/src/dtc/docs/UpdateSNMPHealthCheckResponse.md
@@ -0,0 +1,30 @@
+# UpdateSNMPHealthCheckResponse
+
+The __SNMPHealthCheck__ object update response format.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**result** | [**SNMPHealthCheck**](SNMPHealthCheck.md) | The __SNMPHealthCheck__ object. | [optional]
+
+## Example
+
+```python
+from dtc.models.update_snmp_health_check_response import UpdateSNMPHealthCheckResponse
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of UpdateSNMPHealthCheckResponse from a JSON string
+update_snmp_health_check_response_instance = UpdateSNMPHealthCheckResponse.from_json(json)
+# print the JSON string representation of the object
+print(UpdateSNMPHealthCheckResponse.to_json())
+
+# convert the object into a dict
+update_snmp_health_check_response_dict = update_snmp_health_check_response_instance.to_dict()
+# create an instance of UpdateSNMPHealthCheckResponse from a dict
+update_snmp_health_check_response_from_dict = UpdateSNMPHealthCheckResponse.from_dict(update_snmp_health_check_response_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/UpdateSNMPUserSecurityResponse.md b/src/dtc/docs/UpdateSNMPUserSecurityResponse.md
new file mode 100644
index 0000000..71889eb
--- /dev/null
+++ b/src/dtc/docs/UpdateSNMPUserSecurityResponse.md
@@ -0,0 +1,30 @@
+# UpdateSNMPUserSecurityResponse
+
+The __SNMPUserSecurityModel__ object update response format.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**result** | [**SNMPUserSecurityModel**](SNMPUserSecurityModel.md) | The __SNMPUserSecurityModel__ object. | [optional]
+
+## Example
+
+```python
+from dtc.models.update_snmp_user_security_response import UpdateSNMPUserSecurityResponse
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of UpdateSNMPUserSecurityResponse from a JSON string
+update_snmp_user_security_response_instance = UpdateSNMPUserSecurityResponse.from_json(json)
+# print the JSON string representation of the object
+print(UpdateSNMPUserSecurityResponse.to_json())
+
+# convert the object into a dict
+update_snmp_user_security_response_dict = update_snmp_user_security_response_instance.to_dict()
+# create an instance of UpdateSNMPUserSecurityResponse from a dict
+update_snmp_user_security_response_from_dict = UpdateSNMPUserSecurityResponse.from_dict(update_snmp_user_security_response_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/UpdateServerResponse.md b/src/dtc/docs/UpdateServerResponse.md
new file mode 100644
index 0000000..8ecddb3
--- /dev/null
+++ b/src/dtc/docs/UpdateServerResponse.md
@@ -0,0 +1,30 @@
+# UpdateServerResponse
+
+The __Server__ object update response format.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**result** | [**Server**](Server.md) | The __Server__ object. | [optional]
+
+## Example
+
+```python
+from dtc.models.update_server_response import UpdateServerResponse
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of UpdateServerResponse from a JSON string
+update_server_response_instance = UpdateServerResponse.from_json(json)
+# print the JSON string representation of the object
+print(UpdateServerResponse.to_json())
+
+# convert the object into a dict
+update_server_response_dict = update_server_response_instance.to_dict()
+# create an instance of UpdateServerResponse from a dict
+update_server_response_from_dict = UpdateServerResponse.from_dict(update_server_response_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/docs/UpdateTCPHealthCheckResponse.md b/src/dtc/docs/UpdateTCPHealthCheckResponse.md
new file mode 100644
index 0000000..300df51
--- /dev/null
+++ b/src/dtc/docs/UpdateTCPHealthCheckResponse.md
@@ -0,0 +1,30 @@
+# UpdateTCPHealthCheckResponse
+
+The __TCPHealthCheck__ object update response format.
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**result** | [**TCPHealthCheck**](TCPHealthCheck.md) | The __TCPHealthCheck__ object. | [optional]
+
+## Example
+
+```python
+from dtc.models.update_tcp_health_check_response import UpdateTCPHealthCheckResponse
+
+# TODO update the JSON string below
+json = "{}"
+# create an instance of UpdateTCPHealthCheckResponse from a JSON string
+update_tcp_health_check_response_instance = UpdateTCPHealthCheckResponse.from_json(json)
+# print the JSON string representation of the object
+print(UpdateTCPHealthCheckResponse.to_json())
+
+# convert the object into a dict
+update_tcp_health_check_response_dict = update_tcp_health_check_response_instance.to_dict()
+# create an instance of UpdateTCPHealthCheckResponse from a dict
+update_tcp_health_check_response_from_dict = UpdateTCPHealthCheckResponse.from_dict(update_tcp_health_check_response_dict)
+```
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/src/dtc/models/__init__.py b/src/dtc/models/__init__.py
new file mode 100644
index 0000000..5bd62ab
--- /dev/null
+++ b/src/dtc/models/__init__.py
@@ -0,0 +1,66 @@
+# coding: utf-8
+
+# flake8: noqa
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+# import models into model package
+from dtc.models.create_http_health_check_response import CreateHTTPHealthCheckResponse
+from dtc.models.create_icmp_health_check_response import CreateICMPHealthCheckResponse
+from dtc.models.create_policy_response import CreatePolicyResponse
+from dtc.models.create_pool_response import CreatePoolResponse
+from dtc.models.create_snmp_health_check_response import CreateSNMPHealthCheckResponse
+from dtc.models.create_snmp_user_security_response import CreateSNMPUserSecurityResponse
+from dtc.models.create_server_response import CreateServerResponse
+from dtc.models.create_tcp_health_check_response import CreateTCPHealthCheckResponse
+from dtc.models.http_health_check import HTTPHealthCheck
+from dtc.models.header_regex import HeaderRegex
+from dtc.models.icmp_health_check import ICMPHealthCheck
+from dtc.models.inheritance2_inherited_u_int32 import Inheritance2InheritedUInt32
+from dtc.models.list_http_health_check_response import ListHTTPHealthCheckResponse
+from dtc.models.list_icmp_health_check_response import ListICMPHealthCheckResponse
+from dtc.models.list_policy_response import ListPolicyResponse
+from dtc.models.list_pool_response import ListPoolResponse
+from dtc.models.list_snmp_health_check_response import ListSNMPHealthCheckResponse
+from dtc.models.list_snmp_user_security_response import ListSNMPUserSecurityResponse
+from dtc.models.list_server_response import ListServerResponse
+from dtc.models.list_tcp_health_check_response import ListTCPHealthCheckResponse
+from dtc.models.metadata import Metadata
+from dtc.models.metadata_resource_meta import MetadataResourceMeta
+from dtc.models.policy import Policy
+from dtc.models.policy_pool import PolicyPool
+from dtc.models.pool import Pool
+from dtc.models.pool_health_check import PoolHealthCheck
+from dtc.models.pool_server import PoolServer
+from dtc.models.read_http_health_check_response import ReadHTTPHealthCheckResponse
+from dtc.models.read_icmp_health_check_response import ReadICMPHealthCheckResponse
+from dtc.models.read_policy_response import ReadPolicyResponse
+from dtc.models.read_pool_response import ReadPoolResponse
+from dtc.models.read_snmp_health_check_response import ReadSNMPHealthCheckResponse
+from dtc.models.read_snmp_user_security_response import ReadSNMPUserSecurityResponse
+from dtc.models.read_server_response import ReadServerResponse
+from dtc.models.read_tcp_health_check_response import ReadTCPHealthCheckResponse
+from dtc.models.record import Record
+from dtc.models.snmp_health_check import SNMPHealthCheck
+from dtc.models.snmp_health_check_entry_check import SNMPHealthCheckEntryCheck
+from dtc.models.snmp_user_security_model import SNMPUserSecurityModel
+from dtc.models.server import Server
+from dtc.models.tcp_health_check import TCPHealthCheck
+from dtc.models.ttl_inheritance import TTLInheritance
+from dtc.models.topology_rule import TopologyRule
+from dtc.models.update_http_health_check_response import UpdateHTTPHealthCheckResponse
+from dtc.models.update_icmp_health_check_response import UpdateICMPHealthCheckResponse
+from dtc.models.update_policy_response import UpdatePolicyResponse
+from dtc.models.update_pool_response import UpdatePoolResponse
+from dtc.models.update_snmp_health_check_response import UpdateSNMPHealthCheckResponse
+from dtc.models.update_snmp_user_security_response import UpdateSNMPUserSecurityResponse
+from dtc.models.update_server_response import UpdateServerResponse
+from dtc.models.update_tcp_health_check_response import UpdateTCPHealthCheckResponse
diff --git a/src/dtc/models/create_http_health_check_response.py b/src/dtc/models/create_http_health_check_response.py
new file mode 100644
index 0000000..a9b1ecb
--- /dev/null
+++ b/src/dtc/models/create_http_health_check_response.py
@@ -0,0 +1,104 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field
+from typing import Any, ClassVar, Dict, List, Optional
+from dtc.models.http_health_check import HTTPHealthCheck
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class CreateHTTPHealthCheckResponse(BaseModel):
+ """
+ The __HTTPHealthCheck__ object create response format.
+ """ # noqa: E501
+ result: Optional[HTTPHealthCheck] = Field(
+ default=None, description="The created __HTTPHealthCheck__ object.")
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = ["result"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of CreateHTTPHealthCheckResponse from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of result
+ if self.result:
+ _dict['result'] = self.result.to_dict()
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of CreateHTTPHealthCheckResponse from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "result":
+ HTTPHealthCheck.from_dict(obj["result"])
+ if obj.get("result") is not None else None
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/create_icmp_health_check_response.py b/src/dtc/models/create_icmp_health_check_response.py
new file mode 100644
index 0000000..220fdaa
--- /dev/null
+++ b/src/dtc/models/create_icmp_health_check_response.py
@@ -0,0 +1,104 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field
+from typing import Any, ClassVar, Dict, List, Optional
+from dtc.models.icmp_health_check import ICMPHealthCheck
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class CreateICMPHealthCheckResponse(BaseModel):
+ """
+ The __ICMPHealthCheck__ object create response format.
+ """ # noqa: E501
+ result: Optional[ICMPHealthCheck] = Field(
+ default=None, description="The created __ICMPHealthCheck__ object.")
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = ["result"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of CreateICMPHealthCheckResponse from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of result
+ if self.result:
+ _dict['result'] = self.result.to_dict()
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of CreateICMPHealthCheckResponse from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "result":
+ ICMPHealthCheck.from_dict(obj["result"])
+ if obj.get("result") is not None else None
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/create_policy_response.py b/src/dtc/models/create_policy_response.py
new file mode 100644
index 0000000..f8f2dd5
--- /dev/null
+++ b/src/dtc/models/create_policy_response.py
@@ -0,0 +1,106 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field
+from typing import Any, ClassVar, Dict, List, Optional
+from dtc.models.policy import Policy
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class CreatePolicyResponse(BaseModel):
+ """
+ The __Policy__ object create response format.
+ """
+
+ # noqa: E501
+ result: Optional[Policy] = Field(
+ default=None, description="The created __Policy__ object.")
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = ["result"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of CreatePolicyResponse from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of result
+ if self.result:
+ _dict['result'] = self.result.to_dict()
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of CreatePolicyResponse from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "result":
+ Policy.from_dict(obj["result"])
+ if obj.get("result") is not None else None
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/create_pool_response.py b/src/dtc/models/create_pool_response.py
new file mode 100644
index 0000000..2754130
--- /dev/null
+++ b/src/dtc/models/create_pool_response.py
@@ -0,0 +1,106 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field
+from typing import Any, ClassVar, Dict, List, Optional
+from dtc.models.pool import Pool
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class CreatePoolResponse(BaseModel):
+ """
+ The __Pool__ object create response format.
+ """
+
+ # noqa: E501
+ result: Optional[Pool] = Field(default=None,
+ description="The created __Pool__ object.")
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = ["result"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of CreatePoolResponse from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of result
+ if self.result:
+ _dict['result'] = self.result.to_dict()
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of CreatePoolResponse from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "result":
+ Pool.from_dict(obj["result"])
+ if obj.get("result") is not None else None
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/create_server_response.py b/src/dtc/models/create_server_response.py
new file mode 100644
index 0000000..228ebe2
--- /dev/null
+++ b/src/dtc/models/create_server_response.py
@@ -0,0 +1,106 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field
+from typing import Any, ClassVar, Dict, List, Optional
+from dtc.models.server import Server
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class CreateServerResponse(BaseModel):
+ """
+ The __Server__ object create response format.
+ """
+
+ # noqa: E501
+ result: Optional[Server] = Field(
+ default=None, description="The created __Server__ object.")
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = ["result"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of CreateServerResponse from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of result
+ if self.result:
+ _dict['result'] = self.result.to_dict()
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of CreateServerResponse from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "result":
+ Server.from_dict(obj["result"])
+ if obj.get("result") is not None else None
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/create_snmp_health_check_response.py b/src/dtc/models/create_snmp_health_check_response.py
new file mode 100644
index 0000000..ecb6cc8
--- /dev/null
+++ b/src/dtc/models/create_snmp_health_check_response.py
@@ -0,0 +1,104 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field
+from typing import Any, ClassVar, Dict, List, Optional
+from dtc.models.snmp_health_check import SNMPHealthCheck
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class CreateSNMPHealthCheckResponse(BaseModel):
+ """
+ The __SNMPHealthCheck__ object create response format.
+ """ # noqa: E501
+ result: Optional[SNMPHealthCheck] = Field(
+ default=None, description="The created __SNMPHealthCheck__ object.")
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = ["result"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of CreateSNMPHealthCheckResponse from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of result
+ if self.result:
+ _dict['result'] = self.result.to_dict()
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of CreateSNMPHealthCheckResponse from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "result":
+ SNMPHealthCheck.from_dict(obj["result"])
+ if obj.get("result") is not None else None
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/create_snmp_user_security_response.py b/src/dtc/models/create_snmp_user_security_response.py
new file mode 100644
index 0000000..c9c2166
--- /dev/null
+++ b/src/dtc/models/create_snmp_user_security_response.py
@@ -0,0 +1,103 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict
+from typing import Any, ClassVar, Dict, List, Optional
+from dtc.models.snmp_user_security_model import SNMPUserSecurityModel
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class CreateSNMPUserSecurityResponse(BaseModel):
+ """
+ The __SNMPUserSecurityModel__ object create response format.
+ """ # noqa: E501
+ result: Optional[SNMPUserSecurityModel] = None
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = ["result"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of CreateSNMPUserSecurityResponse from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of result
+ if self.result:
+ _dict['result'] = self.result.to_dict()
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of CreateSNMPUserSecurityResponse from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "result":
+ SNMPUserSecurityModel.from_dict(obj["result"])
+ if obj.get("result") is not None else None
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/create_tcp_health_check_response.py b/src/dtc/models/create_tcp_health_check_response.py
new file mode 100644
index 0000000..57d2cd0
--- /dev/null
+++ b/src/dtc/models/create_tcp_health_check_response.py
@@ -0,0 +1,104 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field
+from typing import Any, ClassVar, Dict, List, Optional
+from dtc.models.tcp_health_check import TCPHealthCheck
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class CreateTCPHealthCheckResponse(BaseModel):
+ """
+ The __TCPHealthCheck__ object create response format.
+ """ # noqa: E501
+ result: Optional[TCPHealthCheck] = Field(
+ default=None, description="The created __TCPHealthCheck__ object.")
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = ["result"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of CreateTCPHealthCheckResponse from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of result
+ if self.result:
+ _dict['result'] = self.result.to_dict()
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of CreateTCPHealthCheckResponse from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "result":
+ TCPHealthCheck.from_dict(obj["result"])
+ if obj.get("result") is not None else None
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/header_regex.py b/src/dtc/models/header_regex.py
new file mode 100644
index 0000000..92d1612
--- /dev/null
+++ b/src/dtc/models/header_regex.py
@@ -0,0 +1,100 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field, StrictStr
+from typing import Any, ClassVar, Dict, List
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class HeaderRegex(BaseModel):
+ """
+ A __HeaderRegex__ represents a pair of HTTP header name and regular expression to match against the header value.
+ """ # noqa: E501
+ header: StrictStr = Field(description="HTTP header name.")
+ regex: StrictStr = Field(
+ description="Regular expression to match against HTTP header value.")
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = ["header", "regex"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of HeaderRegex from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of HeaderRegex from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "header": obj.get("header"),
+ "regex": obj.get("regex")
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/http_health_check.py b/src/dtc/models/http_health_check.py
new file mode 100644
index 0000000..84f7c22
--- /dev/null
+++ b/src/dtc/models/http_health_check.py
@@ -0,0 +1,245 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictInt, StrictStr
+from typing import Any, ClassVar, Dict, List, Optional
+from dtc.models.header_regex import HeaderRegex
+from dtc.models.metadata import Metadata
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class HTTPHealthCheck(BaseModel):
+ """
+ A __HTTPHealthCheck__ (_dtc/health_check_http_) represents a DTC __Server__ health check based on the Hypertext Transfer Protocol (HTTP).
+ """ # noqa: E501
+ check_response_body: Optional[StrictBool] = Field(
+ default=None,
+ description=
+ "Optional. Flag which enables checking of the HTTP response body content. Defaults to _false_."
+ )
+ check_response_body_negative: Optional[StrictBool] = Field(
+ default=None,
+ description=
+ "Optional. Flag which changes the meaning of the regex match result. If set to _true_, the response is valid if regular expression matches not found. Defaults to _false_. The flag is currently not supported."
+ )
+ check_response_body_regex: Optional[StrictStr] = Field(
+ default=None,
+ description=
+ "Optional. Regular expression to search for a string in the HTTP response body. Error if empty while _check_response_body_ is _true_. Defaults to empty."
+ )
+ check_response_header: Optional[StrictBool] = Field(
+ default=None,
+ description=
+ "Optional. Flag which enables checking of the HTTP response header(s) content. Defaults to _false_."
+ )
+ check_response_header_negative: Optional[StrictBool] = Field(
+ default=None,
+ description=
+ "Optional. Flag which changes the meaning of the header regexes match result. If set to _true_, neither expression matches must be found in their respective headers for the headers to be considered valid. Defaults to _false_."
+ )
+ check_response_header_regexes: Optional[List[HeaderRegex]] = Field(
+ default=None,
+ description=
+ "Optional. List of (header, regular expression) pairs. All expression matches must be found in their respective headers for the headers to be considered valid. Error if empty while _check_response_header_ is _true_. Defaults to empty."
+ )
+ codes: Optional[StrictStr] = Field(
+ default=None,
+ description=
+ "Optional. Response Status Codes meaning the health check is successful. If empty, any code means success. Individual codes and code ranges are supported, ex. \"102,105-107,109-110,120\"."
+ )
+ comment: Optional[StrictStr] = Field(
+ default=None, description="Optional. Comment for __HTTPHealthCheck__.")
+ disabled: Optional[StrictBool] = Field(
+ default=None,
+ description=
+ "Optional. Flag which enables/disables __HTTPHealthCheck__. Defaults to _false_."
+ )
+ https: Optional[StrictBool] = Field(
+ default=None,
+ description=
+ "Optional. Flag which enables Hypertext Transfer Protocol Secure (HTTPS) in a health check. Defaults to _false_."
+ )
+ id: Optional[StrictStr] = Field(default=None,
+ description="The resource identifier.")
+ interval: Optional[StrictInt] = Field(
+ default=None,
+ description=
+ "Optional. Interval value in seconds. The health check runs only for the specified interval and it is measured from the beginning of the previous check cycle. Defaults to _15_."
+ )
+ metadata: Optional[Metadata] = Field(
+ default=None,
+ description=
+ "Output only. __HTTPHealthCheck__ metadata. Defaults to empty object and should be explicitly requested using field selection."
+ )
+ name: StrictStr = Field(description="Display name of __HTTPHealthCheck__.")
+ port: StrictInt = Field(
+ description="Destination TCP port of __HTTPHealthCheck__.")
+ request: Optional[StrictStr] = Field(
+ default=None,
+ description=
+ "HTTP request in a text format, it consists of HTTP method, request target, HTTP headers, request body."
+ )
+ retry_down: Optional[StrictInt] = Field(
+ default=None,
+ description=
+ "Optional. Retry down count. The value determines how many bad health checks in a row must be received by the onprem host from the DTC Server for treating the health check as failed. Defaults to _1_."
+ )
+ retry_up: Optional[StrictInt] = Field(
+ default=None,
+ description=
+ "Optional. Retry up count. The value determines how many good health checks in a row must be received by the onprem host from the DTC Server for treating the health check as successful. Defaults to _1_."
+ )
+ tags: Optional[Dict[str, Any]] = Field(
+ default=None,
+ description="Optional. The tags for __HTTPHealthCheck__ in JSON format."
+ )
+ timeout: Optional[StrictInt] = Field(
+ default=None,
+ description=
+ "Optional. Timeout value in seconds. The health check waits for the specified number of seconds after sending a request. If it does not receive a response within the number of seconds, then the health check is considered as failed. Defaults to _10_."
+ )
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = [
+ "check_response_body", "check_response_body_negative",
+ "check_response_body_regex", "check_response_header",
+ "check_response_header_negative", "check_response_header_regexes",
+ "codes", "comment", "disabled", "https", "id", "interval", "metadata",
+ "name", "port", "request", "retry_down", "retry_up", "tags", "timeout"
+ ]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of HTTPHealthCheck from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * OpenAPI `readOnly` fields are excluded.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "id",
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of each item in check_response_header_regexes (list)
+ _items = []
+ if self.check_response_header_regexes:
+ for _item in self.check_response_header_regexes:
+ if _item:
+ _items.append(_item.to_dict())
+ _dict['check_response_header_regexes'] = _items
+ # override the default output from pydantic by calling `to_dict()` of metadata
+ if self.metadata:
+ _dict['metadata'] = self.metadata.to_dict()
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of HTTPHealthCheck from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "check_response_body":
+ obj.get("check_response_body"),
+ "check_response_body_negative":
+ obj.get("check_response_body_negative"),
+ "check_response_body_regex":
+ obj.get("check_response_body_regex"),
+ "check_response_header":
+ obj.get("check_response_header"),
+ "check_response_header_negative":
+ obj.get("check_response_header_negative"),
+ "check_response_header_regexes": [
+ HeaderRegex.from_dict(_item)
+ for _item in obj["check_response_header_regexes"]
+ ]
+ if obj.get("check_response_header_regexes") is not None else None,
+ "codes":
+ obj.get("codes"),
+ "comment":
+ obj.get("comment"),
+ "disabled":
+ obj.get("disabled"),
+ "https":
+ obj.get("https"),
+ "id":
+ obj.get("id"),
+ "interval":
+ obj.get("interval"),
+ "metadata":
+ Metadata.from_dict(obj["metadata"])
+ if obj.get("metadata") is not None else None,
+ "name":
+ obj.get("name"),
+ "port":
+ obj.get("port"),
+ "request":
+ obj.get("request"),
+ "retry_down":
+ obj.get("retry_down"),
+ "retry_up":
+ obj.get("retry_up"),
+ "tags":
+ obj.get("tags"),
+ "timeout":
+ obj.get("timeout")
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/icmp_health_check.py b/src/dtc/models/icmp_health_check.py
new file mode 100644
index 0000000..63e87ea
--- /dev/null
+++ b/src/dtc/models/icmp_health_check.py
@@ -0,0 +1,164 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictInt, StrictStr
+from typing import Any, ClassVar, Dict, List, Optional
+from dtc.models.metadata import Metadata
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class ICMPHealthCheck(BaseModel):
+ """
+ A __ICMPHealthCheck__ (_dtc/health_check_icmp_) represents a DTC __Server__ health check based on the Internet Control Message Protocol (ICMP).
+ """ # noqa: E501
+ comment: Optional[StrictStr] = Field(
+ default=None, description="Optional. Comment for __ICMPHealthCheck__.")
+ disabled: Optional[StrictBool] = Field(
+ default=None,
+ description=
+ "Optional. Flag which enables/disables __ICMPHealthCheck__. Defaults to _false_."
+ )
+ id: Optional[StrictStr] = Field(default=None,
+ description="The resource identifier.")
+ interval: Optional[StrictInt] = Field(
+ default=None,
+ description=
+ "Optional. Interval value in seconds. The health check runs only for the specified interval and it is measured from the beginning of the previous check cycle. Defaults to _15_."
+ )
+ metadata: Optional[Metadata] = Field(
+ default=None,
+ description=
+ "Output only. __ICMPHealthCheck__ metadata. Defaults to empty object and should be explicitly requested using field selection."
+ )
+ name: StrictStr = Field(description="Display name of __ICMPHealthCheck__.")
+ retry_down: Optional[StrictInt] = Field(
+ default=None,
+ description=
+ "Optional. Retry down count. The value determines how many bad health checks in a row must be received by the onprem host from the DTC Server for treating the health check as failed. Defaults to _1_."
+ )
+ retry_up: Optional[StrictInt] = Field(
+ default=None,
+ description=
+ "Optional. Retry up count. The value determines how many good health checks in a row must be received by the onprem host from the DTC Server for treating the health check as successful. Defaults to _1_."
+ )
+ tags: Optional[Dict[str, Any]] = Field(
+ default=None,
+ description="Optional. The tags for __ICMPHealthCheck__ in JSON format."
+ )
+ timeout: Optional[StrictInt] = Field(
+ default=None,
+ description=
+ "Optional. Timeout value in seconds. The health check waits for the specified number of seconds after sending a request. If it does not receive a response within the number of seconds, then the health check is considered as failed. Defaults to _10_."
+ )
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = [
+ "comment", "disabled", "id", "interval", "metadata", "name",
+ "retry_down", "retry_up", "tags", "timeout"
+ ]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of ICMPHealthCheck from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * OpenAPI `readOnly` fields are excluded.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "id",
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of metadata
+ if self.metadata:
+ _dict['metadata'] = self.metadata.to_dict()
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of ICMPHealthCheck from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "comment":
+ obj.get("comment"),
+ "disabled":
+ obj.get("disabled"),
+ "id":
+ obj.get("id"),
+ "interval":
+ obj.get("interval"),
+ "metadata":
+ Metadata.from_dict(obj["metadata"])
+ if obj.get("metadata") is not None else None,
+ "name":
+ obj.get("name"),
+ "retry_down":
+ obj.get("retry_down"),
+ "retry_up":
+ obj.get("retry_up"),
+ "tags":
+ obj.get("tags"),
+ "timeout":
+ obj.get("timeout")
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/inheritance2_inherited_u_int32.py b/src/dtc/models/inheritance2_inherited_u_int32.py
new file mode 100644
index 0000000..dd6ffba
--- /dev/null
+++ b/src/dtc/models/inheritance2_inherited_u_int32.py
@@ -0,0 +1,119 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field, StrictInt, StrictStr
+from typing import Any, ClassVar, Dict, List, Optional
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class Inheritance2InheritedUInt32(BaseModel):
+ """
+ The inheritance configuration for a field of type _UInt32_.
+ """ # noqa: E501
+ action: Optional[StrictStr] = Field(
+ default=None,
+ description=
+ "The inheritance setting for a field. Valid values are: * _inherit_: Use the inherited value. * _override_: Use the value set in the object. Defaults to _inherit_."
+ )
+ display_name: Optional[StrictStr] = Field(
+ default=None,
+ description=
+ "The human-readable display name for the object referred to by _source_."
+ )
+ source: Optional[StrictStr] = Field(default=None,
+ description="The resource identifier.")
+ value: Optional[StrictInt] = Field(default=None,
+ description="The inherited value.")
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = [
+ "action", "display_name", "source", "value"
+ ]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of Inheritance2InheritedUInt32 from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * OpenAPI `readOnly` fields are excluded.
+ * OpenAPI `readOnly` fields are excluded.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "display_name",
+ "value",
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of Inheritance2InheritedUInt32 from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "action": obj.get("action"),
+ "display_name": obj.get("display_name"),
+ "source": obj.get("source"),
+ "value": obj.get("value")
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/list_http_health_check_response.py b/src/dtc/models/list_http_health_check_response.py
new file mode 100644
index 0000000..d6564b2
--- /dev/null
+++ b/src/dtc/models/list_http_health_check_response.py
@@ -0,0 +1,108 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field
+from typing import Any, ClassVar, Dict, List, Optional
+from dtc.models.http_health_check import HTTPHealthCheck
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class ListHTTPHealthCheckResponse(BaseModel):
+ """
+ The __HTTPHealthCheck__ object list response format.
+ """ # noqa: E501
+ results: Optional[List[HTTPHealthCheck]] = Field(
+ default=None, description="List of __HTTPHealthCheck__ objects.")
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = ["results"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of ListHTTPHealthCheckResponse from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of each item in results (list)
+ _items = []
+ if self.results:
+ for _item in self.results:
+ if _item:
+ _items.append(_item.to_dict())
+ _dict['results'] = _items
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of ListHTTPHealthCheckResponse from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "results":
+ [HTTPHealthCheck.from_dict(_item) for _item in obj["results"]]
+ if obj.get("results") is not None else None
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/list_icmp_health_check_response.py b/src/dtc/models/list_icmp_health_check_response.py
new file mode 100644
index 0000000..bb2253b
--- /dev/null
+++ b/src/dtc/models/list_icmp_health_check_response.py
@@ -0,0 +1,108 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field
+from typing import Any, ClassVar, Dict, List, Optional
+from dtc.models.icmp_health_check import ICMPHealthCheck
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class ListICMPHealthCheckResponse(BaseModel):
+ """
+ The __ICMPHealthCheck__ object list response format.
+ """ # noqa: E501
+ results: Optional[List[ICMPHealthCheck]] = Field(
+ default=None, description="List of __ICMPHealthCheck__ objects.")
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = ["results"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of ListICMPHealthCheckResponse from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of each item in results (list)
+ _items = []
+ if self.results:
+ for _item in self.results:
+ if _item:
+ _items.append(_item.to_dict())
+ _dict['results'] = _items
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of ListICMPHealthCheckResponse from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "results":
+ [ICMPHealthCheck.from_dict(_item) for _item in obj["results"]]
+ if obj.get("results") is not None else None
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/list_policy_response.py b/src/dtc/models/list_policy_response.py
new file mode 100644
index 0000000..60b32d6
--- /dev/null
+++ b/src/dtc/models/list_policy_response.py
@@ -0,0 +1,109 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field
+from typing import Any, ClassVar, Dict, List, Optional
+from dtc.models.policy import Policy
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class ListPolicyResponse(BaseModel):
+ """
+ The __Policy__ object list response format.
+ """
+
+ # noqa: E501
+ results: Optional[List[Policy]] = Field(
+ default=None, description="List of __Policy__ objects.")
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = ["results"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of ListPolicyResponse from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of each item in results (list)
+ _items = []
+ if self.results:
+ for _item in self.results:
+ if _item:
+ _items.append(_item.to_dict())
+ _dict['results'] = _items
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of ListPolicyResponse from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "results": [Policy.from_dict(_item) for _item in obj["results"]]
+ if obj.get("results") is not None else None
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/list_pool_response.py b/src/dtc/models/list_pool_response.py
new file mode 100644
index 0000000..f999b52
--- /dev/null
+++ b/src/dtc/models/list_pool_response.py
@@ -0,0 +1,109 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field
+from typing import Any, ClassVar, Dict, List, Optional
+from dtc.models.pool import Pool
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class ListPoolResponse(BaseModel):
+ """
+ The __Pool__ object list response format.
+ """
+
+ # noqa: E501
+ results: Optional[List[Pool]] = Field(
+ default=None, description="List of __Pool__ objects.")
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = ["results"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of ListPoolResponse from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of each item in results (list)
+ _items = []
+ if self.results:
+ for _item in self.results:
+ if _item:
+ _items.append(_item.to_dict())
+ _dict['results'] = _items
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of ListPoolResponse from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "results": [Pool.from_dict(_item) for _item in obj["results"]]
+ if obj.get("results") is not None else None
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/list_server_response.py b/src/dtc/models/list_server_response.py
new file mode 100644
index 0000000..dde10cc
--- /dev/null
+++ b/src/dtc/models/list_server_response.py
@@ -0,0 +1,109 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field
+from typing import Any, ClassVar, Dict, List, Optional
+from dtc.models.server import Server
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class ListServerResponse(BaseModel):
+ """
+ The __Server__ object list response format.
+ """
+
+ # noqa: E501
+ results: Optional[List[Server]] = Field(
+ default=None, description="List of __Server__ objects.")
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = ["results"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of ListServerResponse from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of each item in results (list)
+ _items = []
+ if self.results:
+ for _item in self.results:
+ if _item:
+ _items.append(_item.to_dict())
+ _dict['results'] = _items
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of ListServerResponse from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "results": [Server.from_dict(_item) for _item in obj["results"]]
+ if obj.get("results") is not None else None
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/list_snmp_health_check_response.py b/src/dtc/models/list_snmp_health_check_response.py
new file mode 100644
index 0000000..bf58734
--- /dev/null
+++ b/src/dtc/models/list_snmp_health_check_response.py
@@ -0,0 +1,108 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field
+from typing import Any, ClassVar, Dict, List, Optional
+from dtc.models.snmp_health_check import SNMPHealthCheck
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class ListSNMPHealthCheckResponse(BaseModel):
+ """
+ The __SNMPHealthCheck__ object list response format.
+ """ # noqa: E501
+ results: Optional[List[SNMPHealthCheck]] = Field(
+ default=None, description="List of __SNMPHealthCheck__ objects.")
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = ["results"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of ListSNMPHealthCheckResponse from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of each item in results (list)
+ _items = []
+ if self.results:
+ for _item in self.results:
+ if _item:
+ _items.append(_item.to_dict())
+ _dict['results'] = _items
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of ListSNMPHealthCheckResponse from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "results":
+ [SNMPHealthCheck.from_dict(_item) for _item in obj["results"]]
+ if obj.get("results") is not None else None
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/list_snmp_user_security_response.py b/src/dtc/models/list_snmp_user_security_response.py
new file mode 100644
index 0000000..3492619
--- /dev/null
+++ b/src/dtc/models/list_snmp_user_security_response.py
@@ -0,0 +1,109 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field
+from typing import Any, ClassVar, Dict, List, Optional
+from dtc.models.snmp_user_security_model import SNMPUserSecurityModel
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class ListSNMPUserSecurityResponse(BaseModel):
+ """
+ The __SNMPUserSecurityModel__ object list response format.
+ """ # noqa: E501
+ results: Optional[List[SNMPUserSecurityModel]] = Field(
+ default=None, description="List of __SNMPUserSecurityModel__ objects.")
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = ["results"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of ListSNMPUserSecurityResponse from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of each item in results (list)
+ _items = []
+ if self.results:
+ for _item in self.results:
+ if _item:
+ _items.append(_item.to_dict())
+ _dict['results'] = _items
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of ListSNMPUserSecurityResponse from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "results": [
+ SNMPUserSecurityModel.from_dict(_item)
+ for _item in obj["results"]
+ ] if obj.get("results") is not None else None
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/list_tcp_health_check_response.py b/src/dtc/models/list_tcp_health_check_response.py
new file mode 100644
index 0000000..de971c0
--- /dev/null
+++ b/src/dtc/models/list_tcp_health_check_response.py
@@ -0,0 +1,108 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field
+from typing import Any, ClassVar, Dict, List, Optional
+from dtc.models.tcp_health_check import TCPHealthCheck
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class ListTCPHealthCheckResponse(BaseModel):
+ """
+ The __TCPHealthCheck__ object list response format.
+ """ # noqa: E501
+ results: Optional[List[TCPHealthCheck]] = Field(
+ default=None, description="List of __TCPHealthCheck__ objects.")
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = ["results"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of ListTCPHealthCheckResponse from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of each item in results (list)
+ _items = []
+ if self.results:
+ for _item in self.results:
+ if _item:
+ _items.append(_item.to_dict())
+ _dict['results'] = _items
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of ListTCPHealthCheckResponse from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "results":
+ [TCPHealthCheck.from_dict(_item) for _item in obj["results"]]
+ if obj.get("results") is not None else None
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/metadata.py b/src/dtc/models/metadata.py
new file mode 100644
index 0000000..47cd495
--- /dev/null
+++ b/src/dtc/models/metadata.py
@@ -0,0 +1,114 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field
+from typing import Any, ClassVar, Dict, List, Optional
+from dtc.models.metadata_resource_meta import MetadataResourceMeta
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class Metadata(BaseModel):
+ """
+ Metadata of a configuration resource.
+ """
+
+ # noqa: E501
+ used_by: Optional[List[MetadataResourceMeta]] = Field(
+ default=None,
+ description=
+ "List of structs representing a limited view on configuration objects that use a resource the metadata is provided for."
+ )
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = ["used_by"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of Metadata from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of each item in used_by (list)
+ _items = []
+ if self.used_by:
+ for _item in self.used_by:
+ if _item:
+ _items.append(_item.to_dict())
+ _dict['used_by'] = _items
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of Metadata from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "used_by": [
+ MetadataResourceMeta.from_dict(_item)
+ for _item in obj["used_by"]
+ ] if obj.get("used_by") is not None else None
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/metadata_resource_meta.py b/src/dtc/models/metadata_resource_meta.py
new file mode 100644
index 0000000..4eb9165
--- /dev/null
+++ b/src/dtc/models/metadata_resource_meta.py
@@ -0,0 +1,112 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field, StrictStr
+from typing import Any, ClassVar, Dict, List, Optional
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class MetadataResourceMeta(BaseModel):
+ """
+ Limited view on a configuration resource.
+ """
+
+ # noqa: E501
+ details: Optional[Dict[str, StrictStr]] = Field(
+ default=None,
+ description=
+ "Structured data consisting of additional details of the configuration resource."
+ )
+ display_name: Optional[StrictStr] = Field(
+ default=None,
+ description="Display name of the configuration resource.")
+ id: Optional[StrictStr] = Field(default=None,
+ description="The resource identifier.")
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = ["details", "display_name", "id"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of MetadataResourceMeta from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * OpenAPI `readOnly` fields are excluded.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "id",
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of MetadataResourceMeta from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "details": obj.get("details"),
+ "display_name": obj.get("display_name"),
+ "id": obj.get("id")
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/policy.py b/src/dtc/models/policy.py
new file mode 100644
index 0000000..a2554ed
--- /dev/null
+++ b/src/dtc/models/policy.py
@@ -0,0 +1,187 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictInt, StrictStr
+from typing import Any, ClassVar, Dict, List, Optional
+from dtc.models.metadata import Metadata
+from dtc.models.policy_pool import PolicyPool
+from dtc.models.topology_rule import TopologyRule
+from dtc.models.ttl_inheritance import TTLInheritance
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class Policy(BaseModel):
+ """
+ A __Policy__ (_dtc/policy_) represents a DNS load balancing policy.
+ """ # noqa: E501
+ comment: Optional[StrictStr] = Field(
+ default=None, description="Optional. Comment for __Policy__.")
+ disabled: Optional[StrictBool] = Field(
+ default=None,
+ description=
+ "Optional. Flag which enables/disables __Policy__. Defaults to _false_."
+ )
+ id: Optional[StrictStr] = Field(default=None,
+ description="The resource identifier.")
+ inheritance_sources: Optional[TTLInheritance] = Field(
+ default=None, description="Optional. The inheritance configuration.")
+ metadata: Optional[Metadata] = Field(
+ default=None,
+ description=
+ "Output only. __Policy__ metadata. Defaults to empty object and should be explicitly requested using field selection."
+ )
+ method: StrictStr = Field(
+ description=
+ "Load balancing method used for selecting __Pool__ assigned to __Policy__. Valid values are: * _round_robin_ If the _round_robin_ load balancing method is selected, BloxOne DDI adjusts the response to a query in a sequential and circular manner, directing clients to pools. * _ratio_ If _ratio_ load balancing method is selected, BloxOne DDI adjusts the response to a query so that clients are directed to pool using weighted round robin, a load-balancing pattern in which requests are distributed among several resources based on weight assigned to each resource. The distribution of responses over time will be equal for all available pools but the sequence of the responses won't be guaranteed. When equal weights are assigned for resources (pools) it effectively leads to basic round robin configuration which directs clients to pools in a sequential and circular manner. * _topology_ If _topology_ load balancing method is selected the pools configured for the policy are ignored and topology rules are used instead. * _global_availability_ If _global_availability_ load balancing method is selected clients are directed to the first pool that is up in the _pools_ list. Defaults to _round_robin_."
+ )
+ name: StrictStr = Field(description="Display name of __Policy__.")
+ pools: Optional[List[PolicyPool]] = Field(
+ default=None,
+ description=
+ "Optional. List of __Pool__ objects assigned to __Policy__. Defaults to _empty_."
+ )
+ rules: Optional[List[TopologyRule]] = Field(
+ default=None,
+ description=
+ "Optional. List of __TopologyRule__ objects defining the resolving strategy for __Policy__. Defaults to a list of single, default __TopologyRule__."
+ )
+ tags: Optional[Dict[str, Any]] = Field(
+ default=None,
+ description="Optional. The tags for __Policy__ in JSON format.")
+ ttl: Optional[StrictInt] = Field(
+ default=None,
+ description=
+ "Optional. Time to live value (in seconds) to be used for records in DTC response. Unsigned integer, min: 0, max 2147483647 (31-bits per RFC-2181)."
+ )
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = [
+ "comment", "disabled", "id", "inheritance_sources", "metadata",
+ "method", "name", "pools", "rules", "tags", "ttl"
+ ]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of Policy from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * OpenAPI `readOnly` fields are excluded.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "id",
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of inheritance_sources
+ if self.inheritance_sources:
+ _dict['inheritance_sources'] = self.inheritance_sources.to_dict()
+ # override the default output from pydantic by calling `to_dict()` of metadata
+ if self.metadata:
+ _dict['metadata'] = self.metadata.to_dict()
+ # override the default output from pydantic by calling `to_dict()` of each item in pools (list)
+ _items = []
+ if self.pools:
+ for _item in self.pools:
+ if _item:
+ _items.append(_item.to_dict())
+ _dict['pools'] = _items
+ # override the default output from pydantic by calling `to_dict()` of each item in rules (list)
+ _items = []
+ if self.rules:
+ for _item in self.rules:
+ if _item:
+ _items.append(_item.to_dict())
+ _dict['rules'] = _items
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of Policy from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "comment":
+ obj.get("comment"),
+ "disabled":
+ obj.get("disabled"),
+ "id":
+ obj.get("id"),
+ "inheritance_sources":
+ TTLInheritance.from_dict(obj["inheritance_sources"])
+ if obj.get("inheritance_sources") is not None else None,
+ "metadata":
+ Metadata.from_dict(obj["metadata"])
+ if obj.get("metadata") is not None else None,
+ "method":
+ obj.get("method"),
+ "name":
+ obj.get("name"),
+ "pools": [PolicyPool.from_dict(_item) for _item in obj["pools"]]
+ if obj.get("pools") is not None else None,
+ "rules": [TopologyRule.from_dict(_item) for _item in obj["rules"]]
+ if obj.get("rules") is not None else None,
+ "tags":
+ obj.get("tags"),
+ "ttl":
+ obj.get("ttl")
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/policy_pool.py b/src/dtc/models/policy_pool.py
new file mode 100644
index 0000000..cf7b177
--- /dev/null
+++ b/src/dtc/models/policy_pool.py
@@ -0,0 +1,107 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field, StrictInt, StrictStr
+from typing import Any, ClassVar, Dict, List, Optional
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class PolicyPool(BaseModel):
+ """
+ A __PolicyPool__ represents a link between __Policy__ and __Pool__.
+ """ # noqa: E501
+ name: Optional[StrictStr] = Field(default=None,
+ description="Display name of __Pool__.")
+ pool_id: StrictStr = Field(description="The resource identifier.")
+ weight: StrictInt = Field(
+ description=
+ "Weight of __Pool__ to be used for load balancing. Unsigned integer, min 1; max 65535."
+ )
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = ["name", "pool_id", "weight"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of PolicyPool from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * OpenAPI `readOnly` fields are excluded.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "name",
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of PolicyPool from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "name": obj.get("name"),
+ "pool_id": obj.get("pool_id"),
+ "weight": obj.get("weight")
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/pool.py b/src/dtc/models/pool.py
new file mode 100644
index 0000000..ccdb425
--- /dev/null
+++ b/src/dtc/models/pool.py
@@ -0,0 +1,220 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictInt, StrictStr
+from typing import Any, ClassVar, Dict, List, Optional
+from dtc.models.metadata import Metadata
+from dtc.models.pool_health_check import PoolHealthCheck
+from dtc.models.pool_server import PoolServer
+from dtc.models.ttl_inheritance import TTLInheritance
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class Pool(BaseModel):
+ """
+ A __Pool__ (_dtc/pool_) represents a collection of servers, it is associated with a __Policy__ (_dtc/policy_).
+ """ # noqa: E501
+ comment: Optional[StrictStr] = Field(
+ default=None, description="Optional. Comment for __Pool__.")
+ disabled: Optional[StrictBool] = Field(
+ default=None,
+ description=
+ "Optional. Flag which enables/disables __Pool__. Defaults to _false_."
+ )
+ health_checks: Optional[List[PoolHealthCheck]] = Field(
+ default=None,
+ description=
+ "Optional. List of __HealthCheck__ objects IDs assigned to __Pool__. Defaults to _empty_."
+ )
+ id: Optional[StrictStr] = Field(default=None,
+ description="The resource identifier.")
+ inheritance_sources: Optional[TTLInheritance] = Field(
+ default=None, description="Optional. The inheritance configuration.")
+ metadata: Optional[Metadata] = Field(
+ default=None,
+ description=
+ "Output only. __Pool__ metadata. Defaults to empty object and should be explicitly requested using field selection."
+ )
+ method: StrictStr = Field(
+ description=
+ "Load balancing method used for selecting __Server__ assigned to __Pool__. Valid values are: * _round_robin_ If the _round_robin_ load balancing method is selected, BloxOne DDI adjusts the response to a query in a sequential and circular manner, directing clients to pools. * _ratio_ If _ratio_ load balancing method is selected, BloxOne DDI adjusts the response to a query so that clients are directed to pool using weighted round robin, a load-balancing pattern in which requests are distributed among several resources based on weight assigned to each resource. The distribution of responses over time will be equal for all available pools but the sequence of the responses won't be guaranteed. When equal weights are assigned for resources (pools) it effectively leads to basic round robin which directs clients to pools in sequential and circular manner. * _global_availability_ If _global_availability_ load balancing method is selected clients are directed to the first server that is up in the _servers_ list. Defaults to _round_robin_."
+ )
+ name: StrictStr = Field(description="Display name of __Pool__.")
+ pool_availability: Optional[StrictStr] = Field(
+ default=None,
+ description=
+ "Optional. Pool Availability setting defines how __Pool__ health is calculated. Valid values are: * _all_ If _all_ availability selected then __Pool__ is treated healthy when all pool's servers are healthy. * _quorum_ If _quorum_ availability selected then __Pool__ is treated healthy when at least N pool's servers are healthy. N is configurable via the value from _pool_servers_quorum_ setting. * _any_ If _any_ availability selected then __Pool__ is treated healthy when at least one pool's server is healthy. Defaults to _any_."
+ )
+ pool_servers_quorum: Optional[StrictInt] = Field(
+ default=None,
+ description=
+ "Pool Servers Quorum defines a minimal number of pool's healthy servers required for treating __Pool__ as healthy when Pool Availability is set to _quorum_."
+ )
+ server_availability: Optional[StrictStr] = Field(
+ default=None,
+ description=
+ "Optional. Server Availability setting defines how __Server__ health is calculated. Valid values are: * _all_ If _all_ availability selected then __Server__ is treated healthy when all pool's health checks are positive. * _quorum_ If _quorum_ availability selected then __Server__ is treated healthy when at least N pool's health checks are positive. N is configurable via the value from _server_health_checks_quorum_ setting. * _any_ If _any_ availability selected then __Server__ is treated healthy when at least one pool's health check is positive Defaults to _all_."
+ )
+ server_health_checks_quorum: Optional[StrictInt] = Field(
+ default=None,
+ description=
+ "Server Health Checks Quorum defines a minimal number of pool's positive health checks required for treating __Server__ as healthy when Server Availability is set to _quorum_."
+ )
+ servers: Optional[List[PoolServer]] = Field(
+ default=None,
+ description=
+ "Optional. List of __Server__ objects assigned to __Pool__. Defaults to _empty_."
+ )
+ tags: Optional[Dict[str, Any]] = Field(
+ default=None,
+ description="Optional. The tags for __Pool__ in JSON format.")
+ ttl: Optional[StrictInt] = Field(
+ default=None,
+ description=
+ "Optional. Time to live value (in seconds) to be used for records in DTC response. Unsigned integer, min: 0, max 2147483647 (31-bits per RFC-2181)."
+ )
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = [
+ "comment", "disabled", "health_checks", "id", "inheritance_sources",
+ "metadata", "method", "name", "pool_availability",
+ "pool_servers_quorum", "server_availability",
+ "server_health_checks_quorum", "servers", "tags", "ttl"
+ ]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of Pool from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * OpenAPI `readOnly` fields are excluded.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "id",
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of each item in health_checks (list)
+ _items = []
+ if self.health_checks:
+ for _item in self.health_checks:
+ if _item:
+ _items.append(_item.to_dict())
+ _dict['health_checks'] = _items
+ # override the default output from pydantic by calling `to_dict()` of inheritance_sources
+ if self.inheritance_sources:
+ _dict['inheritance_sources'] = self.inheritance_sources.to_dict()
+ # override the default output from pydantic by calling `to_dict()` of metadata
+ if self.metadata:
+ _dict['metadata'] = self.metadata.to_dict()
+ # override the default output from pydantic by calling `to_dict()` of each item in servers (list)
+ _items = []
+ if self.servers:
+ for _item in self.servers:
+ if _item:
+ _items.append(_item.to_dict())
+ _dict['servers'] = _items
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of Pool from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "comment":
+ obj.get("comment"),
+ "disabled":
+ obj.get("disabled"),
+ "health_checks": [
+ PoolHealthCheck.from_dict(_item)
+ for _item in obj["health_checks"]
+ ] if obj.get("health_checks") is not None else None,
+ "id":
+ obj.get("id"),
+ "inheritance_sources":
+ TTLInheritance.from_dict(obj["inheritance_sources"])
+ if obj.get("inheritance_sources") is not None else None,
+ "metadata":
+ Metadata.from_dict(obj["metadata"])
+ if obj.get("metadata") is not None else None,
+ "method":
+ obj.get("method"),
+ "name":
+ obj.get("name"),
+ "pool_availability":
+ obj.get("pool_availability"),
+ "pool_servers_quorum":
+ obj.get("pool_servers_quorum"),
+ "server_availability":
+ obj.get("server_availability"),
+ "server_health_checks_quorum":
+ obj.get("server_health_checks_quorum"),
+ "servers":
+ [PoolServer.from_dict(_item) for _item in obj["servers"]]
+ if obj.get("servers") is not None else None,
+ "tags":
+ obj.get("tags"),
+ "ttl":
+ obj.get("ttl")
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/pool_health_check.py b/src/dtc/models/pool_health_check.py
new file mode 100644
index 0000000..dbf9d2f
--- /dev/null
+++ b/src/dtc/models/pool_health_check.py
@@ -0,0 +1,102 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field, StrictStr
+from typing import Any, ClassVar, Dict, List, Optional
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class PoolHealthCheck(BaseModel):
+ """
+ A __PoolHealthCheck__ represents a link between __Pool__ and __HealthCheck__.
+ """ # noqa: E501
+ health_check_id: StrictStr = Field(description="The resource identifier.")
+ name: Optional[StrictStr] = Field(
+ default=None, description="Display name of __HealthCheck__.")
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = ["health_check_id", "name"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of PoolHealthCheck from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * OpenAPI `readOnly` fields are excluded.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "name",
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of PoolHealthCheck from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "health_check_id": obj.get("health_check_id"),
+ "name": obj.get("name")
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/pool_server.py b/src/dtc/models/pool_server.py
new file mode 100644
index 0000000..586cc78
--- /dev/null
+++ b/src/dtc/models/pool_server.py
@@ -0,0 +1,107 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field, StrictInt, StrictStr
+from typing import Any, ClassVar, Dict, List, Optional
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class PoolServer(BaseModel):
+ """
+ A __PoolServer__ represents a link between __Pool__ and __Server__.
+ """ # noqa: E501
+ name: Optional[StrictStr] = Field(
+ default=None, description="Display name of __Server__.")
+ server_id: StrictStr = Field(description="The resource identifier.")
+ weight: StrictInt = Field(
+ description=
+ "Weight of __Server__ to be used for load balancing. Unsigned integer, min 1; max 65535."
+ )
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = ["name", "server_id", "weight"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of PoolServer from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * OpenAPI `readOnly` fields are excluded.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "name",
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of PoolServer from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "name": obj.get("name"),
+ "server_id": obj.get("server_id"),
+ "weight": obj.get("weight")
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/read_http_health_check_response.py b/src/dtc/models/read_http_health_check_response.py
new file mode 100644
index 0000000..40ac975
--- /dev/null
+++ b/src/dtc/models/read_http_health_check_response.py
@@ -0,0 +1,104 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field
+from typing import Any, ClassVar, Dict, List, Optional
+from dtc.models.http_health_check import HTTPHealthCheck
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class ReadHTTPHealthCheckResponse(BaseModel):
+ """
+ The __HTTPHealthCheck__ object read response format.
+ """ # noqa: E501
+ result: Optional[HTTPHealthCheck] = Field(
+ default=None, description="The __HTTPHealthCheck__ object.")
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = ["result"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of ReadHTTPHealthCheckResponse from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of result
+ if self.result:
+ _dict['result'] = self.result.to_dict()
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of ReadHTTPHealthCheckResponse from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "result":
+ HTTPHealthCheck.from_dict(obj["result"])
+ if obj.get("result") is not None else None
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/read_icmp_health_check_response.py b/src/dtc/models/read_icmp_health_check_response.py
new file mode 100644
index 0000000..f3a3b22
--- /dev/null
+++ b/src/dtc/models/read_icmp_health_check_response.py
@@ -0,0 +1,104 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field
+from typing import Any, ClassVar, Dict, List, Optional
+from dtc.models.icmp_health_check import ICMPHealthCheck
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class ReadICMPHealthCheckResponse(BaseModel):
+ """
+ The __ICMPHealthCheck__ object read response format.
+ """ # noqa: E501
+ result: Optional[ICMPHealthCheck] = Field(
+ default=None, description="The __ICMPHealthCheck__ object.")
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = ["result"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of ReadICMPHealthCheckResponse from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of result
+ if self.result:
+ _dict['result'] = self.result.to_dict()
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of ReadICMPHealthCheckResponse from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "result":
+ ICMPHealthCheck.from_dict(obj["result"])
+ if obj.get("result") is not None else None
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/read_policy_response.py b/src/dtc/models/read_policy_response.py
new file mode 100644
index 0000000..9c52ba5
--- /dev/null
+++ b/src/dtc/models/read_policy_response.py
@@ -0,0 +1,106 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field
+from typing import Any, ClassVar, Dict, List, Optional
+from dtc.models.policy import Policy
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class ReadPolicyResponse(BaseModel):
+ """
+ The __Policy__ object read response format.
+ """
+
+ # noqa: E501
+ result: Optional[Policy] = Field(default=None,
+ description="The __Policy__ object.")
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = ["result"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of ReadPolicyResponse from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of result
+ if self.result:
+ _dict['result'] = self.result.to_dict()
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of ReadPolicyResponse from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "result":
+ Policy.from_dict(obj["result"])
+ if obj.get("result") is not None else None
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/read_pool_response.py b/src/dtc/models/read_pool_response.py
new file mode 100644
index 0000000..a4d044e
--- /dev/null
+++ b/src/dtc/models/read_pool_response.py
@@ -0,0 +1,106 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field
+from typing import Any, ClassVar, Dict, List, Optional
+from dtc.models.pool import Pool
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class ReadPoolResponse(BaseModel):
+ """
+ The __Pool__ object read response format.
+ """
+
+ # noqa: E501
+ result: Optional[Pool] = Field(default=None,
+ description="The __Pool__ object.")
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = ["result"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of ReadPoolResponse from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of result
+ if self.result:
+ _dict['result'] = self.result.to_dict()
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of ReadPoolResponse from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "result":
+ Pool.from_dict(obj["result"])
+ if obj.get("result") is not None else None
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/read_server_response.py b/src/dtc/models/read_server_response.py
new file mode 100644
index 0000000..3b06f4b
--- /dev/null
+++ b/src/dtc/models/read_server_response.py
@@ -0,0 +1,105 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict
+from typing import Any, ClassVar, Dict, List, Optional
+from dtc.models.server import Server
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class ReadServerResponse(BaseModel):
+ """
+ The __Server__ object read response format.
+ """
+
+ # noqa: E501
+ result: Optional[Server] = None
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = ["result"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of ReadServerResponse from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of result
+ if self.result:
+ _dict['result'] = self.result.to_dict()
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of ReadServerResponse from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "result":
+ Server.from_dict(obj["result"])
+ if obj.get("result") is not None else None
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/read_snmp_health_check_response.py b/src/dtc/models/read_snmp_health_check_response.py
new file mode 100644
index 0000000..6a88d73
--- /dev/null
+++ b/src/dtc/models/read_snmp_health_check_response.py
@@ -0,0 +1,104 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field
+from typing import Any, ClassVar, Dict, List, Optional
+from dtc.models.snmp_health_check import SNMPHealthCheck
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class ReadSNMPHealthCheckResponse(BaseModel):
+ """
+ The __SNMPHealthCheck__ object read response format.
+ """ # noqa: E501
+ result: Optional[SNMPHealthCheck] = Field(
+ default=None, description="The __SNMPHealthCheck__ object.")
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = ["result"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of ReadSNMPHealthCheckResponse from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of result
+ if self.result:
+ _dict['result'] = self.result.to_dict()
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of ReadSNMPHealthCheckResponse from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "result":
+ SNMPHealthCheck.from_dict(obj["result"])
+ if obj.get("result") is not None else None
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/read_snmp_user_security_response.py b/src/dtc/models/read_snmp_user_security_response.py
new file mode 100644
index 0000000..9e61c97
--- /dev/null
+++ b/src/dtc/models/read_snmp_user_security_response.py
@@ -0,0 +1,103 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict
+from typing import Any, ClassVar, Dict, List, Optional
+from dtc.models.snmp_user_security_model import SNMPUserSecurityModel
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class ReadSNMPUserSecurityResponse(BaseModel):
+ """
+ The __SNMPUserSecurityModel__ object read response format.
+ """ # noqa: E501
+ result: Optional[SNMPUserSecurityModel] = None
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = ["result"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of ReadSNMPUserSecurityResponse from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of result
+ if self.result:
+ _dict['result'] = self.result.to_dict()
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of ReadSNMPUserSecurityResponse from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "result":
+ SNMPUserSecurityModel.from_dict(obj["result"])
+ if obj.get("result") is not None else None
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/read_tcp_health_check_response.py b/src/dtc/models/read_tcp_health_check_response.py
new file mode 100644
index 0000000..7cb893f
--- /dev/null
+++ b/src/dtc/models/read_tcp_health_check_response.py
@@ -0,0 +1,104 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field
+from typing import Any, ClassVar, Dict, List, Optional
+from dtc.models.tcp_health_check import TCPHealthCheck
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class ReadTCPHealthCheckResponse(BaseModel):
+ """
+ The __TCPHealthCheck__ object read response format.
+ """ # noqa: E501
+ result: Optional[TCPHealthCheck] = Field(
+ default=None, description="The __TCPHealthCheck__ object.")
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = ["result"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of ReadTCPHealthCheckResponse from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of result
+ if self.result:
+ _dict['result'] = self.result.to_dict()
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of ReadTCPHealthCheckResponse from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "result":
+ TCPHealthCheck.from_dict(obj["result"])
+ if obj.get("result") is not None else None
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/record.py b/src/dtc/models/record.py
new file mode 100644
index 0000000..72a30b5
--- /dev/null
+++ b/src/dtc/models/record.py
@@ -0,0 +1,110 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field, StrictStr
+from typing import Any, ClassVar, Dict, List, Optional
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class Record(BaseModel):
+ """
+ __Record__ represents a resource record which is returned in response to load balanced DNS queries.
+ """ # noqa: E501
+ dns_rdata: Optional[StrictStr] = Field(
+ default=None,
+ description=
+ "The DNS protocol textual representation of the record data.")
+ rdata: Dict[str, Any] = Field(
+ description="JSON representation of resource record data.")
+ type: StrictStr = Field(
+ description=
+ "Resource record type. List of supported types: * _A_ (_TYPE1_) * _AAAA_ (_TYPE28_) * _CNAME_ (_TYPE5_) * _HTTPS_ (_TYPE65_) * _SRV_ (_TYPE33_) * _SVCB_ (_TYPE64_)"
+ )
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = ["dns_rdata", "rdata", "type"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of Record from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * OpenAPI `readOnly` fields are excluded.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "dns_rdata",
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of Record from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "dns_rdata": obj.get("dns_rdata"),
+ "rdata": obj.get("rdata"),
+ "type": obj.get("type")
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/server.py b/src/dtc/models/server.py
new file mode 100644
index 0000000..638614a
--- /dev/null
+++ b/src/dtc/models/server.py
@@ -0,0 +1,176 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictStr
+from typing import Any, ClassVar, Dict, List, Optional
+from dtc.models.metadata import Metadata
+from dtc.models.record import Record
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class Server(BaseModel):
+ """
+ An __Server__ (_dtc/server_) represents a target resource for load balancing.
+ """ # noqa: E501
+ address: Optional[StrictStr] = Field(
+ default=None,
+ description=
+ "IP Address of the __Server__. Must be set to a valid IP address if __endpoint_type__ is set to __address__. Alternatively, it can be left blank."
+ )
+ auto_create_response_records: Optional[StrictBool] = Field(
+ default=None,
+ description=
+ "Optional. If the flag is enabled, A, AAAA or CNAME __Record__ is automatically generated. Defaults to _false_."
+ )
+ comment: Optional[StrictStr] = Field(
+ default=None, description="Optional. Comment for __Server__.")
+ disabled: Optional[StrictBool] = Field(
+ default=None,
+ description=
+ "Optional. Flag which enables/disables __Server__. Defaults to _false_."
+ )
+ endpoint_type: Optional[StrictStr] = Field(
+ default=None,
+ description=
+ "The endpoint type configured for the __Server__. Can be IP Address or FQDN. The values of both fields __address__ and __fqdn__ are preserved and are not mutually exclusive, and the __endpoint_type__ defines which one to use. Allowed values: * address * fqdn Defaults to __address__."
+ )
+ fqdn: Optional[StrictStr] = Field(
+ default=None,
+ description=
+ "Fully Qualified Domain name of the __Server__. Must be set to a valid FQDN if __endpoint_type__ is set to __fqdn__. Alternatively, it can be left blank."
+ )
+ id: Optional[StrictStr] = Field(default=None,
+ description="The resource identifier.")
+ metadata: Optional[Metadata] = Field(
+ default=None,
+ description=
+ "Output only. __Server__ metadata. Defaults to empty object and should be explicitly requested using field selection."
+ )
+ name: StrictStr = Field(description="Display name of __Server__.")
+ records: Optional[List[Record]] = Field(
+ default=None,
+ description="Optional. List of __Records__ of the __Server__.")
+ tags: Optional[Dict[str, Any]] = Field(
+ default=None,
+ description="Optional. The tags for __Server__ in JSON format.")
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = [
+ "address", "auto_create_response_records", "comment", "disabled",
+ "endpoint_type", "fqdn", "id", "metadata", "name", "records", "tags"
+ ]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of Server from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * OpenAPI `readOnly` fields are excluded.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "id",
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of metadata
+ if self.metadata:
+ _dict['metadata'] = self.metadata.to_dict()
+ # override the default output from pydantic by calling `to_dict()` of each item in records (list)
+ _items = []
+ if self.records:
+ for _item in self.records:
+ if _item:
+ _items.append(_item.to_dict())
+ _dict['records'] = _items
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of Server from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "address":
+ obj.get("address"),
+ "auto_create_response_records":
+ obj.get("auto_create_response_records"),
+ "comment":
+ obj.get("comment"),
+ "disabled":
+ obj.get("disabled"),
+ "endpoint_type":
+ obj.get("endpoint_type"),
+ "fqdn":
+ obj.get("fqdn"),
+ "id":
+ obj.get("id"),
+ "metadata":
+ Metadata.from_dict(obj["metadata"])
+ if obj.get("metadata") is not None else None,
+ "name":
+ obj.get("name"),
+ "records": [Record.from_dict(_item) for _item in obj["records"]]
+ if obj.get("records") is not None else None,
+ "tags":
+ obj.get("tags")
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/snmp_health_check.py b/src/dtc/models/snmp_health_check.py
new file mode 100644
index 0000000..88db4f1
--- /dev/null
+++ b/src/dtc/models/snmp_health_check.py
@@ -0,0 +1,221 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictInt, StrictStr
+from typing import Any, ClassVar, Dict, List, Optional
+from dtc.models.metadata import Metadata
+from dtc.models.snmp_health_check_entry_check import SNMPHealthCheckEntryCheck
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class SNMPHealthCheck(BaseModel):
+ """
+ A __SNMPHealthCheck__ (_dtc/health_check_snmp_) represents a DTC __Server__ health check based on the Simple Network Management Protocol (SNMP).
+ """ # noqa: E501
+ check_list: Optional[List[SNMPHealthCheckEntryCheck]] = Field(
+ default=None,
+ description=
+ "List of specific checks for SNMP entries and their values in MIB hierarchy. Supported up to 15 checks."
+ )
+ comment: Optional[StrictStr] = Field(
+ default=None, description="Optional. Comment for __SNMPHealthCheck__.")
+ community: Optional[StrictStr] = Field(
+ default=None,
+ description=
+ "Optional. SNMP community string used for authentication. Mandatory for __v1__ and __v2c__ versions, ignored for __v3__. Defaults to __public__."
+ )
+ context_engine_id: Optional[StrictStr] = Field(
+ default=None,
+ description=
+ "Optional. Uniquely identifies an SNMP entity that may realize an instance of a context with a particular context name. Format is an arbitrary string that can contain from 10 to 64 hexadecimal digits (5 to 32 octet numbers). Ignored for __v1__ and __v2c__ versions."
+ )
+ context_name: Optional[StrictStr] = Field(
+ default=None,
+ description=
+ "Optional. Name of administratively unique context for __v3__ version. Ignored for __v1__ and __v2c__ versions."
+ )
+ disabled: Optional[StrictBool] = Field(
+ default=None,
+ description=
+ "Optional. Flag which enables/disables __SNMPHealthCheck__. Defaults to _false_."
+ )
+ id: Optional[StrictStr] = Field(default=None,
+ description="The resource identifier.")
+ interval: Optional[StrictInt] = Field(
+ default=None,
+ description=
+ "Optional. Interval value in seconds. The health check runs only for the specified interval and it is measured from the beginning of the previous check cycle. Defaults to _15_."
+ )
+ metadata: Optional[Metadata] = Field(
+ default=None,
+ description=
+ "Output only. __SNMPHealthCheck__ metadata. Defaults to empty object and should be explicitly requested using field selection."
+ )
+ name: StrictStr = Field(description="Display name of __SNMPHealthCheck__.")
+ port: Optional[StrictInt] = Field(
+ default=None,
+ description=
+ "Optional. Destination UDP port of __SNMPHealthCheck__. Defaults to _161_."
+ )
+ retry_down: Optional[StrictInt] = Field(
+ default=None,
+ description=
+ "Optional. Retry down count. The value determines how many bad health checks in a row must be received by the onprem host from the DTC Server for treating the health check as failed. Defaults to _1_."
+ )
+ retry_up: Optional[StrictInt] = Field(
+ default=None,
+ description=
+ "Optional. Retry up count. The value determines how many good health checks in a row must be received by the onprem host from the DTC Server for treating the health check as successful. Defaults to _1_."
+ )
+ tags: Optional[Dict[str, Any]] = Field(
+ default=None,
+ description="Optional. The tags for __SNMPHealthCheck__ in JSON format."
+ )
+ timeout: Optional[StrictInt] = Field(
+ default=None,
+ description=
+ "Optional. Timeout value in seconds. The health check waits for the specified number of seconds after sending a request. If it does not receive a response within the number of seconds, then the health check is considered as failed. Defaults to _10_."
+ )
+ user_security_model: Optional[StrictStr] = Field(
+ default=None, description="The resource identifier.")
+ version: StrictStr = Field(
+ description=
+ "SNMP version. Allowed values: * v1 - version 1 * v2c - version 2 community * v3 - version 3"
+ )
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = [
+ "check_list", "comment", "community", "context_engine_id",
+ "context_name", "disabled", "id", "interval", "metadata", "name",
+ "port", "retry_down", "retry_up", "tags", "timeout",
+ "user_security_model", "version"
+ ]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of SNMPHealthCheck from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * OpenAPI `readOnly` fields are excluded.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "id",
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of each item in check_list (list)
+ _items = []
+ if self.check_list:
+ for _item in self.check_list:
+ if _item:
+ _items.append(_item.to_dict())
+ _dict['check_list'] = _items
+ # override the default output from pydantic by calling `to_dict()` of metadata
+ if self.metadata:
+ _dict['metadata'] = self.metadata.to_dict()
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of SNMPHealthCheck from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "check_list": [
+ SNMPHealthCheckEntryCheck.from_dict(_item)
+ for _item in obj["check_list"]
+ ] if obj.get("check_list") is not None else None,
+ "comment":
+ obj.get("comment"),
+ "community":
+ obj.get("community"),
+ "context_engine_id":
+ obj.get("context_engine_id"),
+ "context_name":
+ obj.get("context_name"),
+ "disabled":
+ obj.get("disabled"),
+ "id":
+ obj.get("id"),
+ "interval":
+ obj.get("interval"),
+ "metadata":
+ Metadata.from_dict(obj["metadata"])
+ if obj.get("metadata") is not None else None,
+ "name":
+ obj.get("name"),
+ "port":
+ obj.get("port"),
+ "retry_down":
+ obj.get("retry_down"),
+ "retry_up":
+ obj.get("retry_up"),
+ "tags":
+ obj.get("tags"),
+ "timeout":
+ obj.get("timeout"),
+ "user_security_model":
+ obj.get("user_security_model"),
+ "version":
+ obj.get("version")
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/snmp_health_check_entry_check.py b/src/dtc/models/snmp_health_check_entry_check.py
new file mode 100644
index 0000000..99a64e3
--- /dev/null
+++ b/src/dtc/models/snmp_health_check_entry_check.py
@@ -0,0 +1,127 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field, StrictStr
+from typing import Any, ClassVar, Dict, List, Optional
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class SNMPHealthCheckEntryCheck(BaseModel):
+ """
+ Specific check for an SNMP entry and its value in MIB hierarchy.
+ """ # noqa: E501
+ comment: Optional[StrictStr] = Field(
+ default=None, description="Optional. Comment for __EntryCheck__.")
+ max_value: Optional[StrictStr] = Field(
+ default=None,
+ description=
+ "Optional. Expected max value of an entry to check against. Used for __in__ operator only, otherwise ignored."
+ )
+ name: StrictStr = Field(
+ description=
+ "Name is a dotted-decimal number that defines the location of the entry in the universal MIB tree."
+ )
+ operator: StrictStr = Field(
+ description=
+ "Operator defines operation to perform on an entry value. Allowed values: * any - any value must be present * eq - entry value must be equal to check's __value__. * leq - entry value must less or equal to check's __value__. * geq - entry value must be great or equal to check's __value__. * in - entry value must be greater or equal than __value__ and less or equal than __max_value__. Operator __in__ is supported only for __integer__ types."
+ )
+ type: StrictStr = Field(
+ description=
+ "Type defines type of an entry value. Allowed values: * string * integer String type does not support __in__ operator."
+ )
+ value: Optional[StrictStr] = Field(
+ default=None,
+ description=
+ "Optional. Expected value of an entry to check against. Ignored for __any__ operator."
+ )
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = [
+ "comment", "max_value", "name", "operator", "type", "value"
+ ]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of SNMPHealthCheckEntryCheck from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of SNMPHealthCheckEntryCheck from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "comment": obj.get("comment"),
+ "max_value": obj.get("max_value"),
+ "name": obj.get("name"),
+ "operator": obj.get("operator"),
+ "type": obj.get("type"),
+ "value": obj.get("value")
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/snmp_user_security_model.py b/src/dtc/models/snmp_user_security_model.py
new file mode 100644
index 0000000..0b56660
--- /dev/null
+++ b/src/dtc/models/snmp_user_security_model.py
@@ -0,0 +1,137 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field, StrictStr
+from typing import Any, ClassVar, Dict, List, Optional
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class SNMPUserSecurityModel(BaseModel):
+ """
+ Parameters for user-based security model of SNMPv3.
+ """ # noqa: E501
+ auth_passphrase: Optional[StrictStr] = Field(
+ default=None,
+ description=
+ "User passphrase for authentication. Ignored for __NoAuth__, otherwise mandatory."
+ )
+ auth_protocol: Optional[StrictStr] = Field(
+ default=None,
+ description=
+ "Authentication protocol. Allowed values: * NoAuth * MD5 * SHA Defaults to __NoAuth__."
+ )
+ id: Optional[StrictStr] = Field(default=None,
+ description="The resource identifier.")
+ privacy_passphrase: Optional[StrictStr] = Field(
+ default=None,
+ description=
+ "User passphrase for privacy. Ignored for __NoPrivacy__, otherwise mandatory."
+ )
+ privacy_protocol: Optional[StrictStr] = Field(
+ default=None,
+ description=
+ "Privacy protocol. Must be __NoPrivacy__ if auth_protocol set to __NoAuth__. Allowed values: * NoPrivacy * DES * AES Defaults to __NoPrivacy__."
+ )
+ username: Optional[StrictStr] = Field(
+ default=None,
+ description="User name with which to associate security information.")
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = [
+ "auth_passphrase", "auth_protocol", "id", "privacy_passphrase",
+ "privacy_protocol", "username"
+ ]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of SNMPUserSecurityModel from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * OpenAPI `readOnly` fields are excluded.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "id",
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of SNMPUserSecurityModel from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "auth_passphrase":
+ obj.get("auth_passphrase"),
+ "auth_protocol":
+ obj.get("auth_protocol"),
+ "id":
+ obj.get("id"),
+ "privacy_passphrase":
+ obj.get("privacy_passphrase"),
+ "privacy_protocol":
+ obj.get("privacy_protocol"),
+ "username":
+ obj.get("username")
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/tcp_health_check.py b/src/dtc/models/tcp_health_check.py
new file mode 100644
index 0000000..d385169
--- /dev/null
+++ b/src/dtc/models/tcp_health_check.py
@@ -0,0 +1,168 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictInt, StrictStr
+from typing import Any, ClassVar, Dict, List, Optional
+from dtc.models.metadata import Metadata
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class TCPHealthCheck(BaseModel):
+ """
+ A __TCPHealthCheck__ (_dtc/health_check_tcp_) represents a DTC __Server__ health check based on the Transmission Control Protocol (TCP).
+ """ # noqa: E501
+ comment: Optional[StrictStr] = Field(
+ default=None, description="Optional. Comment for __TCPHealthCheck__.")
+ disabled: Optional[StrictBool] = Field(
+ default=None,
+ description=
+ "Optional. Flag which enables/disables __TCPHealthCheck__. Defaults to _false_."
+ )
+ id: Optional[StrictStr] = Field(default=None,
+ description="The resource identifier.")
+ interval: Optional[StrictInt] = Field(
+ default=None,
+ description=
+ "Optional. Interval value in seconds. The health check runs only for the specified interval and it is measured from the beginning of the previous check cycle. Defaults to _15_."
+ )
+ metadata: Optional[Metadata] = Field(
+ default=None,
+ description=
+ "Output only. __TCPHealthCheck__ metadata. Defaults to empty object and should be explicitly requested using field selection."
+ )
+ name: StrictStr = Field(description="Display name of __TCPHealthCheck__.")
+ port: StrictInt = Field(
+ description="Destination TCP port of __TCPHealthCheck__.")
+ retry_down: Optional[StrictInt] = Field(
+ default=None,
+ description=
+ "Optional. Retry down count. The value determines how many bad health checks in a row must be received by the onprem host from the DTC Server for treating the health check as failed. Defaults to _1_."
+ )
+ retry_up: Optional[StrictInt] = Field(
+ default=None,
+ description=
+ "Optional. Retry up count. The value determines how many good health checks in a row must be received by the onprem host from the DTC Server for treating the health check as successful. Defaults to _1_."
+ )
+ tags: Optional[Dict[str, Any]] = Field(
+ default=None,
+ description="Optional. The tags for __TCPHealthCheck__ in JSON format."
+ )
+ timeout: Optional[StrictInt] = Field(
+ default=None,
+ description=
+ "Optional. Timeout value in seconds. The health check waits for the specified number of seconds after sending a request. If it does not receive a response within the number of seconds, then the health check is considered as failed. Defaults to _10_."
+ )
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = [
+ "comment", "disabled", "id", "interval", "metadata", "name", "port",
+ "retry_down", "retry_up", "tags", "timeout"
+ ]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of TCPHealthCheck from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * OpenAPI `readOnly` fields are excluded.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "id",
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of metadata
+ if self.metadata:
+ _dict['metadata'] = self.metadata.to_dict()
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of TCPHealthCheck from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "comment":
+ obj.get("comment"),
+ "disabled":
+ obj.get("disabled"),
+ "id":
+ obj.get("id"),
+ "interval":
+ obj.get("interval"),
+ "metadata":
+ Metadata.from_dict(obj["metadata"])
+ if obj.get("metadata") is not None else None,
+ "name":
+ obj.get("name"),
+ "port":
+ obj.get("port"),
+ "retry_down":
+ obj.get("retry_down"),
+ "retry_up":
+ obj.get("retry_up"),
+ "tags":
+ obj.get("tags"),
+ "timeout":
+ obj.get("timeout")
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/topology_rule.py b/src/dtc/models/topology_rule.py
new file mode 100644
index 0000000..2fe7c77
--- /dev/null
+++ b/src/dtc/models/topology_rule.py
@@ -0,0 +1,126 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field, StrictStr
+from typing import Any, ClassVar, Dict, List, Optional
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class TopologyRule(BaseModel):
+ """
+ A __TopologyRule__ represents a rule for topology load balancing method.
+ """ # noqa: E501
+ code: Optional[StrictStr] = Field(
+ default=None,
+ description=
+ "Optional. DNS code to return if rule matches. Must be set if _destination_ is set to _code_. Allowed values: - nodata - nxdomain Defaults to _nodata_."
+ )
+ destination: Optional[StrictStr] = Field(
+ default=None,
+ description=
+ "Destination of __TopologyRule__. Allowed values: - code - pool Defaults to _code_."
+ )
+ name: StrictStr = Field(description="Display name of __TopologyRule__.")
+ pool_id: Optional[StrictStr] = Field(
+ default=None, description="The resource identifier.")
+ source: Optional[StrictStr] = Field(
+ default=None,
+ description=
+ "Type of source. Allowed values: - subnet - default Defaults to _default_."
+ )
+ subnets: Optional[List[StrictStr]] = Field(
+ default=None,
+ description=
+ "Optional. List of subnets in CIDR format. Must be set if _source_ is _subnet_, otherwise must be empty."
+ )
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = [
+ "code", "destination", "name", "pool_id", "source", "subnets"
+ ]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of TopologyRule from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of TopologyRule from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "code": obj.get("code"),
+ "destination": obj.get("destination"),
+ "name": obj.get("name"),
+ "pool_id": obj.get("pool_id"),
+ "source": obj.get("source"),
+ "subnets": obj.get("subnets")
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/ttl_inheritance.py b/src/dtc/models/ttl_inheritance.py
new file mode 100644
index 0000000..0d6fb1f
--- /dev/null
+++ b/src/dtc/models/ttl_inheritance.py
@@ -0,0 +1,103 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict
+from typing import Any, ClassVar, Dict, List, Optional
+from dtc.models.inheritance2_inherited_u_int32 import Inheritance2InheritedUInt32
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class TTLInheritance(BaseModel):
+ """
+ The inheritance configuration specifies how the object inherits the _ttl_ field.
+ """ # noqa: E501
+ ttl: Optional[Inheritance2InheritedUInt32] = None
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = ["ttl"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of TTLInheritance from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of ttl
+ if self.ttl:
+ _dict['ttl'] = self.ttl.to_dict()
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of TTLInheritance from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "ttl":
+ Inheritance2InheritedUInt32.from_dict(obj["ttl"])
+ if obj.get("ttl") is not None else None
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/update_http_health_check_response.py b/src/dtc/models/update_http_health_check_response.py
new file mode 100644
index 0000000..8999ec6
--- /dev/null
+++ b/src/dtc/models/update_http_health_check_response.py
@@ -0,0 +1,104 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field
+from typing import Any, ClassVar, Dict, List, Optional
+from dtc.models.http_health_check import HTTPHealthCheck
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class UpdateHTTPHealthCheckResponse(BaseModel):
+ """
+ The __HTTPHealthCheck__ object update response format.
+ """ # noqa: E501
+ result: Optional[HTTPHealthCheck] = Field(
+ default=None, description="The __HTTPHealthCheck__ object.")
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = ["result"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of UpdateHTTPHealthCheckResponse from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of result
+ if self.result:
+ _dict['result'] = self.result.to_dict()
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of UpdateHTTPHealthCheckResponse from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "result":
+ HTTPHealthCheck.from_dict(obj["result"])
+ if obj.get("result") is not None else None
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/update_icmp_health_check_response.py b/src/dtc/models/update_icmp_health_check_response.py
new file mode 100644
index 0000000..611fa68
--- /dev/null
+++ b/src/dtc/models/update_icmp_health_check_response.py
@@ -0,0 +1,104 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field
+from typing import Any, ClassVar, Dict, List, Optional
+from dtc.models.icmp_health_check import ICMPHealthCheck
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class UpdateICMPHealthCheckResponse(BaseModel):
+ """
+ The __ICMPHealthCheck__ object update response format.
+ """ # noqa: E501
+ result: Optional[ICMPHealthCheck] = Field(
+ default=None, description="The __ICMPHealthCheck__ object.")
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = ["result"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of UpdateICMPHealthCheckResponse from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of result
+ if self.result:
+ _dict['result'] = self.result.to_dict()
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of UpdateICMPHealthCheckResponse from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "result":
+ ICMPHealthCheck.from_dict(obj["result"])
+ if obj.get("result") is not None else None
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/update_policy_response.py b/src/dtc/models/update_policy_response.py
new file mode 100644
index 0000000..2843eb5
--- /dev/null
+++ b/src/dtc/models/update_policy_response.py
@@ -0,0 +1,106 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field
+from typing import Any, ClassVar, Dict, List, Optional
+from dtc.models.policy import Policy
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class UpdatePolicyResponse(BaseModel):
+ """
+ The __Policy__ object update response format.
+ """
+
+ # noqa: E501
+ result: Optional[Policy] = Field(default=None,
+ description="The __Policy__ object.")
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = ["result"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of UpdatePolicyResponse from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of result
+ if self.result:
+ _dict['result'] = self.result.to_dict()
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of UpdatePolicyResponse from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "result":
+ Policy.from_dict(obj["result"])
+ if obj.get("result") is not None else None
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/update_pool_response.py b/src/dtc/models/update_pool_response.py
new file mode 100644
index 0000000..b42afb4
--- /dev/null
+++ b/src/dtc/models/update_pool_response.py
@@ -0,0 +1,106 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field
+from typing import Any, ClassVar, Dict, List, Optional
+from dtc.models.pool import Pool
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class UpdatePoolResponse(BaseModel):
+ """
+ The __Pool__ object update response format.
+ """
+
+ # noqa: E501
+ result: Optional[Pool] = Field(default=None,
+ description="The __Pool__ object.")
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = ["result"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of UpdatePoolResponse from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of result
+ if self.result:
+ _dict['result'] = self.result.to_dict()
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of UpdatePoolResponse from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "result":
+ Pool.from_dict(obj["result"])
+ if obj.get("result") is not None else None
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/update_server_response.py b/src/dtc/models/update_server_response.py
new file mode 100644
index 0000000..8017de5
--- /dev/null
+++ b/src/dtc/models/update_server_response.py
@@ -0,0 +1,106 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field
+from typing import Any, ClassVar, Dict, List, Optional
+from dtc.models.server import Server
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class UpdateServerResponse(BaseModel):
+ """
+ The __Server__ object update response format.
+ """
+
+ # noqa: E501
+ result: Optional[Server] = Field(default=None,
+ description="The __Server__ object.")
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = ["result"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of UpdateServerResponse from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of result
+ if self.result:
+ _dict['result'] = self.result.to_dict()
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of UpdateServerResponse from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "result":
+ Server.from_dict(obj["result"])
+ if obj.get("result") is not None else None
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/update_snmp_health_check_response.py b/src/dtc/models/update_snmp_health_check_response.py
new file mode 100644
index 0000000..a432b49
--- /dev/null
+++ b/src/dtc/models/update_snmp_health_check_response.py
@@ -0,0 +1,104 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field
+from typing import Any, ClassVar, Dict, List, Optional
+from dtc.models.snmp_health_check import SNMPHealthCheck
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class UpdateSNMPHealthCheckResponse(BaseModel):
+ """
+ The __SNMPHealthCheck__ object update response format.
+ """ # noqa: E501
+ result: Optional[SNMPHealthCheck] = Field(
+ default=None, description="The __SNMPHealthCheck__ object.")
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = ["result"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of UpdateSNMPHealthCheckResponse from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of result
+ if self.result:
+ _dict['result'] = self.result.to_dict()
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of UpdateSNMPHealthCheckResponse from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "result":
+ SNMPHealthCheck.from_dict(obj["result"])
+ if obj.get("result") is not None else None
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/update_snmp_user_security_response.py b/src/dtc/models/update_snmp_user_security_response.py
new file mode 100644
index 0000000..059a327
--- /dev/null
+++ b/src/dtc/models/update_snmp_user_security_response.py
@@ -0,0 +1,104 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field
+from typing import Any, ClassVar, Dict, List, Optional
+from dtc.models.snmp_user_security_model import SNMPUserSecurityModel
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class UpdateSNMPUserSecurityResponse(BaseModel):
+ """
+ The __SNMPUserSecurityModel__ object update response format.
+ """ # noqa: E501
+ result: Optional[SNMPUserSecurityModel] = Field(
+ default=None, description="The __SNMPUserSecurityModel__ object.")
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = ["result"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of UpdateSNMPUserSecurityResponse from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of result
+ if self.result:
+ _dict['result'] = self.result.to_dict()
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of UpdateSNMPUserSecurityResponse from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "result":
+ SNMPUserSecurityModel.from_dict(obj["result"])
+ if obj.get("result") is not None else None
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/models/update_tcp_health_check_response.py b/src/dtc/models/update_tcp_health_check_response.py
new file mode 100644
index 0000000..e0fc317
--- /dev/null
+++ b/src/dtc/models/update_tcp_health_check_response.py
@@ -0,0 +1,104 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field
+from typing import Any, ClassVar, Dict, List, Optional
+from dtc.models.tcp_health_check import TCPHealthCheck
+from typing import Optional, Set
+from typing_extensions import Self
+
+
+class UpdateTCPHealthCheckResponse(BaseModel):
+ """
+ The __TCPHealthCheck__ object update response format.
+ """ # noqa: E501
+ result: Optional[TCPHealthCheck] = Field(
+ default=None, description="The __TCPHealthCheck__ object.")
+ additional_properties: Dict[str, Any] = {}
+ __properties: ClassVar[List[str]] = ["result"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ )
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of UpdateTCPHealthCheckResponse from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ * Fields in `self.additional_properties` are added to the output dict.
+ """
+ excluded_fields: Set[str] = set([
+ "additional_properties",
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of result
+ if self.result:
+ _dict['result'] = self.result.to_dict()
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of UpdateTCPHealthCheckResponse from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "result":
+ TCPHealthCheck.from_dict(obj["result"])
+ if obj.get("result") is not None else None
+ })
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ return _obj
diff --git a/src/dtc/py.typed b/src/dtc/py.typed
new file mode 100644
index 0000000..e69de29
diff --git a/src/dtc/test/__init__.py b/src/dtc/test/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/src/dtc/test/test_health_check_http_api.py b/src/dtc/test/test_health_check_http_api.py
new file mode 100644
index 0000000..efcf3fa
--- /dev/null
+++ b/src/dtc/test/test_health_check_http_api.py
@@ -0,0 +1,68 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+import unittest
+
+from dtc.api.health_check_http_api import HealthCheckHttpApi
+
+from universal_ddi_client.api_client import ApiClient
+
+
+class TestHealthCheckHttpApi(unittest.TestCase):
+ """HealthCheckHttpApi unit test stubs"""
+
+ def setUp(self) -> None:
+ api_instance = ApiClient()
+ self.api = HealthCheckHttpApi(api_instance)
+
+ def tearDown(self) -> None:
+ pass
+
+ def test_create(self) -> None:
+ """Test case for create
+
+ Create the HTTPHealthCheck object.
+ """
+ pass
+
+ def test_delete(self) -> None:
+ """Test case for delete
+
+ Delete the HTTPHealthCheck object.
+ """
+ pass
+
+ def test_list(self) -> None:
+ """Test case for list
+
+ Retrieve HTTPHealthCheck objects.
+ """
+ pass
+
+ def test_read(self) -> None:
+ """Test case for read
+
+ Retrieve the HTTPHealthCheck object.
+ """
+ pass
+
+ def test_update(self) -> None:
+ """Test case for update
+
+ Update the HTTPHealthCheck object.
+ """
+ pass
+
+
+if __name__ == '__main__':
+ unittest.main()
diff --git a/src/dtc/test/test_health_check_icmp_api.py b/src/dtc/test/test_health_check_icmp_api.py
new file mode 100644
index 0000000..a69dd5a
--- /dev/null
+++ b/src/dtc/test/test_health_check_icmp_api.py
@@ -0,0 +1,68 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+import unittest
+
+from dtc.api.health_check_icmp_api import HealthCheckIcmpApi
+
+from universal_ddi_client.api_client import ApiClient
+
+
+class TestHealthCheckIcmpApi(unittest.TestCase):
+ """HealthCheckIcmpApi unit test stubs"""
+
+ def setUp(self) -> None:
+ api_instance = ApiClient()
+ self.api = HealthCheckIcmpApi(api_instance)
+
+ def tearDown(self) -> None:
+ pass
+
+ def test_create(self) -> None:
+ """Test case for create
+
+ Create the ICMPHealthCheck object.
+ """
+ pass
+
+ def test_delete(self) -> None:
+ """Test case for delete
+
+ Delete the ICMPHealthCheck object.
+ """
+ pass
+
+ def test_list(self) -> None:
+ """Test case for list
+
+ Retrieve ICMPHealthCheck objects.
+ """
+ pass
+
+ def test_read(self) -> None:
+ """Test case for read
+
+ Retrieve the ICMPHealthCheck object.
+ """
+ pass
+
+ def test_update(self) -> None:
+ """Test case for update
+
+ Update the ICMPHealthCheck object.
+ """
+ pass
+
+
+if __name__ == '__main__':
+ unittest.main()
diff --git a/src/dtc/test/test_health_check_snmp_api.py b/src/dtc/test/test_health_check_snmp_api.py
new file mode 100644
index 0000000..25d7656
--- /dev/null
+++ b/src/dtc/test/test_health_check_snmp_api.py
@@ -0,0 +1,68 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+import unittest
+
+from dtc.api.health_check_snmp_api import HealthCheckSnmpApi
+
+from universal_ddi_client.api_client import ApiClient
+
+
+class TestHealthCheckSnmpApi(unittest.TestCase):
+ """HealthCheckSnmpApi unit test stubs"""
+
+ def setUp(self) -> None:
+ api_instance = ApiClient()
+ self.api = HealthCheckSnmpApi(api_instance)
+
+ def tearDown(self) -> None:
+ pass
+
+ def test_create(self) -> None:
+ """Test case for create
+
+ Create the SNMPHealthCheck object.
+ """
+ pass
+
+ def test_delete(self) -> None:
+ """Test case for delete
+
+ Delete the SNMPHealthCheck object.
+ """
+ pass
+
+ def test_list(self) -> None:
+ """Test case for list
+
+ Retrieve SNMPHealthCheck objects.
+ """
+ pass
+
+ def test_read(self) -> None:
+ """Test case for read
+
+ Retrieve the SNMPHealthCheck object.
+ """
+ pass
+
+ def test_update(self) -> None:
+ """Test case for update
+
+ Update the SNMPHealthCheck object.
+ """
+ pass
+
+
+if __name__ == '__main__':
+ unittest.main()
diff --git a/src/dtc/test/test_health_check_tcp_api.py b/src/dtc/test/test_health_check_tcp_api.py
new file mode 100644
index 0000000..b9745d7
--- /dev/null
+++ b/src/dtc/test/test_health_check_tcp_api.py
@@ -0,0 +1,68 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+import unittest
+
+from dtc.api.health_check_tcp_api import HealthCheckTcpApi
+
+from universal_ddi_client.api_client import ApiClient
+
+
+class TestHealthCheckTcpApi(unittest.TestCase):
+ """HealthCheckTcpApi unit test stubs"""
+
+ def setUp(self) -> None:
+ api_instance = ApiClient()
+ self.api = HealthCheckTcpApi(api_instance)
+
+ def tearDown(self) -> None:
+ pass
+
+ def test_create(self) -> None:
+ """Test case for create
+
+ Create the TCPHealthCheck object.
+ """
+ pass
+
+ def test_delete(self) -> None:
+ """Test case for delete
+
+ Delete the TCPHealthCheck object.
+ """
+ pass
+
+ def test_list(self) -> None:
+ """Test case for list
+
+ Retrieve TCPHealthCheck objects.
+ """
+ pass
+
+ def test_read(self) -> None:
+ """Test case for read
+
+ Retrieve the TCPHealthCheck object.
+ """
+ pass
+
+ def test_update(self) -> None:
+ """Test case for update
+
+ Update the TCPHealthCheck object.
+ """
+ pass
+
+
+if __name__ == '__main__':
+ unittest.main()
diff --git a/src/dtc/test/test_policy_api.py b/src/dtc/test/test_policy_api.py
new file mode 100644
index 0000000..ed7385b
--- /dev/null
+++ b/src/dtc/test/test_policy_api.py
@@ -0,0 +1,68 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+import unittest
+
+from dtc.api.policy_api import PolicyApi
+
+from universal_ddi_client.api_client import ApiClient
+
+
+class TestPolicyApi(unittest.TestCase):
+ """PolicyApi unit test stubs"""
+
+ def setUp(self) -> None:
+ api_instance = ApiClient()
+ self.api = PolicyApi(api_instance)
+
+ def tearDown(self) -> None:
+ pass
+
+ def test_create(self) -> None:
+ """Test case for create
+
+ Create the Policy object.
+ """
+ pass
+
+ def test_delete(self) -> None:
+ """Test case for delete
+
+ Delete the Policy object.
+ """
+ pass
+
+ def test_list(self) -> None:
+ """Test case for list
+
+ Retrieve Policy objects.
+ """
+ pass
+
+ def test_read(self) -> None:
+ """Test case for read
+
+ Retrieve the Policy object.
+ """
+ pass
+
+ def test_update(self) -> None:
+ """Test case for update
+
+ Update the Policy object.
+ """
+ pass
+
+
+if __name__ == '__main__':
+ unittest.main()
diff --git a/src/dtc/test/test_pool_api.py b/src/dtc/test/test_pool_api.py
new file mode 100644
index 0000000..920a847
--- /dev/null
+++ b/src/dtc/test/test_pool_api.py
@@ -0,0 +1,68 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+import unittest
+
+from dtc.api.pool_api import PoolApi
+
+from universal_ddi_client.api_client import ApiClient
+
+
+class TestPoolApi(unittest.TestCase):
+ """PoolApi unit test stubs"""
+
+ def setUp(self) -> None:
+ api_instance = ApiClient()
+ self.api = PoolApi(api_instance)
+
+ def tearDown(self) -> None:
+ pass
+
+ def test_create(self) -> None:
+ """Test case for create
+
+ Create the Pool object.
+ """
+ pass
+
+ def test_delete(self) -> None:
+ """Test case for delete
+
+ Delete the Pool object.
+ """
+ pass
+
+ def test_list(self) -> None:
+ """Test case for list
+
+ Retrieve Pool objects.
+ """
+ pass
+
+ def test_read(self) -> None:
+ """Test case for read
+
+ Retrieve the Pool object.
+ """
+ pass
+
+ def test_update(self) -> None:
+ """Test case for update
+
+ Update the Pool object.
+ """
+ pass
+
+
+if __name__ == '__main__':
+ unittest.main()
diff --git a/src/dtc/test/test_server_api.py b/src/dtc/test/test_server_api.py
new file mode 100644
index 0000000..c01aa40
--- /dev/null
+++ b/src/dtc/test/test_server_api.py
@@ -0,0 +1,68 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+import unittest
+
+from dtc.api.server_api import ServerApi
+
+from universal_ddi_client.api_client import ApiClient
+
+
+class TestServerApi(unittest.TestCase):
+ """ServerApi unit test stubs"""
+
+ def setUp(self) -> None:
+ api_instance = ApiClient()
+ self.api = ServerApi(api_instance)
+
+ def tearDown(self) -> None:
+ pass
+
+ def test_create(self) -> None:
+ """Test case for create
+
+ Create the Server object.
+ """
+ pass
+
+ def test_delete(self) -> None:
+ """Test case for delete
+
+ Delete Server object.
+ """
+ pass
+
+ def test_list(self) -> None:
+ """Test case for list
+
+ Retrieve Server objects.
+ """
+ pass
+
+ def test_read(self) -> None:
+ """Test case for read
+
+ Retrieve the Server object.
+ """
+ pass
+
+ def test_update(self) -> None:
+ """Test case for update
+
+ Update the Server object.
+ """
+ pass
+
+
+if __name__ == '__main__':
+ unittest.main()
diff --git a/src/dtc/test/test_snmp_user_security_api.py b/src/dtc/test/test_snmp_user_security_api.py
new file mode 100644
index 0000000..5d8b50f
--- /dev/null
+++ b/src/dtc/test/test_snmp_user_security_api.py
@@ -0,0 +1,68 @@
+# coding: utf-8
+
+"""
+ DNS DTC API
+
+ The DNS DTC is a BloxOne DDI service providing load balanced DNS resolution.
+
+ The version of the OpenAPI document: v1
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
+
+ Do not edit the class manually.
+""" # noqa: E501
+
+import unittest
+
+from dtc.api.snmp_user_security_api import SnmpUserSecurityApi
+
+from universal_ddi_client.api_client import ApiClient
+
+
+class TestSnmpUserSecurityApi(unittest.TestCase):
+ """SnmpUserSecurityApi unit test stubs"""
+
+ def setUp(self) -> None:
+ api_instance = ApiClient()
+ self.api = SnmpUserSecurityApi(api_instance)
+
+ def tearDown(self) -> None:
+ pass
+
+ def test_create(self) -> None:
+ """Test case for create
+
+ Create the SNMPUserSecurityModel object. Use this method to create a __SNMPUserSecurityModel__ object.
+ """
+ pass
+
+ def test_delete(self) -> None:
+ """Test case for delete
+
+ Delete the SNMPUserSecurityModel object. Use this method to delete a __SNMPUserSecurityModel__ object.
+ """
+ pass
+
+ def test_list(self) -> None:
+ """Test case for list
+
+ Retrieve SNMPUserSecurityModel objects. Use this method to retrieve __SNMPUserSecurityModel__ objects.
+ """
+ pass
+
+ def test_read(self) -> None:
+ """Test case for read
+
+ Retrieve the SNMPUserSecurityModel object. Use this method to retrieve a __SNMPUserSecurityModel__ object.
+ """
+ pass
+
+ def test_update(self) -> None:
+ """Test case for update
+
+ Update the SNMPUserSecurityModel object. Use this method to update a __SNMPUserSecurityModel__ object.
+ """
+ pass
+
+
+if __name__ == '__main__':
+ unittest.main()