Have manitu install an application

Installs an application (WordPress, Joomla, Nextcloud ...) into a website or a folder.

WWriteNot idempotentbetaNeeds service_webhosting
Tool
manitu_webhosting_web_application_installation_createon https://mcp.manitu.de/mcp
POST
/v1/webhosting/web/application/installation/createon 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 falseopenWorldHint false

Has manitu install an application into a web hosting package of the manitu customer account this connection works in, by its site_id from manitu_webhosting_list: application.type (and version, default the newest) from manitu_webhosting_web_application_catalog_list, into a website (fqdn, type website showing a folder - its folder) or a folder (directory); an application that needs a database gets one of the package (database_id, see manitu_webhosting_web_database_list; table_prefix defaults to the application's). The folder must be empty unless overwrite is true - then files there are replaced. It runs in the background: follow it with manitu_workflow_get and its workflow_token. Where manitu sets it up right away, admin holds the administrator: login name and mail address; the password is withheld here - the customer sets his own with the application's "password forgotten". Show the notes from the catalog first. Refused with E2002 per field (not_offered, not_found, not_a_website_with_folder, directory_not_empty, required, server_type_not_supported ...) or a conflict when an installation is running (workflow_running), the package has no application installation (feature_not_in_package) or cannot be changed now (not_configurable). Tell the customer what goes where and ask for an explicit yes first.

Provide at least one of: fqdn, directory.

site_idinteger | stringrequired

The site_id from manitu_webhosting_list - never guess one.

pattern ^[1-9][0-9]*$min 1
applicationobjectrequired
application.typestringrequired
min length 1max length 64
application.versionstring

A version on offer; default: the newest.

min length 1max length 64
fqdnstring

The website to install into (its folder), from manitu_webhosting_web_vhost_list. Not together with directory.

min length 3max length 253
directorystring

A folder of the package to install into, e.g. /web/blog - for a website that does not exist yet. Not together with fqdn.

min length 1max length 255
overwriteboolean

Replace files already in the folder (default false: the folder must be empty).

database_idinteger

For an application that needs a database: one of the package, of a server type the catalog names.

min 1
table_prefixstring

Prefix of its tables - letters, digits, underscores, starting with a letter; default the application's (the catalog's table_prefix_default).

min length 1max length 32
The tool list carries this simplified form: a rule at the root of a schema does not reach every client, so it is said in the description instead.
workflowstring | nullrequired

What is being done, e.g. power_reboot or ngcobalt_site_web_database_copy.

One of create destroy power_start power_stop power_reboot reinstall ptr_set vnc_enable vnc_disable rescuesystem_enable rescuesystem_disable snapshot_create snapshot_delete snapshot_delete_all snapshot_revert telemetry_await iso_eject none account_contract_termination_finish ngcobalt_site_web_application_installation_set ngcobalt_site_web_application_installation_update ngcobalt_site_web_permission_set ngcobalt_site_web_database_copy network_librenms_discover null
workflow_idstring | nullrequired

The id of this run, as vserver/workflow/list names it; null for a workflow not kept as tasks.

statusstringrequired

pending: waiting to start; running: started, not finished (can take a while); done: finished, everything went through; error: finished, but it or part of it failed.

One of pending running done error
created_atstring | nullrequired

When it was asked for.

Format date-time
started_atstring | nullrequired

When it started; null while pending, and for a workflow that does not record it.

Format date-time
ended_atstring | nullrequired

When it finished; null until then.

Format date-time
updated_atstring | nullrequired

When it last changed.

Format date-time
workflow_tokenstring | nullrequired

Pass it to manitu_workflow_get to see how far the workflow is - as it is, never built or changed. A secret of this workflow: do not show it to anyone. null if there is none.

applicationobjectrequired
application.typestringrequired
application.versionstringrequired
directorystringrequired

The folder it goes into, relative to the package.

adminobject | nullrequired

The administrator manitu sets up; null: the customer finishes the setup in the browser (is_configured_right_away false in the catalog).

admin.usernamestringrequired

The administrator's login name.

admin.passwordstring | nullrequired

His password - a secret; null where it is withheld (secrets_withheld): the customer then sets his own with the application's "password forgotten" and mail_address.

admin.mail_addressstringrequired

The administrator's mail address - the account user's.

secrets_withheldbooleanrequired

The password is left out here (an answer to an agent).

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

Provide at least one of: fqdn, directory.
site_idinteger | stringrequired

The site_id from manitu_webhosting_list - never guess one.

pattern ^[1-9][0-9]*$min 1
applicationobjectrequired
application.typestringrequired
min length 1max length 64
application.versionstring

A version on offer; default: the newest.

min length 1max length 64
fqdnstring

The website to install into (its folder), from manitu_webhosting_web_vhost_list. Not together with directory.

min length 3max length 253
directorystring

A folder of the package to install into, e.g. /web/blog - for a website that does not exist yet. Not together with fqdn.

min length 1max length 255
overwriteboolean

Replace files already in the folder (default false: the folder must be empty).

database_idinteger

For an application that needs a database: one of the package, of a server type the catalog names.

min 1
table_prefixstring

Prefix of its tables - letters, digits, underscores, starting with a letter; default the application's (the catalog's table_prefix_default).

min length 1max length 32
workflowstring | nullrequired

What is being done, e.g. power_reboot or ngcobalt_site_web_database_copy.

One of create destroy power_start power_stop power_reboot reinstall ptr_set vnc_enable vnc_disable rescuesystem_enable rescuesystem_disable snapshot_create snapshot_delete snapshot_delete_all snapshot_revert telemetry_await iso_eject none account_contract_termination_finish ngcobalt_site_web_application_installation_set ngcobalt_site_web_application_installation_update ngcobalt_site_web_permission_set ngcobalt_site_web_database_copy network_librenms_discover null
workflow_idstring | nullrequired

The id of this run, as vserver/workflow/list names it; null for a workflow not kept as tasks.

statusstringrequired

pending: waiting to start; running: started, not finished (can take a while); done: finished, everything went through; error: finished, but it or part of it failed.

One of pending running done error
created_atstring | nullrequired

When it was asked for.

Format date-time
started_atstring | nullrequired

When it started; null while pending, and for a workflow that does not record it.

Format date-time
ended_atstring | nullrequired

When it finished; null until then.

Format date-time
updated_atstring | nullrequired

When it last changed.

Format date-time
workflow_tokenstring | nullrequired

Pass it to manitu_workflow_get to see how far the workflow is - as it is, never built or changed. A secret of this workflow: do not show it to anyone. null if there is none.

applicationobjectrequired
application.typestringrequired
application.versionstringrequired
directorystringrequired

The folder it goes into, relative to the package.

adminobject | nullrequired

The administrator manitu sets up; null: the customer finishes the setup in the browser (is_configured_right_away false in the catalog).

admin.usernamestringrequired

The administrator's login name.

admin.passwordstring | nullrequired

His password - a secret; null where it is withheld (secrets_withheld): the customer then sets his own with the application's "password forgotten" and mail_address.

admin.mail_addressstringrequired

The administrator's mail address - the account user's.

secrets_withheldbooleanrequired

The password is left out here (an answer to an agent).

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.