Change FTP user of a web hosting package

Change password, directory, disk space, status, end or name of one FTP user.

WWriteIdempotentbetaNeeds service_webhosting
Tool
manitu_webhosting_web_ftpuser_seton https://mcp.manitu.de/mcp
POST
/v1/webhosting/web/ftpuser/seton https://api.manitu.de
Try it
Changes the account. Agents say what will happen and wait for an explicit yes before calling it.
readOnlyHint falsedestructiveHint falseidempotentHint trueopenWorldHint false

Changes an FTP user of a web hosting package of the manitu customer account this connection works in, by site_id and username from manitu_webhosting_web_ftpuser_list. Only the fields given change. A new password only as password_same_as (the password of another FTP user of the package) or password_hash (bcrypt) - NEVER ask for or pass a plaintext password, it is refused over this connection; otherwise the customer sets it in the customer panel. status inactive switches it off without deleting it; expires_at null removes the end. A new password or inactive ends its open sessions. Refused with a conflict when the package cannot be changed now (not_configurable). Tell the customer what will change and ask for an explicit yes first.

site_idinteger | stringrequired

The site_id from manitu_webhosting_list - never guess one.

pattern ^[1-9][0-9]*$min 1
usernamestringrequired

The user name of the FTP user (ftp<number>) from manitu_webhosting_web_ftpuser_list - never guess one.

max length 32pattern ^ftp[0-9]+$
quota_mbinteger | null

Disk space in MB the files it owns may take, at most the package's; null or 0: no limit of its own.

min 0
statusstring

active, or inactive to switch it off without deleting it. Default when created: active.

One of active inactive
expires_atstring | null

When the FTP user expires - it works up to the next midnight (Europe/Berlin) at or after the moment given, which the answer shows. Not in the past. From this moment on it can no longer be used (the moment itself is excluded); null: without end.

Format date-time
descriptionstring | null

The customer's description, for his own overview - e.g. who uses it. Left out: unchanged (set) or none (create); null or empty: none.

max length 1024
passwordstringwrite-only

The password of the FTP user - customer panel and REST only, refused over MCP: never ask for a password in a chat. Kept as a hash only, never shown again. Only one of password, password_hash, password_same_as. 12 to 72 printable ASCII characters, no space at the start or the end, not listed as leaked (pwnedpasswords.com).

min length 12max length 72pattern ^[\x20-\x7E]+$
password_hashstringwrite-only

The password as a hash made by the customer - instead of password. A hash can be attacked offline: only for a strong password. Taken: bcrypt ("$2b$" or "$2y$", cost 10 or more).

max length 128pattern ^\$
password_same_asstring

The user name of the FTP user (ftp<number>) from manitu_webhosting_web_ftpuser_list - never guess one.

max length 32pattern ^ftp[0-9]+$
home_dirstring

The directory it starts in and cannot leave, relative to the package - "/" for the whole package, e.g. "/web/shop". It must exist. Default when created: "/".

min length 1max length 1024
usernamestringrequired

The user name to log in with (ftp<number>) - what the other FTP user tools take.

descriptionstring | nullrequired

What the customer wrote about it (his description), null if nothing - not its name or user name.

statusstringrequired

active, or inactive (switched off by the customer, kept for later).

One of active inactive
is_usable_nowbooleanrequired

It can log in right now: active and not expired.

expires_atstring | nullrequired

When the FTP user expires. From this moment on it can no longer be used (the moment itself is excluded); null: without end.

Format date-time
home_dirstring | nullrequired

The directory it starts in and cannot leave, relative to the package (/ = the whole package).

quota_mbinteger | nullrequired

