---
title: "Update an application"
method: PUT
path: "/application/{id}"
tags: ["Application"]
---

# Update an application

`PUT /application/{id}`

Updates information for an application.

## Path parameters

- `id` integer, required

## Request body

- ApplicationWrite
  - `name` string — The application name. > ℹ️ **Note:** Changing the application's name **does not change the slug**, as doing so could break connections with existing applications and services.
  - `status` 'pending' | 'creating' | 'updating' | 'active' | 'inactive' | 'failed' | 'deleting' — The status of the application.
  - `repository_url` string — The URL of the repository that holds this application.
  - `template_id` integer — The ID of the template used to create this application. > ℹ️ **Note:** If you patch the template, make sure that the new template is compatible with the repository URL, especially if it includes rules.
  - `tags` object[]
    - `key` string
    - `value` string
  - `settings` ApplicationSettings, nullable — Configuration settings for the application. When updating via PATCH, follows RFC 7396 (JSON Merge Patch): keys with null values are deleted, keys with non-null values are updated/created, omitted keys are preserved.
    - `defaults` object, nullable — Default values nullplatform falls back to when a branch or environment isn't specified explicitly.
      - `branch` string, nullable — Default branch name for the application.
      - `environment` string, nullable — Default environment name for the application.
    - `asset` object, nullable — Settings describing where the application's build assets are stored.
      - `docker_server` object, nullable — Settings for the application's Docker server assets.
        - `uri` string, nullable — Location where the application's Docker server assets are stored.
      - `ecr` object, nullable — Amazon ECR repository where the application's assets are stored.
        - `uri` string, nullable — ECR repository URI for the application's assets.
        - `arn` string, nullable — ECR repository ARN for the application's assets.
    - `code_repository` object, nullable — Configuration of the code repository provider the application is linked to.
      - `specification_id` string, uuid, nullable — Unique identifier of the code repository specification.
      - `specification_slug` string, nullable — Slug of the code repository specification.
      - `specification_name` string, nullable — Display name of the code repository specification.
      - `specification_icon` string, nullable — Icon identifier for the code repository specification.
      - `provider_id` string, uuid, nullable — Unique identifier of the code repository provider.

## Response `204`

The operation was successful.

- Application
  - `id` integer, required — A system-wide unique ID for the application.
  - `nrn` string — The NRN (Nullplatform Resource Name) uniquely identifying this application in the nullplatform hierarchy.
  - `name` string, required — The application name.
  - `slug` string, required — A namespace-wide unique slug for the application.
  - `namespace_id` integer, required — The ID of the namespace that owns this application.
  - `status` 'pending' | 'creating' | 'updating' | 'active' | 'inactive' | 'failed' | 'deleting', required — The status of the application.
  - `repository_url` string, required — The URL of the repository that holds this application.
  - `repository_app_path` string, nullable — The folder where the application is located inside a monorepo.
  - `is_mono_repo` boolean, required — True if the application shares the repository with other apps, false otherwise.
  - `auto_deploy_on_creation` boolean, required — True if the application must be deployed immediately after being created, false otherwise.
  - `template_id` integer, required — The ID of the template used to create this application.
  - `metadata` SchemasMetadataComponent — The metadata loaded via the metadata catalog API.
    - `key` string — The key of the metadata.
    - `value` string — The value of the metadata.
    - `additional_properties` object — Additional properties of the metadata.
      - `schemas` unknown[] — The JSON schemas of the metadata.
        - unknown
      - `tags` object[]
        - `key` string
        - `value` string
  - `settings` ApplicationSettings, nullable — Configuration settings for the application. When updating via PATCH, follows RFC 7396 (JSON Merge Patch): keys with null values are deleted, keys with non-null values are updated/created, omitted keys are preserved.
    - `defaults` object, nullable — Default values nullplatform falls back to when a branch or environment isn't specified explicitly.
      - `branch` string, nullable — Default branch name for the application.
      - `environment` string, nullable — Default environment name for the application.
    - `asset` object, nullable — Settings describing where the application's build assets are stored.
      - `docker_server` object, nullable — Settings for the application's Docker server assets.
        - `uri` string, nullable — Location where the application's Docker server assets are stored.
      - `ecr` object, nullable — Amazon ECR repository where the application's assets are stored.
        - `uri` string, nullable — ECR repository URI for the application's assets.
        - `arn` string, nullable — ECR repository ARN for the application's assets.
    - `code_repository` object, nullable — Configuration of the code repository provider the application is linked to.
      - `specification_id` string, uuid, nullable — Unique identifier of the code repository specification.
      - `specification_slug` string, nullable — Slug of the code repository specification.
      - `specification_name` string, nullable — Display name of the code repository specification.
      - `specification_icon` string, nullable — Icon identifier for the code repository specification.
      - `provider_id` string, uuid, nullable — Unique identifier of the code repository provider.

## Other responses

- `4XX` — Client error responses due to invalid input or missing parameters.
- `5XX` — Server error responses indicating an issue on the API side.

---

[API](https://skmtc.dev/nullplatform/apis/nullplatform-api.md) · [All operations](https://skmtc.dev/nullplatform/apis/nullplatform-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/nullplatform/nullplatform-api/revisions/1c4ea154b159/schema)
