> ## Documentation Index
> Fetch the complete documentation index at: https://developer.swoogo.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Swoogo Developer Portal

> Build integrations, automate workflows, and connect AI assistants to the Swoogo event management platform.

<div className="relative min-h-screen overflow-hidden">
  <div className="absolute inset-0 -z-10">
    <div className="absolute inset-0 bg-gradient-to-b from-[#726BEA]/[0.06] via-transparent to-transparent dark:from-[#726BEA]/[0.12] dark:via-transparent dark:to-transparent" />

    <div className="absolute top-20 left-1/3 w-[500px] h-[500px] rounded-full bg-[#726BEA]/[0.05] dark:bg-[#726BEA]/[0.08] blur-[100px]" />

    <div className="absolute top-40 right-1/4 w-[400px] h-[400px] rounded-full bg-[#8B85F0]/[0.04] dark:bg-[#8B85F0]/[0.06] blur-[80px]" />
  </div>

  <div className="max-w-5xl mx-auto px-6 pt-16 lg:pt-24 pb-6">
    <div className="grid grid-cols-1 lg:grid-cols-2 gap-8 items-center">
      {/* Left: text */}

      <div>
        <div className="inline-flex items-center gap-2 px-3 py-1 rounded-full bg-[#726BEA]/10 dark:bg-[#726BEA]/20 text-[#726BEA] dark:text-[#8B85F0] text-sm font-medium mb-6">
          <span className="w-1.5 h-1.5 rounded-full bg-[#726BEA] dark:bg-[#8B85F0] animate-pulse" />

          Developer Portal
        </div>

        <h1 className="text-4xl lg:text-5xl font-bold text-gray-900 dark:text-zinc-50 mb-6 tracking-tight leading-[1.1]">
          Build with <span className="bg-gradient-to-r from-[#726BEA] to-[#8B85F0] bg-clip-text text-transparent">Swoogo</span>
        </h1>

        <p className="text-lg text-gray-500 dark:text-gray-400 mb-8 leading-relaxed">
          Integrate with the Swoogo event management platform. Access 140+ REST API endpoints or connect AI assistants via our MCP server.
        </p>

        {/* Search bar + AI button */}

        <div className="flex items-center gap-2 mb-8">
          <div id="home-search" className="flex-1 cursor-pointer">
            <div className="flex items-center gap-3 px-4 py-3 rounded-xl border border-gray-200 dark:border-white/10 bg-white/70 dark:bg-white/5 backdrop-blur-sm hover:border-[#726BEA]/40 hover:shadow-md hover:shadow-[#726BEA]/5 transition-all">
              <span id="search-icon" className="text-gray-400 dark:text-gray-500 flex-shrink-0" />

              <span className="text-gray-400 dark:text-gray-500 text-sm flex-1">Search documentation...</span>
              <kbd className="hidden sm:inline-flex items-center gap-1 px-2 py-0.5 rounded-md bg-gray-100 dark:bg-white/10 text-gray-400 dark:text-gray-500 text-xs font-mono border border-gray-200 dark:border-white/10">⌘K</kbd>
            </div>
          </div>

          <a href="?assistant" className="flex items-center justify-center w-[46px] h-[46px] rounded-xl border border-gray-200 dark:border-white/10 bg-white/70 dark:bg-white/5 backdrop-blur-sm hover:border-[#726BEA]/40 hover:shadow-md hover:shadow-[#726BEA]/5 transition-all no-underline" title="Ask AI">
            <svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="#726BEA" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round">
              <path d="M12 3l1.912 5.813a2 2 0 0 0 1.275 1.275L21 12l-5.813 1.912a2 2 0 0 0-1.275 1.275L12 21l-1.912-5.813a2 2 0 0 0-1.275-1.275L3 12l5.813-1.912a2 2 0 0 0 1.275-1.275L12 3z" />
            </svg>
          </a>
        </div>

        <div className="flex flex-wrap gap-3 mb-12 lg:mb-0">
          <a href="https://www.swoogo.com/manage/profile/api" className="inline-flex items-center gap-2 px-6 py-3 rounded-xl bg-[#726BEA] hover:bg-[#5A53D6] text-white font-medium text-sm transition-all hover:shadow-lg hover:shadow-[#726BEA]/25 no-underline">
            Get your API key

            <svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round">
              <path d="M7 17L17 7" />

              <path d="M7 7h10v10" />
            </svg>
          </a>

          <a href="/api-reference/introduction" className="inline-flex items-center gap-2 px-6 py-3 rounded-xl border border-gray-200 dark:border-white/10 bg-white/50 dark:bg-white/5 hover:bg-white dark:hover:bg-white/10 text-gray-900 dark:text-gray-100 font-medium text-sm transition-all no-underline">
            Read the docs
          </a>
        </div>
      </div>

      {/* Right: terminal */}

      <div id="hero-terminal" className="hidden lg:block" />
    </div>
  </div>

  <div className="max-w-5xl mx-auto px-6 pb-16">
    <h2 className="text-sm font-semibold text-gray-400 dark:text-gray-500 uppercase tracking-widest mb-6">Start building</h2>

    <div className="grid grid-cols-1 md:grid-cols-2 gap-4 mb-16">
      <a href="/api-reference/introduction" className="group relative overflow-hidden rounded-2xl border border-gray-200 dark:border-white/10 bg-white/60 dark:bg-white/[0.03] p-6 transition-all hover:border-[#726BEA]/30 hover:shadow-lg hover:shadow-[#726BEA]/5 no-underline backdrop-blur-sm">
        <div className="absolute top-0 right-0 w-32 h-32 bg-gradient-to-bl from-[#726BEA]/10 to-transparent rounded-bl-full opacity-0 group-hover:opacity-100 transition-opacity" />

        <div className="w-10 h-10 rounded-lg bg-[#726BEA]/10 dark:bg-[#726BEA]/20 flex items-center justify-center mb-4">
          <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="#726BEA" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round">
            <path d="M4 19.5A2.5 2.5 0 0 1 6.5 17H20" />

            <path d="M6.5 2H20v20H6.5A2.5 2.5 0 0 1 4 19.5v-15A2.5 2.5 0 0 1 6.5 2z" />

            <line x1="8" y1="7" x2="16" y2="7" />

            <line x1="8" y1="11" x2="13" y2="11" />
          </svg>
        </div>

        <h3 className="text-lg font-semibold text-gray-900 dark:text-zinc-50 mb-2">API Reference</h3>
        <p className="text-sm text-gray-500 dark:text-gray-400 leading-relaxed">Full REST API documentation with 140+ endpoints to manage events, registrants, sessions, speakers, sponsors, and more.</p>
      </a>

      <a href="/mcp/introduction" className="group relative overflow-hidden rounded-2xl border border-gray-200 dark:border-white/10 bg-white/60 dark:bg-white/[0.03] p-6 transition-all hover:border-[#726BEA]/30 hover:shadow-lg hover:shadow-[#726BEA]/5 no-underline backdrop-blur-sm">
        <div className="absolute top-0 right-0 w-32 h-32 bg-gradient-to-bl from-[#8B85F0]/10 to-transparent rounded-bl-full opacity-0 group-hover:opacity-100 transition-opacity" />

        <div className="w-10 h-10 rounded-lg bg-[#8B85F0]/10 dark:bg-[#8B85F0]/20 flex items-center justify-center mb-4">
          <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="#8B85F0" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round">
            <circle cx="12" cy="12" r="3" />

            <path d="M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 0 1-2.83 2.83l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-4 0v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 0 1-2.83-2.83l.06-.06A1.65 1.65 0 0 0 4.68 15a1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1 0-4h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 0 1 2.83-2.83l.06.06A1.65 1.65 0 0 0 9 4.68a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 4 0v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 0 1 2.83 2.83l-.06.06A1.65 1.65 0 0 0 19.4 9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 0 4h-.09a1.65 1.65 0 0 0-1.51 1z" />
          </svg>
        </div>

        <h3 className="text-lg font-semibold text-gray-900 dark:text-zinc-50 mb-2">MCP Server</h3>
        <p className="text-sm text-gray-500 dark:text-gray-400 leading-relaxed">Connect AI assistants like Claude and Cursor to your Swoogo data using the Model Context Protocol.</p>
      </a>
    </div>

    <h2 className="text-sm font-semibold text-gray-400 dark:text-gray-500 uppercase tracking-widest mb-6">Common use cases</h2>

    <div className="grid grid-cols-1 md:grid-cols-3 gap-4 mb-16">
      <div className="rounded-2xl border border-gray-200 dark:border-white/10 bg-white/60 dark:bg-white/[0.03] p-5 backdrop-blur-sm">
        <div className="w-8 h-8 rounded-lg bg-[#726BEA]/10 dark:bg-[#726BEA]/20 flex items-center justify-center mb-3">
          <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="#726BEA" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round">
            <path d="M17 1l4 4-4 4" />

            <path d="M3 11V9a4 4 0 0 1 4-4h14" />

            <path d="M7 23l-4-4 4-4" />

            <path d="M21 13v2a4 4 0 0 1-4 4H3" />
          </svg>
        </div>

        <h3 className="text-sm font-semibold text-gray-900 dark:text-zinc-50 mb-1.5">Sync registrations</h3>
        <p className="text-sm text-gray-500 dark:text-gray-400 leading-relaxed">Push and pull registrant data between Swoogo and your CRM, marketing platform, or internal systems.</p>
      </div>

      <div className="rounded-2xl border border-gray-200 dark:border-white/10 bg-white/60 dark:bg-white/[0.03] p-5 backdrop-blur-sm">
        <div className="w-8 h-8 rounded-lg bg-[#726BEA]/10 dark:bg-[#726BEA]/20 flex items-center justify-center mb-3">
          <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="#726BEA" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round">
            <path d="M13 2L3 14h9l-1 8 10-12h-9l1-8z" />
          </svg>
        </div>

        <h3 className="text-sm font-semibold text-gray-900 dark:text-zinc-50 mb-1.5">Automate workflows</h3>
        <p className="text-sm text-gray-500 dark:text-gray-400 leading-relaxed">Use webhooks and the API to trigger actions when registrants sign up, check in, or update their information.</p>
      </div>

      <div className="rounded-2xl border border-gray-200 dark:border-white/10 bg-white/60 dark:bg-white/[0.03] p-5 backdrop-blur-sm">
        <div className="w-8 h-8 rounded-lg bg-[#726BEA]/10 dark:bg-[#726BEA]/20 flex items-center justify-center mb-3">
          <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="#726BEA" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round">
            <rect x="3" y="3" width="18" height="18" rx="2" />

            <line x1="7" y1="17" x2="7" y2="13" />

            <line x1="12" y1="17" x2="12" y2="9" />

            <line x1="17" y1="17" x2="17" y2="11" />
          </svg>
        </div>

        <h3 className="text-sm font-semibold text-gray-900 dark:text-zinc-50 mb-1.5">Build custom reports</h3>
        <p className="text-sm text-gray-500 dark:text-gray-400 leading-relaxed">Query session attendance, financial transactions, and registration data for custom analytics and dashboards.</p>
      </div>
    </div>

    <h2 className="text-sm font-semibold text-gray-400 dark:text-gray-500 uppercase tracking-widest mb-6">Quick links</h2>

    <div className="grid grid-cols-1 md:grid-cols-2 gap-3 pb-8">
      <a href="/api-reference/introduction#getting-started" className="group flex items-center gap-4 rounded-xl border border-gray-200 dark:border-white/10 bg-white/60 dark:bg-white/[0.03] px-5 py-4 transition-all hover:border-[#726BEA]/30 no-underline backdrop-blur-sm">
        <div className="w-8 h-8 rounded-lg bg-gray-100 dark:bg-white/10 flex items-center justify-center flex-shrink-0">
          <svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="#726BEA" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round">
            <rect x="3" y="11" width="18" height="11" rx="2" ry="2" />

            <path d="M7 11V7a5 5 0 0 1 10 0v4" />
          </svg>
        </div>

        <div>
          <div className="text-sm font-medium text-gray-900 dark:text-zinc-50">Authentication</div>
          <div className="text-xs text-gray-500 dark:text-gray-400">OAuth 2.0 with cURL, Node.js, and Python examples</div>
        </div>
      </a>

      <a href="/api-reference/rate-limits" className="group flex items-center gap-4 rounded-xl border border-gray-200 dark:border-white/10 bg-white/60 dark:bg-white/[0.03] px-5 py-4 transition-all hover:border-[#726BEA]/30 no-underline backdrop-blur-sm">
        <div className="w-8 h-8 rounded-lg bg-gray-100 dark:bg-white/10 flex items-center justify-center flex-shrink-0">
          <svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="#726BEA" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round">
            <path d="M12 2v4" />

            <path d="M12 18v4" />

            <path d="M4.93 4.93l2.83 2.83" />

            <path d="M16.24 16.24l2.83 2.83" />

            <path d="M2 12h4" />

            <path d="M18 12h4" />

            <path d="M4.93 19.07l2.83-2.83" />

            <path d="M16.24 7.76l2.83-2.83" />
          </svg>
        </div>

        <div>
          <div className="text-sm font-medium text-gray-900 dark:text-zinc-50">Rate limits</div>
          <div className="text-xs text-gray-500 dark:text-gray-400">2,000 requests per 10-minute window</div>
        </div>
      </a>

      <a href="/api-reference/formatting-conventions" className="group flex items-center gap-4 rounded-xl border border-gray-200 dark:border-white/10 bg-white/60 dark:bg-white/[0.03] px-5 py-4 transition-all hover:border-[#726BEA]/30 no-underline backdrop-blur-sm">
        <div className="w-8 h-8 rounded-lg bg-gray-100 dark:bg-white/10 flex items-center justify-center flex-shrink-0">
          <svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="#726BEA" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round">
            <path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z" />

            <polyline points="14 2 14 8 20 8" />

            <line x1="16" y1="13" x2="8" y2="13" />

            <line x1="16" y1="17" x2="8" y2="17" />
          </svg>
        </div>

        <div>
          <div className="text-sm font-medium text-gray-900 dark:text-zinc-50">Formatting conventions</div>
          <div className="text-xs text-gray-500 dark:text-gray-400">Date formats, booleans, phone numbers, and currencies</div>
        </div>
      </a>

      <a href="/api-reference/overviews/webhooks" className="group flex items-center gap-4 rounded-xl border border-gray-200 dark:border-white/10 bg-white/60 dark:bg-white/[0.03] px-5 py-4 transition-all hover:border-[#726BEA]/30 no-underline backdrop-blur-sm">
        <div className="w-8 h-8 rounded-lg bg-gray-100 dark:bg-white/10 flex items-center justify-center flex-shrink-0">
          <svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="#726BEA" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round">
            <path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71" />

            <path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71" />
          </svg>
        </div>

        <div>
          <div className="text-sm font-medium text-gray-900 dark:text-zinc-50">Webhooks</div>
          <div className="text-xs text-gray-500 dark:text-gray-400">HTTP callbacks for registrant, session, and event changes</div>
        </div>
      </a>
    </div>
  </div>
</div>