Disk space in MB the files it owns may take; null: no limit of its own (the package's applies).

password_change_recommendedbooleanrequired

The password is kept in an outdated form - the customer should set a new one.

created_atstring | nullrequired

When it was created.

Format date-time
last_login_atstring | nullrequired

Its last login, null if never.

Format date-time
connectionobjectrequired
connection.hoststring | nullrequired

The host to connect to - the web server of the package.

connection.usernamestringrequired

The user name to log in with.

connection.method_listarray of objectrequired

The ways to connect, the one to prefer first. SFTP is on port 23, NOT 22; implicit FTPS is not offered; plain FTP (unencrypted) only if nothing else works.

connection.method_list[].protocolstringrequired

sftp (SSH file transfer), ftps_explicit (FTP with explicit TLS, AUTH TLS), ftp (unencrypted).

One of sftp ftps_explicit ftp
connection.method_list[].portintegerrequired
connection.method_list[].is_encryptedbooleanrequired
connection.method_list[].is_recommendedbooleanrequired
connection.web_ftp_urlstringrequired

FTP in the browser, with the same user name and password.

One of X-API-Key, Authorization: Bearer … - never more than one in a request. More

site_idinteger | stringrequired

The site_id from manitu_webhosting_list - never guess one.

pattern ^[1-9][0-9]*$min 1
usernamestringrequired

The user name of the FTP user (ftp<number>) from manitu_webhosting_web_ftpuser_list - never guess one.

max length 32pattern ^ftp[0-9]+$
quota_mbinteger | null

Disk space in MB the files it owns may take, at most the package's; null or 0: no limit of its own.

min 0
statusstring

active, or inactive to switch it off without deleting it. Default when created: active.

One of active inactive
expires_atstring | null

When the FTP user expires - it works up to the next midnight (Europe/Berlin) at or after the moment given, which the answer shows. Not in the past. From this moment on it can no longer be used (the moment itself is excluded); null: without end.

Format date-time
descriptionstring | null

The customer's description, for his own overview - e.g. who uses it. Left out: unchanged (set) or none (create); null or empty: none.

max length 1024
passwordstringwrite-only

The password of the FTP user - customer panel and REST only, refused over MCP: never ask for a password in a chat. Kept as a hash only, never shown again. Only one of password, password_hash, password_same_as. 12 to 72 printable ASCII characters, no space at the start or the end, not listed as leaked (pwnedpasswords.com).

min length 12max length 72pattern ^[\x20-\x7E]+$
password_hashstringwrite-only

The password as a hash made by the customer - instead of password. A hash can be attacked offline: only for a strong password. Taken: bcrypt ("$2b$" or "$2y$", cost 10 or more).

max length 128pattern ^\$
password_same_asstring

The user name of the FTP user (ftp<number>) from manitu_webhosting_web_ftpuser_list - never guess one.

max length 32pattern ^ftp[0-9]+$
home_dirstring

The directory it starts in and cannot leave, relative to the package - "/" for the whole package, e.g. "/web/shop". It must exist. Default when created: "/".

min length 1max length 1024
usernamestringrequired

The user name to log in with (ftp<number>) - what the other FTP user tools take.

descriptionstring | nullrequired

What the customer wrote about it (his description), null if nothing - not its name or user name.

statusstringrequired

active, or inactive (switched off by the customer, kept for later).

One of active inactive
is_usable_nowbooleanrequired

It can log in right now: active and not expired.

expires_atstring | nullrequired

When the FTP user expires. From this moment on it can no longer be used (the moment itself is excluded); null: without end.

Format date-time
home_dirstring | nullrequired

The directory it starts in and cannot leave, relative to the package (/ = the whole package).

quota_mbinteger | nullrequired

Disk space in MB the files it owns may take; null: no limit of its own (the package's applies).

password_change_recommendedbooleanrequired

The password is kept in an outdated form - the customer should set a new one.

created_atstring | nullrequired

When it was created.

Format date-time
last_login_atstring | nullrequired

Its last login, null if never.

Format date-time
connectionobjectrequired
connection.hoststring | nullrequired

The host to connect to - the web server of the package.

connection.usernamestringrequired

The user name to log in with.

connection.method_listarray of objectrequired

The ways to connect, the one to prefer first. SFTP is on port 23, NOT 22; implicit FTPS is not offered; plain FTP (unencrypted) only if nothing else works.

connection.method_list[].protocolstringrequired

sftp (SSH file transfer), ftps_explicit (FTP with explicit TLS, AUTH TLS), ftp (unencrypted).

One of sftp ftps_explicit ftp
connection.method_list[].portintegerrequired
connection.method_list[].is_encryptedbooleanrequired
connection.method_list[].is_recommendedbooleanrequired
connection.web_ftp_urlstringrequired

FTP in the browser, with the same user name and password.

200Success.400The request does not match the declared input schema.401No credential was presented, or it was not recognised.403The credential is not permitted to use this operation.500The server failed. Nothing about the request was wrong. Whether a change took effect is not known - check before trying it again.503The channel this operation forwards through is unavailable.