docs: def update(self, query_name, saved_query_attributes):
          """
          Given a dict of attributes to be updated, update only those attributes
          in the Saved Query at the resource given by 'query_name'. This will
          perform two HTTP requests--one to fetch the query definition, and one
          to set the new attributes. This method will intend to preserve any
          other properties on the query.
  
          Master key must be set.
          """
  
          query_name_attr_name = "query_name"
          refresh_rate_attr_name = "refresh_rate"
          query_attr_name = "query"
          metadata_attr_name = "metadata"
  
          old_saved_query = self.get(query_name)
  
          # Create a new query def to send back. We cannot send values for attributes like 'urls',
          # 'last_modified_date', 'run_information', etc.
          new_saved_query = {
              query_name_attr_name: old_saved_query[query_name_attr_name], # expected
              refresh_rate_attr_name: old_saved_query[refresh_rate_attr_name], # expected
              query_attr_name: {}
          }
  
          # If metadata was set, preserve it. The Explorer UI currently stores information here.
          old_metadata = (old_saved_query[metadata_attr_name]
                         if metadata_attr_name in old_saved_query
                         else None)
  
          if old_metadata:
              new_saved_query[metadata_attr_name] = old_metadata
  
          # Preserve any non-empty properties of the existing query. We get back values like None
          # for 'group_by', 'interval' or 'timezone', but those aren't accepted values when updating.
          old_query = old_saved_query[query_attr_name] # expected
  
          # Shallow copy since we want the entire object heirarchy to start with.
          for (key, value) in six.iteritems(old_query):
              if value:
                  new_saved_query[query_attr_name][key] = value
  
          # Now, recursively overwrite any attributes passed in.
          SavedQueriesInterface._deep_update(new_saved_query, saved_query_attributes)
  
          return self.create(query_name, new_saved_query)