files.com 1.1.764 → 1.1.766
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/README.md +75 -3
- data/_VERSION +1 -1
- data/docs/api_key.md +5 -5
- data/docs/form_field_set.md +1 -1
- data/docs/history_export.md +2 -0
- data/docs/lock.md +7 -1
- data/docs/partner.md +1 -1
- data/docs/permission.md +5 -5
- data/docs/remote_server.md +20 -20
- data/docs/site.md +4 -0
- data/docs/user.md +6 -6
- data/docs/user_sftp_client_use.md +1 -0
- data/lib/files.com/errors.rb +1 -0
- data/lib/files.com/models/api_key.rb +5 -5
- data/lib/files.com/models/form_field_set.rb +1 -1
- data/lib/files.com/models/history_export.rb +9 -0
- data/lib/files.com/models/lock.rb +16 -1
- data/lib/files.com/models/partner.rb +1 -1
- data/lib/files.com/models/permission.rb +5 -5
- data/lib/files.com/models/remote_server.rb +20 -20
- data/lib/files.com/models/site.rb +6 -0
- data/lib/files.com/models/user.rb +6 -6
- data/lib/files.com/models/user_sftp_client_use.rb +2 -0
- data/lib/files.com/version.rb +1 -1
- data/spec/language_spec.rb +24 -10
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 0bb1d5b48b96119ec91525d8f055be9455d19406b796869d5e9db694bc10e34d
|
|
4
|
+
data.tar.gz: 3b963488ee21b159a12a9bd256e343d0e86987f4ac8701de9e3eccc1fdc86876
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: ebe6a92f79a33732e665c36dec9269f648bb77be622659921ae9594fb703eebc457e628b058daa103ba693a15df62410b8c0e87f9b4f1f0eda714cda06937a15
|
|
7
|
+
data.tar.gz: 279cacd8d1dbadfb490ecbbecfd8a1069b019633469e731c1fac550aa42791f601c2f173868681b8d78fc71ed5d9f1dded664bc45c3cd27ac524e9e9e647e4e7
|
data/README.md
CHANGED
|
@@ -396,13 +396,40 @@ Trailing whitespace is significant for comparison. `report.txt` and `report.txt
|
|
|
396
396
|
|
|
397
397
|
## Workspaces
|
|
398
398
|
|
|
399
|
-
A Workspace
|
|
399
|
+
A Workspace groups files, users, groups, Partners, integrations, and workflows within a Files.com Site. An integration can provision a Workspace for a department or project and delegate its operation to a team without making that team Site Administrators. Every Site has a Default Workspace, with ID `0`; additional Workspaces have their own IDs and root folders.
|
|
400
400
|
|
|
401
|
-
|
|
401
|
+
Account membership, request context, and permission grants serve different purposes. Creating an account in a Workspace determines where it belongs. Selecting a Workspace determines which resources a request operates on. A permission grant determines what the caller can do there. Selecting a Workspace never grants access to it.
|
|
402
402
|
|
|
403
|
-
|
|
403
|
+
### Accounts and Administrative Access
|
|
404
|
+
|
|
405
|
+
A user's or group's `workspace_id` identifies the Workspace the account belongs to. Accounts belonging to a Custom Workspace stay within it. Default Workspace users and groups can receive permissions in one or more Custom Workspaces while keeping their existing accounts in Workspace `0`.
|
|
406
|
+
|
|
407
|
+
| Account | Workspace Administrator assignment | Scope |
|
|
408
|
+
| --- | --- | --- |
|
|
409
|
+
| User belonging to a Custom Workspace | Set the user's `workspace_admin` to `true`. | That user's own Custom Workspace. |
|
|
410
|
+
| Default Workspace user | Create an `admin` Permission for the user on a Custom Workspace's root folder. | Each Custom Workspace with a root grant. |
|
|
411
|
+
| Default Workspace group | Create an `admin` Permission for the group on a Custom Workspace's root folder. | Every member inherits administration of each Workspace with a root grant. |
|
|
412
|
+
|
|
413
|
+
`workspace_admin` is not a summary of a user's effective administrative access. A Default Workspace user can administer a Custom Workspace through a direct or group root grant while their `workspace_admin` remains `false`. Groups have no `workspace_admin` field. See [Users](/ruby/resources/user-accounts/users) and [Groups](/ruby/resources/user-accounts/groups) for account fields.
|
|
414
|
+
|
|
415
|
+
An `admin` grant on the **Custom Workspace root** provides full Workspace Administrator authority over its files, users, groups, Partners, workflows, and integrations. An `admin` grant on a subfolder provides Folder Admin authority over that folder and its descendants; it does not provide Workspace administration. Other permission levels provide their corresponding folder access without Workspace administration. [Permissions](/ruby/resources/user-accounts/permissions) defines the levels.
|
|
416
|
+
|
|
417
|
+
Site Administrators manage cross-Workspace assignments to Default Workspace accounts. Workspace Administrators manage accounts and permissions within their own scope. Site Administrators retain access to every Workspace; adding a Workspace grant does not narrow Site Administrator authority. The [product documentation](https://www.files.com/docs/workspaces/workspace-administrators) explains the administrator's operational scope and site-wide controls.
|
|
418
|
+
|
|
419
|
+
### Request Context and API Keys
|
|
420
|
+
|
|
421
|
+
You can include the `X-Files-Workspace-Id` REST header to select a Workspace for a request. SDK request options and CLI configuration send that same selection. When a Workspace is selected, Workspace-scoped resources are listed, created, and changed within that context, and ordinary paths are relative to its root.
|
|
422
|
+
|
|
423
|
+
A resource's `workspace_id` request field describes the resource's Workspace membership. It is separate from the SDK's Workspace request option or REST header. Creating a Workspace-scoped resource in a Custom Workspace defaults its `workspace_id` to the selected Workspace; a mismatching membership value is rejected with `not-authorized/insufficient-permission-for-params`.
|
|
424
|
+
|
|
425
|
+
Selecting another Workspace with an API key requires a **Full Access key created in the Default Workspace**. A user key follows that user's current access, including group permissions. A site-wide Full Access key created in the Default Workspace has Site Administrator authority in every Workspace. A Files Only key stays in its creation Workspace, even if its user has cross-Workspace access. Any key created in a Custom Workspace stays within that Workspace. Selecting another context with these confined keys is rejected with `bad-request/invalid-workspace-id-header`.
|
|
426
|
+
|
|
427
|
+
An account belonging to a Custom Workspace is scoped there when it authenticates normally. For a Default Workspace user, explicitly select the intended Workspace for an integration rather than relying on an interactive login preference. [API Keys](/ruby/resources/developers/api-keys) and [Authentication](/ruby/overview/authentication) cover credentials.
|
|
404
428
|
|
|
405
429
|
The Files.com Ruby SDK supports workspace scoping by using the `Files.workspace_id` configuration attribute. Scope a single request by passing `workspace_id` in the request options.
|
|
430
|
+
|
|
431
|
+
The adjacent scoping example uses a credential authorized for the selected Workspace. A group member uses their own Full Access user key from the Default Workspace; the Site Administrator credential used to assign the grant is not needed for their day-to-day work.
|
|
432
|
+
|
|
406
433
|
```ruby title="Example Request"
|
|
407
434
|
require "files.com"
|
|
408
435
|
|
|
@@ -411,6 +438,50 @@ Files.workspace_id = 123
|
|
|
411
438
|
Files::Folder.list_for("", {}, workspace_id: 456)
|
|
412
439
|
```
|
|
413
440
|
|
|
441
|
+
### Delegating a Workspace to an Existing Group
|
|
442
|
+
|
|
443
|
+
An operations team already represented by a Default Workspace group can administer a Custom Workspace through one root Permission. The group and its members stay in the Default Workspace, so the same team can receive different access in other Workspaces.
|
|
444
|
+
|
|
445
|
+
First retrieve the target [Workspace](/ruby/resources/settings/workspaces) and [Group](/ruby/resources/user-accounts/groups) IDs as a Site Administrator in Workspace `0`. The examples use Workspace `123`, group `456`, and member user `789`; replace them with your own IDs. Confirm that the group belongs to Workspace `0` and that the intended user is a member.
|
|
446
|
+
|
|
447
|
+
Create the Permission using a Default Workspace Full Access site-wide key or a Full Access user key belonging to a Site Administrator. Keep the request context at `0` and use the qualified root path `_/Workspaces/123`. Set `group_id` to the group's ID, `permission` to `admin`, and `recursive` to `true`. Save the returned Permission `id` for later removal. For an individual Default Workspace user, use `user_id` instead of `group_id`.
|
|
448
|
+
|
|
449
|
+
For a Default Workspace group, a Site Administrator can also select Workspace `123` and use an empty `path` to grant access to its root. The qualified path in Workspace `0` works for both Default Workspace users and groups and keeps the account scope and target Workspace explicit. Appending a subfolder to the path would grant Folder Admin access instead of Workspace Administrator authority.
|
|
450
|
+
|
|
451
|
+
After the grant, run the request-context example above with the member's own credential and Workspace `123` selected. That member can work with the Workspace's files and perform Workspace Administrator operations, such as managing its users, Partners, and integrations. A Site Administrator's successful request does not establish that the member has the intended access.
|
|
452
|
+
|
|
453
|
+
```ruby title="Grant group administration"
|
|
454
|
+
require 'files.com'
|
|
455
|
+
|
|
456
|
+
Files.workspace_id = 0
|
|
457
|
+
grant = Files::Permission.create({
|
|
458
|
+
path: "_/Workspaces/123",
|
|
459
|
+
group_id: 456,
|
|
460
|
+
permission: "admin",
|
|
461
|
+
recursive: true
|
|
462
|
+
}, workspace_id: 0)
|
|
463
|
+
puts grant.id
|
|
464
|
+
```
|
|
465
|
+
|
|
466
|
+
### Permission Inspection and Removal
|
|
467
|
+
|
|
468
|
+
List the member's Permissions with `user_id` and `include_groups=true` to include grants inherited through group membership. Listing only direct user grants can miss the Permission that provides Workspace administration. In Workspace `0`, the Custom Workspace root appears as `_/Workspaces/123`; in Workspace `123`, paths are relative to that root. Inspect the root path and `permission=admin`, rather than treating the user's `workspace_admin` field as their effective administrative access.
|
|
469
|
+
|
|
470
|
+
Permission lists show individual grants, rather than a single flag for effective administrative access. Membership in several groups combines their access. A Permission using `group_ids` instead of `group_id` requires membership in all the specified groups; it is not a shorthand for assigning the same grant to several independent groups.
|
|
471
|
+
|
|
472
|
+
Removing a member ends access received through that group. Deleting the root Permission ends the group's Workspace Administrator grant for every member. These changes leave independent direct and other group grants in place, so review all applicable grants when withdrawing access. Default Workspace user API keys follow those permission changes without being recreated.
|
|
473
|
+
|
|
474
|
+
Group membership maintained through SCIM follows the same rule. A Group Admin allowed to add members can give those users the group's existing Workspace Administrator access. Choose who manages the group with that authority in mind.
|
|
475
|
+
|
|
476
|
+
Delete the Permission by its returned `id` as the Site Administrator in Workspace `0`. The removal examples use Permission ID `9001`; replace it with the ID returned by your create request. Permissions are created and deleted, rather than updated in place. If narrower folder access is still needed, assign it explicitly; deleting a broad grant does not restore narrower grants it previously replaced.
|
|
477
|
+
|
|
478
|
+
```ruby title="Inspect member grants and remove the group grant"
|
|
479
|
+
Files::Permission.list({user_id: "789", include_groups: true}, workspace_id: 0).each do |item|
|
|
480
|
+
puts [item.path, item.permission, item.group_id].inspect
|
|
481
|
+
end
|
|
482
|
+
Files::Permission.delete(9001, {}, workspace_id: 0)
|
|
483
|
+
```
|
|
484
|
+
|
|
414
485
|
## Foreign Language Support
|
|
415
486
|
|
|
416
487
|
The Files.com Ruby SDK supports localized responses by using the `Files.language` configuration attribute.
|
|
@@ -683,6 +754,7 @@ Files::FolderAdminPermissionRequiredError -> Files::NotAuthorizedError -> Files:
|
|
|
683
754
|
|`TooManyRequestsError`| `RateLimitedError` |
|
|
684
755
|
|`TooManySharesError`| `RateLimitedError` |
|
|
685
756
|
|`AutomationsUnavailableError`| `ServiceUnavailableError` |
|
|
757
|
+
|`LockOperationBusyError`| `ServiceUnavailableError` |
|
|
686
758
|
|`MigrationInProgressError`| `ServiceUnavailableError` |
|
|
687
759
|
|`SearchUnavailableError`| `ServiceUnavailableError` |
|
|
688
760
|
|`SiteDisabledError`| `ServiceUnavailableError` |
|
data/_VERSION
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
1.1.
|
|
1
|
+
1.1.766
|
data/docs/api_key.md
CHANGED
|
@@ -36,14 +36,14 @@
|
|
|
36
36
|
* `aws_secret_key` (string): AWS Secret Key to use with AWS-compatible endpoints, such as our Inbound S3-compatible endpoint.
|
|
37
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.
|
|
38
38
|
* `name` (string): Internal name for the API Key. For your use.
|
|
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 use only the files, folders, and file_actions endpoints, where they perform file operations as a full-access file user in the key's workspace scope, along with `GET /file_migrations/{id}` and `GET /api_key`.
|
|
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 use only the files, folders, and file_actions endpoints, where they perform file operations as a full-access file user in the key's workspace scope, along with `GET /file_migrations/{id}` and `GET /api_key`. On the migration lookup, any key with a `path` can read only migrations it started. Without a `path`, user-owned keys retain user-scoped access; site-wide Workspace-bound keys can read only migrations whose source and destination are both in their Workspace. Every `files_only` key is Workspace-bound, including Workspace `0`, as is a full-access key in a named Workspace. A full-access site-wide key in the default Workspace retains Site-wide migration access. Migrations outside the caller's visibility return `not-found`. Keys with `files_only` cannot use site admin, workspace admin, folder admin, group admin, partner admin, or billing privileges from the owning user, and every other endpoint denies them with `not-authorized/api-key-only-for-file-operations`.
|
|
40
40
|
* `platform` (string): If this API key represents a Desktop app, what platform was it created on?
|
|
41
41
|
* `site_id` (int64): Site ID
|
|
42
42
|
* `site_name` (string): Site Name
|
|
43
43
|
* `url` (string): URL for API host.
|
|
44
44
|
* `user_id` (int64): User ID for the owner of this API Key. May be blank for Site-wide API Keys.
|
|
45
45
|
* `workspace_id` (int64): Workspace ID for this API Key. `0` means the default workspace.
|
|
46
|
-
* `path` (string): Restricts the file and folder operations made with this key, meaning the files, folders, and file_actions endpoints, to the specified folder and its descendants, including copy and move destinations. Other endpoints do not apply the path restriction; use the `files_only` permission set to confine a key to
|
|
46
|
+
* `path` (string): Restricts the file and folder operations made with this key, meaning the files, folders, and file_actions endpoints, to the specified folder and its descendants, including copy and move destinations. For `GET /file_migrations/{id}`, a key with a path can read only migrations it started. Other endpoints do not apply the path restriction; use the `files_only` permission set to confine a key to file operations and their supporting lookups. Does not grant access beyond the owning user's permissions. Optional except for `office_integration` keys, which require a path the owning user can read.
|
|
47
47
|
|
|
48
48
|
|
|
49
49
|
---
|
|
@@ -115,8 +115,8 @@ Files::ApiKey.create(
|
|
|
115
115
|
* `expires_at` (string): API Key expiration date
|
|
116
116
|
* `name` (string): Required - Internal name for the API Key. For your use.
|
|
117
117
|
* `aws_style_credentials` (boolean): If `true`, this API key will be usable with AWS-compatible endpoints, such as our Inbound S3-compatible endpoint.
|
|
118
|
-
* `path` (string): Restricts the file and folder operations made with this key, meaning the files, folders, and file_actions endpoints, to the specified folder and its descendants, including copy and move destinations. Other endpoints do not apply the path restriction; use the `files_only` permission set to confine a key to
|
|
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 use only the files, folders, and file_actions endpoints, where they perform file operations as a full-access file user in the key's workspace scope, along with `GET /file_migrations/{id}` and `GET /api_key`.
|
|
118
|
+
* `path` (string): Restricts the file and folder operations made with this key, meaning the files, folders, and file_actions endpoints, to the specified folder and its descendants, including copy and move destinations. For `GET /file_migrations/{id}`, a key with a path can read only migrations it started. Other endpoints do not apply the path restriction; use the `files_only` permission set to confine a key to file operations and their supporting lookups. Does not grant access beyond the owning user's permissions. Optional except for `office_integration` keys, which require a path the owning user can read.
|
|
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 use only the files, folders, and file_actions endpoints, where they perform file operations as a full-access file user in the key's workspace scope, along with `GET /file_migrations/{id}` and `GET /api_key`. On the migration lookup, any key with a `path` can read only migrations it started. Without a `path`, user-owned keys retain user-scoped access; site-wide Workspace-bound keys can read only migrations whose source and destination are both in their Workspace. Every `files_only` key is Workspace-bound, including Workspace `0`, as is a full-access key in a named Workspace. A full-access site-wide key in the default Workspace retains Site-wide migration access. Migrations outside the caller's visibility return `not-found`. Keys with `files_only` cannot use site admin, workspace admin, folder admin, group admin, partner admin, or billing privileges from the owning user, and every other endpoint denies them with `not-authorized/api-key-only-for-file-operations`.
|
|
120
120
|
* `workspace_id` (int64): Workspace ID for this API Key. `0` means the default workspace.
|
|
121
121
|
|
|
122
122
|
|
|
@@ -136,7 +136,7 @@ Files::ApiKey.update_current(
|
|
|
136
136
|
|
|
137
137
|
* `expires_at` (string): API Key expiration date
|
|
138
138
|
* `name` (string): Internal name for the API Key. For your use.
|
|
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 use only the files, folders, and file_actions endpoints, where they perform file operations as a full-access file user in the key's workspace scope, along with `GET /file_migrations/{id}` and `GET /api_key`.
|
|
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 use only the files, folders, and file_actions endpoints, where they perform file operations as a full-access file user in the key's workspace scope, along with `GET /file_migrations/{id}` and `GET /api_key`. On the migration lookup, any key with a `path` can read only migrations it started. Without a `path`, user-owned keys retain user-scoped access; site-wide Workspace-bound keys can read only migrations whose source and destination are both in their Workspace. Every `files_only` key is Workspace-bound, including Workspace `0`, as is a full-access key in a named Workspace. A full-access site-wide key in the default Workspace retains Site-wide migration access. Migrations outside the caller's visibility return `not-found`. Keys with `files_only` cannot use site admin, workspace admin, folder admin, group admin, partner admin, or billing privileges from the owning user, and every other endpoint denies them with `not-authorized/api-key-only-for-file-operations`.
|
|
140
140
|
|
|
141
141
|
|
|
142
142
|
---
|
data/docs/form_field_set.md
CHANGED
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
* `id` (int64): Form field set id
|
|
39
39
|
* `title` (string): Title to be displayed
|
|
40
40
|
* `form_layout` (array(int64)): Layout of the form
|
|
41
|
-
* `form_fields` (array(object)): Associated form fields
|
|
41
|
+
* `form_fields` (array(object)): Associated form field definitions; authenticated form field set responses include historical definitions, while form_layout identifies current fields
|
|
42
42
|
* `skip_name` (boolean): Any associated InboxRegistrations or BundleRegistrations can be saved without providing name
|
|
43
43
|
* `skip_email` (boolean): Any associated InboxRegistrations or BundleRegistrations can be saved without providing email
|
|
44
44
|
* `skip_company` (boolean): Any associated InboxRegistrations or BundleRegistrations can be saved without providing company
|
data/docs/history_export.md
CHANGED
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
```
|
|
6
6
|
{
|
|
7
|
+
"workspace_id": 1,
|
|
7
8
|
"id": 1,
|
|
8
9
|
"history_version": "20201213.2",
|
|
9
10
|
"start_at": "2000-01-01T01:00:00Z",
|
|
@@ -32,6 +33,7 @@
|
|
|
32
33
|
}
|
|
33
34
|
```
|
|
34
35
|
|
|
36
|
+
* `workspace_id` (int64): Workspace of the export. 0 represents the default workspace. A null value means a site-wide export.
|
|
35
37
|
* `id` (int64): History Export ID
|
|
36
38
|
* `history_version` (string): Version of the history for the export.
|
|
37
39
|
* `start_at` (date-time): Start date/time of export range.
|
data/docs/lock.md
CHANGED
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
* `timeout` (int64): Lock timeout in seconds
|
|
24
24
|
* `depth` (string):
|
|
25
25
|
* `recursive` (boolean): Does lock apply to subfolders?
|
|
26
|
-
* `owner` (string):
|
|
26
|
+
* `owner` (string): Arbitrary descriptive label for the lock. Does not change the lock creator or permissions.
|
|
27
27
|
* `scope` (string):
|
|
28
28
|
* `exclusive` (boolean): Is lock exclusive?
|
|
29
29
|
* `token` (string): Lock token. Use to release lock.
|
|
@@ -31,6 +31,7 @@
|
|
|
31
31
|
* `allow_access_by_any_user` (boolean): Can lock be modified by users other than its creator?
|
|
32
32
|
* `user_id` (int64): Lock creator user ID
|
|
33
33
|
* `username` (string): Lock creator username
|
|
34
|
+
* `expected_token` (string): Require this existing, unexpired token before refreshing or replacing a lock. Set token to the same value to refresh, or a different value to replace.
|
|
34
35
|
|
|
35
36
|
|
|
36
37
|
---
|
|
@@ -57,9 +58,11 @@ Files::Lock.list_for(path,
|
|
|
57
58
|
|
|
58
59
|
```
|
|
59
60
|
Files::Lock.create(path,
|
|
61
|
+
token: "17c54824e9931a4688ca032d03f6663c",
|
|
60
62
|
allow_access_by_any_user: false,
|
|
61
63
|
exclusive: false,
|
|
62
64
|
recursive: true,
|
|
65
|
+
owner: "user",
|
|
63
66
|
timeout: 1
|
|
64
67
|
)
|
|
65
68
|
```
|
|
@@ -67,9 +70,12 @@ Files::Lock.create(path,
|
|
|
67
70
|
### Parameters
|
|
68
71
|
|
|
69
72
|
* `path` (string): Required - Path
|
|
73
|
+
* `token` (string): Lock token. With expected_token, use the same value to refresh or a different value to replace the existing token.
|
|
74
|
+
* `expected_token` (string): Require this existing, unexpired token before refreshing or replacing a lock. Set token to the same value to refresh, or a different value to replace.
|
|
70
75
|
* `allow_access_by_any_user` (boolean): Can lock be modified by users other than its creator?
|
|
71
76
|
* `exclusive` (boolean): Is lock exclusive?
|
|
72
77
|
* `recursive` (boolean): Does lock apply to subfolders?
|
|
78
|
+
* `owner` (string): Arbitrary descriptive label for the lock. Does not change the lock creator or permissions.
|
|
73
79
|
* `timeout` (int64): Lock timeout in seconds
|
|
74
80
|
|
|
75
81
|
|
data/docs/partner.md
CHANGED
|
@@ -79,7 +79,7 @@ Files::Partner.list
|
|
|
79
79
|
|
|
80
80
|
* `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.
|
|
81
81
|
* `per_page` (int64): Number of records to show per page. (Max: 10000, 1,000 or less is recommended).
|
|
82
|
-
* `sort_by` (object): If set, sort records by the specified field in either `asc` or `desc` direction. Valid fields are `workspace_id` and `
|
|
82
|
+
* `sort_by` (object): If set, sort records by the specified field in either `asc` or `desc` direction. Valid fields are `workspace_id` and `name`.
|
|
83
83
|
* `filter` (object): If set, return records where the specified field is equal to the supplied value. Valid fields are `workspace_id`.
|
|
84
84
|
|
|
85
85
|
|
data/docs/permission.md
CHANGED
|
@@ -25,17 +25,17 @@
|
|
|
25
25
|
```
|
|
26
26
|
|
|
27
27
|
* `id` (int64): Permission ID
|
|
28
|
-
* `path` (string):
|
|
28
|
+
* `path` (string): Folder path. This must be slash-delimited, but it must neither start nor end with a slash. Maximum of 5000 characters.
|
|
29
29
|
* `user_id` (int64): User ID
|
|
30
30
|
* `username` (string): Username (if applicable)
|
|
31
31
|
* `group_id` (int64): Group ID
|
|
32
32
|
* `group_name` (string): Group name (if applicable)
|
|
33
|
-
* `group_ids` (array(int64)): Group IDs when this
|
|
33
|
+
* `group_ids` (array(int64)): Group IDs when this Permission requires membership in every listed group.
|
|
34
34
|
* `group_names` (array(string)): Group names when this permission requires multiple groups
|
|
35
35
|
* `partner_id` (int64): Partner ID (if applicable)
|
|
36
36
|
* `partner_name` (string): Partner name (if applicable)
|
|
37
37
|
* `permission` (string): Permission type. See the table referenced in the documentation for an explanation of each permission.
|
|
38
|
-
* `recursive` (boolean):
|
|
38
|
+
* `recursive` (boolean): Whether this Permission applies to subfolders. Must be true for `admin` Permissions.
|
|
39
39
|
* `site_id` (int64): Site ID
|
|
40
40
|
|
|
41
41
|
|
|
@@ -90,9 +90,9 @@ Files::Permission.create(
|
|
|
90
90
|
|
|
91
91
|
* `path` (string): Required - Folder path
|
|
92
92
|
* `group_id` (int64): Group ID. Provide `group_name` or `group_id`
|
|
93
|
-
* `group_ids` (string): Group IDs when the
|
|
93
|
+
* `group_ids` (string): Group IDs when the Permission requires membership in every listed group. If sent as a string, it should be comma-delimited.
|
|
94
94
|
* `permission` (string): Permission type. Can be `admin`, `full`, `readonly`, `writeonly`, `list`, or `history`
|
|
95
|
-
* `recursive` (boolean): Apply to subfolders recursively?
|
|
95
|
+
* `recursive` (boolean): Apply to subfolders recursively? Must be true for `admin` Permissions.
|
|
96
96
|
* `partner_id` (int64): Partner ID if this Permission belongs to a partner.
|
|
97
97
|
* `user_id` (int64): User ID. Provide `username` or `user_id`
|
|
98
98
|
* `username` (string): User username. Provide `username` or `user_id`
|
data/docs/remote_server.md
CHANGED
|
@@ -92,13 +92,13 @@
|
|
|
92
92
|
* `id` (int64): Remote Server ID
|
|
93
93
|
* `disabled` (boolean): If true, this Remote Server is disabled. Updating it clears this flag, except for retired Agent v1 records, which remain disabled.
|
|
94
94
|
* `authentication_method` (string): Type of authentication method to use
|
|
95
|
-
* `hostname` (string): Hostname or IP address
|
|
95
|
+
* `hostname` (string): Hostname or IP address. For Agent Remote Servers, the Agent reports the hostname it connects from at each registration, replacing the stored value. This field is not included in the generated Agent configuration file. Setting it on Create or Update does not change the running Agent.
|
|
96
96
|
* `remote_home_path` (string): Initial home folder on remote server
|
|
97
97
|
* `upload_staging_path` (string): Upload staging path. Applies to SFTP only. If a path is provided here, files will first be uploaded to this path on the remote folder and the moved into the final correct path via an SFTP move command. This is required by some remote MFT systems to emulate atomic uploads, which are otherwise not supoprted by SFTP.
|
|
98
98
|
* `allow_relative_paths` (boolean): Allow relative paths in SFTP. If true, paths will not be forced to be absolute, allowing operations relative to the user's home directory.
|
|
99
99
|
* `name` (string): Internal name for your reference
|
|
100
100
|
* `description` (string): Internal description for your reference
|
|
101
|
-
* `port` (int64): Port for remote server.
|
|
101
|
+
* `port` (int64): Port for remote server. For Agent Remote Servers, the Agent reports its downstream proxy port at each registration, replacing the stored value. This field is not included in the generated Agent configuration file. Setting it on Create or Update does not change the running Agent.
|
|
102
102
|
* `buffer_uploads` (string): If set to always, uploads to this server will be uploaded first to Files.com before being sent to the remote server. This can improve performance in certain access patterns, such as high-latency connections. It will cause data to be temporarily stored in Files.com. If set to auto, we will perform this optimization if we believe it to be a benefit in a given situation.
|
|
103
103
|
* `max_connections` (int64): Max number of parallel connections. Ignored for S3 connections (we will parallelize these as much as possible).
|
|
104
104
|
* `pin_to_site_region` (boolean): If true, we will ensure that all communications with this remote server are made through the primary region of the site. This setting can also be overridden by a site-wide setting which will force it to true.
|
|
@@ -149,9 +149,9 @@
|
|
|
149
149
|
* `enable_dedicated_ips` (boolean): `true` if remote server only accepts connections from dedicated IPs
|
|
150
150
|
* `custom_domain_id` (int64): Custom Domain ID whose dedicated IP addresses are selected when this Remote Server uses dedicated IPs. Must be available to this Remote Server's workspace. Requires enable_dedicated_ips and cannot be combined with an outbound Agent. Set to null to use the site's default dedicated IPs.
|
|
151
151
|
* `outbound_ip_addresses` (array(string)): Current eligible public IP addresses for the selected Custom Domain. Any address in this list may originate a connection. Empty when no domain is selected or its configuration is unavailable. Only included in responses for a single Remote Server.
|
|
152
|
-
* `files_agent_permission_set` (string):
|
|
153
|
-
* `files_agent_root` (string): Agent local root path
|
|
154
|
-
* `files_agent_version` (string): Files Agent version
|
|
152
|
+
* `files_agent_permission_set` (string): Agent file permissions: `read_only`, `write_only`, or `read_write`. Files.com writes this value as `permission_set` in the configuration file generated for this Remote Server. Setting it on Create or Update changes the generated file, not a running Agent. The Agent enforces the permissions in its local configuration file, controlled by the host's system administrator, and reports them at registration, replacing the stored value.
|
|
153
|
+
* `files_agent_root` (string): Agent local root path. Files.com writes this value as `root` in the configuration file generated for this Remote Server. Setting it on Create or Update changes the generated file, not a running Agent. The Agent enforces the root in its local configuration file, controlled by the host's system administrator, and reports it at registration, replacing the stored value.
|
|
154
|
+
* `files_agent_version` (string): Files.com Agent version reported by the Agent at each registration, replacing the stored value. This field is not included in the generated Agent configuration file. Setting it on Create or Update does not update the running Agent.
|
|
155
155
|
* `files_agent_up_to_date` (boolean): If true, the Files Agent is up to date.
|
|
156
156
|
* `files_agent_latest_version` (string): Latest available Files Agent version
|
|
157
157
|
* `files_agent_supports_push_updates` (boolean): Files Agent supports receiving push updates
|
|
@@ -370,9 +370,9 @@ Files::RemoteServer.create(
|
|
|
370
370
|
* `filebase_access_key` (string): Filebase: Access Key.
|
|
371
371
|
* `filebase_bucket` (string): Filebase: Bucket name
|
|
372
372
|
* `files_api_key` (string): Files.com direct link: API key used once to pair the remote server.
|
|
373
|
-
* `files_agent_permission_set` (string):
|
|
374
|
-
* `files_agent_root` (string): Agent local root path
|
|
375
|
-
* `files_agent_version` (string): Files Agent version
|
|
373
|
+
* `files_agent_permission_set` (string): Agent file permissions: `read_only`, `write_only`, or `read_write`. Files.com writes this value as `permission_set` in the configuration file generated for this Remote Server. Setting it on Create or Update changes the generated file, not a running Agent. The Agent enforces the permissions in its local configuration file, controlled by the host's system administrator, and reports them at registration, replacing the stored value.
|
|
374
|
+
* `files_agent_root` (string): Agent local root path. Files.com writes this value as `root` in the configuration file generated for this Remote Server. Setting it on Create or Update changes the generated file, not a running Agent. The Agent enforces the root in its local configuration file, controlled by the host's system administrator, and reports it at registration, replacing the stored value.
|
|
375
|
+
* `files_agent_version` (string): Files.com Agent version reported by the Agent at each registration, replacing the stored value. This field is not included in the generated Agent configuration file. Setting it on Create or Update does not update the running Agent.
|
|
376
376
|
* `outbound_agent_id` (int64): Route traffic to outbound on a files-agent
|
|
377
377
|
* `custom_domain_id` (int64): Custom Domain ID whose dedicated IP addresses are selected when this Remote Server uses dedicated IPs. Must be available to this Remote Server's workspace. Requires enable_dedicated_ips and cannot be combined with an outbound Agent. Set to null to use the site's default dedicated IPs.
|
|
378
378
|
* `google_cloud_storage_authentication_method` (string): Google Cloud Storage: Authentication method. Can be json, hmac, or oauth.
|
|
@@ -380,7 +380,7 @@ Files::RemoteServer.create(
|
|
|
380
380
|
* `google_cloud_storage_oauth_scope` (string): Google Cloud Storage: OAuth scope. Can be https://www.googleapis.com/auth/devstorage.read_only or https://www.googleapis.com/auth/devstorage.read_write.
|
|
381
381
|
* `google_cloud_storage_project_id` (string): Google Cloud Storage: Project ID
|
|
382
382
|
* `google_cloud_storage_s3_compatible_access_key` (string): Google Cloud Storage: S3-compatible Access Key.
|
|
383
|
-
* `hostname` (string): Hostname or IP address
|
|
383
|
+
* `hostname` (string): Hostname or IP address. For Agent Remote Servers, the Agent reports the hostname it connects from at each registration, replacing the stored value. This field is not included in the generated Agent configuration file. Setting it on Create or Update does not change the running Agent.
|
|
384
384
|
* `linode_access_key` (string): Linode: Access Key
|
|
385
385
|
* `linode_bucket` (string): Linode: Bucket name
|
|
386
386
|
* `linode_region` (string): Linode: region
|
|
@@ -388,7 +388,7 @@ Files::RemoteServer.create(
|
|
|
388
388
|
* `name` (string): Internal name for your reference
|
|
389
389
|
* `one_drive_account_type` (string): OneDrive: Either personal or business_other account types
|
|
390
390
|
* `pin_to_site_region` (boolean): If true, we will ensure that all communications with this remote server are made through the primary region of the site. This setting can also be overridden by a site-wide setting which will force it to true.
|
|
391
|
-
* `port` (int64): Port for remote server.
|
|
391
|
+
* `port` (int64): Port for remote server. For Agent Remote Servers, the Agent reports its downstream proxy port at each registration, replacing the stored value. This field is not included in the generated Agent configuration file. Setting it on Create or Update does not change the running Agent.
|
|
392
392
|
* `upload_staging_path` (string): Upload staging path. Applies to SFTP only. If a path is provided here, files will first be uploaded to this path on the remote folder and the moved into the final correct path via an SFTP move command. This is required by some remote MFT systems to emulate atomic uploads, which are otherwise not supoprted by SFTP.
|
|
393
393
|
* `remote_server_credential_id` (int64): ID of Remote Server Credential, if applicable.
|
|
394
394
|
* `s3_assume_role_arn` (string): AWS IAM Role ARN for AssumeRole authentication.
|
|
@@ -543,9 +543,9 @@ Files::RemoteServer.update(id,
|
|
|
543
543
|
* `filebase_access_key` (string): Filebase: Access Key.
|
|
544
544
|
* `filebase_bucket` (string): Filebase: Bucket name
|
|
545
545
|
* `files_api_key` (string): Files.com direct link: API key used once to pair the remote server.
|
|
546
|
-
* `files_agent_permission_set` (string):
|
|
547
|
-
* `files_agent_root` (string): Agent local root path
|
|
548
|
-
* `files_agent_version` (string): Files Agent version
|
|
546
|
+
* `files_agent_permission_set` (string): Agent file permissions: `read_only`, `write_only`, or `read_write`. Files.com writes this value as `permission_set` in the configuration file generated for this Remote Server. Setting it on Create or Update changes the generated file, not a running Agent. The Agent enforces the permissions in its local configuration file, controlled by the host's system administrator, and reports them at registration, replacing the stored value.
|
|
547
|
+
* `files_agent_root` (string): Agent local root path. Files.com writes this value as `root` in the configuration file generated for this Remote Server. Setting it on Create or Update changes the generated file, not a running Agent. The Agent enforces the root in its local configuration file, controlled by the host's system administrator, and reports it at registration, replacing the stored value.
|
|
548
|
+
* `files_agent_version` (string): Files.com Agent version reported by the Agent at each registration, replacing the stored value. This field is not included in the generated Agent configuration file. Setting it on Create or Update does not update the running Agent.
|
|
549
549
|
* `outbound_agent_id` (int64): Route traffic to outbound on a files-agent
|
|
550
550
|
* `custom_domain_id` (int64): Custom Domain ID whose dedicated IP addresses are selected when this Remote Server uses dedicated IPs. Must be available to this Remote Server's workspace. Requires enable_dedicated_ips and cannot be combined with an outbound Agent. Set to null to use the site's default dedicated IPs.
|
|
551
551
|
* `google_cloud_storage_authentication_method` (string): Google Cloud Storage: Authentication method. Can be json, hmac, or oauth.
|
|
@@ -553,7 +553,7 @@ Files::RemoteServer.update(id,
|
|
|
553
553
|
* `google_cloud_storage_oauth_scope` (string): Google Cloud Storage: OAuth scope. Can be https://www.googleapis.com/auth/devstorage.read_only or https://www.googleapis.com/auth/devstorage.read_write.
|
|
554
554
|
* `google_cloud_storage_project_id` (string): Google Cloud Storage: Project ID
|
|
555
555
|
* `google_cloud_storage_s3_compatible_access_key` (string): Google Cloud Storage: S3-compatible Access Key.
|
|
556
|
-
* `hostname` (string): Hostname or IP address
|
|
556
|
+
* `hostname` (string): Hostname or IP address. For Agent Remote Servers, the Agent reports the hostname it connects from at each registration, replacing the stored value. This field is not included in the generated Agent configuration file. Setting it on Create or Update does not change the running Agent.
|
|
557
557
|
* `linode_access_key` (string): Linode: Access Key
|
|
558
558
|
* `linode_bucket` (string): Linode: Bucket name
|
|
559
559
|
* `linode_region` (string): Linode: region
|
|
@@ -561,7 +561,7 @@ Files::RemoteServer.update(id,
|
|
|
561
561
|
* `name` (string): Internal name for your reference
|
|
562
562
|
* `one_drive_account_type` (string): OneDrive: Either personal or business_other account types
|
|
563
563
|
* `pin_to_site_region` (boolean): If true, we will ensure that all communications with this remote server are made through the primary region of the site. This setting can also be overridden by a site-wide setting which will force it to true.
|
|
564
|
-
* `port` (int64): Port for remote server.
|
|
564
|
+
* `port` (int64): Port for remote server. For Agent Remote Servers, the Agent reports its downstream proxy port at each registration, replacing the stored value. This field is not included in the generated Agent configuration file. Setting it on Create or Update does not change the running Agent.
|
|
565
565
|
* `upload_staging_path` (string): Upload staging path. Applies to SFTP only. If a path is provided here, files will first be uploaded to this path on the remote folder and the moved into the final correct path via an SFTP move command. This is required by some remote MFT systems to emulate atomic uploads, which are otherwise not supoprted by SFTP.
|
|
566
566
|
* `remote_server_credential_id` (int64): ID of Remote Server Credential, if applicable.
|
|
567
567
|
* `s3_assume_role_arn` (string): AWS IAM Role ARN for AssumeRole authentication.
|
|
@@ -747,9 +747,9 @@ remote_server.update(
|
|
|
747
747
|
* `filebase_access_key` (string): Filebase: Access Key.
|
|
748
748
|
* `filebase_bucket` (string): Filebase: Bucket name
|
|
749
749
|
* `files_api_key` (string): Files.com direct link: API key used once to pair the remote server.
|
|
750
|
-
* `files_agent_permission_set` (string):
|
|
751
|
-
* `files_agent_root` (string): Agent local root path
|
|
752
|
-
* `files_agent_version` (string): Files Agent version
|
|
750
|
+
* `files_agent_permission_set` (string): Agent file permissions: `read_only`, `write_only`, or `read_write`. Files.com writes this value as `permission_set` in the configuration file generated for this Remote Server. Setting it on Create or Update changes the generated file, not a running Agent. The Agent enforces the permissions in its local configuration file, controlled by the host's system administrator, and reports them at registration, replacing the stored value.
|
|
751
|
+
* `files_agent_root` (string): Agent local root path. Files.com writes this value as `root` in the configuration file generated for this Remote Server. Setting it on Create or Update changes the generated file, not a running Agent. The Agent enforces the root in its local configuration file, controlled by the host's system administrator, and reports it at registration, replacing the stored value.
|
|
752
|
+
* `files_agent_version` (string): Files.com Agent version reported by the Agent at each registration, replacing the stored value. This field is not included in the generated Agent configuration file. Setting it on Create or Update does not update the running Agent.
|
|
753
753
|
* `outbound_agent_id` (int64): Route traffic to outbound on a files-agent
|
|
754
754
|
* `custom_domain_id` (int64): Custom Domain ID whose dedicated IP addresses are selected when this Remote Server uses dedicated IPs. Must be available to this Remote Server's workspace. Requires enable_dedicated_ips and cannot be combined with an outbound Agent. Set to null to use the site's default dedicated IPs.
|
|
755
755
|
* `google_cloud_storage_authentication_method` (string): Google Cloud Storage: Authentication method. Can be json, hmac, or oauth.
|
|
@@ -757,7 +757,7 @@ remote_server.update(
|
|
|
757
757
|
* `google_cloud_storage_oauth_scope` (string): Google Cloud Storage: OAuth scope. Can be https://www.googleapis.com/auth/devstorage.read_only or https://www.googleapis.com/auth/devstorage.read_write.
|
|
758
758
|
* `google_cloud_storage_project_id` (string): Google Cloud Storage: Project ID
|
|
759
759
|
* `google_cloud_storage_s3_compatible_access_key` (string): Google Cloud Storage: S3-compatible Access Key.
|
|
760
|
-
* `hostname` (string): Hostname or IP address
|
|
760
|
+
* `hostname` (string): Hostname or IP address. For Agent Remote Servers, the Agent reports the hostname it connects from at each registration, replacing the stored value. This field is not included in the generated Agent configuration file. Setting it on Create or Update does not change the running Agent.
|
|
761
761
|
* `linode_access_key` (string): Linode: Access Key
|
|
762
762
|
* `linode_bucket` (string): Linode: Bucket name
|
|
763
763
|
* `linode_region` (string): Linode: region
|
|
@@ -765,7 +765,7 @@ remote_server.update(
|
|
|
765
765
|
* `name` (string): Internal name for your reference
|
|
766
766
|
* `one_drive_account_type` (string): OneDrive: Either personal or business_other account types
|
|
767
767
|
* `pin_to_site_region` (boolean): If true, we will ensure that all communications with this remote server are made through the primary region of the site. This setting can also be overridden by a site-wide setting which will force it to true.
|
|
768
|
-
* `port` (int64): Port for remote server.
|
|
768
|
+
* `port` (int64): Port for remote server. For Agent Remote Servers, the Agent reports its downstream proxy port at each registration, replacing the stored value. This field is not included in the generated Agent configuration file. Setting it on Create or Update does not change the running Agent.
|
|
769
769
|
* `upload_staging_path` (string): Upload staging path. Applies to SFTP only. If a path is provided here, files will first be uploaded to this path on the remote folder and the moved into the final correct path via an SFTP move command. This is required by some remote MFT systems to emulate atomic uploads, which are otherwise not supoprted by SFTP.
|
|
770
770
|
* `remote_server_credential_id` (int64): ID of Remote Server Credential, if applicable.
|
|
771
771
|
* `s3_assume_role_arn` (string): AWS IAM Role ARN for AssumeRole authentication.
|
data/docs/site.md
CHANGED
|
@@ -103,6 +103,7 @@
|
|
|
103
103
|
"domain_letsencrypt_chain": "example",
|
|
104
104
|
"email": "john.doe@files.com",
|
|
105
105
|
"fedramp": true,
|
|
106
|
+
"files_com_remote_server_enabled": true,
|
|
106
107
|
"ftp_enabled": true,
|
|
107
108
|
"reply_to_email": "jane.doe@files.com",
|
|
108
109
|
"non_sso_groups_allowed": true,
|
|
@@ -452,6 +453,7 @@
|
|
|
452
453
|
* `domain_letsencrypt_chain` (string): Letsencrypt chain to use when registering SSL Certificate for domain. No longer used as of 2026.
|
|
453
454
|
* `email` (email): Main email for this site
|
|
454
455
|
* `fedramp` (boolean): Are FedRAMP security restrictions enabled for this site?
|
|
456
|
+
* `files_com_remote_server_enabled` (boolean): Allow other Files.com sites to use this site's API keys for native Files.com Remote Server connections? Defaults to true and applies to all keys and workspaces on this site. When false, new pairings and access through existing connections are rejected without revoking keys or deleting connections. Re-enabling permits access again with usable keys. Does not disable this site's connections to other sites, ordinary API access, or Connected Sites.
|
|
455
457
|
* `ftp_enabled` (boolean): Is FTP enabled?
|
|
456
458
|
* `reply_to_email` (email): Reply-to email for this site
|
|
457
459
|
* `non_sso_groups_allowed` (boolean): If true, groups can be manually created / modified / deleted by Site Admins. Otherwise, groups can only be managed via your SSO provider.
|
|
@@ -702,6 +704,7 @@ Files::Site.update(
|
|
|
702
704
|
user_requests_enabled: false,
|
|
703
705
|
user_requests_notify_admins: false,
|
|
704
706
|
dav_enabled: false,
|
|
707
|
+
files_com_remote_server_enabled: false,
|
|
705
708
|
ftp_enabled: false,
|
|
706
709
|
s3_compatible_endpoint_enabled: false,
|
|
707
710
|
sftp_enabled: false,
|
|
@@ -889,6 +892,7 @@ Files::Site.update(
|
|
|
889
892
|
* `user_requests_enabled` (boolean): Enable User Requests feature
|
|
890
893
|
* `user_requests_notify_admins` (boolean): Send email to site admins when a user request is received?
|
|
891
894
|
* `dav_enabled` (boolean): Is WebDAV enabled?
|
|
895
|
+
* `files_com_remote_server_enabled` (boolean): Allow other Files.com sites to use this site's API keys for native Files.com Remote Server connections? Defaults to true and applies to all keys and workspaces on this site. When false, new pairings and access through existing connections are rejected without revoking keys or deleting connections. Re-enabling permits access again with usable keys. Does not disable this site's connections to other sites, ordinary API access, or Connected Sites.
|
|
892
896
|
* `ftp_enabled` (boolean): Is FTP enabled?
|
|
893
897
|
* `s3_compatible_endpoint_enabled` (boolean): Is the S3-compatible endpoint enabled for all users and workspaces on this site? Defaults to true. When false, user and group S3 permissions do not allow access.
|
|
894
898
|
* `sftp_enabled` (boolean): Is SFTP enabled?
|
data/docs/user.md
CHANGED
|
@@ -170,9 +170,9 @@
|
|
|
170
170
|
* `self_managed` (boolean): Does this user manage it's own credentials or is it a shared/bot user?
|
|
171
171
|
* `sftp_permission` (boolean): Can the user access with SFTP?
|
|
172
172
|
* `site_admin` (boolean): Is the user an administrator for this site?
|
|
173
|
-
* `workspace_admin` (boolean):
|
|
173
|
+
* `workspace_admin` (boolean): Whether the user is an administrator of their own Custom Workspace. Does not reflect administration granted through Permissions.
|
|
174
174
|
* `site_id` (int64): Site ID
|
|
175
|
-
* `workspace_id` (int64): Workspace
|
|
175
|
+
* `workspace_id` (int64): ID of the Workspace the user belongs to. 0 is the Default Workspace.
|
|
176
176
|
* `default_workspace_id` (int64): Workspace ID the user should land in by default when more than one Workspace is available.
|
|
177
177
|
* `skip_welcome_screen` (boolean): Skip Welcome page in the UI?
|
|
178
178
|
* `ssl_required` (string): SSL required setting
|
|
@@ -379,9 +379,9 @@ Files::User.create(
|
|
|
379
379
|
* `time_zone` (string): User time zone
|
|
380
380
|
* `user_root` (string): If filesystem layout is user_root, this path is the root path the user is fixed to for all interfaces. If the filesystem layout is site_root or partner_root, this acts as a root folder only for FTP and SFTP (SFTP applicability also requires a site-wide setting to be set). For partner_root layout, this path is relative to the Partner root folder for all callers and blank opts out of an additional protocol root. In this situation, this path is not applied to the API, Desktop, or Web interface.
|
|
381
381
|
* `user_home` (string): Home folder for FTP/SFTP. For users with the partner_root filesystem layout, this path is relative to the Partner root folder. In all other cases, it is an absolute path. Only applies to FTP and SFTP, and not any other interface.
|
|
382
|
-
* `workspace_admin` (boolean):
|
|
382
|
+
* `workspace_admin` (boolean): Whether the user is an administrator of their own Custom Workspace. Does not reflect administration granted through Permissions.
|
|
383
383
|
* `username` (string): Required - User's username
|
|
384
|
-
* `workspace_id` (int64): Workspace
|
|
384
|
+
* `workspace_id` (int64): ID of the Workspace the user belongs to. 0 is the Default Workspace.
|
|
385
385
|
|
|
386
386
|
|
|
387
387
|
---
|
|
@@ -565,7 +565,7 @@ Files::User.update(id,
|
|
|
565
565
|
* `time_zone` (string): User time zone
|
|
566
566
|
* `user_root` (string): If filesystem layout is user_root, this path is the root path the user is fixed to for all interfaces. If the filesystem layout is site_root or partner_root, this acts as a root folder only for FTP and SFTP (SFTP applicability also requires a site-wide setting to be set). For partner_root layout, this path is relative to the Partner root folder for all callers and blank opts out of an additional protocol root. In this situation, this path is not applied to the API, Desktop, or Web interface.
|
|
567
567
|
* `user_home` (string): Home folder for FTP/SFTP. For users with the partner_root filesystem layout, this path is relative to the Partner root folder. In all other cases, it is an absolute path. Only applies to FTP and SFTP, and not any other interface.
|
|
568
|
-
* `workspace_admin` (boolean):
|
|
568
|
+
* `workspace_admin` (boolean): Whether the user is an administrator of their own Custom Workspace. Does not reflect administration granted through Permissions.
|
|
569
569
|
* `username` (string): User's username
|
|
570
570
|
* `workspace_id` (int64): Workspace ID. Only Site Administrators can change this field. Values supplied by Workspace Administrators, Group Administrators, or other non-Site Administrators using `/user` are ignored.
|
|
571
571
|
* `clear_2fa` (boolean): If true when changing authentication_method from `password` to `sso`, remove all two-factor methods. Ignored in all other cases.
|
|
@@ -777,7 +777,7 @@ user.update(
|
|
|
777
777
|
* `time_zone` (string): User time zone
|
|
778
778
|
* `user_root` (string): If filesystem layout is user_root, this path is the root path the user is fixed to for all interfaces. If the filesystem layout is site_root or partner_root, this acts as a root folder only for FTP and SFTP (SFTP applicability also requires a site-wide setting to be set). For partner_root layout, this path is relative to the Partner root folder for all callers and blank opts out of an additional protocol root. In this situation, this path is not applied to the API, Desktop, or Web interface.
|
|
779
779
|
* `user_home` (string): Home folder for FTP/SFTP. For users with the partner_root filesystem layout, this path is relative to the Partner root folder. In all other cases, it is an absolute path. Only applies to FTP and SFTP, and not any other interface.
|
|
780
|
-
* `workspace_admin` (boolean):
|
|
780
|
+
* `workspace_admin` (boolean): Whether the user is an administrator of their own Custom Workspace. Does not reflect administration granted through Permissions.
|
|
781
781
|
* `username` (string): User's username
|
|
782
782
|
* `workspace_id` (int64): Workspace ID. Only Site Administrators can change this field. Values supplied by Workspace Administrators, Group Administrators, or other non-Site Administrators using `/user` are ignored.
|
|
783
783
|
* `clear_2fa` (boolean): If true when changing authentication_method from `password` to `sso`, remove all two-factor methods. Ignored in all other cases.
|
|
@@ -34,3 +34,4 @@ Files::UserSftpClientUse.list(
|
|
|
34
34
|
* `user_id` (int64): User ID. If provided, will return uses for this user.
|
|
35
35
|
* `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.
|
|
36
36
|
* `per_page` (int64): Number of records to show per page. (Max: 10000, 1,000 or less is recommended).
|
|
37
|
+
* `sort_by` (object): If set, sort records by the specified field in either `asc` or `desc` direction. Valid fields are `created_at`.
|
data/lib/files.com/errors.rb
CHANGED
|
@@ -256,6 +256,7 @@ module Files
|
|
|
256
256
|
|
|
257
257
|
class ServiceUnavailableError < APIError; end
|
|
258
258
|
class AutomationsUnavailableError < ServiceUnavailableError; end
|
|
259
|
+
class LockOperationBusyError < ServiceUnavailableError; end
|
|
259
260
|
class MigrationInProgressError < ServiceUnavailableError; end
|
|
260
261
|
class SearchUnavailableError < ServiceUnavailableError; end
|
|
261
262
|
class SiteDisabledError < ServiceUnavailableError; end
|
|
@@ -104,7 +104,7 @@ module Files
|
|
|
104
104
|
@attributes[:name] = value
|
|
105
105
|
end
|
|
106
106
|
|
|
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 use only the files, folders, and file_actions endpoints, where they perform file operations as a full-access file user in the key's workspace scope, along with `GET /file_migrations/{id}` and `GET /api_key`.
|
|
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 use only the files, folders, and file_actions endpoints, where they perform file operations as a full-access file user in the key's workspace scope, along with `GET /file_migrations/{id}` and `GET /api_key`. On the migration lookup, any key with a `path` can read only migrations it started. Without a `path`, user-owned keys retain user-scoped access; site-wide Workspace-bound keys can read only migrations whose source and destination are both in their Workspace. Every `files_only` key is Workspace-bound, including Workspace `0`, as is a full-access key in a named Workspace. A full-access site-wide key in the default Workspace retains Site-wide migration access. Migrations outside the caller's visibility return `not-found`. Keys with `files_only` cannot use site admin, workspace admin, folder admin, group admin, partner admin, or billing privileges from the owning user, and every other endpoint denies them with `not-authorized/api-key-only-for-file-operations`.
|
|
108
108
|
def permission_set
|
|
109
109
|
@attributes[:permission_set]
|
|
110
110
|
end
|
|
@@ -167,7 +167,7 @@ module Files
|
|
|
167
167
|
@attributes[:workspace_id] = value
|
|
168
168
|
end
|
|
169
169
|
|
|
170
|
-
# string - Restricts the file and folder operations made with this key, meaning the files, folders, and file_actions endpoints, to the specified folder and its descendants, including copy and move destinations. Other endpoints do not apply the path restriction; use the `files_only` permission set to confine a key to
|
|
170
|
+
# string - Restricts the file and folder operations made with this key, meaning the files, folders, and file_actions endpoints, to the specified folder and its descendants, including copy and move destinations. For `GET /file_migrations/{id}`, a key with a path can read only migrations it started. Other endpoints do not apply the path restriction; use the `files_only` permission set to confine a key to file operations and their supporting lookups. Does not grant access beyond the owning user's permissions. Optional except for `office_integration` keys, which require a path the owning user can read.
|
|
171
171
|
def path
|
|
172
172
|
@attributes[:path]
|
|
173
173
|
end
|
|
@@ -276,8 +276,8 @@ module Files
|
|
|
276
276
|
# expires_at - string - API Key expiration date
|
|
277
277
|
# name (required) - string - Internal name for the API Key. For your use.
|
|
278
278
|
# aws_style_credentials - boolean - If `true`, this API key will be usable with AWS-compatible endpoints, such as our Inbound S3-compatible endpoint.
|
|
279
|
-
# path - string - Restricts the file and folder operations made with this key, meaning the files, folders, and file_actions endpoints, to the specified folder and its descendants, including copy and move destinations. Other endpoints do not apply the path restriction; use the `files_only` permission set to confine a key to
|
|
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 use only the files, folders, and file_actions endpoints, where they perform file operations as a full-access file user in the key's workspace scope, along with `GET /file_migrations/{id}` and `GET /api_key`.
|
|
279
|
+
# path - string - Restricts the file and folder operations made with this key, meaning the files, folders, and file_actions endpoints, to the specified folder and its descendants, including copy and move destinations. For `GET /file_migrations/{id}`, a key with a path can read only migrations it started. Other endpoints do not apply the path restriction; use the `files_only` permission set to confine a key to file operations and their supporting lookups. Does not grant access beyond the owning user's permissions. Optional except for `office_integration` keys, which require a path the owning user can read.
|
|
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 use only the files, folders, and file_actions endpoints, where they perform file operations as a full-access file user in the key's workspace scope, along with `GET /file_migrations/{id}` and `GET /api_key`. On the migration lookup, any key with a `path` can read only migrations it started. Without a `path`, user-owned keys retain user-scoped access; site-wide Workspace-bound keys can read only migrations whose source and destination are both in their Workspace. Every `files_only` key is Workspace-bound, including Workspace `0`, as is a full-access key in a named Workspace. A full-access site-wide key in the default Workspace retains Site-wide migration access. Migrations outside the caller's visibility return `not-found`. Keys with `files_only` cannot use site admin, workspace admin, folder admin, group admin, partner admin, or billing privileges from the owning user, and every other endpoint denies them with `not-authorized/api-key-only-for-file-operations`.
|
|
281
281
|
# workspace_id - int64 - Workspace ID for this API Key. `0` means the default workspace.
|
|
282
282
|
def self.create(params = {}, options = {})
|
|
283
283
|
raise InvalidParameterError.new("Bad parameter: user_id must be an Integer") if params[:user_id] and !params[:user_id].is_a?(Integer)
|
|
@@ -296,7 +296,7 @@ module Files
|
|
|
296
296
|
# Parameters:
|
|
297
297
|
# expires_at - string - API Key expiration date
|
|
298
298
|
# name - string - Internal name for the API Key. For your use.
|
|
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 use only the files, folders, and file_actions endpoints, where they perform file operations as a full-access file user in the key's workspace scope, along with `GET /file_migrations/{id}` and `GET /api_key`.
|
|
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 use only the files, folders, and file_actions endpoints, where they perform file operations as a full-access file user in the key's workspace scope, along with `GET /file_migrations/{id}` and `GET /api_key`. On the migration lookup, any key with a `path` can read only migrations it started. Without a `path`, user-owned keys retain user-scoped access; site-wide Workspace-bound keys can read only migrations whose source and destination are both in their Workspace. Every `files_only` key is Workspace-bound, including Workspace `0`, as is a full-access key in a named Workspace. A full-access site-wide key in the default Workspace retains Site-wide migration access. Migrations outside the caller's visibility return `not-found`. Keys with `files_only` cannot use site admin, workspace admin, folder admin, group admin, partner admin, or billing privileges from the owning user, and every other endpoint denies them with `not-authorized/api-key-only-for-file-operations`.
|
|
300
300
|
def self.update_current(params = {}, options = {})
|
|
301
301
|
raise InvalidParameterError.new("Bad parameter: expires_at must be an String") if params[:expires_at] and !params[:expires_at].is_a?(String)
|
|
302
302
|
raise InvalidParameterError.new("Bad parameter: name must be an String") if params[:name] and !params[:name].is_a?(String)
|
|
@@ -36,7 +36,7 @@ module Files
|
|
|
36
36
|
@attributes[:form_layout] = value
|
|
37
37
|
end
|
|
38
38
|
|
|
39
|
-
# array(object) - Associated form fields
|
|
39
|
+
# array(object) - Associated form field definitions; authenticated form field set responses include historical definitions, while form_layout identifies current fields
|
|
40
40
|
def form_fields
|
|
41
41
|
@attributes[:form_fields]
|
|
42
42
|
end
|
|
@@ -9,6 +9,15 @@ module Files
|
|
|
9
9
|
@options = options || {}
|
|
10
10
|
end
|
|
11
11
|
|
|
12
|
+
# int64 - Workspace of the export. 0 represents the default workspace. A null value means a site-wide export.
|
|
13
|
+
def workspace_id
|
|
14
|
+
@attributes[:workspace_id]
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
def workspace_id=(value)
|
|
18
|
+
@attributes[:workspace_id] = value
|
|
19
|
+
end
|
|
20
|
+
|
|
12
21
|
# int64 - History Export ID
|
|
13
22
|
def id
|
|
14
23
|
@attributes[:id]
|
|
@@ -45,7 +45,7 @@ module Files
|
|
|
45
45
|
@attributes[:recursive] = value
|
|
46
46
|
end
|
|
47
47
|
|
|
48
|
-
# string -
|
|
48
|
+
# string - Arbitrary descriptive label for the lock. Does not change the lock creator or permissions.
|
|
49
49
|
def owner
|
|
50
50
|
@attributes[:owner]
|
|
51
51
|
end
|
|
@@ -117,6 +117,15 @@ module Files
|
|
|
117
117
|
@attributes[:username] = value
|
|
118
118
|
end
|
|
119
119
|
|
|
120
|
+
# string - Require this existing, unexpired token before refreshing or replacing a lock. Set token to the same value to refresh, or a different value to replace.
|
|
121
|
+
def expected_token
|
|
122
|
+
@attributes[:expected_token]
|
|
123
|
+
end
|
|
124
|
+
|
|
125
|
+
def expected_token=(value)
|
|
126
|
+
@attributes[:expected_token] = value
|
|
127
|
+
end
|
|
128
|
+
|
|
120
129
|
# Parameters:
|
|
121
130
|
# token (required) - string - Lock token
|
|
122
131
|
def delete(params = {})
|
|
@@ -162,14 +171,20 @@ module Files
|
|
|
162
171
|
|
|
163
172
|
# Parameters:
|
|
164
173
|
# path (required) - string - Path
|
|
174
|
+
# token - string - Lock token. With expected_token, use the same value to refresh or a different value to replace the existing token.
|
|
175
|
+
# expected_token - string - Require this existing, unexpired token before refreshing or replacing a lock. Set token to the same value to refresh, or a different value to replace.
|
|
165
176
|
# allow_access_by_any_user - boolean - Can lock be modified by users other than its creator?
|
|
166
177
|
# exclusive - boolean - Is lock exclusive?
|
|
167
178
|
# recursive - boolean - Does lock apply to subfolders?
|
|
179
|
+
# owner - string - Arbitrary descriptive label for the lock. Does not change the lock creator or permissions.
|
|
168
180
|
# timeout - int64 - Lock timeout in seconds
|
|
169
181
|
def self.create(path, params = {}, options = {})
|
|
170
182
|
params ||= {}
|
|
171
183
|
params[:path] = path
|
|
172
184
|
raise InvalidParameterError.new("Bad parameter: path must be an String") if params[:path] and !params[:path].is_a?(String)
|
|
185
|
+
raise InvalidParameterError.new("Bad parameter: token must be an String") if params[:token] and !params[:token].is_a?(String)
|
|
186
|
+
raise InvalidParameterError.new("Bad parameter: expected_token must be an String") if params[:expected_token] and !params[:expected_token].is_a?(String)
|
|
187
|
+
raise InvalidParameterError.new("Bad parameter: owner must be an String") if params[:owner] and !params[:owner].is_a?(String)
|
|
173
188
|
raise InvalidParameterError.new("Bad parameter: timeout must be an Integer") if params[:timeout] and !params[:timeout].is_a?(Integer)
|
|
174
189
|
raise MissingParameterError.new("Parameter missing: path") unless params[:path]
|
|
175
190
|
|
|
@@ -264,7 +264,7 @@ module Files
|
|
|
264
264
|
# Parameters:
|
|
265
265
|
# 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.
|
|
266
266
|
# per_page - int64 - Number of records to show per page. (Max: 10000, 1,000 or less is recommended).
|
|
267
|
-
# sort_by - object - If set, sort records by the specified field in either `asc` or `desc` direction. Valid fields are `workspace_id` and `
|
|
267
|
+
# sort_by - object - If set, sort records by the specified field in either `asc` or `desc` direction. Valid fields are `workspace_id` and `name`.
|
|
268
268
|
# filter - object - If set, return records where the specified field is equal to the supplied value. Valid fields are `workspace_id`.
|
|
269
269
|
def self.list(params = {}, options = {})
|
|
270
270
|
raise InvalidParameterError.new("Bad parameter: cursor must be an String") if params[:cursor] and !params[:cursor].is_a?(String)
|
|
@@ -18,7 +18,7 @@ module Files
|
|
|
18
18
|
@attributes[:id] = value
|
|
19
19
|
end
|
|
20
20
|
|
|
21
|
-
# string -
|
|
21
|
+
# string - Folder path. This must be slash-delimited, but it must neither start nor end with a slash. Maximum of 5000 characters.
|
|
22
22
|
def path
|
|
23
23
|
@attributes[:path]
|
|
24
24
|
end
|
|
@@ -63,7 +63,7 @@ module Files
|
|
|
63
63
|
@attributes[:group_name] = value
|
|
64
64
|
end
|
|
65
65
|
|
|
66
|
-
# array(int64) - Group IDs when this
|
|
66
|
+
# array(int64) - Group IDs when this Permission requires membership in every listed group.
|
|
67
67
|
def group_ids
|
|
68
68
|
@attributes[:group_ids]
|
|
69
69
|
end
|
|
@@ -108,7 +108,7 @@ module Files
|
|
|
108
108
|
@attributes[:permission] = value
|
|
109
109
|
end
|
|
110
110
|
|
|
111
|
-
# boolean -
|
|
111
|
+
# boolean - Whether this Permission applies to subfolders. Must be true for `admin` Permissions.
|
|
112
112
|
def recursive
|
|
113
113
|
@attributes[:recursive]
|
|
114
114
|
end
|
|
@@ -186,9 +186,9 @@ module Files
|
|
|
186
186
|
# Parameters:
|
|
187
187
|
# path (required) - string - Folder path
|
|
188
188
|
# group_id - int64 - Group ID. Provide `group_name` or `group_id`
|
|
189
|
-
# group_ids - string - Group IDs when the
|
|
189
|
+
# group_ids - string - Group IDs when the Permission requires membership in every listed group. If sent as a string, it should be comma-delimited.
|
|
190
190
|
# permission - string - Permission type. Can be `admin`, `full`, `readonly`, `writeonly`, `list`, or `history`
|
|
191
|
-
# recursive - boolean - Apply to subfolders recursively?
|
|
191
|
+
# recursive - boolean - Apply to subfolders recursively? Must be true for `admin` Permissions.
|
|
192
192
|
# partner_id - int64 - Partner ID if this Permission belongs to a partner.
|
|
193
193
|
# user_id - int64 - User ID. Provide `username` or `user_id`
|
|
194
194
|
# username - string - User username. Provide `username` or `user_id`
|
|
@@ -36,7 +36,7 @@ module Files
|
|
|
36
36
|
@attributes[:authentication_method] = value
|
|
37
37
|
end
|
|
38
38
|
|
|
39
|
-
# string - Hostname or IP address
|
|
39
|
+
# string - Hostname or IP address. For Agent Remote Servers, the Agent reports the hostname it connects from at each registration, replacing the stored value. This field is not included in the generated Agent configuration file. Setting it on Create or Update does not change the running Agent.
|
|
40
40
|
def hostname
|
|
41
41
|
@attributes[:hostname]
|
|
42
42
|
end
|
|
@@ -90,7 +90,7 @@ module Files
|
|
|
90
90
|
@attributes[:description] = value
|
|
91
91
|
end
|
|
92
92
|
|
|
93
|
-
# int64 - Port for remote server.
|
|
93
|
+
# int64 - Port for remote server. For Agent Remote Servers, the Agent reports its downstream proxy port at each registration, replacing the stored value. This field is not included in the generated Agent configuration file. Setting it on Create or Update does not change the running Agent.
|
|
94
94
|
def port
|
|
95
95
|
@attributes[:port]
|
|
96
96
|
end
|
|
@@ -549,7 +549,7 @@ module Files
|
|
|
549
549
|
@attributes[:outbound_ip_addresses] = value
|
|
550
550
|
end
|
|
551
551
|
|
|
552
|
-
# string -
|
|
552
|
+
# string - Agent file permissions: `read_only`, `write_only`, or `read_write`. Files.com writes this value as `permission_set` in the configuration file generated for this Remote Server. Setting it on Create or Update changes the generated file, not a running Agent. The Agent enforces the permissions in its local configuration file, controlled by the host's system administrator, and reports them at registration, replacing the stored value.
|
|
553
553
|
def files_agent_permission_set
|
|
554
554
|
@attributes[:files_agent_permission_set]
|
|
555
555
|
end
|
|
@@ -558,7 +558,7 @@ module Files
|
|
|
558
558
|
@attributes[:files_agent_permission_set] = value
|
|
559
559
|
end
|
|
560
560
|
|
|
561
|
-
# string - Agent local root path
|
|
561
|
+
# string - Agent local root path. Files.com writes this value as `root` in the configuration file generated for this Remote Server. Setting it on Create or Update changes the generated file, not a running Agent. The Agent enforces the root in its local configuration file, controlled by the host's system administrator, and reports it at registration, replacing the stored value.
|
|
562
562
|
def files_agent_root
|
|
563
563
|
@attributes[:files_agent_root]
|
|
564
564
|
end
|
|
@@ -567,7 +567,7 @@ module Files
|
|
|
567
567
|
@attributes[:files_agent_root] = value
|
|
568
568
|
end
|
|
569
569
|
|
|
570
|
-
# string - Files Agent version
|
|
570
|
+
# string - Files.com Agent version reported by the Agent at each registration, replacing the stored value. This field is not included in the generated Agent configuration file. Setting it on Create or Update does not update the running Agent.
|
|
571
571
|
def files_agent_version
|
|
572
572
|
@attributes[:files_agent_version]
|
|
573
573
|
end
|
|
@@ -992,9 +992,9 @@ module Files
|
|
|
992
992
|
# filebase_access_key - string - Filebase: Access Key.
|
|
993
993
|
# filebase_bucket - string - Filebase: Bucket name
|
|
994
994
|
# files_api_key - string - Files.com direct link: API key used once to pair the remote server.
|
|
995
|
-
# files_agent_permission_set - string -
|
|
996
|
-
# files_agent_root - string - Agent local root path
|
|
997
|
-
# files_agent_version - string - Files Agent version
|
|
995
|
+
# files_agent_permission_set - string - Agent file permissions: `read_only`, `write_only`, or `read_write`. Files.com writes this value as `permission_set` in the configuration file generated for this Remote Server. Setting it on Create or Update changes the generated file, not a running Agent. The Agent enforces the permissions in its local configuration file, controlled by the host's system administrator, and reports them at registration, replacing the stored value.
|
|
996
|
+
# files_agent_root - string - Agent local root path. Files.com writes this value as `root` in the configuration file generated for this Remote Server. Setting it on Create or Update changes the generated file, not a running Agent. The Agent enforces the root in its local configuration file, controlled by the host's system administrator, and reports it at registration, replacing the stored value.
|
|
997
|
+
# files_agent_version - string - Files.com Agent version reported by the Agent at each registration, replacing the stored value. This field is not included in the generated Agent configuration file. Setting it on Create or Update does not update the running Agent.
|
|
998
998
|
# outbound_agent_id - int64 - Route traffic to outbound on a files-agent
|
|
999
999
|
# custom_domain_id - int64 - Custom Domain ID whose dedicated IP addresses are selected when this Remote Server uses dedicated IPs. Must be available to this Remote Server's workspace. Requires enable_dedicated_ips and cannot be combined with an outbound Agent. Set to null to use the site's default dedicated IPs.
|
|
1000
1000
|
# google_cloud_storage_authentication_method - string - Google Cloud Storage: Authentication method. Can be json, hmac, or oauth.
|
|
@@ -1002,7 +1002,7 @@ module Files
|
|
|
1002
1002
|
# google_cloud_storage_oauth_scope - string - Google Cloud Storage: OAuth scope. Can be https://www.googleapis.com/auth/devstorage.read_only or https://www.googleapis.com/auth/devstorage.read_write.
|
|
1003
1003
|
# google_cloud_storage_project_id - string - Google Cloud Storage: Project ID
|
|
1004
1004
|
# google_cloud_storage_s3_compatible_access_key - string - Google Cloud Storage: S3-compatible Access Key.
|
|
1005
|
-
# hostname - string - Hostname or IP address
|
|
1005
|
+
# hostname - string - Hostname or IP address. For Agent Remote Servers, the Agent reports the hostname it connects from at each registration, replacing the stored value. This field is not included in the generated Agent configuration file. Setting it on Create or Update does not change the running Agent.
|
|
1006
1006
|
# linode_access_key - string - Linode: Access Key
|
|
1007
1007
|
# linode_bucket - string - Linode: Bucket name
|
|
1008
1008
|
# linode_region - string - Linode: region
|
|
@@ -1010,7 +1010,7 @@ module Files
|
|
|
1010
1010
|
# name - string - Internal name for your reference
|
|
1011
1011
|
# one_drive_account_type - string - OneDrive: Either personal or business_other account types
|
|
1012
1012
|
# pin_to_site_region - boolean - If true, we will ensure that all communications with this remote server are made through the primary region of the site. This setting can also be overridden by a site-wide setting which will force it to true.
|
|
1013
|
-
# port - int64 - Port for remote server.
|
|
1013
|
+
# port - int64 - Port for remote server. For Agent Remote Servers, the Agent reports its downstream proxy port at each registration, replacing the stored value. This field is not included in the generated Agent configuration file. Setting it on Create or Update does not change the running Agent.
|
|
1014
1014
|
# upload_staging_path - string - Upload staging path. Applies to SFTP only. If a path is provided here, files will first be uploaded to this path on the remote folder and the moved into the final correct path via an SFTP move command. This is required by some remote MFT systems to emulate atomic uploads, which are otherwise not supoprted by SFTP.
|
|
1015
1015
|
# remote_server_credential_id - int64 - ID of Remote Server Credential, if applicable.
|
|
1016
1016
|
# s3_assume_role_arn - string - AWS IAM Role ARN for AssumeRole authentication.
|
|
@@ -1252,9 +1252,9 @@ module Files
|
|
|
1252
1252
|
# filebase_access_key - string - Filebase: Access Key.
|
|
1253
1253
|
# filebase_bucket - string - Filebase: Bucket name
|
|
1254
1254
|
# files_api_key - string - Files.com direct link: API key used once to pair the remote server.
|
|
1255
|
-
# files_agent_permission_set - string -
|
|
1256
|
-
# files_agent_root - string - Agent local root path
|
|
1257
|
-
# files_agent_version - string - Files Agent version
|
|
1255
|
+
# files_agent_permission_set - string - Agent file permissions: `read_only`, `write_only`, or `read_write`. Files.com writes this value as `permission_set` in the configuration file generated for this Remote Server. Setting it on Create or Update changes the generated file, not a running Agent. The Agent enforces the permissions in its local configuration file, controlled by the host's system administrator, and reports them at registration, replacing the stored value.
|
|
1256
|
+
# files_agent_root - string - Agent local root path. Files.com writes this value as `root` in the configuration file generated for this Remote Server. Setting it on Create or Update changes the generated file, not a running Agent. The Agent enforces the root in its local configuration file, controlled by the host's system administrator, and reports it at registration, replacing the stored value.
|
|
1257
|
+
# files_agent_version - string - Files.com Agent version reported by the Agent at each registration, replacing the stored value. This field is not included in the generated Agent configuration file. Setting it on Create or Update does not update the running Agent.
|
|
1258
1258
|
# outbound_agent_id - int64 - Route traffic to outbound on a files-agent
|
|
1259
1259
|
# custom_domain_id - int64 - Custom Domain ID whose dedicated IP addresses are selected when this Remote Server uses dedicated IPs. Must be available to this Remote Server's workspace. Requires enable_dedicated_ips and cannot be combined with an outbound Agent. Set to null to use the site's default dedicated IPs.
|
|
1260
1260
|
# google_cloud_storage_authentication_method - string - Google Cloud Storage: Authentication method. Can be json, hmac, or oauth.
|
|
@@ -1262,7 +1262,7 @@ module Files
|
|
|
1262
1262
|
# google_cloud_storage_oauth_scope - string - Google Cloud Storage: OAuth scope. Can be https://www.googleapis.com/auth/devstorage.read_only or https://www.googleapis.com/auth/devstorage.read_write.
|
|
1263
1263
|
# google_cloud_storage_project_id - string - Google Cloud Storage: Project ID
|
|
1264
1264
|
# google_cloud_storage_s3_compatible_access_key - string - Google Cloud Storage: S3-compatible Access Key.
|
|
1265
|
-
# hostname - string - Hostname or IP address
|
|
1265
|
+
# hostname - string - Hostname or IP address. For Agent Remote Servers, the Agent reports the hostname it connects from at each registration, replacing the stored value. This field is not included in the generated Agent configuration file. Setting it on Create or Update does not change the running Agent.
|
|
1266
1266
|
# linode_access_key - string - Linode: Access Key
|
|
1267
1267
|
# linode_bucket - string - Linode: Bucket name
|
|
1268
1268
|
# linode_region - string - Linode: region
|
|
@@ -1270,7 +1270,7 @@ module Files
|
|
|
1270
1270
|
# name - string - Internal name for your reference
|
|
1271
1271
|
# one_drive_account_type - string - OneDrive: Either personal or business_other account types
|
|
1272
1272
|
# pin_to_site_region - boolean - If true, we will ensure that all communications with this remote server are made through the primary region of the site. This setting can also be overridden by a site-wide setting which will force it to true.
|
|
1273
|
-
# port - int64 - Port for remote server.
|
|
1273
|
+
# port - int64 - Port for remote server. For Agent Remote Servers, the Agent reports its downstream proxy port at each registration, replacing the stored value. This field is not included in the generated Agent configuration file. Setting it on Create or Update does not change the running Agent.
|
|
1274
1274
|
# upload_staging_path - string - Upload staging path. Applies to SFTP only. If a path is provided here, files will first be uploaded to this path on the remote folder and the moved into the final correct path via an SFTP move command. This is required by some remote MFT systems to emulate atomic uploads, which are otherwise not supoprted by SFTP.
|
|
1275
1275
|
# remote_server_credential_id - int64 - ID of Remote Server Credential, if applicable.
|
|
1276
1276
|
# s3_assume_role_arn - string - AWS IAM Role ARN for AssumeRole authentication.
|
|
@@ -1432,9 +1432,9 @@ module Files
|
|
|
1432
1432
|
# filebase_access_key - string - Filebase: Access Key.
|
|
1433
1433
|
# filebase_bucket - string - Filebase: Bucket name
|
|
1434
1434
|
# files_api_key - string - Files.com direct link: API key used once to pair the remote server.
|
|
1435
|
-
# files_agent_permission_set - string -
|
|
1436
|
-
# files_agent_root - string - Agent local root path
|
|
1437
|
-
# files_agent_version - string - Files Agent version
|
|
1435
|
+
# files_agent_permission_set - string - Agent file permissions: `read_only`, `write_only`, or `read_write`. Files.com writes this value as `permission_set` in the configuration file generated for this Remote Server. Setting it on Create or Update changes the generated file, not a running Agent. The Agent enforces the permissions in its local configuration file, controlled by the host's system administrator, and reports them at registration, replacing the stored value.
|
|
1436
|
+
# files_agent_root - string - Agent local root path. Files.com writes this value as `root` in the configuration file generated for this Remote Server. Setting it on Create or Update changes the generated file, not a running Agent. The Agent enforces the root in its local configuration file, controlled by the host's system administrator, and reports it at registration, replacing the stored value.
|
|
1437
|
+
# files_agent_version - string - Files.com Agent version reported by the Agent at each registration, replacing the stored value. This field is not included in the generated Agent configuration file. Setting it on Create or Update does not update the running Agent.
|
|
1438
1438
|
# outbound_agent_id - int64 - Route traffic to outbound on a files-agent
|
|
1439
1439
|
# custom_domain_id - int64 - Custom Domain ID whose dedicated IP addresses are selected when this Remote Server uses dedicated IPs. Must be available to this Remote Server's workspace. Requires enable_dedicated_ips and cannot be combined with an outbound Agent. Set to null to use the site's default dedicated IPs.
|
|
1440
1440
|
# google_cloud_storage_authentication_method - string - Google Cloud Storage: Authentication method. Can be json, hmac, or oauth.
|
|
@@ -1442,7 +1442,7 @@ module Files
|
|
|
1442
1442
|
# google_cloud_storage_oauth_scope - string - Google Cloud Storage: OAuth scope. Can be https://www.googleapis.com/auth/devstorage.read_only or https://www.googleapis.com/auth/devstorage.read_write.
|
|
1443
1443
|
# google_cloud_storage_project_id - string - Google Cloud Storage: Project ID
|
|
1444
1444
|
# google_cloud_storage_s3_compatible_access_key - string - Google Cloud Storage: S3-compatible Access Key.
|
|
1445
|
-
# hostname - string - Hostname or IP address
|
|
1445
|
+
# hostname - string - Hostname or IP address. For Agent Remote Servers, the Agent reports the hostname it connects from at each registration, replacing the stored value. This field is not included in the generated Agent configuration file. Setting it on Create or Update does not change the running Agent.
|
|
1446
1446
|
# linode_access_key - string - Linode: Access Key
|
|
1447
1447
|
# linode_bucket - string - Linode: Bucket name
|
|
1448
1448
|
# linode_region - string - Linode: region
|
|
@@ -1450,7 +1450,7 @@ module Files
|
|
|
1450
1450
|
# name - string - Internal name for your reference
|
|
1451
1451
|
# one_drive_account_type - string - OneDrive: Either personal or business_other account types
|
|
1452
1452
|
# pin_to_site_region - boolean - If true, we will ensure that all communications with this remote server are made through the primary region of the site. This setting can also be overridden by a site-wide setting which will force it to true.
|
|
1453
|
-
# port - int64 - Port for remote server.
|
|
1453
|
+
# port - int64 - Port for remote server. For Agent Remote Servers, the Agent reports its downstream proxy port at each registration, replacing the stored value. This field is not included in the generated Agent configuration file. Setting it on Create or Update does not change the running Agent.
|
|
1454
1454
|
# upload_staging_path - string - Upload staging path. Applies to SFTP only. If a path is provided here, files will first be uploaded to this path on the remote folder and the moved into the final correct path via an SFTP move command. This is required by some remote MFT systems to emulate atomic uploads, which are otherwise not supoprted by SFTP.
|
|
1455
1455
|
# remote_server_credential_id - int64 - ID of Remote Server Credential, if applicable.
|
|
1456
1456
|
# s3_assume_role_arn - string - AWS IAM Role ARN for AssumeRole authentication.
|
|
@@ -391,6 +391,11 @@ module Files
|
|
|
391
391
|
@attributes[:fedramp]
|
|
392
392
|
end
|
|
393
393
|
|
|
394
|
+
# boolean - Allow other Files.com sites to use this site's API keys for native Files.com Remote Server connections? Defaults to true and applies to all keys and workspaces on this site. When false, new pairings and access through existing connections are rejected without revoking keys or deleting connections. Re-enabling permits access again with usable keys. Does not disable this site's connections to other sites, ordinary API access, or Connected Sites.
|
|
395
|
+
def files_com_remote_server_enabled
|
|
396
|
+
@attributes[:files_com_remote_server_enabled]
|
|
397
|
+
end
|
|
398
|
+
|
|
394
399
|
# boolean - Is FTP enabled?
|
|
395
400
|
def ftp_enabled
|
|
396
401
|
@attributes[:ftp_enabled]
|
|
@@ -1118,6 +1123,7 @@ module Files
|
|
|
1118
1123
|
# user_requests_enabled - boolean - Enable User Requests feature
|
|
1119
1124
|
# user_requests_notify_admins - boolean - Send email to site admins when a user request is received?
|
|
1120
1125
|
# dav_enabled - boolean - Is WebDAV enabled?
|
|
1126
|
+
# files_com_remote_server_enabled - boolean - Allow other Files.com sites to use this site's API keys for native Files.com Remote Server connections? Defaults to true and applies to all keys and workspaces on this site. When false, new pairings and access through existing connections are rejected without revoking keys or deleting connections. Re-enabling permits access again with usable keys. Does not disable this site's connections to other sites, ordinary API access, or Connected Sites.
|
|
1121
1127
|
# ftp_enabled - boolean - Is FTP enabled?
|
|
1122
1128
|
# s3_compatible_endpoint_enabled - boolean - Is the S3-compatible endpoint enabled for all users and workspaces on this site? Defaults to true. When false, user and group S3 permissions do not allow access.
|
|
1123
1129
|
# sftp_enabled - boolean - Is SFTP enabled?
|
|
@@ -653,7 +653,7 @@ module Files
|
|
|
653
653
|
@attributes[:site_admin] = value
|
|
654
654
|
end
|
|
655
655
|
|
|
656
|
-
# boolean -
|
|
656
|
+
# boolean - Whether the user is an administrator of their own Custom Workspace. Does not reflect administration granted through Permissions.
|
|
657
657
|
def workspace_admin
|
|
658
658
|
@attributes[:workspace_admin]
|
|
659
659
|
end
|
|
@@ -671,7 +671,7 @@ module Files
|
|
|
671
671
|
@attributes[:site_id] = value
|
|
672
672
|
end
|
|
673
673
|
|
|
674
|
-
# int64 - Workspace
|
|
674
|
+
# int64 - ID of the Workspace the user belongs to. 0 is the Default Workspace.
|
|
675
675
|
def workspace_id
|
|
676
676
|
@attributes[:workspace_id]
|
|
677
677
|
end
|
|
@@ -1014,7 +1014,7 @@ module Files
|
|
|
1014
1014
|
# time_zone - string - User time zone
|
|
1015
1015
|
# user_root - string - If filesystem layout is user_root, this path is the root path the user is fixed to for all interfaces. If the filesystem layout is site_root or partner_root, this acts as a root folder only for FTP and SFTP (SFTP applicability also requires a site-wide setting to be set). For partner_root layout, this path is relative to the Partner root folder for all callers and blank opts out of an additional protocol root. In this situation, this path is not applied to the API, Desktop, or Web interface.
|
|
1016
1016
|
# user_home - string - Home folder for FTP/SFTP. For users with the partner_root filesystem layout, this path is relative to the Partner root folder. In all other cases, it is an absolute path. Only applies to FTP and SFTP, and not any other interface.
|
|
1017
|
-
# workspace_admin - boolean -
|
|
1017
|
+
# workspace_admin - boolean - Whether the user is an administrator of their own Custom Workspace. Does not reflect administration granted through Permissions.
|
|
1018
1018
|
# username - string - User's username
|
|
1019
1019
|
# workspace_id - int64 - Workspace ID. Only Site Administrators can change this field. Values supplied by Workspace Administrators, Group Administrators, or other non-Site Administrators using `/user` are ignored.
|
|
1020
1020
|
# clear_2fa - boolean - If true when changing authentication_method from `password` to `sso`, remove all two-factor methods. Ignored in all other cases.
|
|
@@ -1214,9 +1214,9 @@ module Files
|
|
|
1214
1214
|
# time_zone - string - User time zone
|
|
1215
1215
|
# user_root - string - If filesystem layout is user_root, this path is the root path the user is fixed to for all interfaces. If the filesystem layout is site_root or partner_root, this acts as a root folder only for FTP and SFTP (SFTP applicability also requires a site-wide setting to be set). For partner_root layout, this path is relative to the Partner root folder for all callers and blank opts out of an additional protocol root. In this situation, this path is not applied to the API, Desktop, or Web interface.
|
|
1216
1216
|
# user_home - string - Home folder for FTP/SFTP. For users with the partner_root filesystem layout, this path is relative to the Partner root folder. In all other cases, it is an absolute path. Only applies to FTP and SFTP, and not any other interface.
|
|
1217
|
-
# workspace_admin - boolean -
|
|
1217
|
+
# workspace_admin - boolean - Whether the user is an administrator of their own Custom Workspace. Does not reflect administration granted through Permissions.
|
|
1218
1218
|
# username (required) - string - User's username
|
|
1219
|
-
# workspace_id - int64 - Workspace
|
|
1219
|
+
# workspace_id - int64 - ID of the Workspace the user belongs to. 0 is the Default Workspace.
|
|
1220
1220
|
def self.create(params = {}, options = {})
|
|
1221
1221
|
raise InvalidParameterError.new("Bad parameter: change_password must be an String") if params[:change_password] and !params[:change_password].is_a?(String)
|
|
1222
1222
|
raise InvalidParameterError.new("Bad parameter: change_password_confirmation must be an String") if params[:change_password_confirmation] and !params[:change_password_confirmation].is_a?(String)
|
|
@@ -1362,7 +1362,7 @@ module Files
|
|
|
1362
1362
|
# time_zone - string - User time zone
|
|
1363
1363
|
# user_root - string - If filesystem layout is user_root, this path is the root path the user is fixed to for all interfaces. If the filesystem layout is site_root or partner_root, this acts as a root folder only for FTP and SFTP (SFTP applicability also requires a site-wide setting to be set). For partner_root layout, this path is relative to the Partner root folder for all callers and blank opts out of an additional protocol root. In this situation, this path is not applied to the API, Desktop, or Web interface.
|
|
1364
1364
|
# user_home - string - Home folder for FTP/SFTP. For users with the partner_root filesystem layout, this path is relative to the Partner root folder. In all other cases, it is an absolute path. Only applies to FTP and SFTP, and not any other interface.
|
|
1365
|
-
# workspace_admin - boolean -
|
|
1365
|
+
# workspace_admin - boolean - Whether the user is an administrator of their own Custom Workspace. Does not reflect administration granted through Permissions.
|
|
1366
1366
|
# username - string - User's username
|
|
1367
1367
|
# workspace_id - int64 - Workspace ID. Only Site Administrators can change this field. Values supplied by Workspace Administrators, Group Administrators, or other non-Site Administrators using `/user` are ignored.
|
|
1368
1368
|
# clear_2fa - boolean - If true when changing authentication_method from `password` to `sso`, remove all two-factor methods. Ignored in all other cases.
|
|
@@ -38,10 +38,12 @@ module Files
|
|
|
38
38
|
# user_id - int64 - User ID. If provided, will return uses for this user.
|
|
39
39
|
# 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.
|
|
40
40
|
# per_page - int64 - Number of records to show per page. (Max: 10000, 1,000 or less is recommended).
|
|
41
|
+
# sort_by - object - If set, sort records by the specified field in either `asc` or `desc` direction. Valid fields are `created_at`.
|
|
41
42
|
def self.list(params = {}, options = {})
|
|
42
43
|
raise InvalidParameterError.new("Bad parameter: user_id must be an Integer") if params[:user_id] and !params[:user_id].is_a?(Integer)
|
|
43
44
|
raise InvalidParameterError.new("Bad parameter: cursor must be an String") if params[:cursor] and !params[:cursor].is_a?(String)
|
|
44
45
|
raise InvalidParameterError.new("Bad parameter: per_page must be an Integer") if params[:per_page] and !params[:per_page].is_a?(Integer)
|
|
46
|
+
raise InvalidParameterError.new("Bad parameter: sort_by must be an Hash") if params[:sort_by] and !params[:sort_by].is_a?(Hash)
|
|
45
47
|
|
|
46
48
|
List.new(UserSftpClientUse, params) do
|
|
47
49
|
Api.send_request("/user_sftp_client_uses", :get, params, options)
|
data/lib/files.com/version.rb
CHANGED
data/spec/language_spec.rb
CHANGED
|
@@ -1,14 +1,28 @@
|
|
|
1
1
|
require "spec_helper"
|
|
2
2
|
|
|
3
|
-
RSpec.describe
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
Files.language =
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
3
|
+
RSpec.describe "Language setting" do
|
|
4
|
+
around do |example|
|
|
5
|
+
old_language = Files.language
|
|
6
|
+
Files.language = nil
|
|
7
|
+
example.run
|
|
8
|
+
ensure
|
|
9
|
+
Files.language = old_language
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
let(:client) { Files::ApiClient.new }
|
|
13
|
+
|
|
14
|
+
it "sends the configured language as the Accept-Language header" do
|
|
15
|
+
Files.language = "es"
|
|
16
|
+
|
|
17
|
+
headers = client.send(:request_headers, "api-key", nil, :get, nil)
|
|
18
|
+
|
|
19
|
+
expect(Files.language).to eq("es")
|
|
20
|
+
expect(headers["Accept-Language"]).to eq("es")
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
it "omits the Accept-Language header when unset" do
|
|
24
|
+
headers = client.send(:request_headers, "api-key", nil, :get, nil)
|
|
25
|
+
|
|
26
|
+
expect(headers).not_to have_key("Accept-Language")
|
|
13
27
|
end
|
|
14
28
|
end
|
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.
|
|
4
|
+
version: 1.1.766
|
|
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-10-
|
|
11
|
+
date: 2026-10-05 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: addressable
|