files.com 1.1.681 → 1.1.683

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -15,12 +15,34 @@
15
15
  "retried_at": "2000-01-01T01:00:00Z",
16
16
  "retried_in_run_id": 1,
17
17
  "retry_of_run_id": 1,
18
+ "rerun_of_run_id": 1,
19
+ "rerun_from_node_id": "example",
18
20
  "runtime": 1.0,
19
21
  "status": "success",
20
22
  "successful_operations": 1,
21
23
  "failed_operations": 1,
22
24
  "definition": "example",
23
25
  "node_states": "example",
26
+ "execution_nodes": [
27
+ {
28
+ "node_id": "example",
29
+ "node_type": "example",
30
+ "status": "example",
31
+ "run_stage": "example",
32
+ "reused": true,
33
+ "successful_operations": 1,
34
+ "failed_operations": 1,
35
+ "started_at": "2000-01-01T01:00:00Z",
36
+ "completed_at": "2000-01-01T01:00:00Z",
37
+ "duration_ms": 1,
38
+ "inputs": [
39
+ "example"
40
+ ],
41
+ "outputs": "example",
42
+ "input_items": "example",
43
+ "output_items": "example"
44
+ }
45
+ ],
24
46
  "journal_url": "example",
25
47
  "status_messages_url": "https://www.example.com/log_file.txt"
26
48
  }
@@ -37,12 +59,15 @@
37
59
  * `retried_at` (date-time): If set, this Automation run was retried due to `failure` or `partial_failure`.
38
60
  * `retried_in_run_id` (int64): ID of the run that is or will be retrying this run.
39
61
  * `retry_of_run_id` (int64): ID of the original run that this run is retrying.
62
+ * `rerun_of_run_id` (int64): ID of the run whose persisted node outputs this run reused.
63
+ * `rerun_from_node_id` (string): Node at which this run resumed execution.
40
64
  * `runtime` (double): Automation run runtime.
41
65
  * `status` (string): The status of the AutomationRun. One of `queued`, `running`, `success`, `partial_failure`, `failure`, `skipped`, or `canceled`.
42
66
  * `successful_operations` (int64): Count of successful operations.
43
67
  * `failed_operations` (int64): Count of failed operations.
44
68
  * `definition` (object): Automation definition snapshot pinned by this run. For performance reasons, this is not provided when listing Automation runs.
45
69
  * `node_states` (object): Status and execution stage for each node in this run. For performance reasons, this is not provided when listing Automation runs.
70
+ * `execution_nodes` (array(object)): Execution status, timing, and bounded output summaries for each node. For performance reasons, this is not provided when listing Automation runs.
46
71
  * `journal_url` (string): Link to the run journal artifact.
47
72
  * `status_messages_url` (string): Link to status messages log file.
48
73
 
@@ -81,6 +106,22 @@ Files::AutomationRun.find(id)
81
106
  * `id` (int64): Required - Automation Run ID.
82
107
 
83
108
 
109
+ ---
110
+
111
+ ## Show Automation Run Node
112
+
113
+ ```
114
+ Files::AutomationRun.find_node(id,
115
+ node_id: "node_id"
116
+ )
117
+ ```
118
+
119
+ ### Parameters
120
+
121
+ * `id` (int64): Required - Automation Run ID.
122
+ * `node_id` (string): Required - Node ID from the pinned Automation definition.
123
+
124
+
84
125
  ---
85
126
 
86
127
  ## Cancel Automation Run
@@ -94,6 +135,22 @@ Files::AutomationRun.cancel(id)
94
135
  * `id` (int64): Required - Automation Run ID.
95
136
 
96
137
 
138
+ ---
139
+
140
+ ## Re-run Automation from Node
141
+
142
+ ```
143
+ Files::AutomationRun.rerun(id,
144
+ node_id: "node_id"
145
+ )
146
+ ```
147
+
148
+ ### Parameters
149
+
150
+ * `id` (int64): Required - Automation Run ID.
151
+ * `node_id` (string): Required - Node ID at which execution should resume.
152
+
153
+
97
154
  ---
