---
title: "Update system"
method: PATCH
path: "/systems/{systemId}"
---

# Update system

`PATCH /systems/{systemId}`

Update an existing system definition. Only the fields provided in the request body will be updated.
If a field is provided, the new content will replace the existing content.
If a field is not provided, the existing content will remain unchanged.

When updating schemas:
- The system will accept your changes regardless of compatibility with existing configurations
- Schema updates won't invalidate existing evaluations or configurations
- For significant redesigns, creating a new system definition provides a cleaner separation

## Path parameters

- `systemId` string, uuid, required

## Request body

- object
  - `name` string — The name of the system.
  - `description` string — The description of the system.
  - `inputSchema` object — The schema of the system's inputs.
  - `outputSchema` object — The schema of the system's outputs.
  - `configSchema` object — The schema of the system's configuration.

## Response `200`

System updated successfully

- System — A System Under Test (SUT) defines the interface to a component or service you want to evaluate. It specifies three contracts through schemas: - inputSchema: The structure of data the system accepts. - outputSchema: The structure of data the system produces. - configSchema: The parameters that modify system behavior. This abstraction lets you evaluate any system as a black box, focusing on its interface rather than implementation details. It's particularly useful for systems with variable outputs or complex internal state. Systems are templates - to run evaluations, pair them with a SystemVersion that provides specific parameter values.
  - `id` string, uuid, required — The ID of the system.
  - `name` string, required — The name of the system.
  - `description` string, required — The description of the system.
  - `inputSchema` object, required — The schema of the system's inputs.
  - `outputSchema` object, required — The schema of the system's outputs.
  - `configSchema` object, required — The schema of the system's configuration.

## Other responses

- `401` — Error indicating that the request is not authenticated.
- `500` — An internal service error indicating an issue with the Scorecard service.

---

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