code: def update(cls, request_inquiry_id, monetary_account_id=None, status=None,
                 custom_headers=None):
          
  
          if custom_headers is None:
              custom_headers = {}
  
          api_client = client.ApiClient(cls._get_api_context())
  
          request_map = {
              cls.FIELD_STATUS: status
          }
          request_map_string = converter.class_to_json(request_map)
          request_map_string = cls._remove_field_for_request(request_map_string)
  
          request_bytes = request_map_string.encode()
          endpoint_url = cls._ENDPOINT_URL_UPDATE.format(cls._determine_user_id(),
                                                         cls._determine_monetary_account_id(
                                                             monetary_account_id),
                                                         request_inquiry_id)
          response_raw = api_client.put(endpoint_url, request_bytes,
                                        custom_headers)
  
          return BunqResponseRequestInquiry.cast_from_bunq_response(
              cls._from_json(response_raw, cls._OBJECT_TYPE_PUT)
          )
docs: Revoke a request for payment, by updating the status to REVOKED.
  
          :type user_id: int
          :type monetary_account_id: int
          :type request_inquiry_id: int
          :param status: The status of the RequestInquiry. Ignored in POST
          requests but can be used for revoking (cancelling) the RequestInquiry by
          setting REVOKED with a PUT request.
          :type status: str
          :type custom_headers: dict[str, str]|None
  
          :rtype: BunqResponseRequestInquiry