code: def build_request(self, input_data=None, api_data=None, aux_data=None, *args, **kwargs):
          
          if input_data is not None:
              self.client_data = input_data
          if api_data is not None:
              self.api_data = api_data
          if aux_data is not None:
              self.aux_data = aux_data
  
          self.request = RequestHolder()
          self.request.nonce = get_random_vector(EBConsts.FRESHNESS_NONCE_LEN)
  
          self.request.endpoint = self.get_endpoint()
          self.request.url = self.get_endpoint().get_url() + self.url_suffix
  
          self.request.configuration = self.config
          self.request.api_method = self.operation
          self.request.headers = {'X-Auth-Token': 'public'}
  
          # Result request body
          self.request.body = {
              'nonce': to_hex(self.request.nonce),
              'version': 1,
              'function': self.operation,
              'environment': self.env if self.env is not None else ENVIRONMENT_DEVELOPMENT,
          }
  
          if self.client_data is not None:
              self.request.body['client'] = self.client_data
          if self.api_data is not None:
              self.request.body['apidata'] = self.api_data
          if self.aux_data is not None:
              if isinstance(self.aux_data, dict):
                  self.request.body = EBUtils.merge(self.request.body, self.aux_data)
              else:
                  raise ValueError('Aux data has to be a dictionary')
  
          self.request = self.extend_request(self.request)
          return self.request
docs: Builds request
  
          :param input_data:
          :param api_data:
          :param aux_data:
          :param args:
          :param kwargs:
          :return: