Class: Files::Automation

Inherits:
Object
  • Object
show all
Defined in:
lib/files.com/models/automation.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(attributes = {}, options = {}) ⇒ Automation

Returns a new instance of Automation.



7
8
9
10
# File 'lib/files.com/models/automation.rb', line 7

def initialize(attributes = {}, options = {})
  @attributes = attributes || {}
  @options = options || {}
end

Instance Attribute Details

#attributesObject (readonly)

Returns the value of attribute attributes.



5
6
7
# File 'lib/files.com/models/automation.rb', line 5

def attributes
  @attributes
end

#optionsObject (readonly)

Returns the value of attribute options.



5
6
7
# File 'lib/files.com/models/automation.rb', line 5

def options
  @options
end

Class Method Details

.all(params = {}, options = {}) ⇒ Object



286
287
288
# File 'lib/files.com/models/automation.rb', line 286

def self.all(params = {}, options = {})
  list(params, options)
end

.create(params = {}, options = {}) ⇒ Object

Parameters:

automation (required) - string - Automation type
source - string - Source Path
destination - string - DEPRECATED: Destination Path. Use `destinations` instead.
destinations - array(string) - A list of String destination paths or Hash of folder_path and optional file_path.
destination_replace_from - string - If set, this string in the destination path will be replaced with the value in `destination_replace_to`.
destination_replace_to - string - If set, this string will replace the value `destination_replace_from` in the destination filename. You can use special patterns here.
interval - string - How often to run this automation? One of: `day`, `week`, `week_end`, `month`, `month_end`, `quarter`, `quarter_end`, `year`, `year_end`
path - string - Path on which this Automation runs.  Supports globs.
user_ids - string - A list of user IDs the automation is associated with. If sent as a string, it should be comma-delimited.
group_ids - string - A list of group IDs the automation is associated with. If sent as a string, it should be comma-delimited.
schedule - object - Custom schedule for running this automation.
description - string - Description for the this Automation.
disabled - boolean - If true, this automation will not run.
name - string - Name for this automation.
trigger - string - How this automation is triggered to run. One of: `realtime`, `daily`, `custom_schedule`, `webhook`, `email`, or `action`.
trigger_actions - array(string) - If trigger is `action`, this is the list of action types on which to trigger the automation. Valid actions are create, read, update, destroy, move, copy
value - object - A Hash of attributes specific to the automation type.


324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
# File 'lib/files.com/models/automation.rb', line 324

def self.create(params = {}, options = {})
  raise InvalidParameterError.new("Bad parameter: automation must be an String") if params.dig(:automation) and !params.dig(:automation).is_a?(String)
  raise InvalidParameterError.new("Bad parameter: source must be an String") if params.dig(:source) and !params.dig(:source).is_a?(String)
  raise InvalidParameterError.new("Bad parameter: destination must be an String") if params.dig(:destination) and !params.dig(:destination).is_a?(String)
  raise InvalidParameterError.new("Bad parameter: destinations must be an Array") if params.dig(:destinations) and !params.dig(:destinations).is_a?(Array)
  raise InvalidParameterError.new("Bad parameter: destination_replace_from must be an String") if params.dig(:destination_replace_from) and !params.dig(:destination_replace_from).is_a?(String)
  raise InvalidParameterError.new("Bad parameter: destination_replace_to must be an String") if params.dig(:destination_replace_to) and !params.dig(:destination_replace_to).is_a?(String)
  raise InvalidParameterError.new("Bad parameter: interval must be an String") if params.dig(:interval) and !params.dig(:interval).is_a?(String)
  raise InvalidParameterError.new("Bad parameter: path must be an String") if params.dig(:path) and !params.dig(:path).is_a?(String)
  raise InvalidParameterError.new("Bad parameter: user_ids must be an String") if params.dig(:user_ids) and !params.dig(:user_ids).is_a?(String)
  raise InvalidParameterError.new("Bad parameter: group_ids must be an String") if params.dig(:group_ids) and !params.dig(:group_ids).is_a?(String)
  raise InvalidParameterError.new("Bad parameter: schedule must be an Hash") if params.dig(:schedule) and !params.dig(:schedule).is_a?(Hash)
  raise InvalidParameterError.new("Bad parameter: description must be an String") if params.dig(:description) and !params.dig(:description).is_a?(String)
  raise InvalidParameterError.new("Bad parameter: name must be an String") if params.dig(:name) and !params.dig(:name).is_a?(String)
  raise InvalidParameterError.new("Bad parameter: trigger must be an String") if params.dig(:trigger) and !params.dig(:trigger).is_a?(String)
  raise InvalidParameterError.new("Bad parameter: trigger_actions must be an Array") if params.dig(:trigger_actions) and !params.dig(:trigger_actions).is_a?(Array)
  raise InvalidParameterError.new("Bad parameter: value must be an Hash") if params.dig(:value) and !params.dig(:value).is_a?(Hash)
  raise MissingParameterError.new("Parameter missing: automation") unless params.dig(:automation)

  response, options = Api.send_request("/automations", :post, params, options)
  Automation.new(response.data, options)
