---
title: "Update an application's configuration."
method: GET
path: "/WebApp/configure"
tags: ["WebApp", "Web Apps"]
---

# Update an application's configuration.

`GET /WebApp/configure`

This function updates an application's configuration. Only the
parameters you pass change; omitted parameters keep their current
values.

**Important:**

  The `env` parameter uses **replace-all** semantics — the value you
  pass becomes the application's complete set of environment
  variables. To change one variable, read the current set first and
  resubmit it with your change applied.

## Query parameters

- `name` string, required
- `appdir` string
- `build_command` string
- `db` 'create' | 'link'
- `db_name` string
- `deployname` string
- `domain` string, domain
- `env` string, json
- `mode` 'production' | 'development'
- `output_dir` string
- `runtime_tag` string
- `startup_command` string

## Response `200`

HTTP Request was successful.

- object
  - `apiversion` integer — The version of the API.
  - `func` string — The name of the method called.
  - `module` string — The name of the module called.
  - `result` object
    - `data` object — The application with its updated configuration.
      - `category` 'static' | 'server' | 'other' — The application's category. This determines which lifecycle actions apply. * `static` — The application builds to static files that the web server serves directly. * `server` — The application runs a long-lived server process. * `other` — Any other kind of application.
      - `container_name` string, nullable — The name of the deployed container backing this application, or `null` while it is only staged. Assigned by the deploy and unique per application instance, so it identifies the exact deployed record even when several applications share a base name.
      - `confidence` 'high' | 'low' | 'none' — How confident the preflight detection is. Present only when this call changed `appdir` and re-ran the preflight. * `high` — Strong framework markers found. * `low` — Partial markers found; verify the defaults before deploying. * `none` — No recognizable markers; the defaults are generic.
      - `defaults` object — Suggested configuration values for the detected framework. Present only when this call changed `appdir` and re-ran the preflight.
        - `build_command` string, nullable — The suggested build command, or `null` if no build step is needed.
        - `output_dir` string, nullable — The suggested build output directory, or `null` if not applicable.
        - `runtime_tag` string — The suggested runtime version tag.
        - `startup_command` string, nullable — The suggested startup command, or `null` for `static` applications.
      - `db` object, nullable — The application's linked database information, or `null` if no database is linked.
        - `env_keys` string[] — The environment variable names that carry the database credentials.
        - `host` string, hostname — The database server hostname.
        - `name` string — The database name.
        - `port` integer — The database server port.
      - `deployed` boolean — Whether a deploy has put the application live. This is `true` once the application holds a container or a deploy has completed successfully, and `false` for a freshly staged application or one whose only deploy failed.
      - `deployname` string, nullable — The name used to name the deployment, or `null` when it defaults to the application name.
      - `domain` string, domain — The domain the application is bound to. This is an existing domain on the account or an automatically generated temporary domain.
      - `env` object — The application's environment variables.
      - `framework` string, nullable — The application's detected or user-selected framework, or `null` if unknown.
      - `last_deploy` object, nullable — Information about the most recent deploy, or `null` if the application has never deployed.
        - `deploy_id` string — The unique identifier of the deploy.
        - `result` 'success' | 'failed' — The result of the deploy.
        - `timestamp` string, date-time — When the deploy finished, in ISO 8601 format.
      - `mode` 'production' | 'development', nullable — The application's run mode. Only meaningful for the `server` category; `null` otherwise.
      - `name` string — The application's name (slug), unique across the account. Use this value to address the application in the per-app operations (`configure`, `deploy`, and the lifecycle verbs). A name is assigned at stage; staging a name a deployed application already uses registers the new one under the next free `<name>-N`, so each application keeps a distinct name.
      - `package_manager` 'npm' | 'yarn' | 'pnpm' | 'bun' — The package manager the deploy uses to install dependencies and run scripts. It is detected from the source's `packageManager` field, a lockfile, or the default (`npm`).
      - `runtime` string — The application's runtime identifier.
      - `runtime_tag` string — The runtime version tag.
      - `source` object — The application's source information.
        - `branch` string, nullable — The Git branch, or `null` for ZIP sources.
        - `type` 'zip' | 'git' — The source type. * `zip` — An uploaded archive. * `git` — A Git repository.
        - `url` string, nullable — The Git repository URL, or `null` for ZIP sources.
      - `staged` boolean — Whether the application's source is present in the staging area. This is `true` after the source is uploaded or cloned and until the application is deleted.
      - `status` 'created' | 'deploying' | 'running' | 'stopped' | 'errored' — The application's current status. * `created` — Registered but never deployed. * `deploying` — A deploy is in progress. * `running` — The application is live. * `stopped` — The application is stopped. * `errored` — The last action failed.
      - `url` string, url — The application's live HTTPS URL.
    - `errors` string[], nullable — List of errors if the API failed.
    - `messages` string[], nullable — List of messages generated by the API.
    - `metadata` object
      - `error_category` 'domain_in_use' | 'domain_unavailable', nullable — The machine-readable failure category. Only present when `status` is `0` and the `domain` parameter was rejected. * `domain_in_use` — Another of this account's applications already serves this domain. * `domain_unavailable` — A domain already exists at the application's generated default address. Only returned when `domain` was passed empty; an explicitly named domain the account owns is adopted instead.
    - `status` 0 | 1 — - `1` - Success. - `0` - Failed. Check the `errors` field for more details.
    - `warnings` string[], nullable — List of warnings generated by the API. Warnings describe non-critical failures or other problematic conditions noted while running a API.

---

[API](https://skmtc.net/cpanel/apis/cpanel-uapi.md) · [All operations](https://skmtc.net/cpanel/apis/cpanel-uapi/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/cpanel/cpanel-uapi/revisions/632e2f8e6d04/schema)
