---
title: "Update App Resource"
method: PUT
path: "/v2/app-resources/{id}"
tags: ["App Resource API"]
---

# Update App Resource

`PUT /v2/app-resources/{id}`

Update an existing app resource.

## Path parameters

- `id` string, required — The ID of the resource.

## Request body

- object
  - `resourceType` string — The type of the resource.
  - `name` string — The name of the resource.
  - `description` string — A description of the resource.
  - `externalId` string, nullable — The external ID of the resource (optional).
  - `owners` SvflowPubapimodelsOwnerTargetSet — The complete owner set for a subject, replaced wholesale. Wrapping the list in a message lets update requests distinguish "owners unchanged" (absent) from "remove all owners" (present with an empty list).
    - `owners` SvflowPubapimodelsOwnerTarget[]
      - `targetId` string — The ID of the owner (user or group).
      - `targetType` 'ACCESS_RELATIONSHIP_TARGET_TYPE_UNSPECIFIED' | 'ACCESS_RELATIONSHIP_TARGET_TYPE_USER' | 'ACCESS_RELATIONSHIP_TARGET_TYPE_GROUP'

## Response `200`

Success

- SvflowPublicapiUpdateAppResourceResponse
  - `data` SvflowPubapimodelsResource
    - `id` string — The ID of the resource.
    - `appInstanceId` string — The ID of the app instance that the resource belongs to.
    - `resourceType` string — The type of the resource.
    - `name` string — The name of the resource.
    - `description` string, nullable — A description of the resource.
    - `externalId` string, nullable — The external ID of the resource.
    - `tagIds` string[] — IDs of the tags currently attached to this resource.

## Other responses

- `default` — Error

---

[API](https://skmtc.net/serval/apis/serval-public-api.md) · [All operations](https://skmtc.net/serval/apis/serval-public-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/serval/serval-public-api/versions/0549515e9384/schema)
