---
title: "Update webpage resource"
method: PATCH
path: "/knowledge-base/resources/webpages/{id}"
tags: ["Knowledge Base"]
---

# Update webpage resource

`PATCH /knowledge-base/resources/webpages/{id}`

Apply a partial update to a webpage (URL-type) resource. Omitted
fields are left untouched. `description`, `ownerAssignment`, and
`expirationDate` accept `null` to clear. The resource URL is not
updatable here — recreate the resource if the URL needs to change.
Returns 404 for an unknown id or a FILE-type resource.

## Path parameters

- `id` string, required

## Request body

- UpdateWebpageResourceInput
  - `title` string — The title of the webpage resource.
  - `description` string, nullable — A description for the webpage resource. Pass `null` to clear.
  - `ownerAssignment` KnowledgeBaseResourceActorAssignmentInput
    - `type` 'User', required — The type of actor. Currently only "User" is supported.
    - `id` string, required — The unique identifier of the user.
  - `customerVisibility` 'PRIVATE' | 'SHAREABLE' | 'REQUEST_ACCESS' | 'PUBLIC' — Customer-facing visibility of a knowledge-base resource on the Trust Center. Use {@link CUSTOMER_VISIBILITY_TO_DB} to translate to {@link TrustCenterResourceVisibility} when persisting.
  - `includeSubPages` boolean — Whether to scan sub-pages one level deep alongside the primary URL.
  - `isUsedInQuestionnaires` boolean — Whether the resource should be used for question-answering in Questionnaire Automation.
  - `expirationDate` string, nullable — Expiration date in ISO 8601 format. Pass `null` to clear.
  - `tags` TagInput[] — Tags to associate with the resource. A non-empty array replaces the existing tag set; pass `[]` to clear all tags.
    - `categoryId` string, required
    - `tagId` string, required
  - `categoryId` string, nullable — Trust Center category id to associate this resource with. Pass `null` to move the resource to uncategorized. Only valid when the resource's effective visibility (after applying any patched `customerVisibility`) is REQUEST_ACCESS or PUBLIC; other combinations and unknown ids return an InvalidInputError.

## Response `200`

Ok

- KnowledgeBaseWebpageResourceOutput
  - `id` string, required
  - `type` 'URL', required
  - `title` string, required
  - `description` string, nullable, required
  - `url` string, required
  - `customerVisibility` 'PRIVATE' | 'SHAREABLE' | 'REQUEST_ACCESS' | 'PUBLIC' | 'null', nullable, required
  - `includeSubPages` boolean, nullable, required
  - `isUsedInQuestionnaires` boolean, nullable, required
  - `ownerAssignment` KnowledgeBaseResourceActorAssignment, required
    - `type` 'User' | 'Team', required
    - `id` string, required
    - `displayName` string, nullable, required
  - `expirationStatus` 'CURRENT' | 'EXPIRED', required — Customer-facing expiration status used by knowledge-base API responses (answer library entries and resources). Derived from the persisted `expiresAt` field at read time.
  - `expirationDate` string, nullable, required
  - `lastUpdated` string, required
  - `lastVerified` string, nullable, required
  - `tags` TagInput[], required
    - `categoryId` string, required
    - `tagId` string, required
  - `categoryId` string, nullable, required — Trust Center category id the resource is currently filed under, or `null` if uncategorized (or not on the Trust Center, which is the case for `PRIVATE` / `SHAREABLE` resources).

---

[API](https://skmtc.net/vanta/apis/build-integrations.md) · [All operations](https://skmtc.net/vanta/apis/build-integrations/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/vanta/build-integrations/revisions/6c1f7590538b/schema)
