diff --git a/ui/src/components/sidebar-utils.ts b/ui/src/components/sidebar-utils.ts
index 969b45b5..abfbe32d 100644
--- a/ui/src/components/sidebar-utils.ts
+++ b/ui/src/components/sidebar-utils.ts
@@ -107,6 +107,7 @@ export function buildAdminTreeNodes(opts?: { infrastructureEndpoints?: boolean }
...(showInfra ? [{ id: 'admin:database', label: 'Database', path: '/admin/database' }] : []),
{ id: 'admin:environments', label: 'Environments', path: '/admin/environments' },
{ id: 'admin:oidc', label: 'OIDC', path: '/admin/oidc' },
+ { id: 'admin:outbound-connections', label: 'Outbound Connections', path: '/admin/outbound-connections' },
{ id: 'admin:sensitive-keys', label: 'Sensitive Keys', path: '/admin/sensitive-keys' },
{ id: 'admin:rbac', label: 'Users & Roles', path: '/admin/rbac' },
];
diff --git a/ui/src/pages/Admin/OutboundConnectionsPage.tsx b/ui/src/pages/Admin/OutboundConnectionsPage.tsx
new file mode 100644
index 00000000..03ec73f7
--- /dev/null
+++ b/ui/src/pages/Admin/OutboundConnectionsPage.tsx
@@ -0,0 +1,87 @@
+import { Link } from 'react-router-dom';
+import { Button, Badge, SectionHeader, useToast } from '@cameleer/design-system';
+import { PageLoader } from '../../components/PageLoader';
+import {
+ useOutboundConnections,
+ useDeleteOutboundConnection,
+ type OutboundConnectionDto,
+ type TrustMode,
+} from '../../api/queries/admin/outboundConnections';
+import sectionStyles from '../../styles/section-card.module.css';
+
+export default function OutboundConnectionsPage() {
+ const { data, isLoading, error } = useOutboundConnections();
+ const deleteMut = useDeleteOutboundConnection();
+ const { toast } = useToast();
+
+ if (isLoading) return
No outbound connections yet. Create one to enable alerting webhooks or other outbound integrations.
+ ) : ( +| Name | +Host | +Method | +Trust | +Auth | +Envs | ++ |
|---|---|---|---|---|---|---|
| {c.name} | +{safeHost(c.url)} |
+ {c.method} | +{c.authKind} | +{c.allowedEnvironmentIds.length > 0 ? c.allowedEnvironmentIds.length : 'all'} | ++ + | +