files-com 1.6.121__py3-none-any.whl → 1.6.191__py3-none-any.whl

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.

Potentially problematic release.


This version of files-com might be problematic. Click here for more details.

Files changed (36) hide show
  1. README.md +1 -0
  2. _VERSION +1 -1
  3. {files_com-1.6.121.dist-info → files_com-1.6.191.dist-info}/METADATA +2 -1
  4. {files_com-1.6.121.dist-info → files_com-1.6.191.dist-info}/RECORD +36 -31
  5. files_sdk/__init__.py +11 -1
  6. files_sdk/error.py +15 -0
  7. files_sdk/models/__init__.py +5 -0
  8. files_sdk/models/agent_push_update.py +44 -0
  9. files_sdk/models/api_key.py +7 -21
  10. files_sdk/models/as2_incoming_message.py +3 -9
  11. files_sdk/models/as2_outgoing_message.py +3 -9
  12. files_sdk/models/as2_partner.py +7 -0
  13. files_sdk/models/as2_station.py +15 -4
  14. files_sdk/models/automation.py +10 -2
  15. files_sdk/models/automation_run.py +2 -1
  16. files_sdk/models/behavior.py +12 -14
  17. files_sdk/models/bundle.py +9 -1
  18. files_sdk/models/file.py +2 -2
  19. files_sdk/models/folder.py +2 -2
  20. files_sdk/models/gpg_key.py +51 -24
  21. files_sdk/models/group.py +10 -2
  22. files_sdk/models/inbound_s3_log.py +95 -0
  23. files_sdk/models/key_lifecycle_rule.py +243 -0
  24. files_sdk/models/partner.py +12 -1
  25. files_sdk/models/public_key.py +3 -2
  26. files_sdk/models/remote_server.py +141 -20
  27. files_sdk/models/remote_server_credential.py +855 -0
  28. files_sdk/models/restore.py +20 -0
  29. files_sdk/models/site.py +12 -12
  30. files_sdk/models/sync.py +14 -0
  31. files_sdk/models/sync_run.py +3 -2
  32. files_sdk/models/user.py +26 -2
  33. files_sdk/models/workspace.py +202 -0
  34. {files_com-1.6.121.dist-info → files_com-1.6.191.dist-info}/WHEEL +0 -0
  35. {files_com-1.6.121.dist-info → files_com-1.6.191.dist-info}/licenses/LICENSE +0 -0
  36. {files_com-1.6.121.dist-info → files_com-1.6.191.dist-info}/top_level.txt +0 -0
@@ -1,4 +1,5 @@
1
1
  import builtins # noqa: F401
2
+ from files_sdk.models.agent_push_update import AgentPushUpdate
2
3
  from files_sdk.models.remote_server_configuration_file import (
3
4
  RemoteServerConfigurationFile,
4
5
  )
@@ -19,19 +20,22 @@ class RemoteServer:
19
20
  "hostname": None, # string - Hostname or IP address
20
21
  "remote_home_path": None, # string - Initial home folder on remote server
21
22
  "name": None, # string - Internal name for your reference
22
- "port": None, # int64 - Port for remote server. Not needed for S3.
23
- "buffer_uploads_always": None, # boolean - If true, 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.
23
+ "description": None, # string - Internal description for your reference
24
+ "port": None, # int64 - Port for remote server.
25
+ "buffer_uploads": None, # 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.
24
26
  "max_connections": None, # int64 - Max number of parallel connections. Ignored for S3 connections (we will parallelize these as much as possible).
25
27
  "pin_to_site_region": None, # 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.
26
28
  "pinned_region": None, # string - If set, all communications with this remote server are made through the provided region.
29
+ "remote_server_credential_id": None, # int64 - ID of Remote Server Credential, if applicable.
27
30
  "s3_bucket": None, # string - S3 bucket name
28
31
  "s3_region": None, # string - S3 region
29
32
  "aws_access_key": None, # string - AWS Access Key.
30
33
  "server_certificate": None, # string - Remote server certificate
31
34
  "server_host_key": None, # string - Remote server SSH Host Key. If provided, we will require that the server host key matches the provided key. Uses OpenSSH format similar to what would go into ~/.ssh/known_hosts
32
35
  "server_type": None, # string - Remote server type.
