---
title: "Update a technology template"
method: PATCH
path: "/template/{id}"
tags: ["Technology template"]
---

# Update a technology template

`PATCH /template/{id}`

Updates a technology template.

## Path parameters

- `id` integer, required

## Request body

- TechnologyTemplateWrite
  - `name` string — The name of the technology template (e.g., node, java-spring, go, kotlin-ktor).
  - `url` string — The URL of the template in the repository.
  - `provider` object
    - `repository` string — The name of the repository within the provider. > For example, if the URL is `https://github.com/nullplatform/technology-templates-nextjs`, the repository name should be `technology-templates-nextjs`.
  - `organization` integer — The ID of the organization.
  - `account` integer — The ID of account.
  - `status` 'active' | 'inactive' — The status of the template.
  - `components` TemplateComponent[] — The components of the template.
    - `type` string — The type of component (e.g., language, framework).
    - `id` string — The ID of the component (e.g., javascript, golang, java).
    - `version` string — The version of the component (e.g., 20.2, 1.18, 17).
  - `tags` string[] — Tags associated with the template (e.g., node, nextjs, frontend)
  - `rules` object — Defines rules for enforcing naming conventions and structuring repository paths.
  - `metadata` MetadataComponent — 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 metadata properties, including schemas and tags.
      - `schemas` object[] — The JSON schemas of the metadata.
      - `tags` object[] — Tags associated with the metadata.
        - `key` string
        - `value` string

## Response `200`

The operation was successful.

- TechnologyTemplateResponse
  - `id` integer — The ID of the template.
  - `name` string — The name of the technology template (e.g., node, java-spring, go, kotlin-ktor).
  - `url` string — The URL of the template in the repository.
  - `provider` object
    - `repository` string — The name of the repository within the provider. > For example, if the URL is `https://github.com/nullplatform/technology-templates-nextjs`, the repository name should be `technology-templates-nextjs`.
  - `components` TemplateComponent[] — The components of the template.
    - `type` string — The type of component (e.g., language, framework).
    - `id` string — The ID of the component (e.g., javascript, golang, java).
    - `version` string — The version of the component (e.g., 20.2, 1.18, 17).
  - `tags` string[] — Tags associated with the template (e.g., node, nextjs, frontend).
  - `updated_at` string, date-time, nullable — The ISO-8601 UTC timestamp of when the technology template was last updated.
  - `created_at` string, date-time — The ISO-8601 UTC timestamp of when the technology template was created.

## 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)
