text: """
      Ory APIs
  
      Documentation for all public and administrative Ory APIs. Administrative APIs can only be accessed with a valid Personal Access Token. Public APIs are mostly used in browsers.   # noqa: E501
  
      The version of the OpenAPI document: v0.0.1-alpha.187
      Contact: support@ory.sh
      Generated by: https://openapi-generator.tech
  """
  
  
  import re  # noqa: F401
  import sys  # noqa: F401
  
  from ory_client.api_client import ApiClient, Endpoint as _Endpoint
  from ory_client.model_utils import (  # noqa: F401
      check_allowed_values,
      check_validations,
      date,
      datetime,
      file_type,
      none_type,
      validate_and_convert_types
  )
  from ory_client.model.generic_error import GenericError
  from ory_client.model.inline_response200 import InlineResponse200
  from ory_client.model.inline_response2001 import InlineResponse2001
  from ory_client.model.inline_response503 import InlineResponse503
  
  
  class MetadataApi(object):
      """NOTE: This class is auto generated by OpenAPI Generator
      Ref: https://openapi-generator.tech
  
      Do not edit the class manually.
      """
  
      def __init__(self, api_client=None):
          if api_client is None:
              api_client = ApiClient()
          self.api_client = api_client
          self.get_version_endpoint = _Endpoint(
              settings={
                  'response_type': (InlineResponse2001,),
                  'auth': [
                      'oryAccessToken'
                  ],
                  'endpoint_path': '/version',
                  'operation_id': 'get_version',
                  'http_method': 'GET',
                  'servers': None,
              },
              params_map={
                  'all': [
                  ],
                  'required': [],
                  'nullable': [
                  ],
                  'enum': [
                  ],
                  'validation': [
                  ]
              },
              root_map={
                  'validations': {
                  },
                  'allowed_values': {
                  },
                  'openapi_types': {
                  },
                  'attribute_map': {
                  },
                  'location_map': {
                  },
                  'collection_format_map': {
                  }
              },
              headers_map={
                  'accept': [
                      'application/json'
                  ],
                  'content_type': [],
              },
              api_client=api_client
          )
          self.is_alive_endpoint = _Endpoint(
              settings={
                  'response_type': (InlineResponse200,),
                  'auth': [
                      'oryAccessToken'
                  ],
                  'endpoint_path': '/health/alive',
                  'operation_id': 'is_alive',
                  'http_method': 'GET',
                  'servers': None,
              },
              params_map={
                  'all': [
                  ],
                  'required': [],
                  'nullable': [
                  ],
                  'enum': [
                  ],
                  'validation': [
                  ]
              },
              root_map={
                  'validations': {
                  },
                  'allowed_values': {
                  },
                  'openapi_types': {
                  },
                  'attribute_map': {
                  },
                  'location_map': {
                  },
                  'collection_format_map': {
                  }
              },
              headers_map={
                  'accept': [
                      'application/json'
                  ],
                  'content_type': [],
              },
              api_client=api_client
          )
          self.is_ready_endpoint = _Endpoint(
              settings={
                  'response_type': (InlineResponse200,),
                  'auth': [
                      'oryAccessToken'
                  ],
                  'endpoint_path': '/health/ready',
                  'operation_id': 'is_ready',
                  'http_method': 'GET',
                  'servers': None,
              },
              params_map={
                  'all': [
                  ],
                  'required': [],
                  'nullable': [
                  ],
                  'enum': [
                  ],
                  'validation': [
                  ]
              },
              root_map={
                  'validations': {
                  },
                  'allowed_values': {
                  },
                  'openapi_types': {
                  },
                  'attribute_map': {
                  },
                  'location_map': {
                  },
                  'collection_format_map': {
                  }
              },
              headers_map={
                  'accept': [
                      'application/json'
                  ],
                  'content_type': [],
              },
              api_client=api_client
          )
  
      def get_version(
          self,
          **kwargs
      ):
          """Return Running Software Version.  # noqa: E501
  
          This endpoint returns the version of Ory Kratos.  If the service supports TLS Edge Termination, this endpoint does not require the `X-Forwarded-Proto` header to be set.  Be aware that if you are running multiple nodes of this service, the version will never refer to the cluster state, only to a single instance.  # noqa: E501
          This method makes a synchronous HTTP request by default. To make an
          asynchronous HTTP request, please pass async_req=True
  
          >>> thread = api.get_version(async_req=True)
          >>> result = thread.get()
  
  
          Keyword Args:
              _return_http_data_only (bool): response data without head status
                  code and headers. Default is True.
              _preload_content (bool): if False, the urllib3.HTTPResponse object
                  will be returned without reading/decoding response data.
                  Default is True.
              _request_timeout (int/float/tuple): timeout setting for this request. If
                  one number provided, it will be total request timeout. It can also
                  be a pair (tuple) of (connection, read) timeouts.
                  Default is None.
              _check_input_type (bool): specifies if type checking
                  should be done one the data sent to the server.
                  Default is True.
              _check_return_type (bool): specifies if type checking
                  should be done one the data received from the server.
                  Default is True.
              _spec_property_naming (bool): True if the variable names in the input data
                  are serialized names, as specified in the OpenAPI document.
                  False if the variable names in the input data
                  are pythonic names, e.g. snake case (default)
              _content_type (str/None): force body content-type.
                  Default is None and content-type will be predicted by allowed
                  content-types and body.
              _host_index (int/None): specifies the index of the server
                  that we want to use.
                  Default is read from the configuration.
              async_req (bool): execute request asynchronously
  
          Returns:
              InlineResponse2001
                  If the method is called asynchronously, returns the request
                  thread.
          """
          kwargs['async_req'] = kwargs.get(
              'async_req', False
          )
          kwargs['_return_http_data_only'] = kwargs.get(
              '_return_http_data_only', True
          )
          kwargs['_preload_content'] = kwargs.get(
              '_preload_content', True
          )
          kwargs['_request_timeout'] = kwargs.get(
              '_request_timeout', None
          )
          kwargs['_check_input_type'] = kwargs.get(
              '_check_input_type', True
          )
          kwargs['_check_return_type'] = kwargs.get(
              '_check_return_type', True
          )
          kwargs['_spec_property_naming'] = kwargs.get(
              '_spec_property_naming', False
          )
          kwargs['_content_type'] = kwargs.get(
              '_content_type')
          kwargs['_host_index'] = kwargs.get('_host_index')
          return self.get_version_endpoint.call_with_http_info(**kwargs)
  
      def is_alive(
          self,
          **kwargs
      ):
          """Check HTTP Server Status  # noqa: E501
  
          This endpoint returns a HTTP 200 status code when Ory Kratos is accepting incoming HTTP requests. This status does currently not include checks whether the database connection is working.  If the service supports TLS Edge Termination, this endpoint does not require the `X-Forwarded-Proto` header to be set.  Be aware that if you are running multiple nodes of this service, the health status will never refer to the cluster state, only to a single instance.  # noqa: E501
          This method makes a synchronous HTTP request by default. To make an
          asynchronous HTTP request, please pass async_req=True
  
          >>> thread = api.is_alive(async_req=True)
          >>> result = thread.get()
  
  
          Keyword Args:
              _return_http_data_only (bool): response data without head status
                  code and headers. Default is True.
              _preload_content (bool): if False, the urllib3.HTTPResponse object
                  will be returned without reading/decoding response data.
                  Default is True.
              _request_timeout (int/float/tuple): timeout setting for this request. If
                  one number provided, it will be total request timeout. It can also
                  be a pair (tuple) of (connection, read) timeouts.
                  Default is None.
              _check_input_type (bool): specifies if type checking
                  should be done one the data sent to the server.
                  Default is True.
              _check_return_type (bool): specifies if type checking
                  should be done one the data received from the server.
                  Default is True.
              _spec_property_naming (bool): True if the variable names in the input data
                  are serialized names, as specified in the OpenAPI document.
                  False if the variable names in the input data
                  are pythonic names, e.g. snake case (default)
              _content_type (str/None): force body content-type.
                  Default is None and content-type will be predicted by allowed
                  content-types and body.
              _host_index (int/None): specifies the index of the server
                  that we want to use.
                  Default is read from the configuration.
              async_req (bool): execute request asynchronously
  
          Returns:
              InlineResponse200
                  If the method is called asynchronously, returns the request
                  thread.
          """
          kwargs['async_req'] = kwargs.get(
              'async_req', False
          )
          kwargs['_return_http_data_only'] = kwargs.get(
              '_return_http_data_only', True
          )
          kwargs['_preload_content'] = kwargs.get(
              '_preload_content', True
          )
          kwargs['_request_timeout'] = kwargs.get(
              '_request_timeout', None
          )
          kwargs['_check_input_type'] = kwargs.get(
              '_check_input_type', True
          )
          kwargs['_check_return_type'] = kwargs.get(
              '_check_return_type', True
          )
          kwargs['_spec_property_naming'] = kwargs.get(
              '_spec_property_naming', False
          )
          kwargs['_content_type'] = kwargs.get(
              '_content_type')
          kwargs['_host_index'] = kwargs.get('_host_index')
          return self.is_alive_endpoint.call_with_http_info(**kwargs)
  
      def is_ready(
          self,
          **kwargs
      ):
          """Check HTTP Server and Database Status  # noqa: E501
  
          This endpoint returns a HTTP 200 status code when Ory Kratos is up running and the environment dependencies (e.g. the database) are responsive as well.  If the service supports TLS Edge Termination, this endpoint does not require the `X-Forwarded-Proto` header to be set.  Be aware that if you are running multiple nodes of Ory Kratos, the health status will never refer to the cluster state, only to a single instance.  # noqa: E501
          This method makes a synchronous HTTP request by default. To make an
          asynchronous HTTP request, please pass async_req=True
  
          >>> thread = api.is_ready(async_req=True)
          >>> result = thread.get()
  
  
          Keyword Args:
              _return_http_data_only (bool): response data without head status
                  code and headers. Default is True.
              _preload_content (bool): if False, the urllib3.HTTPResponse object
                  will be returned without reading/decoding response data.
                  Default is True.
              _request_timeout (int/float/tuple): timeout setting for this request. If
                  one number provided, it will be total request timeout. It can also
                  be a pair (tuple) of (connection, read) timeouts.
                  Default is None.
              _check_input_type (bool): specifies if type checking
                  should be done one the data sent to the server.
                  Default is True.
              _check_return_type (bool): specifies if type checking
                  should be done one the data received from the server.
                  Default is True.
              _spec_property_naming (bool): True if the variable names in the input data
                  are serialized names, as specified in the OpenAPI document.
                  False if the variable names in the input data
                  are pythonic names, e.g. snake case (default)
              _content_type (str/None): force body content-type.
                  Default is None and content-type will be predicted by allowed
                  content-types and body.
              _host_index (int/None): specifies the index of the server
                  that we want to use.
                  Default is read from the configuration.
              async_req (bool): execute request asynchronously
  
          Returns:
              InlineResponse200
                  If the method is called asynchronously, returns the request
                  thread.
          """
          kwargs['async_req'] = kwargs.get(
              'async_req', False
          )
          kwargs['_return_http_data_only'] = kwargs.get(
              '_return_http_data_only', True
          )
          kwargs['_preload_content'] = kwargs.get(
              '_preload_content', True
          )
          kwargs['_request_timeout'] = kwargs.get(
              '_request_timeout', None
          )
          kwargs['_check_input_type'] = kwargs.get(
              '_check_input_type', True
          )
          kwargs['_check_return_type'] = kwargs.get(
              '_check_return_type', True
          )
          kwargs['_spec_property_naming'] = kwargs.get(
              '_spec_property_naming', False
          )
          kwargs['_content_type'] = kwargs.get(
              '_content_type')
          kwargs['_host_index'] = kwargs.get('_host_index')
          return self.is_ready_endpoint.call_with_http_info(**kwargs)
  
  