def update(data)
      # Only pass a value for avatar if the key is defined as sending nil will delete the
      data[:avatar] = avatarise(data[:avatar]) if data.key?(:avatar)
      data[:channel_id] = data[:channel].resolve_id
      data.delete(:channel)
      update_webhook(data)
    end
def update(data)
      # Only pass a value for avatar if the key is defined as sending nil will delete the
      data[:avatar] = avatarise(data[:avatar]) if data.key?(:avatar)
      data[:channel_id] = data[:channel].resolve_id
      data.delete(:channel)
      update_webhook(data)
    end
Updates the webhook if you need to edit more than 1 attribute.
 @param data [Hash] the data to update.
 @option data [String, #read, nil] :avatar The new avatar, in base64-encoded JPG format, or nil to delete the avatar.
 @option data [Channel, String, Integer, #resolve_id] :channel The channel the webhook should use.
 @option data [String] :name The webhook's new name.
 @option data [String] :reason The reason for the webhook changes.