files.com 1.1.662 → 1.1.664

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: e67bcae8fe31ba697a3571ce860e0e36ecc6ff23ff79ae01dea228808cf6290a
4
- data.tar.gz: d1a31219d290878b4555f62d03629a42cea58f6be7fad7c53ff4255074f169bb
3
+ metadata.gz: 2031a630da776d25ddfe3b53bf21cf7dc8f858ea7c1b05efa218a34b1716c8a2
4
+ data.tar.gz: 4c70ff321e604fbdd8c59bb604347afd9ee6232d364c1983bd0a4bbb0c6f346e
5
5
  SHA512:
6
- metadata.gz: 0202ce12d6796ea0b971b888fc8ec04b10461279d9d2618666a647b81487625cd5cede6bfb7daaf8c803a10caf412c4a0940684bcf5334775a022801d1fb71c6
7
- data.tar.gz: '0088572e60118954c8deee9eefeba98f1baa8eb050606712320acc3f4c13a008973cbf83a842f2bebafca85fed80d0b6fc952cede8ec91deabf6a4b0886c71f4'
6
+ metadata.gz: 03ada75268d6f5c521069daef6ca274249c09afa870e9d21ce0429f0de776b738f577d44aedf5b12f2037c44268d94705f868593d66d3dac21fabb081dad7c14
7
+ data.tar.gz: b0340d3227da23ba8be2474924ad58ec382643f1d33ac0b21ad0524278a835cded2a878e5245a86abd0550684d657f9a5fa8bdf0eb51988dbef19757f3012c8b
data/_VERSION CHANGED
@@ -1 +1 @@
1
- 1.1.662
1
+ 1.1.664
@@ -0,0 +1,147 @@
1
+ # AiAssistantPersonality
2
+
3
+ ## Example AiAssistantPersonality Object
4
+
5
+ ```
6
+ {
7
+ "id": 1,
8
+ "workspace_id": 1,
9
+ "system_prompt": "Respond as a concise operations assistant.",
10
+ "use_by_default": true,
11
+ "apply_to_all_workspaces": true,
12
+ "created_at": "2000-01-01T01:00:00Z",
13
+ "updated_at": "2000-01-01T01:00:00Z"
14
+ }
15
+ ```
16
+
17
+ * `id` (int64): AI Assistant Personality ID.
18
+ * `workspace_id` (int64): Workspace ID. `0` means the default workspace.
19
+ * `system_prompt` (string): System prompt injected into the in-app AI Assistant.
20
+ * `use_by_default` (boolean): Whether this personality is the default personality for the Workspace.
21
+ * `apply_to_all_workspaces` (boolean): If true, this default-workspace personality can apply to users in all workspaces.
22
+ * `created_at` (date-time): Creation time.
23
+ * `updated_at` (date-time): Last update time.
24
+
25
+
26
+ ---
27
+
28
+ ## List Ai Assistant Personalities
29
+
30
+ ```
31
+ Files::AiAssistantPersonality.list
32
+ ```
33
+
34
+ ### Parameters
35
+
36
+ * `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.
37
+ * `per_page` (int64): Number of records to show per page. (Max: 10000, 1,000 or less is recommended).
38
+ * `sort_by` (object): If set, sort records by the specified field in either `asc` or `desc` direction. Valid fields are `workspace_id` and `id`.
39
+ * `filter` (object): If set, return records where the specified field is equal to the supplied value. Valid fields are `workspace_id`.
40
+
41
+
42
+ ---
43
+
44
+ ## Show Ai Assistant Personality
45
+
46
+ ```
47
+ Files::AiAssistantPersonality.find(id)
48
+ ```
49
+
50
+ ### Parameters
51
+
52
+ * `id` (int64): Required - Ai Assistant Personality ID.
53
+
54
+
55
+ ---
56
+
57
+ ## Create Ai Assistant Personality
58
+
59
+ ```
60
+ Files::AiAssistantPersonality.create(
61
+ apply_to_all_workspaces: false,
62
+ system_prompt: "Respond as a concise operations assistant.",
63
+ use_by_default: false,
64
+ workspace_id: 0
65
+ )
66
+ ```
67
+
68
+ ### Parameters
69
+
70
+ * `apply_to_all_workspaces` (boolean): If true, this default-workspace personality can apply to users in all workspaces.
71
+ * `system_prompt` (string): Required - System prompt injected into the in-app AI Assistant.
72
+ * `use_by_default` (boolean): Whether this personality is the default personality for the Workspace.
73
+ * `workspace_id` (int64): Workspace ID. `0` means the default workspace.
74
+
75
+
76
+ ---
77
+
78
+ ## Update Ai Assistant Personality
79
+
80
+ ```
81
+ Files::AiAssistantPersonality.update(id,
82
+ apply_to_all_workspaces: false,
83
+ system_prompt: "Respond as a concise operations assistant.",
84
+ use_by_default: false,
85
+ workspace_id: 0
86
+ )
87
+ ```
88
+
89
+ ### Parameters
90
+
91
+ * `id` (int64): Required - Ai Assistant Personality ID.
92
+ * `apply_to_all_workspaces` (boolean): If true, this default-workspace personality can apply to users in all workspaces.
93
+ * `system_prompt` (string): System prompt injected into the in-app AI Assistant.
94
+ * `use_by_default` (boolean): Whether this personality is the default personality for the Workspace.
95
+ * `workspace_id` (int64): Workspace ID. `0` means the default workspace.
96
+
97
+
98
+ ---
99
+
100
+ ## Delete Ai Assistant Personality
101
+
102
+ ```
103
+ Files::AiAssistantPersonality.delete(id)
104
+ ```
105
+
106
+ ### Parameters
107
+
108
+ * `id` (int64): Required - Ai Assistant Personality ID.
109
+
110
+
111
+ ---
112
+
113
+ ## Update Ai Assistant Personality
114
+
115
+ ```
116
+ ai_assistant_personality = Files::AiAssistantPersonality.find(id)
117
+
118
+ ai_assistant_personality.update(
119
+ apply_to_all_workspaces: false,
120
+ system_prompt: "Respond as a concise operations assistant.",
121
+ use_by_default: false,
122
+ workspace_id: 0
123
+ )
124
+ ```
125
+
126
+ ### Parameters
127
+
128
+ * `id` (int64): Required - Ai Assistant Personality ID.
129
+ * `apply_to_all_workspaces` (boolean): If true, this default-workspace personality can apply to users in all workspaces.
130
+ * `system_prompt` (string): System prompt injected into the in-app AI Assistant.
131
+ * `use_by_default` (boolean): Whether this personality is the default personality for the Workspace.
132
+ * `workspace_id` (int64): Workspace ID. `0` means the default workspace.
133
+
134
+
135
+ ---
136
+
137
+ ## Delete Ai Assistant Personality
138
+
139
+ ```
140
+ ai_assistant_personality = Files::AiAssistantPersonality.find(id)
141
+
142
+ ai_assistant_personality.delete
143
+ ```
144
+
145
+ ### Parameters
146
+
147
+ * `id` (int64): Required - Ai Assistant Personality ID.
data/docs/ai_task.md CHANGED
@@ -9,6 +9,7 @@
9
9
  "name": "Summarize daily reports",
10
10
  "description": "Summarizes files uploaded by the accounting team.",
11
11
  "prompt": "Summarize the uploaded file and identify follow-up actions.",
12
+ "permission_set": "files_only",
12
13
  "path": "incoming/reports",
13
14
  "source": "*.pdf",
14
15
  "disabled": true,
@@ -41,6 +42,7 @@
41
42
  * `name` (string): AI Task name.
42
43
  * `description` (string): AI Task description.
43
44
  * `prompt` (string): Prompt sent when this AI Task is invoked.
45
+ * `permission_set` (string): Permissions used by the internal API key for this AI Task. Valid values are `full` and `files_only`.
44
46
  * `path` (string): Path scope used for action-triggered AI Tasks. This must be slash-delimited, but it must neither start nor end with a slash. Maximum of 5000 characters.
45
47
  * `source` (string): Source glob used with `path` for action-triggered AI Tasks.
46
48
  * `disabled` (boolean): If true, this AI Task will not run.
@@ -100,6 +102,7 @@ Files::AiTask.create(
100
102
  interval: "day",
101
103
  name: "Summarize daily reports",
102
104
  path: "incoming/reports",
105
+ permission_set: "files_only",
103
106
  prompt: "Summarize the uploaded file and identify follow-up actions.",
104
107
  recurring_day: 1,
105
108
  schedule_days_of_week: [1,3,5],
@@ -120,6 +123,7 @@ Files::AiTask.create(
120
123
  * `interval` (string): If trigger is `daily`, this specifies how often to run the AI Task.
121
124
  * `name` (string): Required - AI Task name.
122
125
  * `path` (string): Path scope used for action-triggered AI Tasks.
126
+ * `permission_set` (string): Permissions used by the internal API key for this AI Task. Valid values are `full` and `files_only`.
123
127
  * `prompt` (string): Required - Prompt sent when this AI Task is invoked.
124
128
  * `recurring_day` (int64): If trigger is `daily`, this selects the day number inside the chosen interval.
125
129
  * `schedule_days_of_week` (array(int64)): If trigger is `custom_schedule`, the 0-based weekdays used by the schedule.
@@ -156,6 +160,7 @@ Files::AiTask.update(id,
156
160
  interval: "day",
157
161
  name: "Summarize daily reports",
158
162
  path: "incoming/reports",
163
+ permission_set: "files_only",
159
164
  prompt: "Summarize the uploaded file and identify follow-up actions.",
160
165
  recurring_day: 1,
161
166
  schedule_days_of_week: [1,3,5],
@@ -177,6 +182,7 @@ Files::AiTask.update(id,
177
182
  * `interval` (string): If trigger is `daily`, this specifies how often to run the AI Task.
178
183
  * `name` (string): AI Task name.
179
184
  * `path` (string): Path scope used for action-triggered AI Tasks.
185
+ * `permission_set` (string): Permissions used by the internal API key for this AI Task. Valid values are `full` and `files_only`.
180
186
  * `prompt` (string): Prompt sent when this AI Task is invoked.
181
187
  * `recurring_day` (int64): If trigger is `daily`, this selects the day number inside the chosen interval.
182
188
  * `schedule_days_of_week` (array(int64)): If trigger is `custom_schedule`, the 0-based weekdays used by the schedule.
@@ -230,6 +236,7 @@ ai_task.update(
230
236
  interval: "day",
231
237
  name: "Summarize daily reports",
232
238
  path: "incoming/reports",
239
+ permission_set: "files_only",
233
240
  prompt: "Summarize the uploaded file and identify follow-up actions.",
234
241
  recurring_day: 1,
235
242
  schedule_days_of_week: [1,3,5],
@@ -251,6 +258,7 @@ ai_task.update(
251
258
  * `interval` (string): If trigger is `daily`, this specifies how often to run the AI Task.
252
259
  * `name` (string): AI Task name.
253
260
  * `path` (string): Path scope used for action-triggered AI Tasks.
261
+ * `permission_set` (string): Permissions used by the internal API key for this AI Task. Valid values are `full` and `files_only`.
254
262
  * `prompt` (string): Prompt sent when this AI Task is invoked.
255
263
  * `recurring_day` (int64): If trigger is `daily`, this selects the day number inside the chosen interval.
256
264
  * `schedule_days_of_week` (array(int64)): If trigger is `custom_schedule`, the 0-based weekdays used by the schedule.
data/docs/api_key.md CHANGED
@@ -20,7 +20,8 @@
20
20
  "site_id": 1,
21
21
  "site_name": "example",
22
22
  "url": "example",
23
- "user_id": 1
23
+ "user_id": 1,
24
+ "workspace_id": 1
24
25
  }
25
26
  ```
