Skip to main content

Create FTP Account

Creates a new FTP account (storage account) within your ftpGrid association.

The created account can immediately be used with:

  • FTP
  • FTPS
  • SFTP
  • SCP

depending on the protocols enabled for your plan and configuration.

Required Scope​

ftpaccount.create

Endpoint​

POST /ftpaccounts/create

Example Request (HTTPie)​

http POST https://api.ftpgrid.com/ftpaccounts/create \
Authorization:"Bearer YOUR_TOKEN" \
Username="camera01" \
Password="StrongPassword123!" \
AccessRights="RW" \
Chroot="/uploads" \
Description="Warehouse camera"

Raw JSON Body​

{
"Username": "camera01",
"Password": "StrongPassword123!",
"AccessRights": "RW",
"Chroot": "/uploads",
"Description": "Warehouse camera"
}

Request Fields​

FieldTypeRequiredDescription
UsernamestringYesUsername used for FTP/SFTP login
PasswordstringNoPassword for authentication
AccessRightsstringYesRO or RW
ChrootstringYesRoot directory for the account
DescriptionstringNoInternal description
RsaKeystringNoSSH public key for SFTP authentication
EnabledbooleanNoEnable or disable the account

Supported SSH Key Types​

ftpGrid currently supports the following SSH public key formats:

  • ssh-ed25519 (recommended)
  • ssh-rsa
  • ecdsa-sha2-nistp256

Example ED25519 key:

ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAI...

Example RSA key:

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQ...

We generally recommend ssh-ed25519 for modern integrations due to better security and performance.

Some legacy or embedded devices may only support ssh-rsa.

Authentication​

Accounts support:

  • username/password authentication
  • SSH public key authentication
  • or both simultaneously

When using SSH authentication, provide a valid public key in OpenSSH format.

Example:

ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAI...

Example Response​

{
"id": 1234,
"username": "camera01",
"accessRights": "RW",
"chroot": "/uploads",
"enabled": true
}

Notes​

  • Usernames must be unique within the association
  • Chroot paths must use Unix-style paths
  • Windows path separators (\) are not supported
  • Passwords should be at least 12 characters for production use
  • Upon create the password field is returned for confirmantion, but never again
  • FTP accounts are isolated to their configured chroot directory