---
title: "Update Page"
method: PATCH
path: "/v3/portals/{portalId}/pages/{pageId}"
tags: ["Pages"]
---

# Update Page

`PATCH /v3/portals/{portalId}/pages/{pageId}`

## Request

- Base URL: `https://global.api.konghq.com`
- URL: `https://global.api.konghq.com/v3/portals/{portalId}/pages/{pageId}`
- Auth: one of:
  - HTTP bearer
  - HTTP bearer
  - HTTP bearer
  - HTTP bearer

Updates the configuration of a single custom page for this portal.

## Path parameters

- `portalId` string, uuid, required
- `pageId` string, uuid, required

## Request body

- UpdatePortalPageRequest: Update a page in a portal.
  - `slug` string: The slug of a page in a portal, used to compute its full URL path within the portal hierarchy. When a page has a `parent_page_id`, its full path is built by joining the parent’s slug with its own. For example, if a parent page has the slug `slug1` and this page’s slug is `slug2`, the resulting path will be `/slug1/slug2`. This enables nested page structures like `/slug1/slug2/slug3`.
  - `title` string: The title of a page in a portal.
  - `content` string: The renderable markdown content of a page in a portal.
  - `visibility` 'public' | 'private': Whether the resource is publicly accessible to non-authenticated users.
  - `status` 'published' | 'unpublished': Whether the resource is visible on a given portal. Defaults to unpublished.
  - `description` string
  - `parent_page_id` string, uuid, nullable: Pages may be rendered as a tree of files. Specify the `id` of another page as the `parent_page_id` to add some hierarchy to your pages.

## Response `200`

Details about a page in a portal.

- PortalPageResponse: Details about a page in a portal.
  - `id` string, uuid, required: Contains a unique identifier used for this resource.
  - `slug` string, required: The slug of a page in a portal, used to compute its full URL path within the portal hierarchy. When a page has a `parent_page_id`, its full path is built by joining the parent’s slug with its own. For example, if a parent page has the slug `slug1` and this page’s slug is `slug2`, the resulting path will be `/slug1/slug2`. This enables nested page structures like `/slug1/slug2/slug3`.
  - `title` string, required: The title of a page in a portal.
  - `content` string, required: The renderable markdown content of a page in a portal.
  - `visibility` 'public' | 'private', required: Whether the resource is publicly accessible to non-authenticated users.
  - `status` 'published' | 'unpublished', required: Whether the resource is visible on a given portal. Defaults to unpublished.
  - `description` string
  - `created_at` string, date-time, required: An ISO-8601 timestamp representation of entity creation date.
  - `updated_at` string, date-time, required: An ISO-8601 timestamp representation of entity update date.
  - `parent_page_id` string, uuid, nullable, required: Pages may be rendered as a tree of files. Specify the `id` of another page as the `parent_page_id` to add some hierarchy to your pages.

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not Found

## Changes

- **2026-10-15** `7aab863a6daa`: 1 breaking, 2 warning
  - added `#/components/schemas/InvalidParameterMinimumTime, #/components/schemas/InvalidParameterMaximumTime` to the `invalid_parameters/items/` response property `oneOf` list for the response status `400`
  - added the new `key_invalid` enum value to the `invalid_parameters/items/oneOf[#/components/schemas/InvalidParameterStandard]/rule` response property for the response status `400`
  - added the new `unique` enum value to the `invalid_parameters/items/oneOf[#/components/schemas/InvalidParameterStandard]/rule` response property for the response status `400`
- **2026-09-25** `68d43091b84d`: 3 warning
  - added the new `400.00` enum value to the `status` response property for the response status `400`
  - added the new `403.00` enum value to the `status` response property for the response status `403`
  - added the new `404.00` enum value to the `status` response property for the response status `404`
- **2026-09-18** `f324fb7610e4`: 3 breaking, 24 info
  - the response's body type changed from no type to `object` for status `400`
  - the response's body type changed from no type to `object` for status `403`
  - the response's body type changed from no type to `object` for status `404`
  - removed `#/components/schemas/BaseError, subschema #2` from the response body `allOf` list for the response status `400`
  - …23 more
- …earlier changes not shown

[Operation history](https://skmtc.dev/kong/apis/konnect-api-go-sdk/changes/v3/portals/:portalId/pages/:pageId/patch.md)

---

[API](https://skmtc.dev/kong/apis/konnect-api-go-sdk.md) · [All operations](https://skmtc.dev/kong/apis/konnect-api-go-sdk/llms.txt) · [OpenAPI document](https://skmtc.dev/kong/apis/konnect-api-go-sdk/revisions/7aab863a6daa?raw)