36
+ "workspace_id": None, # int64 - Workspace ID (0 for default workspace)
33
37
  "ssl": None, # string - Should we require SSL?
34
- "username": None, # string - Remote server username. Not needed for S3 buckets.
38
+ "username": None, # string - Remote server username.
35
39
  "google_cloud_storage_bucket": None, # string - Google Cloud Storage: Bucket Name
36
40
  "google_cloud_storage_project_id": None, # string - Google Cloud Storage: Project ID
37
41
  "google_cloud_storage_s3_compatible_access_key": None, # string - Google Cloud Storage: S3-compatible Access Key.
@@ -59,6 +63,10 @@ class RemoteServer:
59
63
  "files_agent_root": None, # string - Agent local root path
60
64
  "files_agent_api_token": None, # string - Files Agent API Token
61
65
  "files_agent_version": None, # string - Files Agent version
66
+ "files_agent_up_to_date": None, # boolean - If true, the Files Agent is up to date.
67
+ "files_agent_latest_version": None, # string - Latest available Files Agent version
68
+ "files_agent_supports_push_updates": None, # boolean - Files Agent supports receiving push updates
69
+ "outbound_agent_id": None, # int64 - Route traffic to outbound on a files-agent
62
70
  "filebase_bucket": None, # string - Filebase: Bucket name
63
71
  "filebase_access_key": None, # string - Filebase: Access Key.
64
72
  "cloudflare_bucket": None, # string - Cloudflare: Bucket name
@@ -112,6 +120,27 @@ class RemoteServer:
112
120
  if getattr(self, k, None) is not None
113
121
  }
114
122
 
123
+ # Push update to Files Agent
124
+ def agent_push_update(self, params=None):
125
+ if not isinstance(params, dict):
126
+ params = {}
127
+
128
+ if hasattr(self, "id") and self.id:
129
+ params["id"] = self.id
130
+ else:
131
+ raise MissingParameterError("Current object doesn't have a id")
132
+ if "id" not in params:
133
+ raise MissingParameterError("Parameter missing: id")
134
+ if "id" in params and not isinstance(params["id"], int):
135
+ raise InvalidParameterError("Bad parameter: id must be an int")
136
+ response, _options = Api.send_request(
137
+ "POST",
138
+ "/remote_servers/{id}/agent_push_update".format(id=params["id"]),
139
+ params,
140
+ self.options,
141
+ )
142
+ return response.data
143
+
115
144
  # Post local changes, check in, and download configuration file (used by some Remote Server integrations, such as the Files.com Agent)
116
145
  #
117
146
  # Parameters:
@@ -224,10 +253,11 @@ class RemoteServer:
224
253
  # azure_files_storage_share_name - string - Azure Files: Storage Share name
225
254
  # backblaze_b2_bucket - string - Backblaze B2 Cloud Storage: Bucket name
226
255
  # backblaze_b2_s3_endpoint - string - Backblaze B2 Cloud Storage: S3 Endpoint
227
- # buffer_uploads_always - boolean - If true, 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.
256
+ # 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.
228
257
  # cloudflare_access_key - string - Cloudflare: Access Key.
229
258
  # cloudflare_bucket - string - Cloudflare: Bucket name
230
259
  # cloudflare_endpoint - string - Cloudflare: endpoint
260
+ # description - string - Internal description for your reference
231
261
  # dropbox_teams - boolean - Dropbox: If true, list Team folders in root?
232
262
  # enable_dedicated_ips - boolean - `true` if remote server only accepts connections from dedicated IPs
233
263
  # filebase_access_key - string - Filebase: Access Key.
@@ -235,6 +265,7 @@ class RemoteServer:
235
265
  # files_agent_permission_set - string - Local permissions for files agent. read_only, write_only, or read_write
236
266
  # files_agent_root - string - Agent local root path
237
267
  # files_agent_version - string - Files Agent version
268
+ # outbound_agent_id - int64 - Route traffic to outbound on a files-agent
238
269
  # google_cloud_storage_bucket - string - Google Cloud Storage: Bucket Name
239
270
  # google_cloud_storage_project_id - string - Google Cloud Storage: Project ID
240
271
  # google_cloud_storage_s3_compatible_access_key - string - Google Cloud Storage: S3-compatible Access Key.
@@ -246,7 +277,8 @@ class RemoteServer:
246
277
  # name - string - Internal name for your reference
