files.com 1.1.621 → 1.1.623
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 +4 -4
- data/_VERSION +1 -1
- data/docs/event_channel.md +147 -0
- data/docs/event_delivery_attempt.md +68 -0
- data/docs/event_record.md +77 -0
- data/docs/event_subscription.md +188 -0
- data/docs/event_target.md +171 -0
- data/docs/external_event.md +3 -19
- data/docs/pending_work_event.md +60 -0
- data/docs/siem_http_destination_event.md +60 -0
- data/docs/site.md +9 -0
- data/docs/sso_event.md +73 -0
- data/docs/user.md +68 -4
- data/docs/user_security_event.md +58 -0
- data/lib/files.com/models/event_channel.rb +192 -0
- data/lib/files.com/models/event_delivery_attempt.rb +123 -0
- data/lib/files.com/models/event_record.rb +133 -0
- data/lib/files.com/models/event_subscription.rb +265 -0
- data/lib/files.com/models/event_target.rb +237 -0
- data/lib/files.com/models/external_event.rb +2 -74
- data/lib/files.com/models/pending_work_event.rb +96 -0
- data/lib/files.com/models/siem_http_destination_event.rb +96 -0
- data/lib/files.com/models/sso_event.rb +128 -0
- data/lib/files.com/models/user.rb +100 -4
- data/lib/files.com/models/user_security_event.rb +91 -0
- data/lib/files.com/version.rb +1 -1
- data/lib/files.com.rb +9 -0
- metadata +20 -2
data/docs/external_event.md
CHANGED
|
@@ -9,15 +9,7 @@
|
|
|
9
9
|
"status": "example",
|
|
10
10
|
"body": "example",
|
|
11
11
|
"created_at": "2000-01-01T01:00:00Z",
|
|
12
|
-
"body_url": "example"
|
|
13
|
-
"folder_behavior_id": 1,
|
|
14
|
-
"siem_http_destination_id": 1,
|
|
15
|
-
"successful_files": 1,
|
|
16
|
-
"errored_files": 1,
|
|
17
|
-
"bytes_synced": 1,
|
|
18
|
-
"compared_files": 1,
|
|
19
|
-
"compared_folders": 1,
|
|
20
|
-
"remote_server_type": "example"
|
|
12
|
+
"body_url": "example"
|
|
21
13
|
}
|
|
22
14
|
```
|
|
23
15
|
|
|
@@ -27,14 +19,6 @@
|
|
|
27
19
|
* `body` (string): Event body
|
|
28
20
|
* `created_at` (date-time): External event create date/time
|
|
29
21
|
* `body_url` (string): Link to log file.
|
|
30
|
-
* `folder_behavior_id` (int64): Folder Behavior ID
|
|
31
|
-
* `siem_http_destination_id` (int64): SIEM HTTP Destination ID.
|
|
32
|
-
* `successful_files` (int64): For sync events, the number of files handled successfully.
|
|
33
|
-
* `errored_files` (int64): For sync events, the number of files that encountered errors.
|
|
34
|
-
* `bytes_synced` (int64): For sync events, the total number of bytes synced.
|
|
35
|
-
* `compared_files` (int64): For sync events, the number of files considered for the sync.
|
|
36
|
-
* `compared_folders` (int64): For sync events, the number of folders listed and considered for the sync.
|
|
37
|
-
* `remote_server_type` (string): Associated Remote Server type, if any
|
|
38
22
|
|
|
39
23
|
|
|
40
24
|
---
|
|
@@ -49,8 +33,8 @@ Files::ExternalEvent.list
|
|
|
49
33
|
|
|
50
34
|
* `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.
|
|
51
35
|
* `per_page` (int64): Number of records to show per page. (Max: 10,000, 1,000 or less is recommended).
|
|
52
|
-
* `sort_by` (object): If set, sort records by the specified field in either `asc` or `desc` direction. Valid fields are `
|
|
53
|
-
* `filter` (object): If set, return records where the specified field is equal to the supplied value. Valid fields are `created_at
|
|
36
|
+
* `sort_by` (object): If set, sort records by the specified field in either `asc` or `desc` direction. Valid fields are `created_at`, `status` or `event_type`.
|
|
37
|
+
* `filter` (object): If set, return records where the specified field is equal to the supplied value. Valid fields are `created_at` and `status`. Valid field combinations are `[ status, created_at ]`.
|
|
54
38
|
* `filter_gt` (object): If set, return records where the specified field is greater than the supplied value. Valid fields are `created_at`.
|
|
55
39
|
* `filter_gteq` (object): If set, return records where the specified field is greater than or equal the supplied value. Valid fields are `created_at`.
|
|
56
40
|
* `filter_lt` (object): If set, return records where the specified field is less than the supplied value. Valid fields are `created_at`.
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
# PendingWorkEvent
|
|
2
|
+
|
|
3
|
+
## Example PendingWorkEvent Object
|
|
4
|
+
|
|
5
|
+
```
|
|
6
|
+
{
|
|
7
|
+
"id": 1,
|
|
8
|
+
"event_type": "example",
|
|
9
|
+
"status": "example",
|
|
10
|
+
"body": "example",
|
|
11
|
+
"event_errors": [
|
|
12
|
+
"example"
|
|
13
|
+
],
|
|
14
|
+
"created_at": "2000-01-01T01:00:00Z",
|
|
15
|
+
"body_url": "example",
|
|
16
|
+
"folder_behavior_id": 1
|
|
17
|
+
}
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
* `id` (int64): Event ID
|
|
21
|
+
* `event_type` (string): Type of pending work event being recorded.
|
|
22
|
+
* `status` (string): Status of event.
|
|
23
|
+
* `body` (string): Event body.
|
|
24
|
+
* `event_errors` (array(string)): Event errors.
|
|
25
|
+
* `created_at` (date-time): Event create date/time.
|
|
26
|
+
* `body_url` (string): Link to log file.
|
|
27
|
+
* `folder_behavior_id` (int64): Folder Behavior ID.
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
---
|
|
31
|
+
|
|
32
|
+
## List Pending Work Events
|
|
33
|
+
|
|
34
|
+
```
|
|
35
|
+
Files::PendingWorkEvent.list
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
### Parameters
|
|
39
|
+
|
|
40
|
+
* `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.
|
|
41
|
+
* `per_page` (int64): Number of records to show per page. (Max: 10,000, 1,000 or less is recommended).
|
|
42
|
+
* `sort_by` (object): If set, sort records by the specified field in either `asc` or `desc` direction. Valid fields are `created_at`, `status` or `folder_behavior_id`.
|
|
43
|
+
* `filter` (object): If set, return records where the specified field is equal to the supplied value. Valid fields are `created_at`, `folder_behavior_id` or `status`. Valid field combinations are `[ folder_behavior_id, created_at ]`, `[ status, created_at ]`, `[ folder_behavior_id, status ]` or `[ folder_behavior_id, status, created_at ]`.
|
|
44
|
+
* `filter_gt` (object): If set, return records where the specified field is greater than the supplied value. Valid fields are `created_at`.
|
|
45
|
+
* `filter_gteq` (object): If set, return records where the specified field is greater than or equal the supplied value. Valid fields are `created_at`.
|
|
46
|
+
* `filter_lt` (object): If set, return records where the specified field is less than the supplied value. Valid fields are `created_at`.
|
|
47
|
+
* `filter_lteq` (object): If set, return records where the specified field is less than or equal the supplied value. Valid fields are `created_at`.
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
---
|
|
51
|
+
|
|
52
|
+
## Show Pending Work Event
|
|
53
|
+
|
|
54
|
+
```
|
|
55
|
+
Files::PendingWorkEvent.find(id)
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
### Parameters
|
|
59
|
+
|
|
60
|
+
* `id` (int64): Required - Pending Work Event ID.
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
# SiemHttpDestinationEvent
|
|
2
|
+
|
|
3
|
+
## Example SiemHttpDestinationEvent Object
|
|
4
|
+
|
|
5
|
+
```
|
|
6
|
+
{
|
|
7
|
+
"id": 1,
|
|
8
|
+
"event_type": "example",
|
|
9
|
+
"status": "example",
|
|
10
|
+
"body": "example",
|
|
11
|
+
"event_errors": [
|
|
12
|
+
"example"
|
|
13
|
+
],
|
|
14
|
+
"created_at": "2000-01-01T01:00:00Z",
|
|
15
|
+
"body_url": "example",
|
|
16
|
+
"siem_http_destination_id": 1
|
|
17
|
+
}
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
* `id` (int64): Event ID
|
|
21
|
+
* `event_type` (string): Type of SIEM event being recorded.
|
|
22
|
+
* `status` (string): Status of event.
|
|
23
|
+
* `body` (string): Event body.
|
|
24
|
+
* `event_errors` (array(string)): Event errors.
|
|
25
|
+
* `created_at` (date-time): Event create date/time.
|
|
26
|
+
* `body_url` (string): Link to log file.
|
|
27
|
+
* `siem_http_destination_id` (int64): SIEM ID.
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
---
|
|
31
|
+
|
|
32
|
+
## List SIEM HTTP Destination Events
|
|
33
|
+
|
|
34
|
+
```
|
|
35
|
+
Files::SiemHttpDestinationEvent.list
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
### Parameters
|
|
39
|
+
|
|
40
|
+
* `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.
|
|
41
|
+
* `per_page` (int64): Number of records to show per page. (Max: 10,000, 1,000 or less is recommended).
|
|
42
|
+
* `sort_by` (object): If set, sort records by the specified field in either `asc` or `desc` direction. Valid fields are `created_at`, `status` or `siem_http_destination_id`.
|
|
43
|
+
* `filter` (object): If set, return records where the specified field is equal to the supplied value. Valid fields are `created_at`, `siem_http_destination_id` or `status`. Valid field combinations are `[ siem_http_destination_id, created_at ]`, `[ status, created_at ]`, `[ siem_http_destination_id, status ]` or `[ siem_http_destination_id, status, created_at ]`.
|
|
44
|
+
* `filter_gt` (object): If set, return records where the specified field is greater than the supplied value. Valid fields are `created_at`.
|
|
45
|
+
* `filter_gteq` (object): If set, return records where the specified field is greater than or equal the supplied value. Valid fields are `created_at`.
|
|
46
|
+
* `filter_lt` (object): If set, return records where the specified field is less than the supplied value. Valid fields are `created_at`.
|
|
47
|
+
* `filter_lteq` (object): If set, return records where the specified field is less than or equal the supplied value. Valid fields are `created_at`.
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
---
|
|
51
|
+
|
|
52
|
+
## Show SIEM HTTP Destination Event
|
|
53
|
+
|
|
54
|
+
```
|
|
55
|
+
Files::SiemHttpDestinationEvent.find(id)
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
### Parameters
|
|
59
|
+
|
|
60
|
+
* `id` (int64): Required - Siem Http Destination Event ID.
|
data/docs/site.md
CHANGED
|
@@ -184,6 +184,7 @@
|
|
|
184
184
|
"site_id": 1,
|
|
185
185
|
"ssl_required": true,
|
|
186
186
|
"timeout_at": "2000-01-01T01:00:00Z",
|
|
187
|
+
"trusted": true,
|
|
187
188
|
"two_factor_setup_needed": false,
|
|
188
189
|
"allowed_2fa_method_sms": true,
|
|
189
190
|
"allowed_2fa_method_totp": true,
|
|
@@ -280,6 +281,14 @@
|
|
|
280
281
|
"primary_group_id": 1,
|
|
281
282
|
"public_keys_count": 1,
|
|
282
283
|
"receive_admin_alerts": true,
|
|
284
|
+
"notify_on_all_site_warnings": true,
|
|
285
|
+
"notify_on_all_sso_failures": true,
|
|
286
|
+
"notify_on_all_user_security_events": true,
|
|
287
|
+
"notify_on_all_pending_work_failures": true,
|
|
288
|
+
"notify_on_all_siem_http_destination_failures": true,
|
|
289
|
+
"notify_on_all_sync_failures": true,
|
|
290
|
+
"notify_on_all_automation_failures": true,
|
|
291
|
+
"notify_on_all_expectation_failures": true,
|
|
283
292
|
"require_2fa": "always_require",
|
|
284
293
|
"require_login_by": "2000-01-01T01:00:00Z",
|
|
285
294
|
"active_2fa": true,
|
data/docs/sso_event.md
ADDED
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
# SsoEvent
|
|
2
|
+
|
|
3
|
+
## Example SsoEvent Object
|
|
4
|
+
|
|
5
|
+
```
|
|
6
|
+
{
|
|
7
|
+
"id": 1,
|
|
8
|
+
"event_type": "example",
|
|
9
|
+
"status": "example",
|
|
10
|
+
"body": "example",
|
|
11
|
+
"event_errors": [
|
|
12
|
+
"example"
|
|
13
|
+
],
|
|
14
|
+
"created_at": "2000-01-01T01:00:00Z",
|
|
15
|
+
"body_url": "example",
|
|
16
|
+
"user_id": 1,
|
|
17
|
+
"username": "example",
|
|
18
|
+
"idp_uid": "example",
|
|
19
|
+
"provider": "example",
|
|
20
|
+
"provider_label": "example",
|
|
21
|
+
"ip": "example",
|
|
22
|
+
"region": "example"
|
|
23
|
+
}
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
* `id` (int64): Event ID
|
|
27
|
+
* `event_type` (string): Type of SSO event being recorded.
|
|
28
|
+
* `status` (string): Status of event.
|
|
29
|
+
* `body` (string): Event body.
|
|
30
|
+
* `event_errors` (array(string)): Event errors.
|
|
31
|
+
* `created_at` (date-time): Event create date/time.
|
|
32
|
+
* `body_url` (string): Link to log file.
|
|
33
|
+
* `user_id` (int64): User ID.
|
|
34
|
+
* `username` (string): Username on Files.com for the SSO login attempt.
|
|
35
|
+
* `idp_uid` (string): Identity Provider UID for the SSO login attempt.
|
|
36
|
+
* `provider` (string): SSO provider for the SSO login attempt.
|
|
37
|
+
* `provider_label` (string): SSO provider label for the SSO login attempt.
|
|
38
|
+
* `ip` (string): IP address for the SSO login attempt.
|
|
39
|
+
* `region` (string): Region for the SSO login attempt.
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
---
|
|
43
|
+
|
|
44
|
+
## List SSO Events
|
|
45
|
+
|
|
46
|
+
```
|
|
47
|
+
Files::SsoEvent.list
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
### Parameters
|
|
51
|
+
|
|
52
|
+
* `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.
|
|
53
|
+
* `per_page` (int64): Number of records to show per page. (Max: 10,000, 1,000 or less is recommended).
|
|
54
|
+
* `sort_by` (object): If set, sort records by the specified field in either `asc` or `desc` direction. Valid fields are `created_at`, `event_type`, `status` or `user_id`.
|
|
55
|
+
* `filter` (object): If set, return records where the specified field is equal to the supplied value. Valid fields are `created_at`, `event_type`, `idp_uid`, `ip`, `provider`, `status`, `user_id` or `username`. Valid field combinations are `[ event_type, created_at ]`, `[ idp_uid, created_at ]`, `[ ip, created_at ]`, `[ provider, created_at ]`, `[ status, created_at ]`, `[ user_id, created_at ]`, `[ username, created_at ]`, `[ event_type, status ]`, `[ idp_uid, status ]`, `[ ip, status ]`, `[ provider, status ]`, `[ user_id, status ]`, `[ username, status ]`, `[ event_type, status, created_at ]`, `[ idp_uid, status, created_at ]`, `[ ip, status, created_at ]`, `[ provider, status, created_at ]`, `[ user_id, status, created_at ]` or `[ username, status, created_at ]`.
|
|
56
|
+
* `filter_gt` (object): If set, return records where the specified field is greater than the supplied value. Valid fields are `created_at`.
|
|
57
|
+
* `filter_gteq` (object): If set, return records where the specified field is greater than or equal the supplied value. Valid fields are `created_at`.
|
|
58
|
+
* `filter_prefix` (object): If set, return records where the specified field is prefixed by the supplied value. Valid fields are `idp_uid`, `ip`, `provider` or `username`.
|
|
59
|
+
* `filter_lt` (object): If set, return records where the specified field is less than the supplied value. Valid fields are `created_at`.
|
|
60
|
+
* `filter_lteq` (object): If set, return records where the specified field is less than or equal the supplied value. Valid fields are `created_at`.
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
## Show SSO Event
|
|
66
|
+
|
|
67
|
+
```
|
|
68
|
+
Files::SsoEvent.find(id)
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
### Parameters
|
|
72
|
+
|
|
73
|
+
* `id` (int64): Required - Sso Event ID.
|
data/docs/user.md
CHANGED
|
@@ -55,6 +55,14 @@
|
|
|
55
55
|
"primary_group_id": 1,
|
|
56
56
|
"public_keys_count": 1,
|
|
57
57
|
"receive_admin_alerts": true,
|
|
58
|
+
"notify_on_all_site_warnings": true,
|
|
59
|
+
"notify_on_all_sso_failures": true,
|
|
60
|
+
"notify_on_all_user_security_events": true,
|
|
61
|
+
"notify_on_all_pending_work_failures": true,
|
|
62
|
+
"notify_on_all_siem_http_destination_failures": true,
|
|
63
|
+
"notify_on_all_sync_failures": true,
|
|
64
|
+
"notify_on_all_automation_failures": true,
|
|
65
|
+
"notify_on_all_expectation_failures": true,
|
|
58
66
|
"require_2fa": "always_require",
|
|
59
67
|
"require_login_by": "2000-01-01T01:00:00Z",
|
|
60
68
|
"active_2fa": true,
|
|
@@ -132,7 +140,15 @@
|
|
|
132
140
|
* `password_validity_days` (int64): Number of days to allow user to use the same password
|
|
133
141
|
* `primary_group_id` (int64): Primary group ID for Group Admin scoping
|
|
134
142
|
* `public_keys_count` (int64): Number of public keys associated with this user
|
|
135
|
-
* `receive_admin_alerts` (boolean):
|
|
143
|
+
* `receive_admin_alerts` (boolean): Deprecated. Use notify_on_all_site_warnings and granular failure notification preferences instead.
|
|
144
|
+
* `notify_on_all_site_warnings` (boolean): Should the user receive site warnings via email?
|
|
145
|
+
* `notify_on_all_sso_failures` (boolean): Should the user receive sso/scim/ldap configuration/sync failures via email?
|
|
146
|
+
* `notify_on_all_user_security_events` (boolean): Should the user receive user security events via email?
|
|
147
|
+
* `notify_on_all_pending_work_failures` (boolean): Should the user receive pending work failures via email?
|
|
148
|
+
* `notify_on_all_siem_http_destination_failures` (boolean): Should the user receive siem failures via email?
|
|
149
|
+
* `notify_on_all_sync_failures` (boolean): Should the user receive sync failures via email?
|
|
150
|
+
* `notify_on_all_automation_failures` (boolean): Should the user receive automation failures via email?
|
|
151
|
+
* `notify_on_all_expectation_failures` (boolean): Should the user receive expectation failures and misses via email?
|
|
136
152
|
* `require_2fa` (string): 2FA required setting
|
|
137
153
|
* `require_login_by` (date-time): Require user to login by specified date otherwise it will be disabled.
|
|
138
154
|
* `active_2fa` (boolean): Is 2fa active for the user?
|
|
@@ -248,6 +264,14 @@ Files::User.create(
|
|
|
248
264
|
primary_group_id: 1,
|
|
249
265
|
readonly_site_admin: true,
|
|
250
266
|
receive_admin_alerts: true,
|
|
267
|
+
notify_on_all_site_warnings: true,
|
|
268
|
+
notify_on_all_sso_failures: true,
|
|
269
|
+
notify_on_all_user_security_events: true,
|
|
270
|
+
notify_on_all_pending_work_failures: true,
|
|
271
|
+
notify_on_all_siem_http_destination_failures: true,
|
|
272
|
+
notify_on_all_sync_failures: true,
|
|
273
|
+
notify_on_all_automation_failures: true,
|
|
274
|
+
notify_on_all_expectation_failures: true,
|
|
251
275
|
require_login_by: "2000-01-01T01:00:00Z",
|
|
252
276
|
require_password_change: true,
|
|
253
277
|
restapi_permission: true,
|
|
@@ -307,7 +331,15 @@ Files::User.create(
|
|
|
307
331
|
* `password_validity_days` (int64): Number of days to allow user to use the same password
|
|
308
332
|
* `primary_group_id` (int64): Primary group ID for Group Admin scoping
|
|
309
333
|
* `readonly_site_admin` (boolean): Is the user an allowed to view all (non-billing) site configuration for this site?
|
|
310
|
-
* `receive_admin_alerts` (boolean):
|
|
334
|
+
* `receive_admin_alerts` (boolean): Deprecated. Use notify_on_all_site_warnings and granular failure notification preferences instead.
|
|
335
|
+
* `notify_on_all_site_warnings` (boolean): Should the user receive site warnings via email?
|
|
336
|
+
* `notify_on_all_sso_failures` (boolean): Should the user receive sso/scim/ldap configuration/sync failures via email?
|
|
337
|
+
* `notify_on_all_user_security_events` (boolean): Should the user receive user security events via email?
|
|
338
|
+
* `notify_on_all_pending_work_failures` (boolean): Should the user receive pending work failures via email?
|
|
339
|
+
* `notify_on_all_siem_http_destination_failures` (boolean): Should the user receive siem failures via email?
|
|
340
|
+
* `notify_on_all_sync_failures` (boolean): Should the user receive sync failures via email?
|
|
341
|
+
* `notify_on_all_automation_failures` (boolean): Should the user receive automation failures via email?
|
|
342
|
+
* `notify_on_all_expectation_failures` (boolean): Should the user receive expectation failures and misses via email?
|
|
311
343
|
* `require_login_by` (string): Require user to login by specified date otherwise it will be disabled.
|
|
312
344
|
* `require_password_change` (boolean): Is a password change required upon next user login?
|
|
313
345
|
* `restapi_permission` (boolean): Can this user access the Web app, Desktop app, SDKs, or REST API? (All of these tools use the API internally, so this is one unified permission set.)
|
|
@@ -403,6 +435,14 @@ Files::User.update(id,
|
|
|
403
435
|
primary_group_id: 1,
|
|
404
436
|
readonly_site_admin: true,
|
|
405
437
|
receive_admin_alerts: true,
|
|
438
|
+
notify_on_all_site_warnings: true,
|
|
439
|
+
notify_on_all_sso_failures: true,
|
|
440
|
+
notify_on_all_user_security_events: true,
|
|
441
|
+
notify_on_all_pending_work_failures: true,
|
|
442
|
+
notify_on_all_siem_http_destination_failures: true,
|
|
443
|
+
notify_on_all_sync_failures: true,
|
|
444
|
+
notify_on_all_automation_failures: true,
|
|
445
|
+
notify_on_all_expectation_failures: true,
|
|
406
446
|
require_login_by: "2000-01-01T01:00:00Z",
|
|
407
447
|
require_password_change: true,
|
|
408
448
|
restapi_permission: true,
|
|
@@ -464,7 +504,15 @@ Files::User.update(id,
|
|
|
464
504
|
* `password_validity_days` (int64): Number of days to allow user to use the same password
|
|
465
505
|
* `primary_group_id` (int64): Primary group ID for Group Admin scoping
|
|
466
506
|
* `readonly_site_admin` (boolean): Is the user an allowed to view all (non-billing) site configuration for this site?
|
|
467
|
-
* `receive_admin_alerts` (boolean):
|
|
507
|
+
* `receive_admin_alerts` (boolean): Deprecated. Use notify_on_all_site_warnings and granular failure notification preferences instead.
|
|
508
|
+
* `notify_on_all_site_warnings` (boolean): Should the user receive site warnings via email?
|
|
509
|
+
* `notify_on_all_sso_failures` (boolean): Should the user receive sso/scim/ldap configuration/sync failures via email?
|
|
510
|
+
* `notify_on_all_user_security_events` (boolean): Should the user receive user security events via email?
|
|
511
|
+
* `notify_on_all_pending_work_failures` (boolean): Should the user receive pending work failures via email?
|
|
512
|
+
* `notify_on_all_siem_http_destination_failures` (boolean): Should the user receive siem failures via email?
|
|
513
|
+
* `notify_on_all_sync_failures` (boolean): Should the user receive sync failures via email?
|
|
514
|
+
* `notify_on_all_automation_failures` (boolean): Should the user receive automation failures via email?
|
|
515
|
+
* `notify_on_all_expectation_failures` (boolean): Should the user receive expectation failures and misses via email?
|
|
468
516
|
* `require_login_by` (string): Require user to login by specified date otherwise it will be disabled.
|
|
469
517
|
* `require_password_change` (boolean): Is a password change required upon next user login?
|
|
470
518
|
* `restapi_permission` (boolean): Can this user access the Web app, Desktop app, SDKs, or REST API? (All of these tools use the API internally, so this is one unified permission set.)
|
|
@@ -585,6 +633,14 @@ user.update(
|
|
|
585
633
|
primary_group_id: 1,
|
|
586
634
|
readonly_site_admin: true,
|
|
587
635
|
receive_admin_alerts: true,
|
|
636
|
+
notify_on_all_site_warnings: true,
|
|
637
|
+
notify_on_all_sso_failures: true,
|
|
638
|
+
notify_on_all_user_security_events: true,
|
|
639
|
+
notify_on_all_pending_work_failures: true,
|
|
640
|
+
notify_on_all_siem_http_destination_failures: true,
|
|
641
|
+
notify_on_all_sync_failures: true,
|
|
642
|
+
notify_on_all_automation_failures: true,
|
|
643
|
+
notify_on_all_expectation_failures: true,
|
|
588
644
|
require_login_by: "2000-01-01T01:00:00Z",
|
|
589
645
|
require_password_change: true,
|
|
590
646
|
restapi_permission: true,
|
|
@@ -646,7 +702,15 @@ user.update(
|
|
|
646
702
|
* `password_validity_days` (int64): Number of days to allow user to use the same password
|
|
647
703
|
* `primary_group_id` (int64): Primary group ID for Group Admin scoping
|
|
648
704
|
* `readonly_site_admin` (boolean): Is the user an allowed to view all (non-billing) site configuration for this site?
|
|
649
|
-
* `receive_admin_alerts` (boolean):
|
|
705
|
+
* `receive_admin_alerts` (boolean): Deprecated. Use notify_on_all_site_warnings and granular failure notification preferences instead.
|
|
706
|
+
* `notify_on_all_site_warnings` (boolean): Should the user receive site warnings via email?
|
|
707
|
+
* `notify_on_all_sso_failures` (boolean): Should the user receive sso/scim/ldap configuration/sync failures via email?
|
|
708
|
+
* `notify_on_all_user_security_events` (boolean): Should the user receive user security events via email?
|
|
709
|
+
* `notify_on_all_pending_work_failures` (boolean): Should the user receive pending work failures via email?
|
|
710
|
+
* `notify_on_all_siem_http_destination_failures` (boolean): Should the user receive siem failures via email?
|
|
711
|
+
* `notify_on_all_sync_failures` (boolean): Should the user receive sync failures via email?
|
|
712
|
+
* `notify_on_all_automation_failures` (boolean): Should the user receive automation failures via email?
|
|
713
|
+
* `notify_on_all_expectation_failures` (boolean): Should the user receive expectation failures and misses via email?
|
|
650
714
|
* `require_login_by` (string): Require user to login by specified date otherwise it will be disabled.
|
|
651
715
|
* `require_password_change` (boolean): Is a password change required upon next user login?
|
|
652
716
|
* `restapi_permission` (boolean): Can this user access the Web app, Desktop app, SDKs, or REST API? (All of these tools use the API internally, so this is one unified permission set.)
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
# UserSecurityEvent
|
|
2
|
+
|
|
3
|
+
## Example UserSecurityEvent Object
|
|
4
|
+
|
|
5
|
+
```
|
|
6
|
+
{
|
|
7
|
+
"id": 1,
|
|
8
|
+
"event_type": "example",
|
|
9
|
+
"body": "example",
|
|
10
|
+
"event_errors": [
|
|
11
|
+
"example"
|
|
12
|
+
],
|
|
13
|
+
"created_at": "2000-01-01T01:00:00Z",
|
|
14
|
+
"body_url": "example",
|
|
15
|
+
"user_id": 1
|
|
16
|
+
}
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
* `id` (int64): Event ID
|
|
20
|
+
* `event_type` (string): Type of user security event being recorded.
|
|
21
|
+
* `body` (string): Event body.
|
|
22
|
+
* `event_errors` (array(string)): Event errors.
|
|
23
|
+
* `created_at` (date-time): Event create date/time.
|
|
24
|
+
* `body_url` (string): Link to log file.
|
|
25
|
+
* `user_id` (int64): User ID.
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
---
|
|
29
|
+
|
|
30
|
+
## List User Security Events
|
|
31
|
+
|
|
32
|
+
```
|
|
33
|
+
Files::UserSecurityEvent.list
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
### Parameters
|
|
37
|
+
|
|
38
|
+
* `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.
|
|
39
|
+
* `per_page` (int64): Number of records to show per page. (Max: 10,000, 1,000 or less is recommended).
|
|
40
|
+
* `sort_by` (object): If set, sort records by the specified field in either `asc` or `desc` direction. Valid fields are `created_at` and `user_id`.
|
|
41
|
+
* `filter` (object): If set, return records where the specified field is equal to the supplied value. Valid fields are `created_at` and `user_id`. Valid field combinations are `[ user_id, created_at ]`.
|
|
42
|
+
* `filter_gt` (object): If set, return records where the specified field is greater than the supplied value. Valid fields are `created_at`.
|
|
43
|
+
* `filter_gteq` (object): If set, return records where the specified field is greater than or equal the supplied value. Valid fields are `created_at`.
|
|
44
|
+
* `filter_lt` (object): If set, return records where the specified field is less than the supplied value. Valid fields are `created_at`.
|
|
45
|
+
* `filter_lteq` (object): If set, return records where the specified field is less than or equal the supplied value. Valid fields are `created_at`.
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
---
|
|
49
|
+
|
|
50
|
+
## Show User Security Event
|
|
51
|
+
|
|
52
|
+
```
|
|
53
|
+
Files::UserSecurityEvent.find(id)
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
### Parameters
|
|
57
|
+
|
|
58
|
+
* `id` (int64): Required - User Security Event ID.
|
|
@@ -0,0 +1,192 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Files
|
|
4
|
+
class EventChannel
|
|
5
|
+
attr_reader :options, :attributes
|
|
6
|
+
|
|
7
|
+
def initialize(attributes = {}, options = {})
|
|
8
|
+
@attributes = attributes || {}
|
|
9
|
+
@options = options || {}
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
# int64 - Event Channel ID
|
|
13
|
+
def id
|
|
14
|
+
@attributes[:id]
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
def id=(value)
|
|
18
|
+
@attributes[:id] = value
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
# string - Event Channel name.
|
|
22
|
+
def name
|
|
23
|
+
@attributes[:name]
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
def name=(value)
|
|
27
|
+
@attributes[:name] = value
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
# string - Event Channel description.
|
|
31
|
+
def description
|
|
32
|
+
@attributes[:description]
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
def description=(value)
|
|
36
|
+
@attributes[:description] = value
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
# boolean - Whether this Event Channel can dispatch events.
|
|
40
|
+
def enabled
|
|
41
|
+
@attributes[:enabled]
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
def enabled=(value)
|
|
45
|
+
@attributes[:enabled] = value
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
# boolean - Whether this Event Channel is the default destination for newly published events.
|
|
49
|
+
def default_channel
|
|
50
|
+
@attributes[:default_channel]
|
|
51
|
+
end
|
|
52
|
+
|
|
53
|
+
def default_channel=(value)
|
|
54
|
+
@attributes[:default_channel] = value
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
# date-time - Event Channel create date/time.
|
|
58
|
+
def created_at
|
|
59
|
+
@attributes[:created_at]
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
# date-time - Event Channel update date/time.
|
|
63
|
+
def updated_at
|
|
64
|
+
@attributes[:updated_at]
|
|
65
|
+
end
|
|
66
|
+
|
|
67
|
+
# Parameters:
|
|
68
|
+
# name - string - Event Channel name.
|
|
69
|
+
# description - string - Event Channel description.
|
|
70
|
+
# enabled - boolean - Whether this Event Channel can dispatch events.
|
|
71
|
+
# default_channel - boolean - Whether this Event Channel is the default destination for newly published events.
|
|
72
|
+
def update(params = {})
|
|
73
|
+
params ||= {}
|
|
74
|
+
params[:id] = @attributes[:id]
|
|
75
|
+
raise MissingParameterError.new("Current object doesn't have a id") unless @attributes[:id]
|
|
76
|
+
raise InvalidParameterError.new("Bad parameter: id must be an Integer") if params[:id] and !params[:id].is_a?(Integer)
|
|
77
|
+
raise InvalidParameterError.new("Bad parameter: name must be an String") if params[:name] and !params[:name].is_a?(String)
|
|
78
|
+
raise InvalidParameterError.new("Bad parameter: description must be an String") if params[:description] and !params[:description].is_a?(String)
|
|
79
|
+
raise MissingParameterError.new("Parameter missing: id") unless params[:id]
|
|
80
|
+
|
|
81
|
+
Api.send_request("/event_channels/#{@attributes[:id]}", :patch, params, @options)
|
|
82
|
+
end
|
|
83
|
+
|
|
84
|
+
def delete(params = {})
|
|
85
|
+
params ||= {}
|
|
86
|
+
params[:id] = @attributes[:id]
|
|
87
|
+
raise MissingParameterError.new("Current object doesn't have a id") unless @attributes[:id]
|
|
88
|
+
raise InvalidParameterError.new("Bad parameter: id must be an Integer") if params[:id] and !params[:id].is_a?(Integer)
|
|
89
|
+
raise MissingParameterError.new("Parameter missing: id") unless params[:id]
|
|
90
|
+
|
|
91
|
+
Api.send_request("/event_channels/#{@attributes[:id]}", :delete, params, @options)
|
|
92
|
+
end
|
|
93
|
+
|
|
94
|
+
def destroy(params = {})
|
|
95
|
+
delete(params)
|
|
96
|
+
nil
|
|
97
|
+
end
|
|
98
|
+
|
|
99
|
+
def save
|
|
100
|
+
if @attributes[:id]
|
|
101
|
+
new_obj = update(@attributes)
|
|
102
|
+
else
|
|
103
|
+
new_obj = EventChannel.create(@attributes, @options)
|
|
104
|
+
end
|
|
105
|
+
|
|
106
|
+
@attributes = new_obj.attributes
|
|
107
|
+
true
|
|
108
|
+
end
|
|
109
|
+
|
|
110
|
+
# Parameters:
|
|
111
|
+
# 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.
|
|
112
|
+
# per_page - int64 - Number of records to show per page. (Max: 10,000, 1,000 or less is recommended).
|
|
113
|
+
# sort_by - object - If set, sort records by the specified field in either `asc` or `desc` direction. Valid fields are `enabled` and `default_channel`.
|
|
114
|
+
# filter - object - If set, return records where the specified field is equal to the supplied value. Valid fields are `enabled` and `default_channel`.
|
|
115
|
+
def self.list(params = {}, options = {})
|
|
116
|
+
raise InvalidParameterError.new("Bad parameter: cursor must be an String") if params[:cursor] and !params[:cursor].is_a?(String)
|
|
117
|
+
raise InvalidParameterError.new("Bad parameter: per_page must be an Integer") if params[:per_page] and !params[:per_page].is_a?(Integer)
|
|
118
|
+
raise InvalidParameterError.new("Bad parameter: sort_by must be an Hash") if params[:sort_by] and !params[:sort_by].is_a?(Hash)
|
|
119
|
+
raise InvalidParameterError.new("Bad parameter: filter must be an Hash") if params[:filter] and !params[:filter].is_a?(Hash)
|
|
120
|
+
|
|
121
|
+
List.new(EventChannel, params) do
|
|
122
|
+
Api.send_request("/event_channels", :get, params, options)
|
|
123
|
+
end
|
|
124
|
+
end
|
|
125
|
+
|
|
126
|
+
def self.all(params = {}, options = {})
|
|
127
|
+
list(params, options)
|
|
128
|
+
end
|
|
129
|
+
|
|
130
|
+
# Parameters:
|
|
131
|
+
# id (required) - int64 - Event Channel ID.
|
|
132
|
+
def self.find(id, params = {}, options = {})
|
|
133
|
+
params ||= {}
|
|
134
|
+
params[:id] = id
|
|
135
|
+
raise InvalidParameterError.new("Bad parameter: id must be an Integer") if params[:id] and !params[:id].is_a?(Integer)
|
|
136
|
+
raise MissingParameterError.new("Parameter missing: id") unless params[:id]
|
|
137
|
+
|
|
138
|
+
response, options = Api.send_request("/event_channels/#{params[:id]}", :get, params, options)
|
|
139
|
+
EventChannel.new(response.data, options)
|
|
140
|
+
end
|
|
141
|
+
|
|
142
|
+
def self.get(id, params = {}, options = {})
|
|
143
|
+
find(id, params, options)
|
|
144
|
+
end
|
|
145
|
+
|
|
146
|
+
# Parameters:
|
|
147
|
+
# name (required) - string - Event Channel name.
|
|
148
|
+
# description - string - Event Channel description.
|
|
149
|
+
# enabled - boolean - Whether this Event Channel can dispatch events.
|
|
150
|
+
# default_channel - boolean - Whether this Event Channel is the default destination for newly published events.
|
|
151
|
+
def self.create(params = {}, options = {})
|
|
152
|
+
raise InvalidParameterError.new("Bad parameter: name must be an String") if params[:name] and !params[:name].is_a?(String)
|
|
153
|
+
raise InvalidParameterError.new("Bad parameter: description must be an String") if params[:description] and !params[:description].is_a?(String)
|
|
154
|
+
raise MissingParameterError.new("Parameter missing: name") unless params[:name]
|
|
155
|
+
|
|
156
|
+
response, options = Api.send_request("/event_channels", :post, params, options)
|
|
157
|
+
EventChannel.new(response.data, options)
|
|
158
|
+
end
|
|
159
|
+
|
|
160
|
+
# Parameters:
|
|
161
|
+
# name - string - Event Channel name.
|
|
162
|
+
# description - string - Event Channel description.
|
|
163
|
+
# enabled - boolean - Whether this Event Channel can dispatch events.
|
|
164
|
+
# default_channel - boolean - Whether this Event Channel is the default destination for newly published events.
|
|
165
|
+
def self.update(id, params = {}, options = {})
|
|
166
|
+
params ||= {}
|
|
167
|
+
params[:id] = id
|
|
168
|
+
raise InvalidParameterError.new("Bad parameter: id must be an Integer") if params[:id] and !params[:id].is_a?(Integer)
|
|
169
|
+
raise InvalidParameterError.new("Bad parameter: name must be an String") if params[:name] and !params[:name].is_a?(String)
|
|
170
|
+
raise InvalidParameterError.new("Bad parameter: description must be an String") if params[:description] and !params[:description].is_a?(String)
|
|
171
|
+
raise MissingParameterError.new("Parameter missing: id") unless params[:id]
|
|
172
|
+
|
|
173
|
+
response, options = Api.send_request("/event_channels/#{params[:id]}", :patch, params, options)
|
|
174
|
+
EventChannel.new(response.data, options)
|
|
175
|
+
end
|
|
176
|
+
|
|
177
|
+
def self.delete(id, params = {}, options = {})
|
|
178
|
+
params ||= {}
|
|
179
|
+
params[:id] = id
|
|
180
|
+
raise InvalidParameterError.new("Bad parameter: id must be an Integer") if params[:id] and !params[:id].is_a?(Integer)
|
|
181
|
+
raise MissingParameterError.new("Parameter missing: id") unless params[:id]
|
|
182
|
+
|
|
183
|
+
Api.send_request("/event_channels/#{params[:id]}", :delete, params, options)
|
|
184
|
+
nil
|
|
185
|
+
end
|
|
186
|
+
|
|
187
|
+
def self.destroy(id, params = {}, options = {})
|
|
188
|
+
delete(id, params, options)
|
|
189
|
+
nil
|
|
190
|
+
end
|
|
191
|
+
end
|
|
192
|
+
end
|