end

.delete(id, params = {}, options = {}) ⇒ Object



392
393
394
395
396
397
398
399
400
# File 'lib/files.com/models/automation.rb', line 392

def self.delete(id, params = {}, options = {})
  params ||= {}
  params[:id] = id
  raise InvalidParameterError.new("Bad parameter: id must be an Integer") if params.dig(:id) and !params.dig(:id).is_a?(Integer)
  raise MissingParameterError.new("Parameter missing: id") unless params.dig(:id)

  response, _options = Api.send_request("/automations/#{params[:id]}", :delete, params, options)
  response.data
end

.destroy(id, params = {}, options = {}) ⇒ Object



402
403
404
# File 'lib/files.com/models/automation.rb', line 402

def self.destroy(id, params = {}, options = {})
  delete(id, params, options)
end

.find(id, params = {}, options = {}) ⇒ Object

Parameters:

id (required) - int64 - Automation ID.


292
293
294
295
296
297
298
299
300
# File 'lib/files.com/models/automation.rb', line 292

def self.find(id, params = {}, options = {})
  params ||= {}
  params[:id] = id
  raise InvalidParameterError.new("Bad parameter: id must be an Integer") if params.dig(:id) and !params.dig(:id).is_a?(Integer)
  raise MissingParameterError.new("Parameter missing: id") unless params.dig(:id)

  response, options = Api.send_request("/automations/#{params[:id]}", :get, params, options)
  Automation.new(response.data, options)
end

.get(id, params = {}, options = {}) ⇒ Object



302
303
304
# File 'lib/files.com/models/automation.rb', line 302

def self.get(id, params = {}, options = {})
  find(id, params, options)
end

.list(params = {}, options = {}) ⇒ Object

Parameters:

cursor - string - Used for pagination.  Send a cursor value to resume an existing list from the point at which you left off.  Get a cursor from an existing list via either the X-Files-Cursor-Next header or the X-Files-Cursor-Prev header.
per_page - int64 - Number of records to show per page.  (Max: 10,000, 1,000 or less is recommended).
sort_by - object - If set, sort records by the specified field in either 'asc' or 'desc' direction (e.g. sort_by[last_login_at]=desc). Valid fields are `automation`.
filter - object - If set, return records where the specified field is equal to the supplied value. Valid fields are `automation`.
filter_gt - object - If set, return records where the specified field is greater than the supplied value. Valid fields are `automation`.
filter_gteq - object - If set, return records where the specified field is greater than or equal to the supplied value. Valid fields are `automation`.
filter_like - object - If set, return records where the specified field is equal to the supplied value. Valid fields are `automation`.
filter_lt - object - If set, return records where the specified field is less than the supplied value. Valid fields are `automation`.
filter_lteq - object - If set, return records where the specified field is less than or equal to the supplied value. Valid fields are `automation`.
automation - string - DEPRECATED: Type of automation to filter by. Use `filter[automation]` instead.


