files.com 1.0.163 → 1.0.168

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: bed444ff1310255cc27495e94e3f0da4c74b8eae7fd252f270bf1e55c0485756
4
- data.tar.gz: 69a0f5c6be3210a2eb95c3623ad73b497dabc332ae221690f54d25129ded050b
3
+ metadata.gz: 1ff3de6dc3e07517894e3477ed83afb509d6286e9bc43f0a3e159decede7149f
4
+ data.tar.gz: 81fba539b30ffd7ae9befc9f1d8d0882b265ee6da2ba3766e1d587726648098b
5
5
  SHA512:
6
- metadata.gz: 9eb2034cdd3e13de856cd41f8cc3ea769b0361d7096c9c27d51c1e975f6ec0912a6c2ff720daaa59e60f454ffebb672b0c8c7e5651cac9fa3dc98c360eb55d2f
7
- data.tar.gz: c6ffcc6aec230f813b9521775c558fe3a1c1a9188a43f6ab3fc4d33f9e448f3fdbfd298852886ea06ce600b8101641d55cedbe33f23b80c0bf5fa84525a5c501
6
+ metadata.gz: 20bf387f5f3a2ae9a81d8e10f42903d635a23a214b3c2b90c13b29c7e57341cb835c2a2503eb9618d1144f81b98aedbac28028cc2be824be8d47d18057aa8de3
7
+ data.tar.gz: b324710fa63caac950ea3f7df69b577947adba0846d3239db7b8aa2d6cea8d51572787149d15528c08373cb7b9cc67cc3318ae103fd8159c77177b0bd39e15d6
data/_VERSION CHANGED
@@ -1 +1 @@
1
- 1.0.163
1
+ 1.0.168
@@ -0,0 +1,82 @@
1
+ # ActionNotificationExport
2
+
3
+ ## Example ActionNotificationExport Object
4
+
5
+ ```
6
+ {
7
+ "id": 1,
8
+ "export_version": "20201213.2",
9
+ "start_at": "2000-01-01T01:00:00Z",
10
+ "end_at": "2000-01-01T01:00:00Z",
11
+ "status": "ready",
12
+ "query_path": "MyFile.txt",
13
+ "query_folder": "MyFolder",
14
+ "query_message": "Connection Refused",
15
+ "query_request_method": "GET",
16
+ "query_request_url": "http://example.com/webhook",
17
+ "query_status": "200",
18
+ "query_success": true,
19
+ "results_url": "https://files.com/action_notification_results.csv"
20
+ }
21
+ ```
22
+
23
+ * `id` (int64): History Export ID
24
+ * `export_version` (string): Version of the underlying records for the export.
25
+ * `start_at` (date-time): Start date/time of export range.
26
+ * `end_at` (date-time): End date/time of export range.
27
+ * `status` (string): Status of export. Valid values: `building`, `ready`, or `failed`
28
+ * `query_path` (string): Return notifications that were triggered by actions on this specific path.
29
+ * `query_folder` (string): Return notifications that were triggered by actions in this folder.
30
+ * `query_message` (string): Error message associated with the request, if any.
31
+ * `query_request_method` (string): The HTTP request method used by the webhook.
32
+ * `query_request_url` (string): The target webhook URL.
33
+ * `query_status` (string): The HTTP status returned from the server in response to the webhook request.
34
+ * `query_success` (boolean): true if the webhook request succeeded (i.e. returned a 200 or 204 response status). false otherwise.
35
+ * `results_url` (string): If `status` is `ready`, this will be a URL where all the results can be downloaded at once as a CSV.
36
+ * `user_id` (int64): User ID. Provide a value of `0` to operate the current session's user.
37
+
38
+
39
+ ---
40
+
41
+ ## Show Action Notification Export
42
+
43
+ ```
44
+ Files::ActionNotificationExport.find(id)
45
+ ```
46
+
47
+ ### Parameters
48
+
49
+ * `id` (int64): Required - Action Notification Export ID.
50
+
51
+
52
+ ---
53
+
54
+ ## Create Action Notification Export
55
+
56
+ ```
57
+ Files::ActionNotificationExport.create(
58
+ user_id: 1,
59
+ start_at: "2000-01-01T01:00:00Z",
60
+ end_at: "2000-01-01T01:00:00Z",
61
+ query_message: "Connection Refused",
62
+ query_request_method: "GET",
63
+ query_request_url: "http://example.com/webhook",
64
+ query_status: "200",
65
+ query_success: true,
66
+ query_path: "MyFile.txt",
67
+ query_folder: "MyFolder"
68
+ )
69
+ ```
70
+
71
+ ### Parameters
72
+
73
+ * `user_id` (int64): User ID. Provide a value of `0` to operate the current session's user.
74
+ * `start_at` (string): Start date/time of export range.
75
+ * `end_at` (string): End date/time of export range.
76
+ * `query_message` (string): Error message associated with the request, if any.
77
+ * `query_request_method` (string): The HTTP request method used by the webhook.
78
+ * `query_request_url` (string): The target webhook URL.
79
+ * `query_status` (string): The HTTP status returned from the server in response to the webhook request.
80
+ * `query_success` (boolean): true if the webhook request succeeded (i.e. returned a 200 or 204 response status). false otherwise.
81
+ * `query_path` (string): Return notifications that were triggered by actions on this specific path.
82
+ * `query_folder` (string): Return notifications that were triggered by actions in this folder.
@@ -0,0 +1,49 @@
1
+ # ActionNotificationExportResult
2
+
3
+ ## Example ActionNotificationExportResult Object
4
+
5
+ ```
6
+ {
7
+ "id": 1,
8
+ "created_at": 1,
9
+ "status": 200,
10
+ "message": "Success",
11
+ "success": true,
12
+ "request_headers": "{\"User-Agent\":\"Files.com Webhook\"}",
13
+ "request_method": "GET",
14
+ "request_url": "www.example.com/webhook_receiver",
15
+ "path": "MyFolder/MyFile.txt",
16
+ "folder": "MyFolder"
17
+ }
18
+ ```
19
+
20
+ * `id` (int64): Notification ID
21
+ * `created_at` (int64): When the notification was sent.
22
+ * `status` (int64): HTTP status code returned in the webhook response.
23
+ * `message` (string): A message indicating the overall status of the webhook notification.
24
+ * `success` (boolean): `true` if the webhook succeeded by receiving a 200 or 204 response.
25
+ * `request_headers` (string): A JSON-encoded string with headers that were sent with the webhook.
26
+ * `request_method` (string): The HTTP verb used to perform the webhook.
27
+ * `request_url` (string): The webhook request URL.
28
+ * `path` (string): The path to the actual file that triggered this notification. This must be slash-delimited, but it must neither start nor end with a slash. Maximum of 5000 characters.
29
+ * `folder` (string): The folder associated with the triggering action for this notification.
30
+
31
+
32
+ ---
33
+
34
+ ## List Action Notification Export Results
35
+
36
+ ```
37
+ Files::ActionNotificationExportResult.list(
38
+ user_id: 1,
39
+ per_page: 1,
40
+ action_notification_export_id: 1
41
+ )
42
+ ```
43
+
44
+ ### Parameters
45
+
46
+ * `user_id` (int64): User ID. Provide a value of `0` to operate the current session's user.
47
+ * `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 the X-Files-Cursor-Next header.
48
+ * `per_page` (int64): Number of records to show per page. (Max: 10,000, 1,000 or less is recommended).
49
+ * `action_notification_export_id` (int64): Required - ID of the associated action notification export.
@@ -4,6 +4,7 @@
4
4
 
5
5
  ```