26
27
 
@@ -35,12 +36,13 @@
35
36
  * `aws_secret_key` (string): AWS Secret Key to use with AWS-compatible endpoints, such as our Inbound S3-compatible endpoint.
36
37
  * `last_use_at` (date-time): API Key last used - note this value is only updated once per 3 hour period, so the 'actual' time of last use may be up to 3 hours later than this timestamp.
37
38
  * `name` (string): Internal name for the API Key. For your use.
38
- * `permission_set` (string): Permissions for this API Key. It must be full for site-wide API Keys. Keys with the `desktop_app` permission set only have the ability to do the functions provided in our Desktop App (File and Share Link operations). Keys with the `office_integration` permission set are auto generated, and automatically expire, to allow users to interact with office integration platforms. Additional permission sets may become available in the future, such as for a Site Admin to give a key with no administrator privileges. If you have ideas for permission sets, please let us know.
39
+ * `permission_set` (string): Permissions for this API Key. Keys with the `desktop_app` permission set only have the ability to do the functions provided in our Desktop App (File and Share Link operations). Keys with the `office_integration` permission set are auto generated, and automatically expire, to allow users to interact with office integration platforms. Keys with the `files_only` permission set can perform file operations as a full-access file user in the key's workspace scope, but cannot use site admin, workspace admin, folder admin, group admin, partner admin, or billing privileges from the owning user.
39
40
  * `platform` (string): If this API key represents a Desktop app, what platform was it created on?
40
41
  * `site_id` (int64): Site ID
41
42
  * `site_name` (string): Site Name
42
43
  * `url` (string): URL for API host.
43
44
  * `user_id` (int64): User ID for the owner of this API Key. May be blank for Site-wide API Keys.
45
+ * `workspace_id` (int64): Workspace ID for this API Key. `0` means the default workspace.
44
46
  * `path` (string): Folder path restriction for `office_integration` permission set API keys.
45
47
 
46
48
 
