---
title: "Enable or Disable Domain"
method: PATCH
path: "/v3/portals/{portalId}/custom-domain"
tags: ["Portal Custom Domains"]
---

# Enable or Disable Domain

`PATCH /v3/portals/{portalId}/custom-domain`

Updates the portal domain associated with the portal.

## Request body

- UpdatePortalCustomDomainRequest
  - `enabled` boolean, nullable
  - `ssl` UpdatePortalCustomDomainSSL
    - `custom_certificate` string, nullable — Custom certificate to be used for the SSL termination.
    - `custom_private_key` string, nullable — Custom certificate private key to be used for the SSL termination.
    - `skip_ca_check` boolean — Advanced option. If true, the custom certificate is served exactly as provided, without attempting to bundle against a public trust store. Required for certificates issued by an internal/private CA.

## Response `200`

Portal custom domain

- PortalCustomDomain
  - `hostname` string, required
  - `enabled` boolean, required
  - `ssl` PortalCustomDomainSSL, required
    - `domain_verification_method` 'http' | 'custom_certificate', required
    - `verification_status` 'verified' | 'pending' | 'error', required
    - `validation_errors` string[]
    - `uploaded_at` string, date-time — An ISO-8601 timestamp representation of the ssl certificate upload date.
    - `expires_at` string, date-time — An ISO-8601 timestamp representation of the ssl certificate expiration date.
    - `skip_ca_check` boolean — True when the provided certificate chain is served as-is without validation against a public trust store.
  - `cname_status` 'verified' | 'pending', required
  - `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.

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `403` — Forbidden

## Changes

- **2026-05-12** `b00b1727b863` — 1 info
  - added the new optional request property `ssl`
- **2025-10-29** `19e869275e28` — 1 warning, 3 info
  - added the new `type` enum value to the `allOf[subschema #2]/invalid_parameters/items/oneOf[#/components/schemas/InvalidParameterStandard]/rule` response property for the response status `400`
  - added the optional property `ssl/expires_at` to the response with the `200` status
  - added the optional property `ssl/skip_ca_check` to the response with the `200` status
  - added the optional property `ssl/uploaded_at` to the response with the `200` status
- **2025-08-22** `96118a9cd7f4` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/kong/apis/konnect-api/changes/v3/portals/:portalId/custom-domain/patch.md)

---

[API](https://skmtc.dev/kong/apis/konnect-api.md) · [All operations](https://skmtc.dev/kong/apis/konnect-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/kong/konnect-api/revisions/72502a676a92/schema)