98
155
 
99
156
  ## Cancel Automation Run
@@ -107,3 +164,21 @@ automation_run.cancel
107
164
  ### Parameters
108
165
 
109
166
  * `id` (int64): Required - Automation Run ID.
167
+
168
+
169
+ ---
170
+
171
+ ## Re-run Automation from Node
172
+
173
+ ```
174
+ automation_run = Files::AutomationRun.find(id)
175
+
176
+ automation_run.rerun(
177
+ node_id: "node_id"
178
+ )
179
+ ```
180
+
181
+ ### Parameters
182
+
183
+ * `id` (int64): Required - Automation Run ID.
184
+ * `node_id` (string): Required - Node ID at which execution should resume.
data/docs/behavior.md CHANGED
@@ -46,7 +46,7 @@ Files::Behavior.list
46
46
  * `cursor` (string): Used for pagination. When a list request has more records available, cursors are provided in the response headers `X-Files-Cursor-Next` and `X-Files-Cursor-Prev`. Send one of those cursor value here to resume an existing list from the next available record. Note: many of our SDKs have iterator methods that will automatically handle cursor-based pagination.
47
47
  * `per_page` (int64): Number of records to show per page. (Max: 10000, 1,000 or less is recommended).
48
48
  * `sort_by` (object): If set, sort records by the specified field in either `asc` or `desc` direction. Valid fields are `behavior`.
49
- * `filter` (object): If set, return records where the specified field is equal to the supplied value. Valid fields are `clickwrap_id`, `form_field_set_id`, `impacts_ui`, `remote_server_id` or `behavior`. Valid field combinations are `[ impacts_ui, behavior ]`.
49
+ * `filter` (object): If set, return records where the specified field is equal to the supplied value. Valid fields are `clickwrap_id`, `form_field_set_id`, `impacts_ui`, `remote_server_id` or `behavior`. Valid field combinations are `[ impacts_ui, behavior ]` and `[ behavior, remote_server_id ]`.
50
50
 
51
51
 
52
52
  ---
@@ -135,6 +135,15 @@ module Files
135
135
  @attributes[:import_urls] = value
136
136
  end
137
137
 
138
+ # string - If trigger is `email`, this is the address that triggers the Automation.
139
+ def inbound_email_address
140
+ @attributes[:inbound_email_address]
141
+ end
142
+
143
+ def inbound_email_address=(value)
144
+ @attributes[:inbound_email_address] = value
145
+ end
146
+
138
147
  # boolean - Normally copy and move automations that use globs will implicitly preserve the source folder structure in the destination. If this flag is `true`, the source folder structure will be flattened in the destination. This is useful for copying or moving files from multiple folders into a single destination folder.
139
148
  def flatten_destination_structure
140
149
  @attributes[:flatten_destination_structure]
@@ -396,12 +405,16 @@ module Files
396
405
  @attributes[:holiday_region] = value
397
406
  end
398
407
 
399
- # Manually Run Automation
408
+ # Manually Run Automation. v2 Automations require Site or Workspace Admin permission
409
+ #
410
+ # Parameters:
411
+ # items - array(object) - Initial items for a v2 manual trigger. Each item contains exactly one `file` path or `data` object.
400
412
  def manual_run(params = {})
401
413
  params ||= {}
402
414
  params[:id] = @attributes[:id]
403
415
  raise MissingParameterError.new("Current object doesn't have a id") unless @attributes[:id]
404
416
  raise InvalidParameterError.new("Bad parameter: id must be an Integer") if params[:id] and !params[:id].is_a?(Integer)
417
+ raise InvalidParameterError.new("Bad parameter: items must be an Array") if params[:items] and !params[:items].is_a?(Array)
405
418
  raise MissingParameterError.new("Parameter missing: id") unless params[:id]
406
419
 
407
420
  Api.send_request("/automations/#{@attributes[:id]}/manual_run", :post, params, @options)