247
278
  # one_drive_account_type - string - OneDrive: Either personal or business_other account types
248
279
  # 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.
249
- # port - int64 - Port for remote server. Not needed for S3.
280
+ # port - int64 - Port for remote server.
281
+ # remote_server_credential_id - int64 - ID of Remote Server Credential, if applicable.
250
282
  # s3_bucket - string - S3 bucket name
251
283
  # s3_compatible_access_key - string - S3-compatible: Access Key
252
284
  # s3_compatible_bucket - string - S3-compatible: Bucket name
@@ -257,7 +289,7 @@ class RemoteServer:
257
289
  # server_host_key - string - Remote server SSH Host Key. If provided, we will require that the server host key matches the provided key. Uses OpenSSH format similar to what would go into ~/.ssh/known_hosts
258
290
  # server_type - string - Remote server type.
259
291
  # ssl - string - Should we require SSL?
260
- # username - string - Remote server username. Not needed for S3 buckets.
292
+ # username - string - Remote server username.
261
293
  # wasabi_access_key - string - Wasabi: Access Key.
262
294
  # wasabi_bucket - string - Wasabi: Bucket name
263
295
  # wasabi_region - string - Wasabi: Region
@@ -439,6 +471,12 @@ class RemoteServer:
439
471
  raise InvalidParameterError(
440
472
  "Bad parameter: backblaze_b2_s3_endpoint must be an str"
441
473
  )
474
+ if "buffer_uploads" in params and not isinstance(
475
+ params["buffer_uploads"], str
476
+ ):
477
+ raise InvalidParameterError(
478
+ "Bad parameter: buffer_uploads must be an str"
479
+ )
442
480
  if "cloudflare_access_key" in params and not isinstance(
443
481
  params["cloudflare_access_key"], str
444
482
  ):
@@ -457,6 +495,12 @@ class RemoteServer:
457
495
  raise InvalidParameterError(
458
496
  "Bad parameter: cloudflare_endpoint must be an str"
459
497
  )
498
+ if "description" in params and not isinstance(
499
+ params["description"], str
500
+ ):
501
+ raise InvalidParameterError(
502
+ "Bad parameter: description must be an str"
503
+ )
460
504
  if "filebase_access_key" in params and not isinstance(
461
505
  params["filebase_access_key"], str
462
506
  ):
@@ -487,6 +531,12 @@ class RemoteServer:
487
531
  raise InvalidParameterError(
488
532
  "Bad parameter: files_agent_version must be an str"
489
533
  )
534
+ if "outbound_agent_id" in params and not isinstance(
535
+ params["outbound_agent_id"], int
536
+ ):
537
+ raise InvalidParameterError(
538
+ "Bad parameter: outbound_agent_id must be an int"
539
+ )
490
540
  if "google_cloud_storage_bucket" in params and not isinstance(
491
541
  params["google_cloud_storage_bucket"], str
492
542
  ):
@@ -546,6 +596,12 @@ class RemoteServer:
546
596
  )
547
597
  if "port" in params and not isinstance(params["port"], int):
548
598
  raise InvalidParameterError("Bad parameter: port must be an int")
599
+ if "remote_server_credential_id" in params and not isinstance(
600
+ params["remote_server_credential_id"], int
601
+ ):
602
+ raise InvalidParameterError(
603
+ "Bad parameter: remote_server_credential_id must be an int"
604
+ )
549
605
  if "s3_bucket" in params and not isinstance(params["s3_bucket"], str):
