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

# Build with momoGood

> One ecosystem. Three product APIs. A unified developer experience for charities, donors, and the events they run.

<div role="main" className="momo-landing">
  <div className="hero-h">
    <span className="hero-eyebrow"><span className="dot" />momoGood developer platform · v1</span>
    <h1>Build with <span className="accent">momoGood</span>.<br />One ecosystem. Three product APIs.</h1>

    <p className="tag">
      Reach donors over SMS, run gala auctions, and pull unified analytics — each through its own
      purpose-built API. We keep the systems separate so each one stays great. We unify the
      developer experience so you only learn it once.
    </p>

    <div className="hero-cta">
      <a className="pri-btn" href="/messaging/v2-api-reference/introduction">
        Start building

        <svg width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2">
          <path d="M5 12h14M13 5l7 7-7 7" />
        </svg>
      </a>

      <span className="status-pill"><span className="pulse" />All systems operational</span>
    </div>
  </div>

  <h2>Choose a product</h2>
  <p className="section-lede">Each API has its own routes, auth model, and operational SLAs. Click in to browse the reference.</p>

  <div className="prod-grid">
    <a className="prod-card messaging" href="/messaging/v2-api-reference/introduction">
      <span className="prod-eyebrow">Product API · Messaging</span>
      <div className="prod-name">Messaging</div>
      <p className="prod-desc">SMS broadcasts, two-way replies, subscriber lists, and keyword automation. Built for high-volume, compliant US/CA messaging.</p>

      <div className="prod-routes">
        <div className="rt"><span>POST</span><span>/v2/messages</span></div>
        <div className="rt"><span>GET</span><span>/v2/lists</span></div>
        <div className="rt"><span>PUT</span><span>/v2/lists/{`{id}`}/keywords</span></div>
      </div>

      <span className="prod-foot">Browse reference →</span>
    </a>

    <a className="prod-card events" href="/events-auctions/overview">
      <span className="prod-eyebrow">Product API · Events & Auctions</span>
      <div className="prod-name">Events & Auctions</div>
      <p className="prod-desc">Read-only export of event metadata, lot catalogs, guests, and committed purchases. Ideal for keeping a downstream CRM or warehouse in sync.</p>

      <div className="prod-routes">
        <div className="rt"><span>GET</span><span>/events/v1/events</span></div>
        <div className="rt"><span>GET</span><span>/events/v1/events/{`{id}`}/guests</span></div>
        <div className="rt"><span>GET</span><span>/events/v1/events/{`{id}`}/purchases</span></div>
      </div>

      <span className="prod-foot">Browse reference →</span>
    </a>

    <a className="prod-card datahub" href="/data-hub/introduction">
      <span className="prod-eyebrow">Product API · Data Hub</span>
      <div className="prod-name">Data Hub</div>
      <p className="prod-desc">Joined-up reporting across messaging and events. Donor profiles, audience insights, and scheduled exports — by SFTP, S3, or webhook.</p>

      <div className="prod-routes">
        <div className="rt"><span>GET</span><span>/v1/reports/{`{id}`}</span></div>
        <div className="rt"><span>POST</span><span>/v1/exports</span></div>
        <div className="rt"><span>GET</span><span>/v1/donors/{`{id}`}</span></div>
      </div>

      <span className="prod-foot">Browse reference →</span>
    </a>
  </div>

  <h2>How the platform fits together</h2>
  <p className="section-lede">Each product API is its own service with its own routes and SLAs. They share a developer portal, a single brand, and a small set of conventions — not a backend.</p>

  <div className="arch">
    <div className="arch-banner">
      <svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="1.8">
        <circle cx="12" cy="12" r="9" />

        <path d="M12 8.5v.01M11 12h1.5v5" />
      </svg>

      <span><strong>One developer ecosystem, multiple product APIs.</strong> Not a unified backend — each system below preserves its own routes, auth, and operational model.</span>
    </div>

    <div className="arch-lane">
      <div className="core">
        <div className="label">Your app</div>
        <div className="name">Integration</div>
        <div className="role">CRM, warehouse, ETL, internal tool</div>
      </div>

      <div className="connector" />

      <div className="stack">
        <div className="node">
          <div className="head">
            <span className="swatch" style={{ background: "var(--brand-coral-500)" }} />

            <span className="name">Messaging</span>
          </div>

          <div className="api">api.momogood.com/messaging/v2</div>
          <div className="tag">HTTP Basic · REST</div>
        </div>

        <div className="node">
          <div className="head">
            <span className="swatch" style={{ background: "var(--brand-crimson-500)" }} />

            <span className="name">Events & Auctions</span>
          </div>

          <div className="api">api.momogood.com/events/v1</div>
          <div className="tag">Service user · Polling</div>
        </div>

        <div className="node">
          <div className="head">
            <span className="swatch" style={{ background: "#4a6cc9" }} />

            <span className="name">Data Hub</span>
          </div>

          <div className="api">api.momogood.com/datahub/v1</div>
          <div className="tag">OAuth 2.0 · Scoped</div>
        </div>
      </div>
    </div>
  </div>

  <div className="stat-row">
    <div className="stat"><div className="num">3</div><div className="lab">Product APIs</div></div>
    <div className="stat"><div className="num">58</div><div className="lab">Endpoints</div></div>
    <div className="stat"><div className="num">99.97%</div><div className="lab">12-mo uptime</div></div>
    <div className="stat"><div className="num">8</div><div className="lab">Webhook events</div></div>
  </div>
</div>
