---
title: "Update Resource"
method: PATCH
path: "/v1/installations/{integrationConfigurationId}/resources/{resourceId}"
tags: ["marketplace"]
---

# Update Resource

`PATCH /v1/installations/{integrationConfigurationId}/resources/{resourceId}`

## Request

- Base URL: `https://api.vercel.com`
- URL: `https://api.vercel.com/v1/installations/{integrationConfigurationId}/resources/{resourceId}`
- Auth: HTTP bearer

This endpoint updates an existing resource in the installation. All parameters are optional, allowing partial updates.

## Path parameters

- `integrationConfigurationId` string, required
- `resourceId` string, required

## Request body

- object
  - `ownership` 'owned' | 'linked' | 'sandbox'
  - `name` string
  - `status` 'ready' | 'pending' | 'onboarding' | 'suspended' | 'resumed' | 'uninstalled' | 'error'
  - `metadata` object
  - `billingPlan` object
    - `id` string, required
    - `type` 'prepayment' | 'subscription', required
    - `name` string, required
    - `description` string
    - `paymentMethodRequired` boolean
    - `cost` string
    - `details` object[]
      - `label` string, required
      - `value` string
    - `highlightedDetails` object[]
      - `label` string, required
      - `value` string
    - `effectiveDate` string
  - `notification` union
    - object
      - `level` 'info' | 'warn' | 'error', required
      - `title` string, required
      - `message` string
      - `href` string, uri
    - string
  - `extras` object
  - `secrets` union
    - object[]
      - `name` string, required
      - `value` string, required
      - `prefix` string
      - `environmentOverrides` object: A map of environments to override values for the secret, used for setting different values across deployments in production, preview, and development environments. Note: the same value will be used for all deployments in the given environment.
        - `development` string: Value used for development environment.
        - `preview` string: Value used for preview environment.
        - `production` string: Value used for production environment.
    - object
      - `secrets` object[], required
        - `name` string, required
        - `value` string, required
        - `prefix` string
        - `environmentOverrides` object: A map of environments to override values for the secret, used for setting different values across deployments in production, preview, and development environments. Note: the same value will be used for all deployments in the given environment.
          - `development` string: Value used for development environment.
          - `preview` string: Value used for preview environment.
          - `production` string: Value used for production environment.
      - `partial` boolean: If true, will only overwrite the provided secrets instead of replacing all secrets.
  - `customClaims` object: Custom claims embedded in the resource tokens Vercel mints for this resource.
    - `roles` string[]: Roles a deployment may request when minting a token. The selected role is emitted as the `role` claim.
    - `defaultRole` string: Role used when the deployment does not request one. Required when `roles` is set.
    - `claimRules` object[]: Ordered rules resolved at mint time. Later rules win and shallow-merge over earlier ones.
      - `when` object
        - `role` string[]: Applies only when the token is minted for one of these roles.
        - `environment` string[]: Applies only when the token is minted for one of these environments: `production`, `preview`, `development`, or a custom environment slug. A custom environment also matches `preview`.
      - `claims` object, required: Claims to set (string, number, boolean, or array of strings), shallow-merged over earlier rules and over the default claims. `null` removes a claim. Reserved claims cannot be set; `aud` and `sub` can be overridden with a string but not removed.

## Response `200`

- object
  - `name` string, required

## Other responses

- `400`: One of the provided values in the request body is invalid. One of the provided values in the request query is invalid.
- `401`: The request is not authorized.
- `403`: You do not have permission to access this resource.
- `404`
- `409`
- `410`

## Changes

- **2026-10-23** `a24f99b1631b`: 1 info
  - removed the non-success response with the status `422`
- **2026-10-15** `8939e3983223`: 2 breaking, 1 info
  - the request property `customClaims/claimRules/items/claims/additionalProperties/` became not nullable
  - removed `subschema #1, subschema #2, subschema #3` from the `customClaims/claimRules/items/claims/additionalProperties/` request property `oneOf` list
  - added `subschema #1, subschema #2` to the `customClaims/claimRules/items/claims/additionalProperties/` request property `anyOf` list
- **2026-09-24** `dd6a90982ed0`: 1 info
  - added the new optional request property `customClaims`
- **2026-07-21** `2ae10ee9d21c`: 1 info
  - added the non-success response with the status `410`
- **2026-06-11** `14b4658f819e`: 1 breaking
  - added the pattern `^https?://|^sso:` to the request property `notification/oneOf[subschema #1]/href`

[Operation history](https://skmtc.dev/vercel/apis/vercel-api/changes/v1/installations/:integrationConfigurationId/resources/:resourceId/patch.md)

---

[API](https://skmtc.dev/vercel/apis/vercel-api.md) - [All operations](https://skmtc.dev/vercel/apis/vercel-api/llms.txt) - [OpenAPI document](https://skmtc.dev/vercel/apis/vercel-api/revisions/60686c0e1f6a?raw)
