Remote Servers
A RemoteServer is a specific type of Behavior called remote_server_sync.
Remote Servers can be either an FTP server, SFTP server, S3 bucket, Google Cloud Storage, Wasabi, Backblaze B2 Cloud Storage, Rackspace Cloud Files container, WebDAV, Box, Dropbox, OneDrive, SharePoint, Google Drive, Azure Blob Storage, or Files.com direct link.
Not every attribute will apply to every remote server.
FTP Servers require that you specify their hostname, port, username, password, and a value for ssl. Optionally, provide server_certificate.
SFTP Servers require that you specify their hostname, port, username, password or private_key, and a value for ssl. Optionally, provide server_certificate, private_key_passphrase.
S3 Buckets require that you specify their s3_bucket name, and s3_region. Optionally provide a aws_access_key, and aws_secret_key. If you don't provide credentials, you will need to use AWS to grant us access to your bucket.
S3-Compatible Buckets require that you specify s3_compatible_bucket, s3_compatible_endpoint, s3_compatible_access_key, and s3_compatible_secret_key. Optionally provide s3_compatible_virtual_hosted_style to use virtual-hosted-style URLs instead of path-style URLs.
Google Cloud Storage requires that you specify google_cloud_storage_bucket, and then one of the following sets of authentication credentials, selected by google_cloud_storage_authentication_method (defaults to json):
- for JSON authentication:
google_cloud_storage_project_id, andgoogle_cloud_storage_credentials_json - for HMAC (S3-Compatible) authentication:
google_cloud_storage_s3_compatible_access_key, andgoogle_cloud_storage_s3_compatible_secret_key - for OAuth authentication:
google_cloud_storage_oauth_scope, then follow theauth_setup_linkand login with Google
Wasabi requires wasabi_bucket, wasabi_region, wasabi_access_key, and wasabi_secret_key.
Backblaze B2 Cloud Storage backblaze_b2_bucket, backblaze_b2_s3_endpoint, backblaze_b2_application_key, and backblaze_b2_key_id. (Requires S3 Compatible API) See https://help.backblaze.com/hc/en-us/articles/360047425453
WebDAV Servers require that you specify their hostname, username, and password.
OneDrive follow the auth_setup_link and login with Microsoft.
SharePoint supports delegated authentication through auth_setup_link, or app-only authentication with sharepoint_tenant_id, sharepoint_client_id, and either sharepoint_client_secret or sharepoint_client_certificate. Set sharepoint_site_url to scope the remote server to a site granted through Microsoft Graph Sites.Selected; leave it blank to browse all sites.
Box follow the auth_setup_link and login with Box.
Dropbox specify if dropbox_teams then follow the auth_setup_link and login with Dropbox.
Google Drive follow the auth_setup_link and login with Google.
Azure Blob Storage azure_blob_storage_account, azure_blob_storage_container, azure_blob_storage_access_key, azure_blob_storage_sas_token, azure_blob_storage_dns_suffix
Azure File Storage azure_files_storage_account, azure_files_storage_access_key, azure_files_storage_share_name, azure_files_storage_dns_suffix
Filebase requires filebase_bucket, filebase_access_key, and filebase_secret_key.
Cloudflare requires cloudflare_bucket, cloudflare_access_key, cloudflare_secret_key and cloudflare_endpoint.
Linode requires linode_bucket, linode_access_key, linode_secret_key and linode_region.
List Remote Servers
SDK Method
remoteserver.List()
Return Object
[]*RemoteServer
Authorization Requirement
Requires a Site-Wide API key, or a User API key or session from a Site Administrator, a Workspace Administrator for the relevant workspace, or a user with an Integration-Centric file system layout managing their own Remote Servers.
RemoteServerListParams Fields
| Field | Description |
|---|---|
| UserId int64 | User ID. Provide a value of 0 to operate the current session's user. |
Additional Arguments
Show Remote Server
SDK Method
remoteserver.Find()
Return Object
RemoteServer
Authorization Requirement
Requires a Site-Wide API key, or a User API key or session from a Site Administrator, a Workspace Administrator for the relevant workspace, or a user with an Integration-Centric file system layout managing their own Remote Servers.
RemoteServerFindParams Fields
| Field | Description |
|---|---|
| Id int64 Required | Remote Server ID. |
Create Remote Server
SDK Method
remoteserver.Create()
Return Object
RemoteServer
Authorization Requirement
Requires a Site-Wide API key, or a User API key or session from a Site Administrator, a Workspace Administrator for the relevant workspace, or a user with an Integration-Centric file system layout managing their own Remote Servers.
RemoteServerCreateParams Fields
Parameter access is subject to this endpoint's authorization requirement and the caller's access to the affected resource. Site Administrator access also includes Site-Wide API keys.
| Field | Default | Description |
|---|---|---|
| UserId int64 | User ID. Provide a value of 0 to operate the current session's user. | |
| Password string | Password, if needed. | |
| PrivateKey string | Private key, if needed. | |
| PrivateKeyPassphrase string | Passphrase for private key if needed. | |
| ResetAuthentication boolean | Reset authenticated account? | |
| SharepointClientCertificate string | SharePoint: PEM-encoded certificate and unencrypted private key for app-only authentication. | |
| SharepointClientSecret string | SharePoint: Microsoft Entra application client secret for app-only authentication. | |
| SslCertificate string | SSL client certificate. | |
| AwsSecretKey string | AWS: secret key. | |
| AzureBlobStorageAccessKey string | Azure Blob Storage: Access Key | |
| AzureBlobStorageSasToken string | Azure Blob Storage: Shared Access Signature (SAS) token | |
| AzureFilesStorageAccessKey string | Azure File Storage: Access Key | |
| AzureFilesStorageSasToken string | Azure File Storage: Shared Access Signature (SAS) token | |
| BackblazeB2ApplicationKey string | Backblaze B2 Cloud Storage: applicationKey | |
| BackblazeB2KeyId string | Backblaze B2 Cloud Storage: keyID | |
| CloudflareSecretKey string | Cloudflare: Secret Key | |
| FilebaseSecretKey string | Filebase: Secret Key | |
| GoogleCloudStorageCredentialsJson string | Google Cloud Storage: JSON file that contains the private key. To generate see https://cloud.google.com/storage/docs/json_api/v1/how-tos/authorizing#APIKey | |
| GoogleCloudStorageS3CompatibleSecretKey string | Google Cloud Storage: S3-compatible secret key | |
| LinodeSecretKey string | Linode: Secret Key | |
| S3CompatibleSecretKey string | S3-compatible: Secret Key | |
| WasabiSecretKey string | Wasabi: Secret Key | |
| AllowRelativePaths boolean | false | Allow relative paths in SFTP. If true, paths will not be forced to be absolute, allowing operations relative to the user's home directory. |
| AwsAccessKey string | AWS Access Key. | |
| AzureBlobStorageAccount string | Azure Blob Storage: Account name | |
| AzureBlobStorageContainer string | Azure Blob Storage: Container name | |
| AzureBlobStorageDnsSuffix string | Azure Blob Storage: Custom DNS suffix | |
| AzureBlobStorageHierarchicalNamespace boolean | Azure Blob Storage: Does the storage account has hierarchical namespace feature enabled? | |
| AzureFilesStorageAccount string | Azure Files: Storage Account name | |
| AzureFilesStorageDnsSuffix string | Azure Files: Custom DNS suffix | |
| AzureFilesStorageShareName string | Azure Files: Storage Share name | |
| BackblazeB2Bucket string | Backblaze B2 Cloud Storage: Bucket name | |
| BackblazeB2S3Endpoint string | Backblaze B2 Cloud Storage: S3 Endpoint | |
| BufferUploads string | "auto" | 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. Possible values: auto, always, never |
| CloudflareAccessKey string | Cloudflare: Access Key. | |
| CloudflareBucket string | Cloudflare: Bucket name | |
| CloudflareEndpoint string | Cloudflare: endpoint | |
| Description string | Internal description for your reference | |
| DropboxTeams boolean | false | Dropbox: If true, list Team folders in root? |
| EnableDedicatedIps boolean | true | true if remote server only accepts connections from dedicated IPs |
| FilebaseAccessKey string | Filebase: Access Key. | |
| FilebaseBucket string | Filebase: Bucket name | |
| FilesApiKey string | Files.com direct link: API key used once to pair the remote server. | |
| FilesAgentPermissionSet 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.Possible values: read_write, read_only, write_only | |
| FilesAgentRoot 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. | |
| FilesAgentVersion 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. | |
| OutboundAgentId int64 | Route traffic to outbound on a files-agent Can be set by: Site Administrator; Workspace Administrator. | |
| CustomDomainId 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. Can be set by: Site Administrator; Workspace Administrator. | |
| GoogleCloudStorageAuthenticationMethod string | "json" | Google Cloud Storage: Authentication method. Can be json, hmac, or oauth. Possible values: json, hmac, oauth |
| GoogleCloudStorageBucket string | Google Cloud Storage: Bucket Name | |
| GoogleCloudStorageOauthScope 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. | |
| GoogleCloudStorageProjectId string | Google Cloud Storage: Project ID | |
| GoogleCloudStorageS3CompatibleAccessKey string | Google Cloud Storage: S3-compatible Access Key. | |
| 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. | |
| LinodeAccessKey string | Linode: Access Key | |
| LinodeBucket string | Linode: Bucket name | |
| LinodeRegion string | Linode: region | |
| MaxConnections int64 | 10 | Max number of parallel connections. Ignored for S3 connections (we will parallelize these as much as possible). |
| Name string | Internal name for your reference | |
| OneDriveAccountType string | OneDrive: Either personal or business_other account types Possible values: personal, business_other | |
| PinToSiteRegion boolean | false | 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. |
| 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. | |
| UploadStagingPath 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. | |
| RemoteServerCredentialId int64 | ID of Remote Server Credential, if applicable. Can be set by: Site Administrator; Workspace Administrator. | |
| S3AssumeRoleArn string | AWS IAM Role ARN for AssumeRole authentication. | |
| S3AssumeRoleDurationSeconds int64 | Session duration in seconds for AssumeRole authentication (900-43200). | |
| S3Bucket string | S3 bucket name | |
| S3CompatibleAccessKey string | S3-compatible: Access Key | |
| S3CompatibleBucket string | S3-compatible: Bucket name | |
| S3CompatibleEndpoint string | S3-compatible: endpoint | |
| S3CompatibleRegion string | S3-compatible: region | |
| S3CompatibleVirtualHostedStyle boolean | false | S3-compatible: If true, use virtual-hosted-style URLs instead of path-style URLs |
| S3Region string | S3 region | |
| ServerCertificate string | "require_match" | Remote server certificate Possible values: require_match, allow_any |
| ServerHostKey string | Pinned SSH host key or OpenSSH host certificate for SFTP. If omitted, Files.com detects and stores a host key, preferring plain keys over certificates. With server_certificate=require_match (the default), the server must present the exact pinned key or certificate and prove it holds the matching private key. A pinned certificate is compared in full, so renewal can require updating server_host_key even when its underlying key is unchanged. Files.com does not check certificate CA signatures, principals, or validity periods. Certificate expiration alone does not end the pin. Update server_host_key to replace the pin. | |
| ServerType string | Remote server type. Possible values: ftp, sftp, s3, google_cloud_storage, webdav, wasabi, backblaze_b2, one_drive, box, dropbox, google_drive, azure, sharepoint, s3_compatible, azure_files, files_agent, filebase, cloudflare, linode, files_com | |
| SharepointClientId string | SharePoint: Microsoft Entra application client ID for app-only authentication. | |
| SharepointSiteUrl string | SharePoint: Site URL to scope app-only authentication to a single site. Leave blank to browse all sites. | |
| SharepointTenantId string | SharePoint: Microsoft Entra tenant ID for app-only authentication. | |
| Ssl string | "if_available" | Should we require SSL? Possible values: if_available, require, require_implicit, never |
| Username string | Remote server username. | |
| WasabiAccessKey string | Wasabi: Access Key. | |
| WasabiBucket string | Wasabi: Bucket name | |
| WasabiRegion string | Wasabi: Region | |
| WorkspaceId int64 | 0 | Workspace ID (0 for default workspace) |
Update Remote Server
SDK Method
remoteserver.Update()
Return Object
RemoteServer
Authorization Requirement
Requires a Site-Wide API key, or a User API key or session from a Site Administrator, a Workspace Administrator for the relevant workspace, or a user with an Integration-Centric file system layout managing their own Remote Servers.
RemoteServerUpdateParams Fields
Parameter access is subject to this endpoint's authorization requirement and the caller's access to the affected resource. Site Administrator access also includes Site-Wide API keys.
| Field | Description |
|---|---|
| Id int64 Required | Remote Server ID. |
| Password string | Password, if needed. |
| PrivateKey string | Private key, if needed. |
| PrivateKeyPassphrase string | Passphrase for private key if needed. |
| ResetAuthentication boolean | Reset authenticated account? |
| SharepointClientCertificate string | SharePoint: PEM-encoded certificate and unencrypted private key for app-only authentication. |
| SharepointClientSecret string | SharePoint: Microsoft Entra application client secret for app-only authentication. |
| SslCertificate string | SSL client certificate. |
| AwsSecretKey string | AWS: secret key. |
| AzureBlobStorageAccessKey string | Azure Blob Storage: Access Key |
| AzureBlobStorageSasToken string | Azure Blob Storage: Shared Access Signature (SAS) token |
| AzureFilesStorageAccessKey string | Azure File Storage: Access Key |
| AzureFilesStorageSasToken string | Azure File Storage: Shared Access Signature (SAS) token |
| BackblazeB2ApplicationKey string | Backblaze B2 Cloud Storage: applicationKey |
| BackblazeB2KeyId string | Backblaze B2 Cloud Storage: keyID |
| CloudflareSecretKey string | Cloudflare: Secret Key |
| FilebaseSecretKey string | Filebase: Secret Key |
| GoogleCloudStorageCredentialsJson string | Google Cloud Storage: JSON file that contains the private key. To generate see https://cloud.google.com/storage/docs/json_api/v1/how-tos/authorizing#APIKey |
| GoogleCloudStorageS3CompatibleSecretKey string | Google Cloud Storage: S3-compatible secret key |
| LinodeSecretKey string | Linode: Secret Key |
| S3CompatibleSecretKey string | S3-compatible: Secret Key |
| WasabiSecretKey string | Wasabi: Secret Key |
| AllowRelativePaths 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. |
| AwsAccessKey string | AWS Access Key. |
| AzureBlobStorageAccount string | Azure Blob Storage: Account name |
| AzureBlobStorageContainer string | Azure Blob Storage: Container name |
| AzureBlobStorageDnsSuffix string | Azure Blob Storage: Custom DNS suffix |
| AzureBlobStorageHierarchicalNamespace boolean | Azure Blob Storage: Does the storage account has hierarchical namespace feature enabled? |
| AzureFilesStorageAccount string | Azure Files: Storage Account name |
| AzureFilesStorageDnsSuffix string | Azure Files: Custom DNS suffix |
| AzureFilesStorageShareName string | Azure Files: Storage Share name |
| BackblazeB2Bucket string | Backblaze B2 Cloud Storage: Bucket name |
| BackblazeB2S3Endpoint string | Backblaze B2 Cloud Storage: S3 Endpoint |
| BufferUploads 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. Possible values: auto, always, never |
| CloudflareAccessKey string | Cloudflare: Access Key. |
| CloudflareBucket string | Cloudflare: Bucket name |
| CloudflareEndpoint string | Cloudflare: endpoint |
| Description string | Internal description for your reference |
| DropboxTeams boolean | Dropbox: If true, list Team folders in root? |
| EnableDedicatedIps boolean | true if remote server only accepts connections from dedicated IPs |
| FilebaseAccessKey string | Filebase: Access Key. |
| FilebaseBucket string | Filebase: Bucket name |
| FilesApiKey string | Files.com direct link: API key used once to pair the remote server. |
| FilesAgentPermissionSet 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.Possible values: read_write, read_only, write_only |
| FilesAgentRoot 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. |
| FilesAgentVersion 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. |
| OutboundAgentId int64 | Route traffic to outbound on a files-agent Can be set by: Site Administrator; Workspace Administrator. |
| CustomDomainId 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. Can be set by: Site Administrator; Workspace Administrator. |
| GoogleCloudStorageAuthenticationMethod string | Google Cloud Storage: Authentication method. Can be json, hmac, or oauth. Possible values: json, hmac, oauth |
| GoogleCloudStorageBucket string | Google Cloud Storage: Bucket Name |
| GoogleCloudStorageOauthScope 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. |
| GoogleCloudStorageProjectId string | Google Cloud Storage: Project ID |
| GoogleCloudStorageS3CompatibleAccessKey string | Google Cloud Storage: S3-compatible Access Key. |
| 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. |
| LinodeAccessKey string | Linode: Access Key |
| LinodeBucket string | Linode: Bucket name |
| LinodeRegion string | Linode: region |
| MaxConnections int64 | Max number of parallel connections. Ignored for S3 connections (we will parallelize these as much as possible). |
| Name string | Internal name for your reference |
| OneDriveAccountType string | OneDrive: Either personal or business_other account types Possible values: personal, business_other |
| PinToSiteRegion 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. |
| 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. |
| UploadStagingPath 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. |
| RemoteServerCredentialId int64 | ID of Remote Server Credential, if applicable. Can be set by: Site Administrator; Workspace Administrator. |
| S3AssumeRoleArn string | AWS IAM Role ARN for AssumeRole authentication. |
| S3AssumeRoleDurationSeconds int64 | Session duration in seconds for AssumeRole authentication (900-43200). |
| S3Bucket string | S3 bucket name |
| S3CompatibleAccessKey string | S3-compatible: Access Key |
| S3CompatibleBucket string | S3-compatible: Bucket name |
| S3CompatibleEndpoint string | S3-compatible: endpoint |
| S3CompatibleRegion string | S3-compatible: region |
| S3CompatibleVirtualHostedStyle boolean | S3-compatible: If true, use virtual-hosted-style URLs instead of path-style URLs |
| S3Region string | S3 region |
| ServerCertificate string | Remote server certificate Possible values: require_match, allow_any |
| ServerHostKey string | Pinned SSH host key or OpenSSH host certificate for SFTP. If omitted, Files.com detects and stores a host key, preferring plain keys over certificates. With server_certificate=require_match (the default), the server must present the exact pinned key or certificate and prove it holds the matching private key. A pinned certificate is compared in full, so renewal can require updating server_host_key even when its underlying key is unchanged. Files.com does not check certificate CA signatures, principals, or validity periods. Certificate expiration alone does not end the pin. Update server_host_key to replace the pin. |
| ServerType string | Remote server type. Possible values: ftp, sftp, s3, google_cloud_storage, webdav, wasabi, backblaze_b2, one_drive, box, dropbox, google_drive, azure, sharepoint, s3_compatible, azure_files, files_agent, filebase, cloudflare, linode, files_com |
| SharepointClientId string | SharePoint: Microsoft Entra application client ID for app-only authentication. |
| SharepointSiteUrl string | SharePoint: Site URL to scope app-only authentication to a single site. Leave blank to browse all sites. |
| SharepointTenantId string | SharePoint: Microsoft Entra tenant ID for app-only authentication. |
| Ssl string | Should we require SSL? Possible values: if_available, require, require_implicit, never |
| Username string | Remote server username. |
| WasabiAccessKey string | Wasabi: Access Key. |
| WasabiBucket string | Wasabi: Bucket name |
| WasabiRegion string | Wasabi: Region |
Delete Remote Server
SDK Method
remoteserver.Delete()
Return Object
No return value.
Authorization Requirement
Requires a Site-Wide API key, or a User API key or session from a Site Administrator, a Workspace Administrator for the relevant workspace, or a user with an Integration-Centric file system layout managing their own Remote Servers.
RemoteServerDeleteParams Fields
| Field | Description |
|---|---|
| Id int64 Required | Remote Server ID. |
The RemoteServer Object
Some of the methods above return a RemoteServer object. The attributes of this object are listed below.
| Attribute | Description |
|---|---|
| Id int64 | Remote Server ID |
| Disabled boolean | If true, this Remote Server is disabled. Updating it clears this flag, except for retired Agent v1 records, which remain disabled. |
| AuthenticationMethod string | Type of authentication method to use |
| 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. |
| RemoteHomePath string | Initial home folder on remote server |
| UploadStagingPath 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. |
| AllowRelativePaths 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. |
| Name string | Internal name for your reference |
| Description string | Internal description for your reference |
| 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. |
| BufferUploads 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. Possible values: auto, always, never |
| MaxConnections int64 | Max number of parallel connections. Ignored for S3 connections (we will parallelize these as much as possible). |
| PinToSiteRegion 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. |
| PinnedRegion string | If set, all communications with this remote server are made through the provided region. |
| RemoteServerCredentialId int64 | ID of Remote Server Credential, if applicable. |
| S3Bucket string | S3 bucket name |
| S3Region string | S3 region |
| AwsAccessKey string | AWS Access Key. |
| S3AssumeRoleArn string | AWS IAM Role ARN for AssumeRole authentication. |
| S3AssumeRoleDurationSeconds int64 | Session duration in seconds for AssumeRole authentication (900-43200). |
| S3AssumeRoleExternalId string | External ID for AssumeRole authentication. |
| ServerCertificate string | Remote server certificate Possible values: require_match, allow_any |
| ServerHostKey string | Pinned SSH host key or OpenSSH host certificate for SFTP. If omitted, Files.com detects and stores a host key, preferring plain keys over certificates. With server_certificate=require_match (the default), the server must present the exact pinned key or certificate and prove it holds the matching private key. A pinned certificate is compared in full, so renewal can require updating server_host_key even when its underlying key is unchanged. Files.com does not check certificate CA signatures, principals, or validity periods. Certificate expiration alone does not end the pin. Update server_host_key to replace the pin. |
| ServerType string | Remote server type. Possible values: ftp, sftp, s3, google_cloud_storage, webdav, wasabi, backblaze_b2, one_drive, box, dropbox, google_drive, azure, sharepoint, s3_compatible, azure_files, files_agent, filebase, cloudflare, linode, files_com |
| WorkspaceId int64 | Workspace ID (0 for default workspace) |
| Ssl string | Should we require SSL? Possible values: if_available, require, require_implicit, never |
| Username string | Remote server username. |
| GoogleCloudStorageBucket string | Google Cloud Storage: Bucket Name |
| GoogleCloudStorageAuthenticationMethod string | Google Cloud Storage: Authentication method. Can be json, hmac, or oauth. Possible values: json, hmac, oauth |
| GoogleCloudStorageOauthScope 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. |
| GoogleCloudStorageProjectId string | Google Cloud Storage: Project ID |
| GoogleCloudStorageS3CompatibleAccessKey string | Google Cloud Storage: S3-compatible Access Key. |
| BackblazeB2S3Endpoint string | Backblaze B2 Cloud Storage: S3 Endpoint |
| BackblazeB2Bucket string | Backblaze B2 Cloud Storage: Bucket name |
| WasabiBucket string | Wasabi: Bucket name |
| WasabiRegion string | Wasabi: Region |
| WasabiAccessKey string | Wasabi: Access Key. |
| AuthStatus string | Either in_setup or completePossible values: not_applicable, in_setup, complete, reauthenticate |
| AuthAccountName string | Describes the authorized account |
| OneDriveAccountType string | OneDrive: Either personal or business_other account types Possible values: personal, business_other |
| SharepointTenantId string | SharePoint: Microsoft Entra tenant ID for app-only authentication. |
| SharepointClientId string | SharePoint: Microsoft Entra application client ID for app-only authentication. |
| SharepointAppAuthentication boolean | SharePoint: If true, this remote server uses Microsoft Entra app-only authentication. |
| SharepointAppCredentialType string | SharePoint: App-only credential type. Either secret or certificate. |
| SharepointSiteUrl string | SharePoint: Site URL to scope app-only authentication to a single site. Leave blank to browse all sites. |
| AzureBlobStorageAccount string | Azure Blob Storage: Account name |
| AzureBlobStorageContainer string | Azure Blob Storage: Container name |
| AzureBlobStorageHierarchicalNamespace boolean | Azure Blob Storage: Does the storage account has hierarchical namespace feature enabled? |
| AzureBlobStorageDnsSuffix string | Azure Blob Storage: Custom DNS suffix |
| AzureFilesStorageAccount string | Azure Files: Storage Account name |
| AzureFilesStorageShareName string | Azure Files: Storage Share name |
| AzureFilesStorageDnsSuffix string | Azure Files: Custom DNS suffix |
| S3CompatibleBucket string | S3-compatible: Bucket name |
| S3CompatibleEndpoint string | S3-compatible: endpoint |
| S3CompatibleRegion string | S3-compatible: region |
| S3CompatibleVirtualHostedStyle boolean | S3-compatible: If true, use virtual-hosted-style URLs instead of path-style URLs |
| S3CompatibleAccessKey string | S3-compatible: Access Key |
| EnableDedicatedIps boolean | true if remote server only accepts connections from dedicated IPs |
| CustomDomainId 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. |
| OutboundIpAddresses 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. |
| FilesAgentPermissionSet 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.Possible values: read_write, read_only, write_only |
| FilesAgentRoot 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. |
| FilesAgentVersion 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. |
| FilesAgentUpToDate boolean | If true, the Files Agent is up to date. |
| FilesAgentLatestVersion string | Latest available Files Agent version |
| FilesAgentSupportsPushUpdates boolean | Files Agent supports receiving push updates |
| DirectTransferAvailable boolean | Whether the Files Agent Proxy recently validated a direct transfer connection. true means a direct connection was recently validated (actual availability can vary by client network), false means direct transfers are enabled but not currently available, and null means direct transfers are disabled or unsupported. Only provided for a connected Files Agent when showing a single Remote Server. |
| OutboundAgentId int64 | Route traffic to outbound on a files-agent |
| FilebaseBucket string | Filebase: Bucket name |
| FilebaseAccessKey string | Filebase: Access Key. |
| FilesApiKeyPrefix string | Files.com direct link: paired API key prefix. |
| CloudflareBucket string | Cloudflare: Bucket name |
| CloudflareAccessKey string | Cloudflare: Access Key. |
| CloudflareEndpoint string | Cloudflare: endpoint |
| DropboxTeams boolean | Dropbox: If true, list Team folders in root? |
| LinodeBucket string | Linode: Bucket name |
| LinodeAccessKey string | Linode: Access Key |
| LinodeRegion string | Linode: region |
| SupportsVersioning boolean | If true, this remote server supports file versioning. This value is determined automatically by Files.com. |