Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 3 additions & 11 deletions src/app/(dashboard)/alerts/page.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,6 @@ import { PageHeader } from "@/components/page-header";
import { Skeleton } from "@/components/ui/skeleton";
import { AlertRulesSection } from "./_components/alert-rules-section";
import { NotificationChannelsSection } from "./_components/notification-channels-section";
import { OutboundWebhooksSection } from "./_components/outbound-webhooks-section";
import { AlertHistorySection } from "./_components/alert-history-section";
import { AnomalyHistorySection } from "./_components/anomaly-history-section";
import { CorrelatedAlertHistory } from "./_components/correlated-alert-history";
Expand Down Expand Up @@ -130,16 +129,9 @@ export default function AlertsPage() {

{/* ── Channels Tab ──────────────────────────────────── */}
<TabsContent value="channels">
<div className="space-y-6">
<NotificationChannelsSection
environmentId={selectedEnvironmentId}
/>
{/* Team-scoped subscription firehose for events outside the
AlertRule → channel routing model. Lives here (rather than
under global settings) so all webhook configuration is in
one place. */}
<OutboundWebhooksSection />
</div>
<NotificationChannelsSection
environmentId={selectedEnvironmentId}
/>
</TabsContent>

{/* ── History Tab ───────────────────────────────────── */}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ import {
Upload,
Activity,
Send,
Webhook,
} from "lucide-react";
import { Card, CardHeader, CardTitle, CardDescription, CardContent } from "@/components/ui/card";
import { Badge } from "@/components/ui/badge";
Expand Down Expand Up @@ -124,6 +125,13 @@ const CATEGORIES: SettingsCategory[] = [
icon: Upload,
requiredSuperAdmin: true,
},
{
title: "Outbound Webhooks",
description: "Forward events (deploys, version changes, fleet activity) to external systems via HMAC-signed POSTs.",
href: "/settings/webhooks",
icon: Webhook,
requiredSuperAdmin: false,
},
];

export function SettingsOverview() {
Expand Down
9 changes: 3 additions & 6 deletions src/app/(dashboard)/settings/webhooks/page.tsx
Original file line number Diff line number Diff line change
@@ -1,8 +1,5 @@
import { redirect } from "next/navigation";
import { OutboundWebhooksSection } from "./_components/outbound-webhooks-section";

// Outbound webhook configuration moved to Alerts > Channels so all webhook
// surfaces live next to alert rules + notification channels. Anyone who has
// the old /settings/webhooks URL bookmarked lands in the new location.
export default function WebhooksRedirectPage() {
redirect("/alerts?tab=channels");
export default function WebhooksPage() {
return <OutboundWebhooksSection />;
}
Loading