269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
# File 'lib/files.com/models/automation.rb', line 269

def self.list(params = {}, options = {})
  raise InvalidParameterError.new("Bad parameter: cursor must be an String") if params.dig(:cursor) and !params.dig(:cursor).is_a?(String)
  raise InvalidParameterError.new("Bad parameter: per_page must be an Integer") if params.dig(:per_page) and !params.dig(:per_page).is_a?(Integer)
  raise InvalidParameterError.new("Bad parameter: sort_by must be an Hash") if params.dig(:sort_by) and !params.dig(:sort_by).is_a?(Hash)
  raise InvalidParameterError.new("Bad parameter: filter must be an Hash") if params.dig(:filter) and !params.dig(:filter).is_a?(Hash)
  raise InvalidParameterError.new("Bad parameter: filter_gt must be an Hash") if params.dig(:filter_gt) and !params.dig(:filter_gt).is_a?(Hash)
  raise InvalidParameterError.new("Bad parameter: filter_gteq must be an Hash") if params.dig(:filter_gteq) and !params.dig(:filter_gteq).is_a?(Hash)
  raise InvalidParameterError.new("Bad parameter: filter_like must be an Hash") if params.dig(:filter_like) and !params.dig(:filter_like).is_a?(Hash)
  raise InvalidParameterError.new("Bad parameter: filter_lt must be an Hash") if params.dig(:filter_lt) and !params.dig(:filter_lt).is_a?(Hash)
  raise InvalidParameterError.new("Bad parameter: filter_lteq must be an Hash") if params.dig(:filter_lteq) and !params.dig(:filter_lteq).is_a?(Hash)
  raise InvalidParameterError.new("Bad parameter: automation must be an String") if params.dig(:automation) and !params.dig(:automation).is_a?(String)

  List.new(Automation, params) do
    Api.send_request("/automations", :get, params, options)
  end
end

.update(id, params = {}, options = {}) ⇒ Object

Parameters:

automation (required) - string - Automation type
source - string - Source Path
destination - string - DEPRECATED: Destination Path. Use `destinations` instead.
destinations - array(string) - A list of String destination paths or Hash of folder_path and optional file_path.
destination_replace_from - string - If set, this string in the destination path will be replaced with the value in `destination_replace_to`.
destination_replace_to - string - If set, this string will replace the value `destination_replace_from` in the destination filename. You can use special patterns here.
interval - string - How often to run this automation? One of: `day`, `week`, `week_end`, `month`, `month_end`, `quarter`, `quarter_end`, `year`, `year_end`
path - string - Path on which this Automation runs.  Supports globs.
user_ids - string - A list of user IDs the automation is associated with. If sent as a string, it should be comma-delimited.
group_ids - string - A list of group IDs the automation is associated with. If sent as a string, it should be comma-delimited.
schedule - object - Custom schedule for running this automation.
description - string - Description for the this Automation.
disabled - boolean - If true, this automation will not run.
name - string - Name for this automation.
trigger - string - How this automation is triggered to run. One of: `realtime`, `daily`, `custom_schedule`, `webhook`, `email`, or `action`.
trigger_actions - array(string) - If trigger is `action`, this is the list of action types on which to trigger the automation. Valid actions are create, read, update, destroy, move, copy
value - object - A Hash of attributes specific to the automation type.


365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
# File 'lib/files.com/models/automation.rb', line 365

