---
title: "PATCH /preview/v2/admin/instance_sku_properties/{key}"
method: PATCH
path: "/preview/v2/admin/instance_sku_properties/{key}"
tags: ["admin"]
---

# PATCH /preview/v2/admin/instance_sku_properties/{key}

`PATCH /preview/v2/admin/instance_sku_properties/{key}`

> ⚠️ This endpoint is in [public preview](/preview/roadmap).

## Path parameters

- `key` string, required

## Request body

- SfcApiPatchAdminInstanceSkuPropertyKeyRequest
  - `display_name` string, nullable
  - `description` string, nullable
  - `documentation_link` string, nullable
  - `required` boolean, nullable
  - `set_stable` boolean
  - `set_deprecated` boolean
  - `deprecation_info` string, nullable
  - `internal_note` string, nullable
  - `set_deleted` boolean

## Response `200`

Updated property key

- SfcApiAdminInstanceSkuPropertyKeyDetail — Property key plus a live coverage snapshot. Returned by the `keys::*` endpoints. When a key is embedded inside an `AdminInstanceSkuProperty` we use the bare [`AdminInstanceSkuPropertyKey`] instead — coverage would be expensive and irrelevant in that context.
  - `key` SfcApiAdminInstanceSkuPropertyKey, required — Admin view of a property key. Same shape as the public [`InstanceSkuPropertyKey`][crate::v2_routes::instance_skus::InstanceSkuPropertyKey] with extra fields admins need to manage the registry lifecycle.
    - `name` string, required
    - `display_name` string, required
    - `description` string, required
    - `documentation_link` string, nullable
    - `required` boolean, required
    - `stable_at` integer — Unix timestamp.
    - `deprecated_at` integer — Unix timestamp.
    - `deprecation_info` string, nullable
    - `deleted_at` integer — Unix timestamp.
    - `created_at` integer, required — Unix timestamp.
    - `updated_at` integer, required — Unix timestamp.
    - `internal_note` string, nullable
  - `coverage` SfcApiPropertyKeyCoverage, required — How the current instance SKUs line up against this property key's registry entry. All counts are live (computed on each read).
    - `total` integer, required — Total instance SKUs in the system.
    - `with_key` integer, required — SKUs that set this key.
    - `without_key` integer, required — SKUs missing this key.
    - `with_registered_value` integer, required — SKUs that set this key with a value in the registered enumeration.
    - `with_unregistered_value` integer, required — SKUs that set this key with a value NOT in the registered enumeration.
    - `sample_missing` SfcApiInstanceSkuId[], required — Up to 20 SKU IDs missing this key (stable sort by id).
    - `sample_unregistered_values` SfcApiInstanceSkuId[], required — Up to 20 SKU IDs carrying an unregistered value (stable sort by id).

## Other responses

- `400` — Invariant violation
- `403` — Forbidden
- `404` — Key not found
- `500` — Internal server error

---

[API](https://skmtc.net/sfcompute/apis/san-francisco-compute-documentation.md) · [All operations](https://skmtc.net/sfcompute/apis/san-francisco-compute-documentation/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/sfcompute/san-francisco-compute-documentation/versions/93dd7661e9bb/schema)
