docs: def answer_shipping_query(self, shipping_query_id, ok, shipping_options=None, error_message=None):
          """
          If you sent an invoice requesting a shipping address and the parameter is_flexible was specified, the Bot API will send an Update with a shipping_query field to the bot. Use this method to reply to shipping queries. On success, True is returned.
  
          https://core.telegram.org/bots/api#answershippingquery
  
          
          Parameters:
          
          :param shipping_query_id: Unique identifier for the query to be answered
          :type  shipping_query_id: str|unicode
          
          :param ok: Specify True if delivery to the specified address is possible and False if there are any problems (for example, if delivery to the specified address is not possible)
          :type  ok: bool
          
          
          Optional keyword parameters:
          
          :param shipping_options: Required if ok is True. A JSON-serialized array of available shipping options.
          :type  shipping_options: list of pytgbot.api_types.sendable.payments.ShippingOption
          
          :param error_message: Required if ok is False. Error message in human readable form that explains why it is impossible to complete the order (e.g. "Sorry, delivery to your desired address is unavailable'). Telegram will display this message to the user.
          :type  error_message: str|unicode
          
          Returns:
  
          :return: On success, True is returned
          :rtype:  bool
          """
          from pytgbot.api_types.sendable.payments import ShippingOption
          
          assert_type_or_raise(shipping_query_id, unicode_type, parameter_name="shipping_query_id")
          
          assert_type_or_raise(ok, bool, parameter_name="ok")
          
          assert_type_or_raise(shipping_options, None, list, parameter_name="shipping_options")
          
          assert_type_or_raise(error_message, None, unicode_type, parameter_name="error_message")
          
          result = self.do("answerShippingQuery", shipping_query_id=shipping_query_id, ok=ok, shipping_options=shipping_options, error_message=error_message)
          if self.return_python_objects:
              logger.debug("Trying to parse {data}".format(data=repr(result)))
              try:
                  return from_array_list(bool, result, list_level=0, is_builtin=True)
              except TgApiParseException:
                  logger.debug("Failed parsing as primitive bool", exc_info=True)
              # end try
              # no valid parsing so far
              raise TgApiParseException("Could not parse result.")  # See debug log for details!
          # end if return_python_objects
          return result