6
6
  {
7
+ "id": 1,
7
8
  "event_type": "",
8
9
  "status": "",
9
10
  "body": "",
@@ -11,6 +12,7 @@
11
12
  }
12
13
  ```
13
14
 
15
+ * `id` (int64): Event ID
14
16
  * `event_type` (string): Type of event being recorded.
15
17
  * `status` (string): Status of event.
16
18
  * `body` (string): Event body
@@ -38,3 +40,16 @@ Files::ExternalEvent.list(
38
40
  * `filter_like` (object): If set, return records where the specifiied field is equal to the supplied value. Valid fields are `created_at`, `event_type`, `remote_server_type` or `status`.
39
41
  * `filter_lt` (object): If set, return records where the specifiied field is less than the supplied value. Valid fields are `created_at`, `event_type`, `remote_server_type` or `status`.
40
42
  * `filter_lteq` (object): If set, return records where the specifiied field is less than or equal to the supplied value. Valid fields are `created_at`, `event_type`, `remote_server_type` or `status`.
43
+
44
+
45
+ ---
46
+
47
+ ## Show External Event
48
+
49
+ ```
50
+ Files::ExternalEvent.find(id)
51
+ ```
52
+
53
+ ### Parameters
54
+
55
+ * `id` (int64): Required - External Event ID.
@@ -56,7 +56,7 @@
56
56
  * `query_target_username` (string): If searching for Histories about API keys, this parameter restricts results to API keys created by/for this username.
57
57
  * `query_target_platform` (string): If searching for Histories about API keys, this parameter restricts results to API keys associated with this platform.
58
58
  * `query_target_permission_set` (string): If searching for Histories about API keys, this parameter restricts results to API keys with this permission set.
59
- * `results_url` (string): If `status` is `ready` and the query succeeded, this will be a URL where all the results can be downloaded at once as a CSV.
59
+ * `results_url` (string): If `status` is `ready`, this will be a URL where all the results can be downloaded at once as a CSV.
60
60
  * `user_id` (int64): User ID. Provide a value of `0` to operate the current session's user.
61
61
 
62
62
 
@@ -31,7 +31,6 @@
31
31
  "auth_status": "in_setup",
32
32
  "auth_account_name": "me@example.com",
33
33
  "one_drive_account_type": "personal",
34
- "sharepoint_hostname": "filescom.sharepoint.com",
35
34
  "azure_blob_storage_account": "storage-account-name",
36
35
  "azure_blob_storage_container": "container-name"
37
36
  }
@@ -64,7 +63,6 @@
64
63
  * `auth_status` (string): Either `in_setup` or `complete`
65
64
  * `auth_account_name` (string): Describes the authorized account
66
65
  * `one_drive_account_type` (string): Either personal or business_other account types
67
- * `sharepoint_hostname` (string): Cloud hosted sharepoint hostname
68
66
  * `azure_blob_storage_account` (string): Azure Blob Storage Account name
69
67
  * `azure_blob_storage_container` (string): Azure Blob Storage Container name
70
68
  * `aws_access_key` (string): AWS Access Key.
@@ -139,7 +137,6 @@ Files::RemoteServer.create(
139
137
  rackspace_region: "dfw",
140
138
  rackspace_container: "my-container",
141
139
  one_drive_account_type: "personal",
142
- sharepoint_hostname: "filescom.sharepoint.com",
143
140
  azure_blob_storage_account: "storage-account-name",
144
141
  azure_blob_storage_container: "container-name"
145
142
  )
@@ -181,7 +178,6 @@ Files::RemoteServer.create(
181
178
  * `rackspace_region` (string): Three letter airport code for Rackspace region. See https://support.rackspace.com/how-to/about-regions/
182
179
  * `rackspace_container` (string): The name of the container (top level directory) where files will sync.
183
180
  * `one_drive_account_type` (string): Either personal or business_other account types
184
- * `sharepoint_hostname` (string): Cloud hosted sharepoint hostname
185
181
  * `azure_blob_storage_account` (string): Azure Blob Storage Account name
186
182
  * `azure_blob_storage_container` (string): Azure Blob Storage Container name
187
183
 
@@ -214,7 +210,6 @@ Files::RemoteServer.update(id,
214
210
  rackspace_region: "dfw",
215
211
  rackspace_container: "my-container",
216
212
  one_drive_account_type: "personal",
217
- sharepoint_hostname: "filescom.sharepoint.com",
218
213
  azure_blob_storage_account: "storage-account-name",
219
214
  azure_blob_storage_container: "container-name"
220
215
  )
@@ -257,7 +252,6 @@ Files::RemoteServer.update(id,
257
252
  * `rackspace_region` (string): Three letter airport code for Rackspace region. See https://support.rackspace.com/how-to/about-regions/
258
253
  * `rackspace_container` (string): The name of the container (top level directory) where files will sync.
259
254
  * `one_drive_account_type` (string): Either personal or business_other account types
260
- * `sharepoint_hostname` (string): Cloud hosted sharepoint hostname
261
255
  * `azure_blob_storage_account` (string): Azure Blob Storage Account name
262
256
  * `azure_blob_storage_container` (string): Azure Blob Storage Container name
263
257
 
@@ -305,7 +299,6 @@ remote_server.update(
305
299
  rackspace_region: "dfw",
306
300
  rackspace_container: "my-container",
307
301
  one_drive_account_type: "personal",
308
- sharepoint_hostname: "filescom.sharepoint.com",
309
302
  azure_blob_storage_account: "storage-account-name",
310
303
  azure_blob_storage_container: "container-name"
311
304
  )
@@ -348,7 +341,6 @@ remote_server.update(
348
341
  * `rackspace_region` (string): Three letter airport code for Rackspace region. See https://support.rackspace.com/how-to/about-regions/
349
342
  * `rackspace_container` (string): The name of the container (top level directory) where files will sync.
350
343
  * `one_drive_account_type` (string): Either personal or business_other account types
351
- * `sharepoint_hostname` (string): Cloud hosted sharepoint hostname
352
344
  * `azure_blob_storage_account` (string): Azure Blob Storage Account name
353
345
  * `azure_blob_storage_container` (string): Azure Blob Storage Container name
354
346
 
data/docs/site.md CHANGED
@@ -16,6 +16,7 @@
16
16
  "ask_about_overwrites": true,
17
17
  "bundle_expiration": 1,
18
18
  "bundle_password_required": true,
19
+ "bundle_require_share_recipient": true,
19
20
  "color2_left": "#0066a7",
20
21
  "color2_link": "#d34f5d",
21
22
  "color2_text": "#0066a7",
@@ -216,6 +217,7 @@
216
217
  * `ask_about_overwrites` (boolean): If false, rename conflicting files instead of asking for overwrite confirmation. Only applies to web interface.
217
218
  * `bundle_expiration` (int64): Site-wide Bundle expiration in days
218
219
  * `bundle_password_required` (boolean): Do Bundles require password protection?
220
+ * `bundle_require_share_recipient` (boolean): Do Bundles require recipients for sharing?
219
221
  * `color2_left` (string): Page link and button color
220
222
  * `color2_link` (string): Top bar link color
221
223
  * `color2_text` (string): Page link and button color
@@ -388,6 +390,7 @@ Files::Site.update(
388
390
  immutable_files: true,
389
391
  session_pinned_by_ip: true,
390
392
  bundle_password_required: true,
393
+ bundle_require_share_recipient: true,
391
394
  password_requirements_apply_to_bundles: true,
392
395
  opt_out_global: true,
393
396
  use_provided_modified_at: true,
@@ -484,6 +487,7 @@ Files::Site.update(
484
487
  * `immutable_files` (boolean): Are files protected from modification?
485
488
  * `session_pinned_by_ip` (boolean): Are sessions locked to the same IP? (i.e. do users need to log in again if they change IPs?)
486
489
  * `bundle_password_required` (boolean): Do Bundles require password protection?
490
+ * `bundle_require_share_recipient` (boolean): Do Bundles require recipients for sharing?
487
491
  * `password_requirements_apply_to_bundles` (boolean): Require bundles' passwords, and passwords for other items (inboxes, public shares, etc.) to conform to the same requirements as users' passwords?
488
492
  * `opt_out_global` (boolean): Use servers in the USA only?
489
493
  * `use_provided_modified_at` (boolean): Allow uploaders to set `provided_modified_at` for uploaded files?
data/docs/sso_strategy.md CHANGED
@@ -29,6 +29,7 @@
29
29
  "provision_group_exclusion": "Employees",
30
30
  "provision_group_inclusion": "Employees",
31
31
  "provision_group_required": "",
32
+ "provision_email_signup_groups": "Employees",
32
33
  "provision_site_admin_groups": "Employees",
33
34
  "provision_attachments_permission": true,
34
35
  "provision_dav_permission": true,
@@ -74,6 +75,7 @@
74
75
  * `provision_group_exclusion` (string): Comma-separated list of group names for groups (with optional wildcards) that will be excluded from auto-provisioning.
75
76
  * `provision_group_inclusion` (string): Comma-separated list of group names for groups (with optional wildcards) that will be auto-provisioned.
76
77
  * `provision_group_required` (string): Comma or newline separated list of group names (with optional wildcards) to require membership for user provisioning.
78
+ * `provision_email_signup_groups` (string): Comma-separated list of group names whose members will be created with email_signup authentication.
77
79
  * `provision_site_admin_groups` (string): Comma-separated list of group names whose members will be created as Site Admins.
78
80
  * `provision_attachments_permission` (boolean): DEPRECATED: Auto-provisioned users get Sharing permission. Use a Group with the Bundle permission instead.
79
81
  * `provision_dav_permission` (boolean): Auto-provisioned users get WebDAV permission?
data/lib/files.com.rb CHANGED
@@ -29,6 +29,8 @@ require "files.com/uri"
29
29
 
30
30
  require "files.com/models/account_line_item"
31
31
  require "files.com/models/action"
32
+ require "files.com/models/action_notification_export"
33
+ require "files.com/models/action_notification_export_result"
32
34
  require "files.com/models/api_key"
33
35
  require "files.com/models/app"
34
36
  require "files.com/models/as2_key"
@@ -118,11 +118,11 @@ module Files
118
118
  class ContactAdminForPasswordChangeHelpError < NotAuthorizedError; end
119
119
  class FolderAdminOrBillingPermissionRequiredError < NotAuthorizedError; end
120
120
  class FolderAdminPermissionRequiredError < NotAuthorizedError; end
121
- class HistoryExportNonAdminsMustQueryByFolderOrPathError < NotAuthorizedError; end
122
121
  class HistoryPermissionRequiredError < NotAuthorizedError; end
123
122
  class InsufficientPermissionForParamsError < NotAuthorizedError; end
124
123
  class MustAuthenticateWithApiKeyError < NotAuthorizedError; end
125
124
  class NeedAdminPermissionForInboxError < NotAuthorizedError; end
125
+ class NonAdminsMustQueryByFolderOrPathError < NotAuthorizedError; end
126
126
  class NotAllowedToCreateBundleError < NotAuthorizedError; end
127
127
  class PasswordChangeNotRequiredError < NotAuthorizedError; end
128
128
  class PasswordChangeRequiredError < NotAuthorizedError; end
@@ -158,6 +158,8 @@ module Files
158
158
  class DestinationParentConflictError < ProcessingFailureError; end
159
159
  class DestinationParentDoesNotExistError < ProcessingFailureError; end
160
160
  class ExpiredPublicKeyError < ProcessingFailureError; end
161
+ class ExportFailureError < ProcessingFailureError; end
162
+ class ExportNotReadyError < ProcessingFailureError; end
161
163
  class FailedToChangePasswordError < ProcessingFailureError; end
162
164
  class FileLockedError < ProcessingFailureError; end
163
165
  class FileNotUploadedError < ProcessingFailureError; end
@@ -165,8 +167,6 @@ module Files
165
167
  class FileUploadedToWrongRegionError < ProcessingFailureError; end
166
168
  class FolderLockedError < ProcessingFailureError; end
167
169
  class FolderNotEmptyError < ProcessingFailureError; end
168
- class HistoryExportFailureError < ProcessingFailureError; end
169
- class HistoryExportNotReadyError < ProcessingFailureError; end
170
170
  class HistoryUnavailableError < ProcessingFailureError; end
171
171
  class InvalidBundleCodeError < ProcessingFailureError; end
172
172
  class InvalidFileTypeError < ProcessingFailureError; end
@@ -0,0 +1,189 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Files
4
+ class ActionNotificationExport
5
+ attr_reader :options, :attributes
6
+
7
+ def initialize(attributes = {}, options = {})
8
+ @attributes = attributes || {}
9
+ @options = options || {}
10
+ end
11
+
12
+ # int64 - History Export ID
13
+ def id
14
+ @attributes[:id]
15
+ end
16
+
17
+ def id=(value)
18
+ @attributes[:id] = value
19
+ end
20
+
21
+ # string - Version of the underlying records for the export.
22
+ def export_version
23
+ @attributes[:export_version]
24
+ end
25
+
26
+ def export_version=(value)
27
+ @attributes[:export_version] = value
28
+ end
29
+
30
+ # date-time - Start date/time of export range.
31
+ def start_at
32
+ @attributes[:start_at]
33
+ end
34
+
35
+ def start_at=(value)
36
+ @attributes[:start_at] = value
37
+ end
38
+
39
+ # date-time - End date/time of export range.
40
+ def end_at
41
+ @attributes[:end_at]
42
+ end
43
+
44
+ def end_at=(value)
45
+ @attributes[:end_at] = value
46
+ end
47
+
48
+ # string - Status of export. Valid values: `building`, `ready`, or `failed`
49
+ def status
50
+ @attributes[:status]
51
+ end
52
+
53
+ def status=(value)
54
+ @attributes[:status] = value
55
+ end
56
+
57
+ # string - Return notifications that were triggered by actions on this specific path.
58
+ def query_path
59
+ @attributes[:query_path]
60
+ end
61
+
62
+ def query_path=(value)
63
+ @attributes[:query_path] = value
64
+ end
65
+
66
+ # string - Return notifications that were triggered by actions in this folder.
67
+ def query_folder
68
+ @attributes[:query_folder]
69
+ end
70
+
71
+ def query_folder=(value)
72
+ @attributes[:query_folder] = value
73
+ end
74
+
75
+ # string - Error message associated with the request, if any.
76
+ def query_message
77
+ @attributes[:query_message]
78
+ end
79
+
80
+ def query_message=(value)
81
+ @attributes[:query_message] = value
82
+ end
83
+
84
+ # string - The HTTP request method used by the webhook.
85
+ def query_request_method
86
+ @attributes[:query_request_method]
87
+ end
88
+
89
+ def query_request_method=(value)
90
+ @attributes[:query_request_method] = value
91
+ end
92
+
93
+ # string - The target webhook URL.
94
+ def query_request_url
95
+ @attributes[:query_request_url]
96
+ end
97
+
98
+ def query_request_url=(value)
99
+ @attributes[:query_request_url] = value
100
+ end
101
+
102
+ # string - The HTTP status returned from the server in response to the webhook request.
103
+ def query_status
104
+ @attributes[:query_status]
105
+ end
106
+
107
+ def query_status=(value)
108
+ @attributes[:query_status] = value
109
+ end
110
+
111
+ # boolean - true if the webhook request succeeded (i.e. returned a 200 or 204 response status). false otherwise.
112
+ def query_success
113
+ @attributes[:query_success]
114
+ end
115
+
116
+ def query_success=(value)
117
+ @attributes[:query_success] = value
118
+ end
119
+
120
+ # string - If `status` is `ready`, this will be a URL where all the results can be downloaded at once as a CSV.
121
+ def results_url
122
+ @attributes[:results_url]
123
+ end
124
+
125
+ def results_url=(value)
126
+ @attributes[:results_url] = value
127
+ end
128
+
129
+ # int64 - User ID. Provide a value of `0` to operate the current session's user.
130
+ def user_id
131
+ @attributes[:user_id]
132
+ end
133
+
134
+ def user_id=(value)
135
+ @attributes[:user_id] = value
136
+ end
137
+
138
+ def save
139
+ if @attributes[:id]
140
+ raise NotImplementedError.new("The ActionNotificationExport object doesn't support updates.")
141
+ else
142
+ new_obj = ActionNotificationExport.create(@attributes, @options)
143
+ @attributes = new_obj.attributes
144
+ end
145
+ end
146
+
147
+ # Parameters:
148
+ # id (required) - int64 - Action Notification Export ID.
149
+ def self.find(id, params = {}, options = {})
150
+ params ||= {}
151
+ params[:id] = id
152
+ raise InvalidParameterError.new("Bad parameter: id must be an Integer") if params.dig(:id) and !params.dig(:id).is_a?(Integer)
153
+ raise MissingParameterError.new("Parameter missing: id") unless params.dig(:id)
154
+
155
+ response, options = Api.send_request("/action_notification_exports/#{params[:id]}", :get, params, options)
156
+ ActionNotificationExport.new(response.data, options)
157
+ end
158
+
159
+ def self.get(id, params = {}, options = {})
160
+ find(id, params, options)
161
+ end
162
+
163
+ # Parameters:
164
+ # user_id - int64 - User ID. Provide a value of `0` to operate the current session's user.
165
+ # start_at - string - Start date/time of export range.
166
+ # end_at - string - End date/time of export range.
167
+ # query_message - string - Error message associated with the request, if any.
168
+ # query_request_method - string - The HTTP request method used by the webhook.
169
+ # query_request_url - string - The target webhook URL.
170
+ # query_status - string - The HTTP status returned from the server in response to the webhook request.
171
+ # query_success - boolean - true if the webhook request succeeded (i.e. returned a 200 or 204 response status). false otherwise.
172
+ # query_path - string - Return notifications that were triggered by actions on this specific path.
173
+ # query_folder - string - Return notifications that were triggered by actions in this folder.
174
+ def self.create(params = {}, options = {})
175
+ raise InvalidParameterError.new("Bad parameter: user_id must be an Integer") if params.dig(:user_id) and !params.dig(:user_id).is_a?(Integer)
176
+ raise InvalidParameterError.new("Bad parameter: start_at must be an String") if params.dig(:start_at) and !params.dig(:start_at).is_a?(String)
177
+ raise InvalidParameterError.new("Bad parameter: end_at must be an String") if params.dig(:end_at) and !params.dig(:end_at).is_a?(String)
178
+ raise InvalidParameterError.new("Bad parameter: query_message must be an String") if params.dig(:query_message) and !params.dig(:query_message).is_a?(String)
179
+ raise InvalidParameterError.new("Bad parameter: query_request_method must be an String") if params.dig(:query_request_method) and !params.dig(:query_request_method).is_a?(String)
180
+ raise InvalidParameterError.new("Bad parameter: query_request_url must be an String") if params.dig(:query_request_url) and !params.dig(:query_request_url).is_a?(String)
181
+ raise InvalidParameterError.new("Bad parameter: query_status must be an String") if params.dig(:query_status) and !params.dig(:query_status).is_a?(String)
182
+ raise InvalidParameterError.new("Bad parameter: query_path must be an String") if params.dig(:query_path) and !params.dig(:query_path).is_a?(String)
183
+ raise InvalidParameterError.new("Bad parameter: query_folder must be an String") if params.dig(:query_folder) and !params.dig(:query_folder).is_a?(String)
184
+
185
+ response, options = Api.send_request("/action_notification_exports", :post, params, options)
186
+ ActionNotificationExport.new(response.data, options)
187
+ end
188
+ end
189
+ end
@@ -0,0 +1,83 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Files
4
+ class ActionNotificationExportResult
5
+ attr_reader :options, :attributes
6
+
7
+ def initialize(attributes = {}, options = {})
8
+ @attributes = attributes || {}
9
+ @options = options || {}
10
+ end
11
+
12
+ # int64 - Notification ID
13
+ def id
14
+ @attributes[:id]
15
+ end
16
+
17
+ # int64 - When the notification was sent.
18
+ def created_at
19
+ @attributes[:created_at]
20
+ end
21
+
22
+ # int64 - HTTP status code returned in the webhook response.
23
+ def status
24
+ @attributes[:status]
25
+ end
26
+
27
+ # string - A message indicating the overall status of the webhook notification.
28
+ def message
29
+ @attributes[:message]
30
+ end
31
+
32
+ # boolean - `true` if the webhook succeeded by receiving a 200 or 204 response.
33
+ def success
34
+ @attributes[:success]
35
+ end
36
+
37
+ # string - A JSON-encoded string with headers that were sent with the webhook.
38
+ def request_headers
39
+ @attributes[:request_headers]
40
+ end
41
+
42
+ # string - The HTTP verb used to perform the webhook.
43
+ def request_method
44
+ @attributes[:request_method]
45
+ end
46
+
47
+ # string - The webhook request URL.
48
+ def request_url
49
+ @attributes[:request_url]
50
+ end
51
+
52
+ # string - The path to the actual file that triggered this notification. This must be slash-delimited, but it must neither start nor end with a slash. Maximum of 5000 characters.
53
+ def path
54
+ @attributes[:path]
55
+ end
56
+
57
+ # string - The folder associated with the triggering action for this notification.
58
+ def folder
59
+ @attributes[:folder]
60
+ end
61
+
62
+ # Parameters:
63
+ # user_id - int64 - User ID. Provide a value of `0` to operate the current session's user.
64
+ # 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 the X-Files-Cursor-Next header.
65
+ # per_page - int64 - Number of records to show per page. (Max: 10,000, 1,000 or less is recommended).
66
+ # action_notification_export_id (required) - int64 - ID of the associated action notification export.
67
+ def self.list(params = {}, options = {})
68
+ raise InvalidParameterError.new("Bad parameter: user_id must be an Integer") if params.dig(:user_id) and !params.dig(:user_id).is_a?(Integer)
69
+ raise InvalidParameterError.new("Bad parameter: cursor must be an String") if params.dig(:cursor) and !params.dig(:cursor).is_a?(String)
70
+ raise InvalidParameterError.new("Bad parameter: per_page must be an Integer") if params.dig(:per_page) and !params.dig(:per_page).is_a?(Integer)
71
+ raise InvalidParameterError.new("Bad parameter: action_notification_export_id must be an Integer") if params.dig(:action_notification_export_id) and !params.dig(:action_notification_export_id).is_a?(Integer)
72
+ raise MissingParameterError.new("Parameter missing: action_notification_export_id") unless params.dig(:action_notification_export_id)
73
+
74
+ List.new(ActionNotificationExportResult, params) do
75
+ Api.send_request("/action_notification_export_results", :get, params, options)
76
+ end
77
+ end
78
+
79
+ def self.all(params = {}, options = {})
80
+ list(params, options)
81
+ end
82
+ end
83
+ end
@@ -9,6 +9,11 @@ module Files
9
9
  @options = options || {}
10
10
  end
11
11
 
12
+ # int64 - Event ID
13
+ def id
14
+ @attributes[:id]
15
+ end
16
+
12
17
  # string - Type of event being recorded.
13
18
  def event_type
14
19
  @attributes[:event_type]
@@ -58,5 +63,21 @@ module Files
58
63
  def self.all(params = {}, options = {})
59
64
  list(params, options)
60
65
  end
66
+
67
+ # Parameters:
68
+ # id (required) - int64 - External Event ID.
69
+ def self.find(id, params = {}, options = {})
70
+ params ||= {}
71
+ params[:id] = id
72
+ raise InvalidParameterError.new("Bad parameter: id must be an Integer") if params.dig(:id) and !params.dig(:id).is_a?(Integer)
73
+ raise MissingParameterError.new("Parameter missing: id") unless params.dig(:id)
74
+
75
+ response, options = Api.send_request("/external_events/#{params[:id]}", :get, params, options)
76
+ ExternalEvent.new(response.data, options)
77
+ end
78
+
79
+ def self.get(id, params = {}, options = {})
80
+ find(id, params, options)
81
+ end
61
82
  end
62
83
  end
@@ -225,7 +225,7 @@ module Files
225
225
  @attributes[:query_target_permission_set] = value
226
226
  end
227
227
 
228
- # string - If `status` is `ready` and the query succeeded, this will be a URL where all the results can be downloaded at once as a CSV.
228
+ # string - If `status` is `ready`, this will be a URL where all the results can be downloaded at once as a CSV.
229
229
  def results_url
230
230
  @attributes[:results_url]
231
231
  end
@@ -252,15 +252,6 @@ module Files
252
252
  @attributes[:one_drive_account_type] = value
253
253
  end
254
254
 
255
- # string - Cloud hosted sharepoint hostname
256
- def sharepoint_hostname
257
- @attributes[:sharepoint_hostname]
258
- end
259
-
260
- def sharepoint_hostname=(value)
261
- @attributes[:sharepoint_hostname] = value
262
- end
263
-
264
255
  # string - Azure Blob Storage Account name
265
256
  def azure_blob_storage_account
266
257
  @attributes[:azure_blob_storage_account]
@@ -431,7 +422,6 @@ module Files
431
422
  # rackspace_region - string - Three letter airport code for Rackspace region. See https://support.rackspace.com/how-to/about-regions/
432
423
  # rackspace_container - string - The name of the container (top level directory) where files will sync.
433
424
  # one_drive_account_type - string - Either personal or business_other account types
434
- # sharepoint_hostname - string - Cloud hosted sharepoint hostname
435
425
  # azure_blob_storage_account - string - Azure Blob Storage Account name
436
426
  # azure_blob_storage_container - string - Azure Blob Storage Container name
437
427
  def update(params = {})
@@ -472,7 +462,6 @@ module Files
472
462
  raise InvalidParameterError.new("Bad parameter: rackspace_region must be an String") if params.dig(:rackspace_region) and !params.dig(:rackspace_region).is_a?(String)
473
463
  raise InvalidParameterError.new("Bad parameter: rackspace_container must be an String") if params.dig(:rackspace_container) and !params.dig(:rackspace_container).is_a?(String)
474
464
  raise InvalidParameterError.new("Bad parameter: one_drive_account_type must be an String") if params.dig(:one_drive_account_type) and !params.dig(:one_drive_account_type).is_a?(String)
475
- raise InvalidParameterError.new("Bad parameter: sharepoint_hostname must be an String") if params.dig(:sharepoint_hostname) and !params.dig(:sharepoint_hostname).is_a?(String)
476
465
  raise InvalidParameterError.new("Bad parameter: azure_blob_storage_account must be an String") if params.dig(:azure_blob_storage_account) and !params.dig(:azure_blob_storage_account).is_a?(String)
477
466
  raise InvalidParameterError.new("Bad parameter: azure_blob_storage_container must be an String") if params.dig(:azure_blob_storage_container) and !params.dig(:azure_blob_storage_container).is_a?(String)
478
467
  raise MissingParameterError.new("Parameter missing: id") unless params.dig(:id)
@@ -570,7 +559,6 @@ module Files
570
559
  # rackspace_region - string - Three letter airport code for Rackspace region. See https://support.rackspace.com/how-to/about-regions/
571
560
  # rackspace_container - string - The name of the container (top level directory) where files will sync.
572
561
  # one_drive_account_type - string - Either personal or business_other account types
573
- # sharepoint_hostname - string - Cloud hosted sharepoint hostname
574
562
  # azure_blob_storage_account - string - Azure Blob Storage Account name
575
563
  # azure_blob_storage_container - string - Azure Blob Storage Container name
576
564
  def self.create(params = {}, options = {})
@@ -607,7 +595,6 @@ module Files
607
595
  raise InvalidParameterError.new("Bad parameter: rackspace_region must be an String") if params.dig(:rackspace_region) and !params.dig(:rackspace_region).is_a?(String)
608
596
  raise InvalidParameterError.new("Bad parameter: rackspace_container must be an String") if params.dig(:rackspace_container) and !params.dig(:rackspace_container).is_a?(String)
609
597
  raise InvalidParameterError.new("Bad parameter: one_drive_account_type must be an String") if params.dig(:one_drive_account_type) and !params.dig(:one_drive_account_type).is_a?(String)
610
- raise InvalidParameterError.new("Bad parameter: sharepoint_hostname must be an String") if params.dig(:sharepoint_hostname) and !params.dig(:sharepoint_hostname).is_a?(String)
611
598
  raise InvalidParameterError.new("Bad parameter: azure_blob_storage_account must be an String") if params.dig(:azure_blob_storage_account) and !params.dig(:azure_blob_storage_account).is_a?(String)
612
599
  raise InvalidParameterError.new("Bad parameter: azure_blob_storage_container must be an String") if params.dig(:azure_blob_storage_container) and !params.dig(:azure_blob_storage_container).is_a?(String)
613
600
 
@@ -650,7 +637,6 @@ module Files
650
637
  # rackspace_region - string - Three letter airport code for Rackspace region. See https://support.rackspace.com/how-to/about-regions/
651
638
  # rackspace_container - string - The name of the container (top level directory) where files will sync.
652
639
  # one_drive_account_type - string - Either personal or business_other account types
653
- # sharepoint_hostname - string - Cloud hosted sharepoint hostname
654
640
  # azure_blob_storage_account - string - Azure Blob Storage Account name
655
641
  # azure_blob_storage_container - string - Azure Blob Storage Container name
656
642
  def self.update(id, params = {}, options = {})
@@ -690,7 +676,6 @@ module Files
690
676
  raise InvalidParameterError.new("Bad parameter: rackspace_region must be an String") if params.dig(:rackspace_region) and !params.dig(:rackspace_region).is_a?(String)
691
677
  raise InvalidParameterError.new("Bad parameter: rackspace_container must be an String") if params.dig(:rackspace_container) and !params.dig(:rackspace_container).is_a?(String)
692
678
  raise InvalidParameterError.new("Bad parameter: one_drive_account_type must be an String") if params.dig(:one_drive_account_type) and !params.dig(:one_drive_account_type).is_a?(String)
693
- raise InvalidParameterError.new("Bad parameter: sharepoint_hostname must be an String") if params.dig(:sharepoint_hostname) and !params.dig(:sharepoint_hostname).is_a?(String)
694
679
  raise InvalidParameterError.new("Bad parameter: azure_blob_storage_account must be an String") if params.dig(:azure_blob_storage_account) and !params.dig(:azure_blob_storage_account).is_a?(String)
695
680
  raise InvalidParameterError.new("Bad parameter: azure_blob_storage_container must be an String") if params.dig(:azure_blob_storage_container) and !params.dig(:azure_blob_storage_container).is_a?(String)
696
681
  raise MissingParameterError.new("Parameter missing: id") unless params.dig(:id)
@@ -69,6 +69,11 @@ module Files
69
69
  @attributes[:bundle_password_required]
70
70
  end
71
71
 
72
+ # boolean - Do Bundles require recipients for sharing?
73
+ def bundle_require_share_recipient
74
+ @attributes[:bundle_require_share_recipient]
75
+ end
76
+
72
77
  # string - Page link and button color
73
78
  def color2_left
74
79
  @attributes[:color2_left]
@@ -632,6 +637,7 @@ module Files
632
637
  # immutable_files - boolean - Are files protected from modification?
633
638
  # session_pinned_by_ip - boolean - Are sessions locked to the same IP? (i.e. do users need to log in again if they change IPs?)
634
639
  # bundle_password_required - boolean - Do Bundles require password protection?
640
+ # bundle_require_share_recipient - boolean - Do Bundles require recipients for sharing?
635
641
  # password_requirements_apply_to_bundles - boolean - Require bundles' passwords, and passwords for other items (inboxes, public shares, etc.) to conform to the same requirements as users' passwords?
636
642
  # opt_out_global - boolean - Use servers in the USA only?
637
643
  # use_provided_modified_at - boolean - Allow uploaders to set `provided_modified_at` for uploaded files?
@@ -134,6 +134,11 @@ module Files
134
134
  @attributes[:provision_group_required]
135
135
  end
136
136
 
137
+ # string - Comma-separated list of group names whose members will be created with email_signup authentication.
138
+ def provision_email_signup_groups
139
+ @attributes[:provision_email_signup_groups]
140
+ end
141
+
137
142
  # string - Comma-separated list of group names whose members will be created as Site Admins.
138
143
  def provision_site_admin_groups
139
144
  @attributes[:provision_site_admin_groups]
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: files.com
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.163
4
+ version: 1.0.168
5
5
  platform: ruby
6
6
  authors:
7
7
  - files.com
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-04-19 00:00:00.000000000 Z
11
+ date: 2021-05-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: addressable
@@ -88,6 +88,8 @@ files:
88
88
  - build.sh
89
89
  - docs/account_line_item.md
90
90
  - docs/action.md
91
+ - docs/action_notification_export.md
92
+ - docs/action_notification_export_result.md
91
93
  - docs/api_key.md
92
94
  - docs/app.md
93
95
  - docs/as2_key.md
@@ -160,6 +162,8 @@ files:
160
162
  - lib/files.com/list.rb
161
163
  - lib/files.com/models/account_line_item.rb
162
164
  - lib/files.com/models/action.rb
165
+ - lib/files.com/models/action_notification_export.rb
166
+ - lib/files.com/models/action_notification_export_result.rb
163
167
  - lib/files.com/models/api_key.rb
164
168
  - lib/files.com/models/app.rb
165
169
  - lib/files.com/models/as2_key.rb