Change settings of a web hosting package
Description, PHP version, IP logging, mail TLS and sender policy of a web hosting package.
manitu_webhosting_set on https://mcp.manitu.de/mcpAnnotations as tools/list sends them
Description for the model
Changes settings of a web hosting package of the manitu customer account this connection works in, by its site_id from manitu_webhosting_list - the same names manitu_webhosting_get shows: description; web.php_version (one of web.php.version_list, null: the package's default), web.log_ip_address_type; mail.tls_policy, mail.sender_policy. Only the fields given change. Read the package first with manitu_webhosting_get. A new PHP version can break the web pages (old software); tls_policy encrypt makes mail from servers without TLS be refused; a stricter sender_policy makes mail programs fail that send with addresses of other mailboxes - say so and ask for an explicit yes first. Refused per field for a part the package does not have (part_not_in_package), a PHP version not offered (php_version_not_available); with a conflict when the package cannot be changed now (not_configurable).
Provide at least one of: description, web, mail.
Arguments
site_idinteger | stringrequiredThe site_id from manitu_webhosting_list - never guess one.
descriptionstring | nullThe customer's description of the package. Left out: unchanged (set) or none (create); null or empty: none.
webobjectweb.php_versionstring | nullThe PHP version for the web pages, e.g. "php8.3" - one of web.php.version_list of manitu_webhosting_get. null: back to the package's default.
web.log_ip_address_typestringHow the web server logs visitors' IP addresses: common - in full; anonymous-full - anonymised (the default, relevant for the GDPR).
mailobjectmail.tls_policystringEncryption between mail servers for all domains of the package: may - used when the other side offers it (the default); encrypt - required, mail without it is refused.
mail.sender_policystringWho may send over manitu's mail servers with a sender address of the package's domains: none - any authenticated login, any address; same_site - a login of this package (the default); same_mailbox - only the mailbox the address belongs to (its address or an alias). Applies to automatic replies as well.
Result structuredContent, checked against the schema
site_idintegerrequiredThe web hosting package - what its routes take. Globally unique; on the servers its home is /home/sites/site<site_id>.
service_typestringrequiredThe kind of service - its own data is under the key of that name.
descriptionstring | nullrequiredWhat the customer wrote about it (his description), null if nothing - not its name or user name.
statusstring | nullrequiredThe state of the contract, e.g. active, expiring (cancelled, runs out at paid_until).
is_configurablebooleanrequiredIt can be changed right now - false e.g. while suspended or being moved.
planstring | nullrequiredThe plan, e.g. "Webhosting M".
paid_untilstring | nullrequiredPaid up to this day.
created_atstring | nullrequiredwebhostingobjectrequiredwebhosting.package_namestring | nullrequiredThe name of the package on contract and invoice - a domain name, but not a special one: all domains of a web hosting package work alike.
webhosting.site_namestring | nullrequiredsite<site_id> - how the package is named on the servers (paths, SFTP).
webhosting.is_space_sharedbooleanrequiredWeb and mail share one disk space - their quota counts the same use.
webhosting.migration_runningbooleanrequiredThe package is being moved to another server right now - it cannot be changed meanwhile.
webhosting.webobject | nullrequiredThe web part - null if the package has none.
webhosting.web.serverstring | nullrequiredThe web server the package runs on (host name) - what SSH and SFTP/FTP connect to. Technical: mention it only for SSH/FTP or when asked.
webhosting.web.root_dirstring | nullrequiredThe home of the web part on the server.
webhosting.web.htdocs_dirstring | nullrequiredWhere the web pages are, relative to root_dir.
webhosting.web.ip_addressobjectrequiredwebhosting.web.ip_address.ipv4object | nullrequiredwebhosting.web.ip_address.ipv4.addressstringrequiredwebhosting.web.ip_address.ipv4.is_dedicatedboolean | nullrequiredThe package's own address, not shared with others.
webhosting.web.ip_address.ipv6object | nullrequiredwebhosting.web.ip_address.ipv6.addressstringrequiredwebhosting.web.ip_address.ipv6.is_dedicatedboolean | nullrequiredThe package's own address, not shared with others.
webhosting.web.phpobject | nullrequirednull if the package has no PHP.
webhosting.web.php.versionstring | nullrequiredThe PHP version in use, e.g. php8.2.
webhosting.web.php.version_sourcestring | nullrequiredcustomer: the customer chose it; package: the default the package was ordered (or last upgraded) with; manitu: manitu's general default.
webhosting.web.php.version_listarray of stringrequiredThe versions the customer can choose.
webhosting.web.php.memory_limitstring | nullrequirede.g. 512M
webhosting.web.php.max_execution_time_secondsinteger | nullrequiredwebhosting.web.php.post_max_sizestring | nullrequiredwebhosting.web.php.upload_max_filesizestring | nullrequiredwebhosting.web.log_ip_address_typestring | nullrequiredHow the web server logs visitors' IP addresses (/logs/web.log, /logs/web.err.log): common - in full; anonymous-full - anonymised (relevant for the GDPR). Other logs are never anonymised.
webhosting.web.quotaobjectrequiredDisk space in MB and files, used and allowed - as last measured.
webhosting.web.quota.space_used_mbinteger | nullrequiredwebhosting.web.quota.space_max_mbinteger | nullrequiredwebhosting.web.quota.files_usedinteger | nullrequiredwebhosting.web.quota.files_maxinteger | nullrequiredwebhosting.web.quota.is_warningbooleanrequired75 % or more of a limit used.
webhosting.web.quota.is_exceededbooleanrequiredA limit reached - nothing more can be stored.
webhosting.web.quota.measured_atstring | nullrequiredwebhosting.web.limitobjectrequiredHow many the package allows - how many are in use, the routes on them say.
webhosting.web.limit.database_count_maxinteger | nullrequiredwebhosting.web.limit.ftp_user_count_maxinteger | nullrequiredwebhosting.web.limit.ssh_user_count_maxinteger | nullrequiredwebhosting.web.limit.cronjob_count_maxinteger | nullrequiredwebhosting.web.limit.websitebuilder_count_maxinteger | nullrequiredwebhosting.web.limit.subdomain_count_maxinteger | nullrequiredwebhosting.web.feature_listarray of stringrequiredWhat the web part offers, e.g. php, cgi, ssi, application_installation, websitebuilder.
webhosting.mailobject | nullrequiredThe mail part - null if the package has none.
webhosting.mail.mx_serverstring | nullrequiredThe server that receives the package's e-mail - the MX target in DNS. NOT the server for mail programs (IMAP, POP3, SMTP): never give it to the customer as his mail server; mention it only when asked about MX.
webhosting.mail.tls_policystring | nullrequiredEncryption between mail servers for the package's domains: may - used when the other side offers it; encrypt - required, mail without it is refused. Applies to all domains of the package alike.
webhosting.mail.sender_policystring | nullrequiredWho may send over manitu's mail servers with a sender address of the package's domains: none - any authenticated login, any address; same_site - a login of this package; same_mailbox - only the mailbox the address belongs to. Applies to all domains of the package alike.
webhosting.mail.quotaobjectrequiredDisk space in MB and files, used and allowed - as last measured.
webhosting.mail.quota.space_used_mbinteger | nullrequiredwebhosting.mail.quota.space_max_mbinteger | nullrequiredwebhosting.mail.quota.files_usedinteger | nullrequiredwebhosting.mail.quota.files_maxinteger | nullrequiredwebhosting.mail.quota.is_warningbooleanrequired75 % or more of a limit used.
webhosting.mail.quota.is_exceededbooleanrequiredA limit reached - nothing more can be stored.
webhosting.mail.quota.measured_atstring | nullrequiredwebhosting.mail.limitobjectrequiredHow many the package allows - how many are in use, the routes on them say.
webhosting.mail.limit.mailbox_count_maxinteger | nullrequiredwebhosting.mail.limit.mailing_list_count_maxinteger | nullrequiredwebhosting.mail.feature_listarray of stringrequiredWhat the mail part offers, e.g. rspamd (spam filter), sieve (filter rules).
Authentication
One of X-API-Key, Authorization: Bearer … - never more than one in a request. More
Request body JSON; unknown fields are refused
site_idinteger | stringrequiredThe site_id from manitu_webhosting_list - never guess one.
descriptionstring | nullThe customer's description of the package. Left out: unchanged (set) or none (create); null or empty: none.
webobjectweb.php_versionstring | nullThe PHP version for the web pages, e.g. "php8.3" - one of web.php.version_list of manitu_webhosting_get. null: back to the package's default.
web.log_ip_address_typestringHow the web server logs visitors' IP addresses: common - in full; anonymous-full - anonymised (the default, relevant for the GDPR).
mailobjectmail.tls_policystringEncryption between mail servers for all domains of the package: may - used when the other side offers it (the default); encrypt - required, mail without it is refused.
mail.sender_policystringWho may send over manitu's mail servers with a sender address of the package's domains: none - any authenticated login, any address; same_site - a login of this package (the default); same_mailbox - only the mailbox the address belongs to (its address or an alias). Applies to automatic replies as well.
Response in data; the rest of the body as on every call
site_idintegerrequiredThe web hosting package - what its routes take. Globally unique; on the servers its home is /home/sites/site<site_id>.
service_typestringrequiredThe kind of service - its own data is under the key of that name.
descriptionstring | nullrequiredWhat the customer wrote about it (his description), null if nothing - not its name or user name.
statusstring | nullrequiredThe state of the contract, e.g. active, expiring (cancelled, runs out at paid_until).
is_configurablebooleanrequiredIt can be changed right now - false e.g. while suspended or being moved.
planstring | nullrequiredThe plan, e.g. "Webhosting M".
paid_untilstring | nullrequiredPaid up to this day.
created_atstring | nullrequiredwebhostingobjectrequiredwebhosting.package_namestring | nullrequiredThe name of the package on contract and invoice - a domain name, but not a special one: all domains of a web hosting package work alike.
webhosting.site_namestring | nullrequiredsite<site_id> - how the package is named on the servers (paths, SFTP).
webhosting.is_space_sharedbooleanrequiredWeb and mail share one disk space - their quota counts the same use.
webhosting.migration_runningbooleanrequiredThe package is being moved to another server right now - it cannot be changed meanwhile.
webhosting.webobject | nullrequiredThe web part - null if the package has none.
webhosting.web.serverstring | nullrequiredThe web server the package runs on (host name) - what SSH and SFTP/FTP connect to. Technical: mention it only for SSH/FTP or when asked.
webhosting.web.root_dirstring | nullrequiredThe home of the web part on the server.
webhosting.web.htdocs_dirstring | nullrequiredWhere the web pages are, relative to root_dir.
webhosting.web.ip_addressobjectrequiredwebhosting.web.ip_address.ipv4object | nullrequiredwebhosting.web.ip_address.ipv4.addressstringrequiredwebhosting.web.ip_address.ipv4.is_dedicatedboolean | nullrequiredThe package's own address, not shared with others.
webhosting.web.ip_address.ipv6object | nullrequiredwebhosting.web.ip_address.ipv6.addressstringrequiredwebhosting.web.ip_address.ipv6.is_dedicatedboolean | nullrequiredThe package's own address, not shared with others.
webhosting.web.phpobject | nullrequirednull if the package has no PHP.
webhosting.web.php.versionstring | nullrequiredThe PHP version in use, e.g. php8.2.
webhosting.web.php.version_sourcestring | nullrequiredcustomer: the customer chose it; package: the default the package was ordered (or last upgraded) with; manitu: manitu's general default.
webhosting.web.php.version_listarray of stringrequiredThe versions the customer can choose.
webhosting.web.php.memory_limitstring | nullrequirede.g. 512M
webhosting.web.php.max_execution_time_secondsinteger | nullrequiredwebhosting.web.php.post_max_sizestring | nullrequiredwebhosting.web.php.upload_max_filesizestring | nullrequiredwebhosting.web.log_ip_address_typestring | nullrequiredHow the web server logs visitors' IP addresses (/logs/web.log, /logs/web.err.log): common - in full; anonymous-full - anonymised (relevant for the GDPR). Other logs are never anonymised.
webhosting.web.quotaobjectrequiredDisk space in MB and files, used and allowed - as last measured.
webhosting.web.quota.space_used_mbinteger | nullrequiredwebhosting.web.quota.space_max_mbinteger | nullrequiredwebhosting.web.quota.files_usedinteger | nullrequiredwebhosting.web.quota.files_maxinteger | nullrequiredwebhosting.web.quota.is_warningbooleanrequired75 % or more of a limit used.
webhosting.web.quota.is_exceededbooleanrequiredA limit reached - nothing more can be stored.
webhosting.web.quota.measured_atstring | nullrequiredwebhosting.web.limitobjectrequiredHow many the package allows - how many are in use, the routes on them say.
webhosting.web.limit.database_count_maxinteger | nullrequiredwebhosting.web.limit.ftp_user_count_maxinteger | nullrequiredwebhosting.web.limit.ssh_user_count_maxinteger | nullrequiredwebhosting.web.limit.cronjob_count_maxinteger | nullrequiredwebhosting.web.limit.websitebuilder_count_maxinteger | nullrequiredwebhosting.web.limit.subdomain_count_maxinteger | nullrequiredwebhosting.web.feature_listarray of stringrequiredWhat the web part offers, e.g. php, cgi, ssi, application_installation, websitebuilder.
webhosting.mailobject | nullrequiredThe mail part - null if the package has none.
webhosting.mail.mx_serverstring | nullrequiredThe server that receives the package's e-mail - the MX target in DNS. NOT the server for mail programs (IMAP, POP3, SMTP): never give it to the customer as his mail server; mention it only when asked about MX.
webhosting.mail.tls_policystring | nullrequiredEncryption between mail servers for the package's domains: may - used when the other side offers it; encrypt - required, mail without it is refused. Applies to all domains of the package alike.
webhosting.mail.sender_policystring | nullrequiredWho may send over manitu's mail servers with a sender address of the package's domains: none - any authenticated login, any address; same_site - a login of this package; same_mailbox - only the mailbox the address belongs to. Applies to all domains of the package alike.
webhosting.mail.quotaobjectrequiredDisk space in MB and files, used and allowed - as last measured.
webhosting.mail.quota.space_used_mbinteger | nullrequiredwebhosting.mail.quota.space_max_mbinteger | nullrequiredwebhosting.mail.quota.files_usedinteger | nullrequiredwebhosting.mail.quota.files_maxinteger | nullrequiredwebhosting.mail.quota.is_warningbooleanrequired75 % or more of a limit used.
webhosting.mail.quota.is_exceededbooleanrequiredA limit reached - nothing more can be stored.
webhosting.mail.quota.measured_atstring | nullrequiredwebhosting.mail.limitobjectrequiredHow many the package allows - how many are in use, the routes on them say.
webhosting.mail.limit.mailbox_count_maxinteger | nullrequiredwebhosting.mail.limit.mailing_list_count_maxinteger | nullrequiredwebhosting.mail.feature_listarray of stringrequiredWhat the mail part offers, e.g. rspamd (spam filter), sieve (filter rules).
Statuses
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.