@@ -59,7 +61,7 @@ Files::ApiKey.list(
59
61
  * `user_id` (int64): User ID. Provide a value of `0` to operate the current session's user.
60
62
  * `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.
61
63
  * `per_page` (int64): Number of records to show per page. (Max: 10000, 1,000 or less is recommended).
62
- * `sort_by` (object): If set, sort records by the specified field in either `asc` or `desc` direction. Valid fields are `site_id`.
64
+ * `sort_by` (object): If set, sort records by the specified field in either `asc` or `desc` direction. Valid fields are `site_id` and `workspace_id`.
63
65
  * `filter` (object): If set, return records where the specified field is equal to the supplied value. Valid fields are `aws_style_credentials` and `expires_at`.
64
66
  * `filter_gt` (object): If set, return records where the specified field is greater than the supplied value. Valid fields are `expires_at`.
65
67
  * `filter_gteq` (object): If set, return records where the specified field is greater than or equal the supplied value. Valid fields are `expires_at`.
@@ -101,7 +103,8 @@ Files::ApiKey.create(
101
103
  name: "My Main API Key",
102
104
  aws_style_credentials: true,
103
105
  path: "shared/docs",
104
- permission_set: "full"
106
+ permission_set: "full",
107
+ workspace_id: 1
105
108
  )
106
109
  ```
107
110
 
@@ -113,7 +116,8 @@ Files::ApiKey.create(
113
116
  * `name` (string): Required - Internal name for the API Key. For your use.
114
117
  * `aws_style_credentials` (boolean): If `true`, this API key will be usable with AWS-compatible endpoints, such as our Inbound S3-compatible endpoint.
115
118
  * `path` (string): Folder path restriction for `office_integration` permission set API keys.
116
- * `permission_set` (string): Permissions for this API Key. It must be full for site-wide API Keys. Keys with the `desktop_app` permission set only have the ability to do the functions provided in our Desktop App (File and Share Link operations). Keys with the `office_integration` permission set are auto generated, and automatically expire, to allow users to interact with office integration platforms. Additional permission sets may become available in the future, such as for a Site Admin to give a key with no administrator privileges. If you have ideas for permission sets, please let us know.
119
+ * `permission_set` (string): Permissions for this API Key. Keys with the `desktop_app` permission set only have the ability to do the functions provided in our Desktop App (File and Share Link operations). Keys with the `office_integration` permission set are auto generated, and automatically expire, to allow users to interact with office integration platforms. Keys with the `files_only` permission set can perform file operations as a full-access file user in the key's workspace scope, but cannot use site admin, workspace admin, folder admin, group admin, partner admin, or billing privileges from the owning user.
120
+ * `workspace_id` (int64): Workspace ID for this API Key. `0` means the default workspace.
117
121
 
118
122
 
119
123
  ---
@@ -132,7 +136,7 @@ Files::ApiKey.update_current(
132
136
 
133
137
  * `expires_at` (string): API Key expiration date
134
138
  * `name` (string): Internal name for the API Key. For your use.
135
- * `permission_set` (string): Permissions for this API Key. It must be full for site-wide API Keys. Keys with the `desktop_app` permission set only have the ability to do the functions provided in our Desktop App (File and Share Link operations). Keys with the `office_integration` permission set are auto generated, and automatically expire, to allow users to interact with office integration platforms. Additional permission sets may become available in the future, such as for a Site Admin to give a key with no administrator privileges. If you have ideas for permission sets, please let us know.
139
+ * `permission_set` (string): Permissions for this API Key. Keys with the `desktop_app` permission set only have the ability to do the functions provided in our Desktop App (File and Share Link operations). Keys with the `office_integration` permission set are auto generated, and automatically expire, to allow users to interact with office integration platforms. Keys with the `files_only` permission set can perform file operations as a full-access file user in the key's workspace scope, but cannot use site admin, workspace admin, folder admin, group admin, partner admin, or billing privileges from the owning user.
136
140
 
137
141
 
138
142
  ---
data/docs/group.md CHANGED
@@ -11,6 +11,7 @@
11
11
  "notes": "example",
12
12
  "user_ids": "1",
13
13
  "usernames": "user",
14
+ "ai_assistant_personality_id": 1,
14
15
  "ftp_permission": true,
15
16
  "sftp_permission": true,
16
17
  "dav_permission": true,
@@ -28,6 +29,7 @@
28
29
  * `notes` (string): Notes about this group
29
30
  * `user_ids` (string): Comma-delimited list of user IDs who belong to this group (separated by commas)
30
31
  * `usernames` (string): Comma-delimited list of usernames who belong to this group (separated by commas)
32
+ * `ai_assistant_personality_id` (int64): AI Assistant Personality ID assigned to this Group, if any. Users in the Group inherit it unless a direct per-user or Partner assignment overrides it.
31
33
  * `ftp_permission` (boolean): If true, users in this group can use FTP to login. This will override a false value of `ftp_permission` on the user level.
32
34
  * `sftp_permission` (boolean): If true, users in this group can use SFTP to login. This will override a false value of `sftp_permission` on the user level.
33
35
  * `dav_permission` (boolean): If true, users in this group can use WebDAV to login. This will override a false value of `dav_permission` on the user level.
@@ -80,6 +82,7 @@ Files::Group.create(
80
82
  notes: "example",
81
83
  user_ids: "1",
82
84
  admin_ids: "1",
85
+ ai_assistant_personality_id: 1,
83
86
  ftp_permission: true,
84
87
  sftp_permission: true,
85
88
  dav_permission: true,
@@ -96,6 +99,7 @@ Files::Group.create(
96
99
  * `notes` (string): Group notes.
97
100
  * `user_ids` (string): A list of user ids. If sent as a string, should be comma-delimited.
98
101
  * `admin_ids` (string): A list of group admin user ids. If sent as a string, should be comma-delimited.
102
+ * `ai_assistant_personality_id` (int64): AI Assistant Personality ID assigned to this Group, if any. Users in the Group inherit it unless a direct per-user or Partner assignment overrides it.
99
103
  * `ftp_permission` (boolean): If true, users in this group can use FTP to login. This will override a false value of `ftp_permission` on the user level.
100
104
  * `sftp_permission` (boolean): If true, users in this group can use SFTP to login. This will override a false value of `sftp_permission` on the user level.
101
105
  * `dav_permission` (boolean): If true, users in this group can use WebDAV to login. This will override a false value of `dav_permission` on the user level.
@@ -115,6 +119,7 @@ Files::Group.update(id,
115
119
  notes: "example",
116
120
  user_ids: "1",
117
121
  admin_ids: "1",
122
+ ai_assistant_personality_id: 1,
118
123
  ftp_permission: true,
119
124
  sftp_permission: true,
120
125
  dav_permission: true,
@@ -131,6 +136,7 @@ Files::Group.update(id,
131
136
  * `notes` (string): Group notes.
132
137
  * `user_ids` (string): A list of user ids. If sent as a string, should be comma-delimited.
133
138
  * `admin_ids` (string): A list of group admin user ids. If sent as a string, should be comma-delimited.
139
+ * `ai_assistant_personality_id` (int64): AI Assistant Personality ID assigned to this Group, if any. Users in the Group inherit it unless a direct per-user or Partner assignment overrides it.
134
140
  * `ftp_permission` (boolean): If true, users in this group can use FTP to login. This will override a false value of `ftp_permission` on the user level.
135
141
  * `sftp_permission` (boolean): If true, users in this group can use SFTP to login. This will override a false value of `sftp_permission` on the user level.
136
142
  * `dav_permission` (boolean): If true, users in this group can use WebDAV to login. This will override a false value of `dav_permission` on the user level.
@@ -164,6 +170,7 @@ group.update(
164
170
  notes: "example",
165
171
  user_ids: "1",
166
172
  admin_ids: "1",
173
+ ai_assistant_personality_id: 1,
167
174
  ftp_permission: true,
168
175
  sftp_permission: true,
169
176
  dav_permission: true,
@@ -180,6 +187,7 @@ group.update(
180
187
  * `notes` (string): Group notes.
181
188
  * `user_ids` (string): A list of user ids. If sent as a string, should be comma-delimited.
182
189
  * `admin_ids` (string): A list of group admin user ids. If sent as a string, should be comma-delimited.
190
+ * `ai_assistant_personality_id` (int64): AI Assistant Personality ID assigned to this Group, if any. Users in the Group inherit it unless a direct per-user or Partner assignment overrides it.
183
191
  * `ftp_permission` (boolean): If true, users in this group can use FTP to login. This will override a false value of `ftp_permission` on the user level.
184
192
  * `sftp_permission` (boolean): If true, users in this group can use SFTP to login. This will override a false value of `sftp_permission` on the user level.
185
193
  * `dav_permission` (boolean): If true, users in this group can use WebDAV to login. This will override a false value of `dav_permission` on the user level.
data/docs/partner.md CHANGED
@@ -11,6 +11,7 @@
11
11
  "allow_user_creation": true,
12
12
  "cc_emails_to_responsible_party": true,
13
13
  "id": 1,
14
+ "ai_assistant_personality_id": 1,
14
15
  "workspace_id": 1,
15
16
  "name": "Acme Corp",
16
17
  "notes": "This is a note about the partner.",
@@ -39,6 +40,7 @@
39
40
  * `allow_user_creation` (boolean): Allow Partner Admins to create users.
40
41
  * `cc_emails_to_responsible_party` (boolean): When `true`, emails sent to Partner users are copied to the responsible User or Group.
41
42
  * `id` (int64): The unique ID of the Partner.
43
+ * `ai_assistant_personality_id` (int64): AI Assistant Personality ID assigned to this Partner, if any. Users in the Partner inherit it unless a direct per-user assignment overrides it.
42
44
  * `workspace_id` (int64): ID of the Workspace associated with this Partner.
43
45
  * `name` (string): The name of the Partner.
44
46
  * `notes` (string): Notes about this Partner.
@@ -86,6 +88,7 @@ Files::Partner.find(id)
86
88
 
87
89
  ```
88
90
  Files::Partner.create(
91
+ ai_assistant_personality_id: 1,
89
92
  allowed_ips: "10.0.0.0/8\n127.0.0.1",
90
93
  allow_bypassing_2fa_policies: false,
91
94
  allow_credential_changes: false,
@@ -104,6 +107,7 @@ Files::Partner.create(
104
107
 
105
108
  ### Parameters
106
109
 
110
+ * `ai_assistant_personality_id` (int64): AI Assistant Personality ID assigned to this Partner, if any. Users in the Partner inherit it unless a direct per-user assignment overrides it.
107
111
  * `allowed_ips` (string): A list of allowed IPs for this Partner. Newline delimited. Partner User IP access is allowed when the IP matches the Partner, User, or Site allowed IP lists.
108
112
  * `allow_bypassing_2fa_policies` (boolean): Allow Partner Admins to change Two-Factor Authentication requirements for Partner Users.
109
113
  * `allow_credential_changes` (boolean): Allow Partner Admins to change or reset credentials for users belonging to this Partner.
@@ -125,6 +129,7 @@ Files::Partner.create(
125
129
 
126
130
  ```
127
131
  Files::Partner.update(id,
132
+ ai_assistant_personality_id: 1,
128
133
  allowed_ips: "10.0.0.0/8\n127.0.0.1",
129
134
  allow_bypassing_2fa_policies: false,
130
135
  allow_credential_changes: false,
@@ -143,6 +148,7 @@ Files::Partner.update(id,
143
148
  ### Parameters
144
149
 
145
150
  * `id` (int64): Required - Partner ID.
151
+ * `ai_assistant_personality_id` (int64): AI Assistant Personality ID assigned to this Partner, if any. Users in the Partner inherit it unless a direct per-user assignment overrides it.
146
152
  * `allowed_ips` (string): A list of allowed IPs for this Partner. Newline delimited. Partner User IP access is allowed when the IP matches the Partner, User, or Site allowed IP lists.
147
153
  * `allow_bypassing_2fa_policies` (boolean): Allow Partner Admins to change Two-Factor Authentication requirements for Partner Users.
148
154
  * `allow_credential_changes` (boolean): Allow Partner Admins to change or reset credentials for users belonging to this Partner.
@@ -178,6 +184,7 @@ Files::Partner.delete(id)
178
184
  partner = Files::Partner.find(id)
179
185
 
180
186
  partner.update(
187
+ ai_assistant_personality_id: 1,
181
188
  allowed_ips: "10.0.0.0/8\n127.0.0.1",
182
189
  allow_bypassing_2fa_policies: false,
183
190
  allow_credential_changes: false,
@@ -196,6 +203,7 @@ partner.update(
196
203
  ### Parameters
197
204
 
198
205
  * `id` (int64): Required - Partner ID.
206
+ * `ai_assistant_personality_id` (int64): AI Assistant Personality ID assigned to this Partner, if any. Users in the Partner inherit it unless a direct per-user assignment overrides it.
199
207
  * `allowed_ips` (string): A list of allowed IPs for this Partner. Newline delimited. Partner User IP access is allowed when the IP matches the Partner, User, or Site allowed IP lists.
200
208
  * `allow_bypassing_2fa_policies` (boolean): Allow Partner Admins to change Two-Factor Authentication requirements for Partner Users.
201
209
  * `allow_credential_changes` (boolean): Allow Partner Admins to change or reset credentials for users belonging to this Partner.
data/docs/site.md CHANGED
@@ -185,6 +185,8 @@
185
185
  "id": "60525f92e859c4c3d74cb02fd176b1525901b525",
186
186
  "language": "en",
187
187
  "aws_secret_key": "example",
188
+ "ai_assistant_personality_id": 1,
189
+ "ai_assistant_personality_system_prompt": "example",
188
190
  "login_token": "@tok-randomcode",
189
191
  "login_token_domain": "https://mysite.files.com",
190
192
  "default_workspace_id": 1,
@@ -262,6 +264,7 @@
262
264
  "dav_permission": true,
263
265
  "disabled": true,
264
266
  "disabled_expired_or_inactive": true,
267
+ "ai_assistant_personality_id": 1,
265
268
  "desktop_configuration_profile_id": 1,
266
269
  "email": "john.doe@files.com",
267
270
  "filesystem_layout": "site_root",
data/docs/user.md CHANGED
@@ -23,6 +23,7 @@
23
23
  "dav_permission": true,
24
24
  "disabled": true,
25
25
  "disabled_expired_or_inactive": true,
26
+ "ai_assistant_personality_id": 1,
26
27
  "desktop_configuration_profile_id": 1,
27
28
  "email": "john.doe@files.com",
28
29
  "filesystem_layout": "site_root",
@@ -110,6 +111,7 @@
110
111
  * `dav_permission` (boolean): Can the user connect with WebDAV?
111
112
  * `disabled` (boolean): Is user disabled? Disabled users cannot log in, and do not count for billing purposes. Users can be automatically disabled after an inactivity period via a Site setting or schedule to be deactivated after specific date.
112
113
  * `disabled_expired_or_inactive` (boolean): Computed property that returns true if user disabled or expired or inactive.
114
+ * `ai_assistant_personality_id` (int64): AI Assistant Personality ID assigned directly to this user, if any.
113
115
  * `desktop_configuration_profile_id` (int64): Desktop Configuration Profile ID assigned directly to this user, if any.
114
116
  * `email` (email): User email address
115
117
  * `filesystem_layout` (string): File system layout
@@ -241,6 +243,7 @@ Files::User.create(
241
243
  group_id: 1,
242
244
  group_ids: "example",
243
245
  announcements_read: false,
246
+ ai_assistant_personality_id: 1,
244
247
  allowed_ips: "10.0.0.0/8\n127.0.0.1",
245
248
  attachments_permission: true,
246
249
  authenticate_until: "2000-01-01T01:00:00Z",
@@ -310,6 +313,7 @@ Files::User.create(
310
313
  * `password` (string): User password.
311
314
  * `password_confirmation` (string): Optional, but if provided, we will ensure that it matches the value sent in `password`.
312
315
  * `announcements_read` (boolean): Signifies that the user has read all the announcements in the UI.
316
+ * `ai_assistant_personality_id` (int64): AI Assistant Personality ID assigned directly to this user, if any.
313
317
  * `allowed_ips` (string): A list of allowed IPs if applicable. Newline delimited
314
318
  * `attachments_permission` (boolean): DEPRECATED: If `true`, the user can user create Bundles (aka Share Links). Use the bundle permission instead.
315
319
  * `authenticate_until` (string): Scheduled Date/Time at which user will be deactivated
@@ -414,6 +418,7 @@ Files::User.update(id,
414
418
  group_id: 1,
415
419
  group_ids: "example",
416
420
  announcements_read: false,
421
+ ai_assistant_personality_id: 1,
417
422
  allowed_ips: "10.0.0.0/8\n127.0.0.1",
418
423
  attachments_permission: true,
419
424
  authenticate_until: "2000-01-01T01:00:00Z",
@@ -486,6 +491,7 @@ Files::User.update(id,
486
491
  * `password` (string): User password.
487
492
  * `password_confirmation` (string): Optional, but if provided, we will ensure that it matches the value sent in `password`.
488
493
  * `announcements_read` (boolean): Signifies that the user has read all the announcements in the UI.
494
+ * `ai_assistant_personality_id` (int64): AI Assistant Personality ID assigned directly to this user, if any.
489
495
  * `allowed_ips` (string): A list of allowed IPs if applicable. Newline delimited
490
496
  * `attachments_permission` (boolean): DEPRECATED: If `true`, the user can user create Bundles (aka Share Links). Use the bundle permission instead.
491
497
  * `authenticate_until` (string): Scheduled Date/Time at which user will be deactivated
@@ -616,6 +622,7 @@ user.update(
616
622
  group_id: 1,
617
623
  group_ids: "example",
618
624
  announcements_read: false,
625
+ ai_assistant_personality_id: 1,
619
626
  allowed_ips: "10.0.0.0/8\n127.0.0.1",
620
627
  attachments_permission: true,
621
628
  authenticate_until: "2000-01-01T01:00:00Z",
@@ -688,6 +695,7 @@ user.update(
688
695
  * `password` (string): User password.
689
696
  * `password_confirmation` (string): Optional, but if provided, we will ensure that it matches the value sent in `password`.
690
697
  * `announcements_read` (boolean): Signifies that the user has read all the announcements in the UI.
698
+ * `ai_assistant_personality_id` (int64): AI Assistant Personality ID assigned directly to this user, if any.
691
699
  * `allowed_ips` (string): A list of allowed IPs if applicable. Newline delimited
692
700
  * `attachments_permission` (boolean): DEPRECATED: If `true`, the user can user create Bundles (aka Share Links). Use the bundle permission instead.
693
701
  * `authenticate_until` (string): Scheduled Date/Time at which user will be deactivated
@@ -0,0 +1,192 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Files
4
+ class AiAssistantPersonality
5
+ attr_reader :options, :attributes
6
+
7
+ def initialize(attributes = {}, options = {})
8
+ @attributes = attributes || {}
9
+ @options = options || {}
10
+ end
11
+
12
+ # int64 - AI Assistant Personality ID.
13
+ def id
14
+ @attributes[:id]
15
+ end
16
+
17
+ def id=(value)
18
+ @attributes[:id] = value
19
+ end
20
+
21
+ # int64 - Workspace ID. `0` means the default workspace.
22
+ def workspace_id
23
+ @attributes[:workspace_id]
24
+ end
25
+
26
+ def workspace_id=(value)
27
+ @attributes[:workspace_id] = value
28
+ end
29
+
30
+ # string - System prompt injected into the in-app AI Assistant.
31
+ def system_prompt
32
+ @attributes[:system_prompt]
33
+ end
34
+
35
+ def system_prompt=(value)
36
+ @attributes[:system_prompt] = value
37
+ end
38
+
39
+ # boolean - Whether this personality is the default personality for the Workspace.
40
+ def use_by_default
41
+ @attributes[:use_by_default]
42
+ end
43
+
44
+ def use_by_default=(value)
45
+ @attributes[:use_by_default] = value
46
+ end
47
+
48
+ # boolean - If true, this default-workspace personality can apply to users in all workspaces.
49
+ def apply_to_all_workspaces
50
+ @attributes[:apply_to_all_workspaces]
51
+ end
52
+
53
+ def apply_to_all_workspaces=(value)
54
+ @attributes[:apply_to_all_workspaces] = value
55
+ end
56
+
57
+ # date-time - Creation time.
58
+ def created_at
59
+ @attributes[:created_at]
60
+ end
61
+
62
+ # date-time - Last update time.
63
+ def updated_at
64
+ @attributes[:updated_at]
65
+ end
66
+
67
+ # Parameters:
68
+ # apply_to_all_workspaces - boolean - If true, this default-workspace personality can apply to users in all workspaces.
69
+ # system_prompt - string - System prompt injected into the in-app AI Assistant.
70
+ # use_by_default - boolean - Whether this personality is the default personality for the Workspace.
71
+ # workspace_id - int64 - Workspace ID. `0` means the default workspace.
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: system_prompt must be an String") if params[:system_prompt] and !params[:system_prompt].is_a?(String)
78
+ raise InvalidParameterError.new("Bad parameter: workspace_id must be an Integer") if params[:workspace_id] and !params[:workspace_id].is_a?(Integer)
79
+ raise MissingParameterError.new("Parameter missing: id") unless params[:id]
80
+
81
+ Api.send_request("/ai_assistant_personalities/#{@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("/ai_assistant_personalities/#{@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 = AiAssistantPersonality.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: 10000, 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 `workspace_id` and `id`.
114
+ # filter - object - If set, return records where the specified field is equal to the supplied value. Valid fields are `workspace_id`.
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(AiAssistantPersonality, params) do
122
+ Api.send_request("/ai_assistant_personalities", :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 - Ai Assistant Personality 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("/ai_assistant_personalities/#{params[:id]}", :get, params, options)
139
+ AiAssistantPersonality.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
+ # apply_to_all_workspaces - boolean - If true, this default-workspace personality can apply to users in all workspaces.
148
+ # system_prompt (required) - string - System prompt injected into the in-app AI Assistant.
149
+ # use_by_default - boolean - Whether this personality is the default personality for the Workspace.
150
+ # workspace_id - int64 - Workspace ID. `0` means the default workspace.
151
+ def self.create(params = {}, options = {})
152
+ raise InvalidParameterError.new("Bad parameter: system_prompt must be an String") if params[:system_prompt] and !params[:system_prompt].is_a?(String)
153
+ raise InvalidParameterError.new("Bad parameter: workspace_id must be an Integer") if params[:workspace_id] and !params[:workspace_id].is_a?(Integer)
154
+ raise MissingParameterError.new("Parameter missing: system_prompt") unless params[:system_prompt]
155
+
156
+ response, options = Api.send_request("/ai_assistant_personalities", :post, params, options)
157
+ AiAssistantPersonality.new(response.data, options)
158
+ end
159
+
160
+ # Parameters:
161
+ # apply_to_all_workspaces - boolean - If true, this default-workspace personality can apply to users in all workspaces.
162
+ # system_prompt - string - System prompt injected into the in-app AI Assistant.
163
+ # use_by_default - boolean - Whether this personality is the default personality for the Workspace.
164
+ # workspace_id - int64 - Workspace ID. `0` means the default workspace.
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: system_prompt must be an String") if params[:system_prompt] and !params[:system_prompt].is_a?(String)
170
+ raise InvalidParameterError.new("Bad parameter: workspace_id must be an Integer") if params[:workspace_id] and !params[:workspace_id].is_a?(Integer)
171
+ raise MissingParameterError.new("Parameter missing: id") unless params[:id]
172
+
173
+ response, options = Api.send_request("/ai_assistant_personalities/#{params[:id]}", :patch, params, options)
174
+ AiAssistantPersonality.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("/ai_assistant_personalities/#{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
@@ -54,6 +54,15 @@ module Files
54
54
  @attributes[:prompt] = value
55
55
  end
56
56
 
57
+ # string - Permissions used by the internal API key for this AI Task. Valid values are `full` and `files_only`.
58
+ def permission_set
59
+ @attributes[:permission_set]
60
+ end
61
+
62
+ def permission_set=(value)
63
+ @attributes[:permission_set] = value
64
+ end
65
+
57
66
  # string - Path scope used for action-triggered AI Tasks. This must be slash-delimited, but it must neither start nor end with a slash. Maximum of 5000 characters.
58
67
  def path
59
68
  @attributes[:path]
@@ -208,6 +217,7 @@ module Files
208
217
  # interval - string - If trigger is `daily`, this specifies how often to run the AI Task.
209
218
  # name - string - AI Task name.
210
219
  # path - string - Path scope used for action-triggered AI Tasks.
220
+ # permission_set - string - Permissions used by the internal API key for this AI Task. Valid values are `full` and `files_only`.
211
221
  # prompt - string - Prompt sent when this AI Task is invoked.
212
222
  # recurring_day - int64 - If trigger is `daily`, this selects the day number inside the chosen interval.
213
223
  # schedule_days_of_week - array(int64) - If trigger is `custom_schedule`, the 0-based weekdays used by the schedule.
@@ -227,6 +237,7 @@ module Files
227
237
  raise InvalidParameterError.new("Bad parameter: interval must be an String") if params[:interval] and !params[:interval].is_a?(String)
228
238
  raise InvalidParameterError.new("Bad parameter: name must be an String") if params[:name] and !params[:name].is_a?(String)
229
239
  raise InvalidParameterError.new("Bad parameter: path must be an String") if params[:path] and !params[:path].is_a?(String)
240
+ raise InvalidParameterError.new("Bad parameter: permission_set must be an String") if params[:permission_set] and !params[:permission_set].is_a?(String)
230
241
  raise InvalidParameterError.new("Bad parameter: prompt must be an String") if params[:prompt] and !params[:prompt].is_a?(String)
231
242
  raise InvalidParameterError.new("Bad parameter: recurring_day must be an Integer") if params[:recurring_day] and !params[:recurring_day].is_a?(Integer)
232
243
  raise InvalidParameterError.new("Bad parameter: schedule_days_of_week must be an Array") if params[:schedule_days_of_week] and !params[:schedule_days_of_week].is_a?(Array)
@@ -310,6 +321,7 @@ module Files
310
321
  # interval - string - If trigger is `daily`, this specifies how often to run the AI Task.
311
322
  # name (required) - string - AI Task name.
312
323
  # path - string - Path scope used for action-triggered AI Tasks.
324
+ # permission_set - string - Permissions used by the internal API key for this AI Task. Valid values are `full` and `files_only`.
313
325
  # prompt (required) - string - Prompt sent when this AI Task is invoked.
314
326
  # recurring_day - int64 - If trigger is `daily`, this selects the day number inside the chosen interval.
315
327
  # schedule_days_of_week - array(int64) - If trigger is `custom_schedule`, the 0-based weekdays used by the schedule.
@@ -325,6 +337,7 @@ module Files
325
337
  raise InvalidParameterError.new("Bad parameter: interval must be an String") if params[:interval] and !params[:interval].is_a?(String)
326
338
  raise InvalidParameterError.new("Bad parameter: name must be an String") if params[:name] and !params[:name].is_a?(String)
327
339
  raise InvalidParameterError.new("Bad parameter: path must be an String") if params[:path] and !params[:path].is_a?(String)
340
+ raise InvalidParameterError.new("Bad parameter: permission_set must be an String") if params[:permission_set] and !params[:permission_set].is_a?(String)
328
341
  raise InvalidParameterError.new("Bad parameter: prompt must be an String") if params[:prompt] and !params[:prompt].is_a?(String)
329
342
  raise InvalidParameterError.new("Bad parameter: recurring_day must be an Integer") if params[:recurring_day] and !params[:recurring_day].is_a?(Integer)
330
343
  raise InvalidParameterError.new("Bad parameter: schedule_days_of_week must be an Array") if params[:schedule_days_of_week] and !params[:schedule_days_of_week].is_a?(Array)
@@ -359,6 +372,7 @@ module Files
359
372
  # interval - string - If trigger is `daily`, this specifies how often to run the AI Task.
360
373
  # name - string - AI Task name.
361
374
  # path - string - Path scope used for action-triggered AI Tasks.
375
+ # permission_set - string - Permissions used by the internal API key for this AI Task. Valid values are `full` and `files_only`.
362
376
  # prompt - string - Prompt sent when this AI Task is invoked.
363
377
  # recurring_day - int64 - If trigger is `daily`, this selects the day number inside the chosen interval.
364
378
  # schedule_days_of_week - array(int64) - If trigger is `custom_schedule`, the 0-based weekdays used by the schedule.
@@ -377,6 +391,7 @@ module Files
377
391
  raise InvalidParameterError.new("Bad parameter: interval must be an String") if params[:interval] and !params[:interval].is_a?(String)
378
392
  raise InvalidParameterError.new("Bad parameter: name must be an String") if params[:name] and !params[:name].is_a?(String)
379
393
  raise InvalidParameterError.new("Bad parameter: path must be an String") if params[:path] and !params[:path].is_a?(String)
394
+ raise InvalidParameterError.new("Bad parameter: permission_set must be an String") if params[:permission_set] and !params[:permission_set].is_a?(String)
380
395
  raise InvalidParameterError.new("Bad parameter: prompt must be an String") if params[:prompt] and !params[:prompt].is_a?(String)
381
396
  raise InvalidParameterError.new("Bad parameter: recurring_day must be an Integer") if params[:recurring_day] and !params[:recurring_day].is_a?(Integer)
382
397
  raise InvalidParameterError.new("Bad parameter: schedule_days_of_week must be an Array") if params[:schedule_days_of_week] and !params[:schedule_days_of_week].is_a?(Array)
@@ -104,7 +104,7 @@ module Files
104
104
  @attributes[:name] = value
105
105
  end
106
106
 
107
- # string - Permissions for this API Key. It must be full for site-wide API Keys. Keys with the `desktop_app` permission set only have the ability to do the functions provided in our Desktop App (File and Share Link operations). Keys with the `office_integration` permission set are auto generated, and automatically expire, to allow users to interact with office integration platforms. Additional permission sets may become available in the future, such as for a Site Admin to give a key with no administrator privileges. If you have ideas for permission sets, please let us know.
107
+ # string - Permissions for this API Key. Keys with the `desktop_app` permission set only have the ability to do the functions provided in our Desktop App (File and Share Link operations). Keys with the `office_integration` permission set are auto generated, and automatically expire, to allow users to interact with office integration platforms. Keys with the `files_only` permission set can perform file operations as a full-access file user in the key's workspace scope, but cannot use site admin, workspace admin, folder admin, group admin, partner admin, or billing privileges from the owning user.
108
108
  def permission_set
109
109
  @attributes[:permission_set]
110
110
  end
@@ -158,6 +158,15 @@ module Files
158
158
  @attributes[:user_id] = value
159
159
  end
160
160
 
161
+ # int64 - Workspace ID for this API Key. `0` means the default workspace.
162
+ def workspace_id
163
+ @attributes[:workspace_id]
164
+ end
165
+
166
+ def workspace_id=(value)
167
+ @attributes[:workspace_id] = value
168
+ end
169
+
161
170
  # string - Folder path restriction for `office_integration` permission set API keys.
162
171
  def path
163
172
  @attributes[:path]
@@ -214,7 +223,7 @@ module Files
214
223
  # user_id - int64 - User ID. Provide a value of `0` to operate the current session's user.
215
224
  # 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.
216
225
  # per_page - int64 - Number of records to show per page. (Max: 10000, 1,000 or less is recommended).
217
- # sort_by - object - If set, sort records by the specified field in either `asc` or `desc` direction. Valid fields are `site_id`.
226
+ # sort_by - object - If set, sort records by the specified field in either `asc` or `desc` direction. Valid fields are `site_id` and `workspace_id`.
218
227
  # filter - object - If set, return records where the specified field is equal to the supplied value. Valid fields are `aws_style_credentials` and `expires_at`.
219
228
  # filter_gt - object - If set, return records where the specified field is greater than the supplied value. Valid fields are `expires_at`.
220
229
  # filter_gteq - object - If set, return records where the specified field is greater than or equal the supplied value. Valid fields are `expires_at`.
@@ -268,7 +277,8 @@ module Files
268
277
  # name (required) - string - Internal name for the API Key. For your use.
269
278
  # aws_style_credentials - boolean - If `true`, this API key will be usable with AWS-compatible endpoints, such as our Inbound S3-compatible endpoint.
270
279
  # path - string - Folder path restriction for `office_integration` permission set API keys.
271
- # permission_set - string - Permissions for this API Key. It must be full for site-wide API Keys. Keys with the `desktop_app` permission set only have the ability to do the functions provided in our Desktop App (File and Share Link operations). Keys with the `office_integration` permission set are auto generated, and automatically expire, to allow users to interact with office integration platforms. Additional permission sets may become available in the future, such as for a Site Admin to give a key with no administrator privileges. If you have ideas for permission sets, please let us know.
280
+ # permission_set - string - Permissions for this API Key. Keys with the `desktop_app` permission set only have the ability to do the functions provided in our Desktop App (File and Share Link operations). Keys with the `office_integration` permission set are auto generated, and automatically expire, to allow users to interact with office integration platforms. Keys with the `files_only` permission set can perform file operations as a full-access file user in the key's workspace scope, but cannot use site admin, workspace admin, folder admin, group admin, partner admin, or billing privileges from the owning user.
281
+ # workspace_id - int64 - Workspace ID for this API Key. `0` means the default workspace.
272
282
  def self.create(params = {}, options = {})
273
283
  raise InvalidParameterError.new("Bad parameter: user_id must be an Integer") if params[:user_id] and !params[:user_id].is_a?(Integer)
274
284
  raise InvalidParameterError.new("Bad parameter: description must be an String") if params[:description] and !params[:description].is_a?(String)
@@ -276,6 +286,7 @@ module Files
276
286
  raise InvalidParameterError.new("Bad parameter: name must be an String") if params[:name] and !params[:name].is_a?(String)
277
287
  raise InvalidParameterError.new("Bad parameter: path must be an String") if params[:path] and !params[:path].is_a?(String)
278
288
  raise InvalidParameterError.new("Bad parameter: permission_set must be an String") if params[:permission_set] and !params[:permission_set].is_a?(String)
289
+ raise InvalidParameterError.new("Bad parameter: workspace_id must be an Integer") if params[:workspace_id] and !params[:workspace_id].is_a?(Integer)
279
290
  raise MissingParameterError.new("Parameter missing: name") unless params[:name]
280
291
 
281
292
  response, options = Api.send_request("/api_keys", :post, params, options)
@@ -285,7 +296,7 @@ module Files
285
296
  # Parameters:
286
297
  # expires_at - string - API Key expiration date
287
298
  # name - string - Internal name for the API Key. For your use.
288
- # permission_set - string - Permissions for this API Key. It must be full for site-wide API Keys. Keys with the `desktop_app` permission set only have the ability to do the functions provided in our Desktop App (File and Share Link operations). Keys with the `office_integration` permission set are auto generated, and automatically expire, to allow users to interact with office integration platforms. Additional permission sets may become available in the future, such as for a Site Admin to give a key with no administrator privileges. If you have ideas for permission sets, please let us know.
299
+ # permission_set - string - Permissions for this API Key. Keys with the `desktop_app` permission set only have the ability to do the functions provided in our Desktop App (File and Share Link operations). Keys with the `office_integration` permission set are auto generated, and automatically expire, to allow users to interact with office integration platforms. Keys with the `files_only` permission set can perform file operations as a full-access file user in the key's workspace scope, but cannot use site admin, workspace admin, folder admin, group admin, partner admin, or billing privileges from the owning user.
289
300
  def self.update_current(params = {}, options = {})
290
301
  raise InvalidParameterError.new("Bad parameter: expires_at must be an String") if params[:expires_at] and !params[:expires_at].is_a?(String)
291
302
  raise InvalidParameterError.new("Bad parameter: name must be an String") if params[:name] and !params[:name].is_a?(String)
@@ -72,6 +72,15 @@ module Files
72
72
  @attributes[:usernames] = value
73
73
  end
74
74
 
75
+ # int64 - AI Assistant Personality ID assigned to this Group, if any. Users in the Group inherit it unless a direct per-user or Partner assignment overrides it.
76
+ def ai_assistant_personality_id
77
+ @attributes[:ai_assistant_personality_id]
78
+ end
79
+
80
+ def ai_assistant_personality_id=(value)
81
+ @attributes[:ai_assistant_personality_id] = value
82
+ end
83
+
75
84
  # boolean - If true, users in this group can use FTP to login. This will override a false value of `ftp_permission` on the user level.
76
85
  def ftp_permission
77
86
  @attributes[:ftp_permission]
@@ -139,6 +148,7 @@ module Files
139
148
  # notes - string - Group notes.
140
149
  # user_ids - string - A list of user ids. If sent as a string, should be comma-delimited.
141
150
  # admin_ids - string - A list of group admin user ids. If sent as a string, should be comma-delimited.
151
+ # ai_assistant_personality_id - int64 - AI Assistant Personality ID assigned to this Group, if any. Users in the Group inherit it unless a direct per-user or Partner assignment overrides it.
142
152
  # ftp_permission - boolean - If true, users in this group can use FTP to login. This will override a false value of `ftp_permission` on the user level.
143
153
  # sftp_permission - boolean - If true, users in this group can use SFTP to login. This will override a false value of `sftp_permission` on the user level.
144
154
  # dav_permission - boolean - If true, users in this group can use WebDAV to login. This will override a false value of `dav_permission` on the user level.
@@ -154,6 +164,7 @@ module Files
154
164
  raise InvalidParameterError.new("Bad parameter: notes must be an String") if params[:notes] and !params[:notes].is_a?(String)
155
165
  raise InvalidParameterError.new("Bad parameter: user_ids must be an String") if params[:user_ids] and !params[:user_ids].is_a?(String)
156
166
  raise InvalidParameterError.new("Bad parameter: admin_ids must be an String") if params[:admin_ids] and !params[:admin_ids].is_a?(String)
167
+ raise InvalidParameterError.new("Bad parameter: ai_assistant_personality_id must be an Integer") if params[:ai_assistant_personality_id] and !params[:ai_assistant_personality_id].is_a?(Integer)
157
168
  raise InvalidParameterError.new("Bad parameter: desktop_configuration_profile_id must be an Integer") if params[:desktop_configuration_profile_id] and !params[:desktop_configuration_profile_id].is_a?(Integer)
158
169
  raise InvalidParameterError.new("Bad parameter: allowed_ips must be an String") if params[:allowed_ips] and !params[:allowed_ips].is_a?(String)
159
170
  raise InvalidParameterError.new("Bad parameter: name must be an String") if params[:name] and !params[:name].is_a?(String)
@@ -233,6 +244,7 @@ module Files
233
244
  # notes - string - Group notes.
234
245
  # user_ids - string - A list of user ids. If sent as a string, should be comma-delimited.
235
246
  # admin_ids - string - A list of group admin user ids. If sent as a string, should be comma-delimited.
247
+ # ai_assistant_personality_id - int64 - AI Assistant Personality ID assigned to this Group, if any. Users in the Group inherit it unless a direct per-user or Partner assignment overrides it.
236
248
  # ftp_permission - boolean - If true, users in this group can use FTP to login. This will override a false value of `ftp_permission` on the user level.
237
249
  # sftp_permission - boolean - If true, users in this group can use SFTP to login. This will override a false value of `sftp_permission` on the user level.
238
250
  # dav_permission - boolean - If true, users in this group can use WebDAV to login. This will override a false value of `dav_permission` on the user level.
@@ -245,6 +257,7 @@ module Files
245
257
  raise InvalidParameterError.new("Bad parameter: notes must be an String") if params[:notes] and !params[:notes].is_a?(String)
246
258
  raise InvalidParameterError.new("Bad parameter: user_ids must be an String") if params[:user_ids] and !params[:user_ids].is_a?(String)
247
259
  raise InvalidParameterError.new("Bad parameter: admin_ids must be an String") if params[:admin_ids] and !params[:admin_ids].is_a?(String)
260
+ raise InvalidParameterError.new("Bad parameter: ai_assistant_personality_id must be an Integer") if params[:ai_assistant_personality_id] and !params[:ai_assistant_personality_id].is_a?(Integer)
248
261
  raise InvalidParameterError.new("Bad parameter: desktop_configuration_profile_id must be an Integer") if params[:desktop_configuration_profile_id] and !params[:desktop_configuration_profile_id].is_a?(Integer)
249
262
  raise InvalidParameterError.new("Bad parameter: allowed_ips must be an String") if params[:allowed_ips] and !params[:allowed_ips].is_a?(String)
250
263
  raise InvalidParameterError.new("Bad parameter: name must be an String") if params[:name] and !params[:name].is_a?(String)
@@ -259,6 +272,7 @@ module Files
259
272
  # notes - string - Group notes.
260
273
  # user_ids - string - A list of user ids. If sent as a string, should be comma-delimited.
261
274
  # admin_ids - string - A list of group admin user ids. If sent as a string, should be comma-delimited.
275
+ # ai_assistant_personality_id - int64 - AI Assistant Personality ID assigned to this Group, if any. Users in the Group inherit it unless a direct per-user or Partner assignment overrides it.
262
276
  # ftp_permission - boolean - If true, users in this group can use FTP to login. This will override a false value of `ftp_permission` on the user level.
263
277
  # sftp_permission - boolean - If true, users in this group can use SFTP to login. This will override a false value of `sftp_permission` on the user level.
264
278
  # dav_permission - boolean - If true, users in this group can use WebDAV to login. This will override a false value of `dav_permission` on the user level.
@@ -273,6 +287,7 @@ module Files
273
287
  raise InvalidParameterError.new("Bad parameter: notes must be an String") if params[:notes] and !params[:notes].is_a?(String)
274
288
  raise InvalidParameterError.new("Bad parameter: user_ids must be an String") if params[:user_ids] and !params[:user_ids].is_a?(String)
275
289
  raise InvalidParameterError.new("Bad parameter: admin_ids must be an String") if params[:admin_ids] and !params[:admin_ids].is_a?(String)
290
+ raise InvalidParameterError.new("Bad parameter: ai_assistant_personality_id must be an Integer") if params[:ai_assistant_personality_id] and !params[:ai_assistant_personality_id].is_a?(Integer)
276
291
  raise InvalidParameterError.new("Bad parameter: desktop_configuration_profile_id must be an Integer") if params[:desktop_configuration_profile_id] and !params[:desktop_configuration_profile_id].is_a?(Integer)
277
292
  raise InvalidParameterError.new("Bad parameter: allowed_ips must be an String") if params[:allowed_ips] and !params[:allowed_ips].is_a?(String)
278
293
  raise InvalidParameterError.new("Bad parameter: name must be an String") if params[:name] and !params[:name].is_a?(String)
@@ -72,6 +72,15 @@ module Files
72
72
  @attributes[:id] = value
73
73
  end
74
74
 
75
+ # int64 - AI Assistant Personality ID assigned to this Partner, if any. Users in the Partner inherit it unless a direct per-user assignment overrides it.
76
+ def ai_assistant_personality_id
77
+ @attributes[:ai_assistant_personality_id]
78
+ end
79
+
80
+ def ai_assistant_personality_id=(value)
81
+ @attributes[:ai_assistant_personality_id] = value
82
+ end
83
+
75
84
  # int64 - ID of the Workspace associated with this Partner.
76
85
  def workspace_id
77
86
  @attributes[:workspace_id]
@@ -163,6 +172,7 @@ module Files
163
172
  end
164
173
 
165
174
  # Parameters:
175
+ # ai_assistant_personality_id - int64 - AI Assistant Personality ID assigned to this Partner, if any. Users in the Partner inherit it unless a direct per-user assignment overrides it.
166
176
  # allowed_ips - string - A list of allowed IPs for this Partner. Newline delimited. Partner User IP access is allowed when the IP matches the Partner, User, or Site allowed IP lists.
167
177
  # allow_bypassing_2fa_policies - boolean - Allow Partner Admins to change Two-Factor Authentication requirements for Partner Users.
168
178
  # allow_credential_changes - boolean - Allow Partner Admins to change or reset credentials for users belonging to this Partner.
@@ -180,6 +190,7 @@ module Files
180
190
  params[:id] = @attributes[:id]
181
191
  raise MissingParameterError.new("Current object doesn't have a id") unless @attributes[:id]
182
192
  raise InvalidParameterError.new("Bad parameter: id must be an Integer") if params[:id] and !params[:id].is_a?(Integer)
193
+ raise InvalidParameterError.new("Bad parameter: ai_assistant_personality_id must be an Integer") if params[:ai_assistant_personality_id] and !params[:ai_assistant_personality_id].is_a?(Integer)
183
194
  raise InvalidParameterError.new("Bad parameter: allowed_ips must be an String") if params[:allowed_ips] and !params[:allowed_ips].is_a?(String)
184
195
  raise InvalidParameterError.new("Bad parameter: notes must be an String") if params[:notes] and !params[:notes].is_a?(String)
185
196
  raise InvalidParameterError.new("Bad parameter: responsible_group_id must be an Integer") if params[:responsible_group_id] and !params[:responsible_group_id].is_a?(Integer)
@@ -255,6 +266,7 @@ module Files
255
266
  end
256
267
 
257
268
  # Parameters:
269
+ # ai_assistant_personality_id - int64 - AI Assistant Personality ID assigned to this Partner, if any. Users in the Partner inherit it unless a direct per-user assignment overrides it.
258
270
  # allowed_ips - string - A list of allowed IPs for this Partner. Newline delimited. Partner User IP access is allowed when the IP matches the Partner, User, or Site allowed IP lists.
259
271
  # allow_bypassing_2fa_policies - boolean - Allow Partner Admins to change Two-Factor Authentication requirements for Partner Users.
260
272
  # allow_credential_changes - boolean - Allow Partner Admins to change or reset credentials for users belonging to this Partner.
@@ -269,6 +281,7 @@ module Files
269
281
  # root_folder (required) - string - The root folder path for this Partner.
270
282
  # workspace_id - int64 - ID of the Workspace associated with this Partner.
271
283
  def self.create(params = {}, options = {})
284
+ raise InvalidParameterError.new("Bad parameter: ai_assistant_personality_id must be an Integer") if params[:ai_assistant_personality_id] and !params[:ai_assistant_personality_id].is_a?(Integer)
272
285
  raise InvalidParameterError.new("Bad parameter: allowed_ips must be an String") if params[:allowed_ips] and !params[:allowed_ips].is_a?(String)
273
286
  raise InvalidParameterError.new("Bad parameter: notes must be an String") if params[:notes] and !params[:notes].is_a?(String)
274
287
  raise InvalidParameterError.new("Bad parameter: responsible_group_id must be an Integer") if params[:responsible_group_id] and !params[:responsible_group_id].is_a?(Integer)
@@ -285,6 +298,7 @@ module Files
285
298
  end
286
299
 
287
300
  # Parameters:
301
+ # ai_assistant_personality_id - int64 - AI Assistant Personality ID assigned to this Partner, if any. Users in the Partner inherit it unless a direct per-user assignment overrides it.
288
302
  # allowed_ips - string - A list of allowed IPs for this Partner. Newline delimited. Partner User IP access is allowed when the IP matches the Partner, User, or Site allowed IP lists.
289
303
  # allow_bypassing_2fa_policies - boolean - Allow Partner Admins to change Two-Factor Authentication requirements for Partner Users.
290
304
  # allow_credential_changes - boolean - Allow Partner Admins to change or reset credentials for users belonging to this Partner.
@@ -301,6 +315,7 @@ module Files
301
315
  params ||= {}
302
316
  params[:id] = id
303
317
  raise InvalidParameterError.new("Bad parameter: id must be an Integer") if params[:id] and !params[:id].is_a?(Integer)
318
+ raise InvalidParameterError.new("Bad parameter: ai_assistant_personality_id must be an Integer") if params[:ai_assistant_personality_id] and !params[:ai_assistant_personality_id].is_a?(Integer)
304
319
  raise InvalidParameterError.new("Bad parameter: allowed_ips must be an String") if params[:allowed_ips] and !params[:allowed_ips].is_a?(String)
305
320
  raise InvalidParameterError.new("Bad parameter: notes must be an String") if params[:notes] and !params[:notes].is_a?(String)
306
321
  raise InvalidParameterError.new("Bad parameter: responsible_group_id must be an Integer") if params[:responsible_group_id] and !params[:responsible_group_id].is_a?(Integer)
@@ -158,6 +158,15 @@ module Files
158
158
  @attributes[:disabled_expired_or_inactive] = value
159
159
  end
160
160
 
161
+ # int64 - AI Assistant Personality ID assigned directly to this user, if any.
162
+ def ai_assistant_personality_id
163
+ @attributes[:ai_assistant_personality_id]
164
+ end
165
+
166
+ def ai_assistant_personality_id=(value)
167
+ @attributes[:ai_assistant_personality_id] = value
168
+ end
169
+
161
170
  # int64 - Desktop Configuration Profile ID assigned directly to this user, if any.
162
171
  def desktop_configuration_profile_id
163
172
  @attributes[:desktop_configuration_profile_id]
@@ -915,6 +924,7 @@ module Files
915
924
  # password - string - User password.
916
925
  # password_confirmation - string - Optional, but if provided, we will ensure that it matches the value sent in `password`.
917
926
  # announcements_read - boolean - Signifies that the user has read all the announcements in the UI.
927
+ # ai_assistant_personality_id - int64 - AI Assistant Personality ID assigned directly to this user, if any.
918
928
  # allowed_ips - string - A list of allowed IPs if applicable. Newline delimited
919
929
  # attachments_permission - boolean - DEPRECATED: If `true`, the user can user create Bundles (aka Share Links). Use the bundle permission instead.
920
930
  # authenticate_until - string - Scheduled Date/Time at which user will be deactivated
@@ -983,6 +993,7 @@ module Files
983
993
  raise InvalidParameterError.new("Bad parameter: imported_password_hash must be an String") if params[:imported_password_hash] and !params[:imported_password_hash].is_a?(String)
984
994
  raise InvalidParameterError.new("Bad parameter: password must be an String") if params[:password] and !params[:password].is_a?(String)
985
995
  raise InvalidParameterError.new("Bad parameter: password_confirmation must be an String") if params[:password_confirmation] and !params[:password_confirmation].is_a?(String)
996
+ raise InvalidParameterError.new("Bad parameter: ai_assistant_personality_id must be an Integer") if params[:ai_assistant_personality_id] and !params[:ai_assistant_personality_id].is_a?(Integer)
986
997
  raise InvalidParameterError.new("Bad parameter: allowed_ips must be an String") if params[:allowed_ips] and !params[:allowed_ips].is_a?(String)
987
998
  raise InvalidParameterError.new("Bad parameter: authenticate_until must be an String") if params[:authenticate_until] and !params[:authenticate_until].is_a?(String)
988
999
  raise InvalidParameterError.new("Bad parameter: authentication_method must be an String") if params[:authentication_method] and !params[:authentication_method].is_a?(String)
@@ -1106,6 +1117,7 @@ module Files
1106
1117
  # password - string - User password.
1107
1118
  # password_confirmation - string - Optional, but if provided, we will ensure that it matches the value sent in `password`.
1108
1119
  # announcements_read - boolean - Signifies that the user has read all the announcements in the UI.
1120
+ # ai_assistant_personality_id - int64 - AI Assistant Personality ID assigned directly to this user, if any.
1109
1121
  # allowed_ips - string - A list of allowed IPs if applicable. Newline delimited
1110
1122
  # attachments_permission - boolean - DEPRECATED: If `true`, the user can user create Bundles (aka Share Links). Use the bundle permission instead.
1111
1123
  # authenticate_until - string - Scheduled Date/Time at which user will be deactivated
@@ -1168,6 +1180,7 @@ module Files
1168
1180
  raise InvalidParameterError.new("Bad parameter: imported_password_hash must be an String") if params[:imported_password_hash] and !params[:imported_password_hash].is_a?(String)
1169
1181
  raise InvalidParameterError.new("Bad parameter: password must be an String") if params[:password] and !params[:password].is_a?(String)
1170
1182
  raise InvalidParameterError.new("Bad parameter: password_confirmation must be an String") if params[:password_confirmation] and !params[:password_confirmation].is_a?(String)
1183
+ raise InvalidParameterError.new("Bad parameter: ai_assistant_personality_id must be an Integer") if params[:ai_assistant_personality_id] and !params[:ai_assistant_personality_id].is_a?(Integer)
1171
1184
  raise InvalidParameterError.new("Bad parameter: allowed_ips must be an String") if params[:allowed_ips] and !params[:allowed_ips].is_a?(String)
1172
1185
  raise InvalidParameterError.new("Bad parameter: authenticate_until must be an String") if params[:authenticate_until] and !params[:authenticate_until].is_a?(String)
1173
1186
  raise InvalidParameterError.new("Bad parameter: authentication_method must be an String") if params[:authentication_method] and !params[:authentication_method].is_a?(String)
@@ -1245,6 +1258,7 @@ module Files
1245
1258
  # password - string - User password.
1246
1259
  # password_confirmation - string - Optional, but if provided, we will ensure that it matches the value sent in `password`.
1247
1260
  # announcements_read - boolean - Signifies that the user has read all the announcements in the UI.
1261
+ # ai_assistant_personality_id - int64 - AI Assistant Personality ID assigned directly to this user, if any.
1248
1262
  # allowed_ips - string - A list of allowed IPs if applicable. Newline delimited
1249
1263
  # attachments_permission - boolean - DEPRECATED: If `true`, the user can user create Bundles (aka Share Links). Use the bundle permission instead.
1250
1264
  # authenticate_until - string - Scheduled Date/Time at which user will be deactivated
@@ -1312,6 +1326,7 @@ module Files
1312
1326
  raise InvalidParameterError.new("Bad parameter: imported_password_hash must be an String") if params[:imported_password_hash] and !params[:imported_password_hash].is_a?(String)
1313
1327
  raise InvalidParameterError.new("Bad parameter: password must be an String") if params[:password] and !params[:password].is_a?(String)
1314
1328
  raise InvalidParameterError.new("Bad parameter: password_confirmation must be an String") if params[:password_confirmation] and !params[:password_confirmation].is_a?(String)
1329
+ raise InvalidParameterError.new("Bad parameter: ai_assistant_personality_id must be an Integer") if params[:ai_assistant_personality_id] and !params[:ai_assistant_personality_id].is_a?(Integer)
1315
1330
  raise InvalidParameterError.new("Bad parameter: allowed_ips must be an String") if params[:allowed_ips] and !params[:allowed_ips].is_a?(String)
1316
1331
  raise InvalidParameterError.new("Bad parameter: authenticate_until must be an String") if params[:authenticate_until] and !params[:authenticate_until].is_a?(String)
1317
1332
  raise InvalidParameterError.new("Bad parameter: authentication_method must be an String") if params[:authentication_method] and !params[:authentication_method].is_a?(String)
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Files
4
- VERSION = "1.1.662"
4
+ VERSION = "1.1.664"
5
5
  end
data/lib/files.com.rb CHANGED
@@ -38,6 +38,7 @@ require "files.com/models/action_log"
38
38
  require "files.com/models/action_notification_export"
39
39
  require "files.com/models/action_notification_export_result"
40
40
  require "files.com/models/agent_push_update"
41
+ require "files.com/models/ai_assistant_personality"
41
42
  require "files.com/models/ai_task"
42
43
  require "files.com/models/api_key"
43
44
  require "files.com/models/api_request_log"
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.1.662
4
+ version: 1.1.664
5
5
  platform: ruby
6
6
  authors:
7
7
  - files.com
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-06-27 00:00:00.000000000 Z
11
+ date: 2026-06-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: addressable
@@ -176,6 +176,7 @@ files:
176
176
  - docs/action_notification_export.md
177
177
  - docs/action_notification_export_result.md
178
178
  - docs/agent_push_update.md
179
+ - docs/ai_assistant_personality.md
179
180
  - docs/ai_task.md
180
181
  - docs/api_key.md
181
182
  - docs/api_request_log.md
@@ -319,6 +320,7 @@ files:
319
320
  - lib/files.com/models/action_notification_export.rb
320
321
  - lib/files.com/models/action_notification_export_result.rb
321
322
  - lib/files.com/models/agent_push_update.rb
323
+ - lib/files.com/models/ai_assistant_personality.rb
322
324
  - lib/files.com/models/ai_task.rb
323
325
  - lib/files.com/models/api_key.rb
324
326
  - lib/files.com/models/api_request_log.rb