def self.update(id, params = {}, options = {})
  params ||= {}
  params[:id] = id
  raise InvalidParameterError.new("Bad parameter: id must be an Integer") if params.dig(:id) and !params.dig(:id).is_a?(Integer)
  raise InvalidParameterError.new("Bad parameter: automation must be an String") if params.dig(:automation) and !params.dig(:automation).is_a?(String)
  raise InvalidParameterError.new("Bad parameter: source must be an String") if params.dig(:source) and !params.dig(:source).is_a?(String)
  raise InvalidParameterError.new("Bad parameter: destination must be an String") if params.dig(:destination) and !params.dig(:destination).is_a?(String)
  raise InvalidParameterError.new("Bad parameter: destinations must be an Array") if params.dig(:destinations) and !params.dig(:destinations).is_a?(Array)
  raise InvalidParameterError.new("Bad parameter: destination_replace_from must be an String") if params.dig(:destination_replace_from) and !params.dig(:destination_replace_from).is_a?(String)
  raise InvalidParameterError.new("Bad parameter: destination_replace_to must be an String") if params.dig(:destination_replace_to) and !params.dig(:destination_replace_to).is_a?(String)
  raise InvalidParameterError.new("Bad parameter: interval must be an String") if params.dig(:interval) and !params.dig(:interval).is_a?(String)
  raise InvalidParameterError.new("Bad parameter: path must be an String") if params.dig(:path) and !params.dig(:path).is_a?(String)
  raise InvalidParameterError.new("Bad parameter: user_ids must be an String") if params.dig(:user_ids) and !params.dig(:user_ids).is_a?(String)
  raise InvalidParameterError.new("Bad parameter: group_ids must be an String") if params.dig(:group_ids) and !params.dig(:group_ids).is_a?(String)
  raise InvalidParameterError.new("Bad parameter: schedule must be an Hash") if params.dig(:schedule) and !params.dig(:schedule).is_a?(Hash)
  raise InvalidParameterError.new("Bad parameter: description must be an String") if params.dig(:description) and !params.dig(:description).is_a?(String)
  raise InvalidParameterError.new("Bad parameter: name must be an String") if params.dig(:name) and !params.dig(:name).is_a?(String)
  raise InvalidParameterError.new("Bad parameter: trigger must be an String") if params.dig(:trigger) and !params.dig(:trigger).is_a?(String)
  raise InvalidParameterError.new("Bad parameter: trigger_actions must be an Array") if params.dig(:trigger_actions) and !params.dig(:trigger_actions).is_a?(Array)
  raise InvalidParameterError.new("Bad parameter: value must be an Hash") if params.dig(:value) and !params.dig(:value).is_a?(Hash)
  raise MissingParameterError.new("Parameter missing: id") unless params.dig(:id)
  raise MissingParameterError.new("Parameter missing: automation") unless params.dig(:automation)

  response, options = Api.send_request("/automations/#{params[:id]}", :patch, params, options)
  Automation.new(response.data, options)
end

Instance Method Details

#automationObject

string - Automation type



22
23
24
# File 'lib/files.com/models/automation.rb', line 22

def automation
  @attributes[:automation]
end

#automation=(value) ⇒ Object



26
27
28
# File 'lib/files.com/models/automation.rb', line 26

def automation=(value)
  @attributes[:automation] = value
end

#delete(params = {}) ⇒ Object



235
236
237
238
239
240
241
242
243
# File 'lib/files.com/models/automation.rb', line 235

def delete(params = {})
  params ||= {}
  params[:id] = @attributes[:id]
  raise MissingParameterError.new("Current object doesn't have a id") unless @attributes[:id]
  raise InvalidParameterError.new("Bad parameter: id must be an Integer") if params.dig(:id) and !params.dig(:id).is_a?(Integer)
  raise MissingParameterError.new("Parameter missing: id") unless params.dig(:id)

  Api.send_request("/automations/#{@attributes[:id]}", :delete, params, @options)
end

#descriptionObject

string - Description for the this Automation.



112
113
114
# File 'lib/files.com/models/automation.rb', line 112

def description
  @attributes[:description]
end

#description=(value) ⇒ Object



116
117
118
# File 'lib/files.com/models/automation.rb', line 116

def description=(value)
  @attributes[:description] = value
end

#destinationObject