@@ -620,11 +633,15 @@ module Files
620
633
  Automation.new(response.data, options)
621
634
  end
622
635
 
623
- # Manually Run Automation
636
+ # Manually Run Automation. v2 Automations require Site or Workspace Admin permission
637
+ #
638
+ # Parameters:
639
+ # items - array(object) - Initial items for a v2 manual trigger. Each item contains exactly one `file` path or `data` object.
624
640
  def self.manual_run(id, params = {}, options = {})
625
641
  params ||= {}
626
642
  params[:id] = id
627
643
  raise InvalidParameterError.new("Bad parameter: id must be an Integer") if params[:id] and !params[:id].is_a?(Integer)
644
+ raise InvalidParameterError.new("Bad parameter: items must be an Array") if params[:items] and !params[:items].is_a?(Array)
628
645
  raise MissingParameterError.new("Parameter missing: id") unless params[:id]
629
646
 
630
647
  Api.send_request("/automations/#{params[:id]}/manual_run", :post, params, options)
@@ -14,9 +14,19 @@ module Files
14
14
  @attributes[:definition_schema]
15
15
  end
16
16
 
17
+ # array(object) - Typed error families accepted by Automation v2 on_error rules.
18
+ def error_families
19
+ @attributes[:error_families]
20
+ end
21
+
17
22
  # array(object) - Active Automation v2 node authoring metadata.
18
23
  def nodes
19
24
  @attributes[:nodes]
20
25
  end
26
+
27
+ # string - Stable public URL for the Automation v2 graph definition JSON Schema.
28
+ def schema_url
29
+ @attributes[:schema_url]
30
+ end
21
31
  end
22
32
  end
@@ -0,0 +1,82 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Files
4
+ class AutomationExecutionNode
5
+ attr_reader :options, :attributes
6
+
7
+ def initialize(attributes = {}, options = {})
8
+ @attributes = attributes || {}
9
+ @options = options || {}
10
+ end
11
+
12
+ # string - Node ID from the pinned Automation definition.
13
+ def node_id
14
+ @attributes[:node_id]
15
+ end
16
+
17
+ # string - Node type.
18
+ def node_type
19
+ @attributes[:node_type]
20
+ end
21
+
22
+ # string - Node status.
23
+ def status
24
+ @attributes[:status]
25
+ end
26
+
27
+ # string - Current node execution stage.
28
+ def run_stage
29
+ @attributes[:run_stage]
30
+ end
31
+
32
+ # boolean - Whether this node reused persisted output from an earlier run.
33
+ def reused
34
+ @attributes[:reused]
35
+ end
36
+
37
+ # int64 - Count of successful operations in this node.
38
+ def successful_operations
39
+ @attributes[:successful_operations]
40
+ end
41
+
42
+ # int64 - Count of failed operations in this node.
43
+ def failed_operations
44
+ @attributes[:failed_operations]
45
+ end
46
+
47
+ # date-time - When this node started.
48
+ def started_at
49
+ @attributes[:started_at]
50
+ end
51
+
52
+ # date-time - When this node completed.
53
+ def completed_at
54
+ @attributes[:completed_at]
55
+ end
56
+
57
+ # int64 - Node runtime in milliseconds.
58
+ def duration_ms
59
+ @attributes[:duration_ms]
60
+ end
61
+
62
+ # array(object) - Ordered inbound edge references.
63
+ def inputs
64
+ @attributes[:inputs]
65
+ end
66
+
67
+ # object - Output counts, item kinds, and typed-error summaries by outlet.
68
+ def outputs
69
+ @attributes[:outputs]
70
+ end
71
+
72
+ # object - Materialized input items currently available, grouped by inlet.
73
+ def input_items
74
+ @attributes[:input_items]
75
+ end
76
+
77
+ # object - Materialized output items grouped by outlet.
78
+ def output_items
79
+ @attributes[:output_items]
80
+ end
81
+ end
82
+ end