550
606
  raise InvalidParameterError(
551
607
  "Bad parameter: s3_bucket must be an str"
@@ -664,8 +720,8 @@ class RemoteServer:
664
720
  # Parameters:
665
721
  # 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.
666
722
  # per_page - int64 - Number of records to show per page. (Max: 10,000, 1,000 or less is recommended).
667
- # sort_by - object - If set, sort records by the specified field in either `asc` or `desc` direction. Valid fields are `name`, `server_type`, `backblaze_b2_bucket`, `google_cloud_storage_bucket`, `wasabi_bucket`, `s3_bucket`, `azure_blob_storage_container`, `azure_files_storage_share_name`, `s3_compatible_bucket`, `filebase_bucket`, `cloudflare_bucket` or `linode_bucket`.
668
- # filter - object - If set, return records where the specified field is equal to the supplied value. Valid fields are `name`, `server_type`, `backblaze_b2_bucket`, `google_cloud_storage_bucket`, `wasabi_bucket`, `s3_bucket`, `azure_blob_storage_container`, `azure_files_storage_share_name`, `s3_compatible_bucket`, `filebase_bucket`, `cloudflare_bucket` or `linode_bucket`. Valid field combinations are `[ server_type, name ]`, `[ backblaze_b2_bucket, name ]`, `[ google_cloud_storage_bucket, name ]`, `[ wasabi_bucket, name ]`, `[ s3_bucket, name ]`, `[ azure_blob_storage_container, name ]`, `[ azure_files_storage_share_name, name ]`, `[ s3_compatible_bucket, name ]`, `[ filebase_bucket, name ]`, `[ cloudflare_bucket, name ]` or `[ linode_bucket, name ]`.
723
+ # sort_by - object - If set, sort records by the specified field in either `asc` or `desc` direction. Valid fields are `workspace_id`, `name`, `server_type`, `backblaze_b2_bucket`, `google_cloud_storage_bucket`, `wasabi_bucket`, `s3_bucket`, `azure_blob_storage_container`, `azure_files_storage_share_name`, `s3_compatible_bucket`, `filebase_bucket`, `cloudflare_bucket` or `linode_bucket`.
724
+ # filter - object - If set, return records where the specified field is equal to the supplied value. Valid fields are `name`, `server_type`, `workspace_id`, `backblaze_b2_bucket`, `google_cloud_storage_bucket`, `wasabi_bucket`, `s3_bucket`, `azure_blob_storage_container`, `azure_files_storage_share_name`, `s3_compatible_bucket`, `filebase_bucket`, `cloudflare_bucket` or `linode_bucket`. Valid field combinations are `[ server_type, name ]`, `[ workspace_id, name ]`, `[ backblaze_b2_bucket, name ]`, `[ google_cloud_storage_bucket, name ]`, `[ wasabi_bucket, name ]`, `[ s3_bucket, name ]`, `[ azure_blob_storage_container, name ]`, `[ azure_files_storage_share_name, name ]`, `[ s3_compatible_bucket, name ]`, `[ filebase_bucket, name ]`, `[ cloudflare_bucket, name ]`, `[ linode_bucket, name ]`, `[ workspace_id, server_type ]` or `[ workspace_id, server_type, name ]`.
669
725
  # filter_prefix - object - If set, return records where the specified field is prefixed by the supplied value. Valid fields are `name`, `backblaze_b2_bucket`, `google_cloud_storage_bucket`, `wasabi_bucket`, `s3_bucket`, `azure_blob_storage_container`, `azure_files_storage_share_name`, `s3_compatible_bucket`, `filebase_bucket`, `cloudflare_bucket` or `linode_bucket`. Valid field combinations are `[ backblaze_b2_bucket, name ]`, `[ google_cloud_storage_bucket, name ]`, `[ wasabi_bucket, name ]`, `[ s3_bucket, name ]`, `[ azure_blob_storage_container, name ]`, `[ azure_files_storage_share_name, name ]`, `[ s3_compatible_bucket, name ]`, `[ filebase_bucket, name ]`, `[ cloudflare_bucket, name ]` or `[ linode_bucket, name ]`.
670
726
  def list(params=None, options=None):
671
727
  if not isinstance(params, dict):
@@ -766,10 +822,11 @@ def find_configuration_file(id, params=None, options=None):
766
822
  # azure_files_storage_share_name - string - Azure Files: Storage Share name
767
823
  # backblaze_b2_bucket - string - Backblaze B2 Cloud Storage: Bucket name
768
824
  # backblaze_b2_s3_endpoint - string - Backblaze B2 Cloud Storage: S3 Endpoint
769
- # buffer_uploads_always - boolean - If true, 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.
825
+ # 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.
770
826
  # cloudflare_access_key - string - Cloudflare: Access Key.
771
827
  # cloudflare_bucket - string - Cloudflare: Bucket name
772
828
  # cloudflare_endpoint - string - Cloudflare: endpoint
829
+ # description - string - Internal description for your reference
773
830
  # dropbox_teams - boolean - Dropbox: If true, list Team folders in root?
774
831
  # enable_dedicated_ips - boolean - `true` if remote server only accepts connections from dedicated IPs
775
832
  # filebase_access_key - string - Filebase: Access Key.
@@ -777,6 +834,7 @@ def find_configuration_file(id, params=None, options=None):
777
834
  # files_agent_permission_set - string - Local permissions for files agent. read_only, write_only, or read_write
778
835
  # files_agent_root - string - Agent local root path
779
836
  # files_agent_version - string - Files Agent version
837
+ # outbound_agent_id - int64 - Route traffic to outbound on a files-agent
780
838
  # google_cloud_storage_bucket - string - Google Cloud Storage: Bucket Name
781
839
  # google_cloud_storage_project_id - string - Google Cloud Storage: Project ID
782
840
  # google_cloud_storage_s3_compatible_access_key - string - Google Cloud Storage: S3-compatible Access Key.
@@ -788,7 +846,8 @@ def find_configuration_file(id, params=None, options=None):
788
846
  # name - string - Internal name for your reference
789
847
  # one_drive_account_type - string - OneDrive: Either personal or business_other account types
790
848
  # 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.
791
- # port - int64 - Port for remote server. Not needed for S3.
849
+ # port - int64 - Port for remote server.
850
+ # remote_server_credential_id - int64 - ID of Remote Server Credential, if applicable.
792
851
  # s3_bucket - string - S3 bucket name
793
852
  # s3_compatible_access_key - string - S3-compatible: Access Key
794
853
  # s3_compatible_bucket - string - S3-compatible: Bucket name
@@ -799,10 +858,11 @@ def find_configuration_file(id, params=None, options=None):
799
858
  # server_host_key - string - Remote server SSH Host Key. If provided, we will require that the server host key matches the provided key. Uses OpenSSH format similar to what would go into ~/.ssh/known_hosts
800
859
  # server_type - string - Remote server type.
801
860
  # ssl - string - Should we require SSL?
802
- # username - string - Remote server username. Not needed for S3 buckets.
861
+ # username - string - Remote server username.
803
862
  # wasabi_access_key - string - Wasabi: Access Key.
804
863
  # wasabi_bucket - string - Wasabi: Bucket name
805
864
  # wasabi_region - string - Wasabi: Region
865
+ # workspace_id - int64 - Workspace ID (0 for default workspace)
806
866
  def create(params=None, options=None):
807
867
  if not isinstance(params, dict):
808
868
  params = {}
@@ -982,11 +1042,11 @@ def create(params=None, options=None):
982
1042
  raise InvalidParameterError(
983
1043
  "Bad parameter: backblaze_b2_s3_endpoint must be an str"
984
1044
  )
985
- if "buffer_uploads_always" in params and not isinstance(
986
- params["buffer_uploads_always"], bool
1045
+ if "buffer_uploads" in params and not isinstance(
1046
+ params["buffer_uploads"], str
987
1047
  ):
988
1048
  raise InvalidParameterError(
989
- "Bad parameter: buffer_uploads_always must be an bool"
1049
+ "Bad parameter: buffer_uploads must be an str"
990
1050
  )
991
1051
  if "cloudflare_access_key" in params and not isinstance(
992
1052
  params["cloudflare_access_key"], str
@@ -1006,6 +1066,10 @@ def create(params=None, options=None):
1006
1066
  raise InvalidParameterError(
1007
1067
  "Bad parameter: cloudflare_endpoint must be an str"
1008
1068
  )
1069
+ if "description" in params and not isinstance(params["description"], str):
1070
+ raise InvalidParameterError(
1071
+ "Bad parameter: description must be an str"
1072
+ )
1009
1073
  if "dropbox_teams" in params and not isinstance(
1010
1074
  params["dropbox_teams"], bool
1011
1075
  ):
@@ -1048,6 +1112,12 @@ def create(params=None, options=None):
1048
1112
  raise InvalidParameterError(
1049
1113
  "Bad parameter: files_agent_version must be an str"
1050
1114
  )
1115
+ if "outbound_agent_id" in params and not isinstance(
1116
+ params["outbound_agent_id"], int
1117
+ ):
1118
+ raise InvalidParameterError(
1119
+ "Bad parameter: outbound_agent_id must be an int"
1120
+ )
1051
1121
  if "google_cloud_storage_bucket" in params and not isinstance(
1052
1122
  params["google_cloud_storage_bucket"], str
1053
1123
  ):
@@ -1111,6 +1181,12 @@ def create(params=None, options=None):
1111
1181
  )
1112
1182
  if "port" in params and not isinstance(params["port"], int):
1113
1183
  raise InvalidParameterError("Bad parameter: port must be an int")
1184
+ if "remote_server_credential_id" in params and not isinstance(
1185
+ params["remote_server_credential_id"], int
1186
+ ):
1187
+ raise InvalidParameterError(
1188
+ "Bad parameter: remote_server_credential_id must be an int"
1189
+ )
1114
1190
  if "s3_bucket" in params and not isinstance(params["s3_bucket"], str):
1115
1191
  raise InvalidParameterError("Bad parameter: s3_bucket must be an str")
1116
1192
  if "s3_compatible_access_key" in params and not isinstance(
@@ -1177,12 +1253,38 @@ def create(params=None, options=None):
1177
1253
  raise InvalidParameterError(
1178
1254
  "Bad parameter: wasabi_region must be an str"
1179
1255
  )
1256
+ if "workspace_id" in params and not isinstance(
1257
+ params["workspace_id"], int
1258
+ ):
1259
+ raise InvalidParameterError(
1260
+ "Bad parameter: workspace_id must be an int"
1261
+ )
1180
1262
  response, options = Api.send_request(
1181
1263
  "POST", "/remote_servers", params, options
1182
1264
  )
1183
1265
  return RemoteServer(response.data, options)
1184
1266
 
1185
1267
 
1268
+ # Push update to Files Agent
1269
+ def agent_push_update(id, params=None, options=None):
1270
+ if not isinstance(params, dict):
1271
+ params = {}
1272
+ if not isinstance(options, dict):
1273
+ options = {}
1274
+ params["id"] = id
1275
+ if "id" in params and not isinstance(params["id"], int):
1276
+ raise InvalidParameterError("Bad parameter: id must be an int")
1277
+ if "id" not in params:
1278
+ raise MissingParameterError("Parameter missing: id")
1279
+ response, options = Api.send_request(
1280
+ "POST",
1281
+ "/remote_servers/{id}/agent_push_update".format(id=params["id"]),
1282
+ params,
1283
+ options,
1284
+ )
1285
+ return AgentPushUpdate(response.data, options)
1286
+
1287
+
1186
1288
  # Post local changes, check in, and download configuration file (used by some Remote Server integrations, such as the Files.com Agent)
1187
1289
  #
1188
1290
  # Parameters:
@@ -1282,10 +1384,11 @@ def configuration_file(id, params=None, options=None):
1282
1384
  # azure_files_storage_share_name - string - Azure Files: Storage Share name
1283
1385
  # backblaze_b2_bucket - string - Backblaze B2 Cloud Storage: Bucket name
1284
1386
  # backblaze_b2_s3_endpoint - string - Backblaze B2 Cloud Storage: S3 Endpoint
1285
- # buffer_uploads_always - boolean - If true, 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.
1387
+ # 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.
1286
1388
  # cloudflare_access_key - string - Cloudflare: Access Key.
1287
1389
  # cloudflare_bucket - string - Cloudflare: Bucket name
1288
1390
  # cloudflare_endpoint - string - Cloudflare: endpoint
1391
+ # description - string - Internal description for your reference
1289
1392
  # dropbox_teams - boolean - Dropbox: If true, list Team folders in root?
1290
1393
  # enable_dedicated_ips - boolean - `true` if remote server only accepts connections from dedicated IPs
1291
1394
  # filebase_access_key - string - Filebase: Access Key.
@@ -1293,6 +1396,7 @@ def configuration_file(id, params=None, options=None):
1293
1396
  # files_agent_permission_set - string - Local permissions for files agent. read_only, write_only, or read_write
1294
1397
  # files_agent_root - string - Agent local root path
1295
1398
  # files_agent_version - string - Files Agent version
1399
+ # outbound_agent_id - int64 - Route traffic to outbound on a files-agent
1296
1400
  # google_cloud_storage_bucket - string - Google Cloud Storage: Bucket Name
1297
1401
  # google_cloud_storage_project_id - string - Google Cloud Storage: Project ID
1298
1402
  # google_cloud_storage_s3_compatible_access_key - string - Google Cloud Storage: S3-compatible Access Key.
@@ -1304,7 +1408,8 @@ def configuration_file(id, params=None, options=None):
1304
1408
  # name - string - Internal name for your reference
1305
1409
  # one_drive_account_type - string - OneDrive: Either personal or business_other account types
1306
1410
  # 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.
1307
- # port - int64 - Port for remote server. Not needed for S3.
1411
+ # port - int64 - Port for remote server.
1412
+ # remote_server_credential_id - int64 - ID of Remote Server Credential, if applicable.
1308
1413
  # s3_bucket - string - S3 bucket name
1309
1414
  # s3_compatible_access_key - string - S3-compatible: Access Key
1310
1415
  # s3_compatible_bucket - string - S3-compatible: Bucket name
@@ -1315,7 +1420,7 @@ def configuration_file(id, params=None, options=None):
1315
1420
  # server_host_key - string - Remote server SSH Host Key. If provided, we will require that the server host key matches the provided key. Uses OpenSSH format similar to what would go into ~/.ssh/known_hosts
1316
1421
  # server_type - string - Remote server type.
1317
1422
  # ssl - string - Should we require SSL?
1318
- # username - string - Remote server username. Not needed for S3 buckets.
1423
+ # username - string - Remote server username.
1319
1424
  # wasabi_access_key - string - Wasabi: Access Key.
1320
1425
  # wasabi_bucket - string - Wasabi: Bucket name
1321
1426
  # wasabi_region - string - Wasabi: Region
@@ -1501,11 +1606,11 @@ def update(id, params=None, options=None):
1501
1606
  raise InvalidParameterError(
1502
1607
  "Bad parameter: backblaze_b2_s3_endpoint must be an str"
1503
1608
  )
1504
- if "buffer_uploads_always" in params and not isinstance(
1505
- params["buffer_uploads_always"], bool
1609
+ if "buffer_uploads" in params and not isinstance(
1610
+ params["buffer_uploads"], str
1506
1611
  ):
1507
1612
  raise InvalidParameterError(
1508
- "Bad parameter: buffer_uploads_always must be an bool"
1613
+ "Bad parameter: buffer_uploads must be an str"
1509
1614
  )
1510
1615
  if "cloudflare_access_key" in params and not isinstance(
1511
1616
  params["cloudflare_access_key"], str
@@ -1525,6 +1630,10 @@ def update(id, params=None, options=None):
1525
1630
  raise InvalidParameterError(
1526
1631
  "Bad parameter: cloudflare_endpoint must be an str"
1527
1632
  )
1633
+ if "description" in params and not isinstance(params["description"], str):
1634
+ raise InvalidParameterError(
1635
+ "Bad parameter: description must be an str"
1636
+ )
1528
1637
  if "dropbox_teams" in params and not isinstance(
1529
1638
  params["dropbox_teams"], bool
1530
1639
  ):
@@ -1567,6 +1676,12 @@ def update(id, params=None, options=None):
1567
1676
  raise InvalidParameterError(
1568
1677
  "Bad parameter: files_agent_version must be an str"
1569
1678
  )
1679
+ if "outbound_agent_id" in params and not isinstance(
1680
+ params["outbound_agent_id"], int
1681
+ ):
1682
+ raise InvalidParameterError(
1683
+ "Bad parameter: outbound_agent_id must be an int"
1684
+ )
1570
1685
  if "google_cloud_storage_bucket" in params and not isinstance(
1571
1686
  params["google_cloud_storage_bucket"], str
1572
1687
  ):
@@ -1630,6 +1745,12 @@ def update(id, params=None, options=None):
1630
1745
  )
1631
1746
  if "port" in params and not isinstance(params["port"], int):
1632
1747
  raise InvalidParameterError("Bad parameter: port must be an int")
1748
+ if "remote_server_credential_id" in params and not isinstance(
1749
+ params["remote_server_credential_id"], int
1750
+ ):
1751
+ raise InvalidParameterError(
1752
+ "Bad parameter: remote_server_credential_id must be an int"
1753
+ )
1633
1754
  if "s3_bucket" in params and not isinstance(params["s3_bucket"], str):
1634
1755
  raise InvalidParameterError("Bad parameter: s3_bucket must be an str")
1635
1756
  if "s3_compatible_access_key" in params and not isinstance(