string - DEPRECATED: Destination Path. Use ‘destinations` instead.



184
185
186
# File 'lib/files.com/models/automation.rb', line 184

def destination
  @attributes[:destination]
end

#destination=(value) ⇒ Object



188
189
190
# File 'lib/files.com/models/automation.rb', line 188

def destination=(value)
  @attributes[:destination] = value
end

#destination_replace_fromObject

string - If set, this string in the destination path will be replaced with the value in ‘destination_replace_to`.



94
95
96
# File 'lib/files.com/models/automation.rb', line 94

def destination_replace_from
  @attributes[:destination_replace_from]
end

#destination_replace_from=(value) ⇒ Object



98
99
100
# File 'lib/files.com/models/automation.rb', line 98

def destination_replace_from=(value)
  @attributes[:destination_replace_from] = value
end

#destination_replace_toObject

string - If set, this string will replace the value ‘destination_replace_from` in the destination filename. You can use special patterns here.



103
104
105
# File 'lib/files.com/models/automation.rb', line 103

def destination_replace_to
  @attributes[:destination_replace_to]
end

#destination_replace_to=(value) ⇒ Object



107
108
109
# File 'lib/files.com/models/automation.rb', line 107

def destination_replace_to=(value)
  @attributes[:destination_replace_to] = value
end

#destinationsObject

string - Destination Path



85
86
87
# File 'lib/files.com/models/automation.rb', line 85

def destinations
  @attributes[:destinations]
end

#destinations=(value) ⇒ Object



89
90
91
# File 'lib/files.com/models/automation.rb', line 89

def destinations=(value)
  @attributes[:destinations] = value
end

#destroy(params = {}) ⇒ Object



245
246
247
# File 'lib/files.com/models/automation.rb', line 245

def destroy(params = {})
  delete(params)
end

#disabledObject

boolean - If true, this automation will not run.



31
32
33
# File 'lib/files.com/models/automation.rb', line 31

def disabled
  @attributes[:disabled]
end

#disabled=(value) ⇒ Object



35
36
37
# File 'lib/files.com/models/automation.rb', line 35

def disabled=(value)
  @attributes[:disabled] = value
end

#group_idsObject

array - IDs of Groups for the Automation (i.e. who to Request File from)



148
149
150
# File 'lib/files.com/models/automation.rb', line 148

def group_ids
  @attributes[:group_ids]
end

#group_ids=(value) ⇒ Object



152
153
154
# File 'lib/files.com/models/automation.rb', line 152

def group_ids=(value)
  @attributes[:group_ids] = value
end

#idObject

int64 - Automation ID



13
14
15
# File 'lib/files.com/models/automation.rb', line 13

def id
  @attributes[:id]
end

#id=(value) ⇒ Object



17
18
19
# File 'lib/files.com/models/automation.rb', line 17

def id=(value)
  @attributes[:id] = value
end

#intervalObject

string - If trigger is ‘daily`, this specifies how often to run this automation. One of: `day`, `week`, `week_end`, `month`, `month_end`, `quarter`, `quarter_end`, `year`, `year_end`



49
50
51
# File 'lib/files.com/models/automation.rb', line 49

def interval
  @attributes[:interval]
end

#interval=(value) ⇒ Object



53
54
55
# File 'lib/files.com/models/automation.rb', line 53

def interval=(value)
  @attributes[:interval] = value
end

#nameObject

string - Name for this automation.



58
59
60
# File 'lib/files.com/models/automation.rb', line 58

def name
  @attributes[:name]
end

#name=(value) ⇒ Object



62
63
64
# File 'lib/files.com/models/automation.rb', line 62

def name=(value)
  @attributes[:name] = value
end

#pathObject

string - Path on which this Automation runs. Supports globs. This must be slash-delimited, but it must neither start nor end with a slash. Maximum of 5000 characters.



121
122
123
# File 'lib/files.com/models/automation.rb', line 121

def path
  @attributes[:path]
