import { Link } from "react-router-dom"; import { Card, CardContent, CardDescription, CardHeader, CardTitle, } from "@/components/ui/card"; import { Badge } from "@/components/ui/badge"; import { Table, TableBody, TableCell, TableHead, TableHeader, TableRow, TableCaption, } from "@/components/ui/table"; import { Button } from "@/components/ui/button"; import { Puzzle, Server, Brush, Shield, RefreshCw, ArrowRight, Link as LinkIcon, Palette, AlertTriangle, FileText, } from "lucide-react"; const connectorFields = [ { name: "key", description: "Unique identifier referenced across dashboards, APIs, and audit logs.", defaultValue: '"analytics-segment"', }, { name: "category", description: "Integration taxonomy aligned with AeThex surfaces (analytics, identity, commerce, ops).", defaultValue: '"analytics"', }, { name: "capabilities", description: "Feature flags that unlock widgets, automation hooks, and data pipelines.", defaultValue: "['metrics', 'webhooks']", }, { name: "connectionMode", description: "Determines how credentials are managed (oauth, apiKey, managedVault).", defaultValue: '"oauth"', }, { name: "webhookEndpoint", description: "Optional callback URL for outbound events delivered by AeThex.", defaultValue: '"https://app.example.com/aethex/webhooks"', }, { name: "uiEmbeds", description: "Declarative config describing dashboard cards, modals, or launchers this integration renders.", defaultValue: "[{ surface: 'dashboard', placement: 'sidebar' }]", }, ]; const troubleshooting = [ { title: "OAuth handshake fails", detail: "Confirm the integration's redirect URI matches the value registered in the partner console. AeThex surfaces expose the required callback under Settings → Integrations.", }, { title: "Webhook retries exhausted", detail: "Inspect delivery attempts in the Integrations dashboard. Update retry policies or verify your endpoint responds with a 2xx status within 10 seconds.", }, { title: "Embedded widget styling", detail: "Override component tokens through the integration theme utilities or wrap the widget in a container that inherits AeThex gradient variables.", }, ]; export default function DocsIntegrations() { return (
AeThex Integrations wrap third-party analytics, identity, payments, and live-ops tooling behind a consistent runtime, security model, and visual system. Use this guide to register new connectors, surface partner UI in product flows, and automate data exchange without hand-rolled plumbing.
Integration manifests are stored in the AeThex Integrations service and synced across the dashboard and runtime. Client components resolve connector metadata through the shared API helpers, ensuring credentials and capability flags stay consistent with server state.
During hydration the runtime mounts partner SDKs behind AeThex loaders, applying sandboxed execution where required. Use lifecycle hooks to emit analytics, hydrate widgets with scoped credentials, and gate access through the same role-based policies used elsewhere in the platform.
Use the integration theming utilities to adapt partner widgets to
AeThex gradients, typography, and focus states. Tokens flow
through CSS variables defined in{" "}
global.css, so embeds
stay visually aligned with dashboards and consumer apps.
Extend styling with scoped class names or CSS variables exported by the partner SDK. When shipping multiple widgets, prefer design tokens over hard-coded overrides to keep dark-mode and accessibility tweaks in sync.
Promote integration changes through staging first. AeThex snapshots connector manifests per environment so you can test credentials, capability flags, and UI placements without impacting production users.
When partners publish SDK updates, pin versions in your manifest, document the change log, and coordinate rollout windows with stakeholders subscribing to the integration.
Manage integration documentation centrally in Builder CMS or export static guides for partner teams. Keep manifests, onboarding playbooks, and support runbooks together so each connector has a clear owner.