From bc53f603ebec0752914411df6c3825f006e0f411 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Aur=C3=A9lien=20Sibiril?= <81782+aureliensibiril@users.noreply.github.com> Date: Thu, 4 Jun 2026 18:51:58 +0200 Subject: [PATCH] Normalize pasted Zendesk subdomain URLs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Pasting a full Zendesk URL with a path or query (e.g. acme.zendesk.com/agent?x=1) left the trailing segments in place because the .zendesk.com suffix no longer matched at the end, producing an invalid site value rejected by the backend. Drop everything from the first path/query/fragment separator before stripping the suffix. Signed-off-by: Aurélien Sibiril <81782+aureliensibiril@users.noreply.github.com> --- .../access-reviews/dialogs/AddAccessSourceDialog.tsx | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/apps/console/src/pages/organizations/access-reviews/dialogs/AddAccessSourceDialog.tsx b/apps/console/src/pages/organizations/access-reviews/dialogs/AddAccessSourceDialog.tsx index 636ec2f90..9c193a778 100644 --- a/apps/console/src/pages/organizations/access-reviews/dialogs/AddAccessSourceDialog.tsx +++ b/apps/console/src/pages/organizations/access-reviews/dialogs/AddAccessSourceDialog.tsx @@ -177,7 +177,9 @@ function hasRequiredExtraSettings( function cleanZendeskSubdomain(raw: string): string { let value = raw.trim(); value = value.replace(/^https?:\/\//i, ""); - value = value.replace(/\/+$/, ""); + // Drop any path, query, or fragment from a pasted URL/host so only the + // host label survives (e.g. "acme.zendesk.com/agent?x=1" -> "acme"). + value = value.replace(/[/?#].*$/, ""); value = value.replace(/\.zendesk\.com$/i, ""); return value.trim(); }