end

#path=(value) ⇒ Object



125
126
127
# File 'lib/files.com/models/automation.rb', line 125

def path=(value)
  @attributes[:path] = value
end

#saveObject



249
250
251
252
253
254
255
256
# File 'lib/files.com/models/automation.rb', line 249

def save
  if @attributes[:id]
    update(@attributes)
  else
    new_obj = Automation.create(@attributes, @options)
    @attributes = new_obj.attributes
  end
end

#scheduleObject

object - If trigger is ‘custom_schedule`, Custom schedule description for when the automation should be run.



67
68
69
# File 'lib/files.com/models/automation.rb', line 67

def schedule
  @attributes[:schedule]
end

#schedule=(value) ⇒ Object



71
72
73
# File 'lib/files.com/models/automation.rb', line 71

def schedule=(value)
  @attributes[:schedule] = value
end

#sourceObject

string - Source Path



76
77
78
# File 'lib/files.com/models/automation.rb', line 76

def source
  @attributes[:source]
end

#source=(value) ⇒ Object



80
81
82
# File 'lib/files.com/models/automation.rb', line 80

def source=(value)
  @attributes[:source] = value
end

#triggerObject

string - How this automation is triggered to run. One of: ‘realtime`, `daily`, `custom_schedule`, `webhook`, `email`, or `action`.



40
41
42
# File 'lib/files.com/models/automation.rb', line 40

def trigger
  @attributes[:trigger]
end

#trigger=(value) ⇒ Object



44
45
46
# File 'lib/files.com/models/automation.rb', line 44

def trigger=(value)
  @attributes[:trigger] = value
end

#trigger_actionsObject

string - If trigger is ‘action`, this is the list of action types on which to trigger the automation. Valid actions are create, read, update, destroy, move, copy



166
167
168
# File 'lib/files.com/models/automation.rb', line 166

def trigger_actions
  @attributes[:trigger_actions]
end

#trigger_actions=(value) ⇒ Object



170
171
172
# File 'lib/files.com/models/automation.rb', line 170

def trigger_actions=(value)
  @attributes[:trigger_actions] = value
end

#update(params = {}) ⇒ Object

Parameters:

automation (required) - string - Automation type
source - string - Source Path
destination - string - DEPRECATED: Destination Path. Use `destinations` instead.
destinations - array(string) - A list of String destination paths or Hash of folder_path and optional file_path.
destination_replace_from - string - If set, this string in the destination path will be replaced with the value in `destination_replace_to`.
destination_replace_to - string - If set, this string will replace the value `destination_replace_from` in the destination filename. You can use special patterns here.
interval - string - How often to run this automation? One of: `day`, `week`, `week_end`, `month`, `month_end`, `quarter`, `quarter_end`, `year`, `year_end`
path - string - Path on which this Automation runs.  Supports globs.
user_ids - string - A list of user IDs the automation is associated with. If sent as a string, it should be comma-delimited.
group_ids - string - A list of group IDs the automation is associated with. If sent as a string, it should be comma-delimited.
schedule - object - Custom schedule for running this automation.
description - string - Description for the this Automation.
disabled - boolean - If true, this automation will not run.
name - string - Name for this automation.
trigger - string - How this automation is triggered to run. One of: `realtime`, `daily`, `custom_schedule`, `webhook`, `email`, or `action`.
trigger_actions - array(string) - If trigger is `action`, this is the list of action types on which to trigger the automation. Valid actions are create, read, update, destroy, move, copy
value - object - A Hash of attributes specific to the automation type.


210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
# File 'lib/files.com/models/automation.rb', line 210

def update(params = {})
  params ||= {}
  params[:id] = @attributes[:id]
  raise MissingParameterError.new("Current object doesn't have a id") unless @attributes[:id]
  raise InvalidParameterError.new("Bad parameter: id must be an Integer") if params.dig(:id) and !params.dig(:id).is_a?(Integer)
  raise InvalidParameterError.new("Bad parameter: automation must be an String") if params.dig(:automation) and !params.dig(:automation).is_a?(String)
  raise InvalidParameterError.new("Bad parameter: source must be an String") if params.dig(:source) and !params.dig(:source).is_a?(String)
  raise InvalidParameterError.new("Bad parameter: destination must be an String") if params.dig(:destination) and !params.dig(:destination).is_a?(String)
  raise InvalidParameterError.new("Bad parameter: destinations must be an Array") if params.dig(:destinations) and !params.dig(:destinations).is_a?(Array)
  raise InvalidParameterError.new("Bad parameter: destination_replace_from must be an String") if params.dig(:destination_replace_from) and !params.dig(:destination_replace_from).is_a?(String)
  raise InvalidParameterError.new("Bad parameter: destination_replace_to must be an String") if params.dig(:destination_replace_to) and !params.dig(:destination_replace_to).is_a?(String)
  raise InvalidParameterError.new("Bad parameter: interval must be an String") if params.dig(:interval) and !params.dig(:interval).is_a?(String)
  raise InvalidParameterError.new("Bad parameter: path must be an String") if params.dig(:path) and !params.dig(:path).is_a?(String)
  raise InvalidParameterError.new("Bad parameter: user_ids must be an String") if params.dig(:user_ids) and !params.dig(:user_ids).is_a?(String)
  raise InvalidParameterError.new("Bad parameter: group_ids must be an String") if params.dig(:group_ids) and !params.dig(:group_ids).is_a?(String)
  raise InvalidParameterError.new("Bad parameter: description must be an String") if params.dig(:description) and !params.dig(:description).is_a?(String)
  raise InvalidParameterError.new("Bad parameter: name must be an String") if params.dig(:name) and !params.dig(:name).is_a?(String)
  raise InvalidParameterError.new("Bad parameter: trigger must be an String") if params.dig(:trigger) and !params.dig(:trigger).is_a?(String)
  raise InvalidParameterError.new("Bad parameter: trigger_actions must be an Array") if params.dig(:trigger_actions) and !params.dig(:trigger_actions).is_a?(Array)
  raise MissingParameterError.new("Parameter missing: id") unless params.dig(:id)
  raise MissingParameterError.new("Parameter missing: automation") unless params.dig(:automation)

  Api.send_request("/automations/#{@attributes[:id]}", :patch, params, @options)
end

#user_idObject

int64 - User ID of the Automation’s creator.



130
131
132
# File 'lib/files.com/models/automation.rb', line 130

def user_id
  @attributes[:user_id]
end

#user_id=(value) ⇒ Object



134
135
136
# File 'lib/files.com/models/automation.rb', line 134

def user_id=(value)
  @attributes[:user_id] = value
end

#user_idsObject

array - IDs of Users for the Automation (i.e. who to Request File from)



139
140
141
# File 'lib/files.com/models/automation.rb', line 139

def user_ids
  @attributes[:user_ids]
end

#user_ids=(value) ⇒ Object



143
144
145
# File 'lib/files.com/models/automation.rb', line 143

def user_ids=(value)
  @attributes[:user_ids] = value
end

#valueObject

object - A Hash of attributes specific to the automation type.



175
176
177
# File 'lib/files.com/models/automation.rb', line 175

def value
  @attributes[:value]
end

#value=(value) ⇒ Object



179
180
181
# File 'lib/files.com/models/automation.rb', line 179

def value=(value)
  @attributes[:value] = value
end

#webhook_urlObject

string - If trigger is ‘webhook`, this is the URL of the webhook to trigger the Automation.



157
158
159
# File 'lib/files.com/models/automation.rb', line 157

def webhook_url
  @attributes[:webhook_url]
end

#webhook_url=(value) ⇒ Object



161
162
163
# File 'lib/files.com/models/automation.rb', line 161

def webhook_url=(value)
  @attributes[:webhook_url] = value
end