Docs

Meeting notes

Structured meeting notes with attendees, decisions, and action items. Shareable link.

Publish via ShipPage

Terminal
curl -X POST https://shippage.ai/v1/publish \
  -H "Content-Type: application/json" \
  -d @- <<'JSON'
{
  "title": "Meeting notes",
  "public": true,
  "html": "<!DOCTYPE html><html lang=\"en\"><head><meta charset=\"UTF-8\"><meta name=\"viewport\" content=\"width=device-width, initial-scale=1\"><title>Meeting notes — 2026-04-19</title><style>\n  *, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }\n  body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; line-height: 1.6; color: #0f172a; background: #fff; }\n  h1, h2, h3 { letter-spacing: -0.02em; }\n  a { color: #2563eb; }\n</style><style>\n      .wrap { max-width: 720px; margin: 0 auto; padding: 40px 24px; }\n      header { border-bottom: 1px solid #e2e8f0; padding-bottom: 16px; margin-bottom: 24px; }\n      header h1 { font-size: 26px; font-weight: 700; }\n      header .meta { color: #64748b; font-size: 14px; margin-top: 8px; display: flex; gap: 16px; flex-wrap: wrap; }\n      h2 { font-size: 13px; text-transform: uppercase; letter-spacing: 0.1em; color: #64748b; margin: 24px 0 12px; }\n      .attendees { display: flex; flex-wrap: wrap; gap: 8px; }\n      .pill { background: #f1f5f9; padding: 4px 10px; border-radius: 999px; font-size: 13px; color: #334155; }\n      .decision { background: #ecfccb; border-left: 3px solid #84cc16; padding: 12px 16px; border-radius: 4px; margin-bottom: 8px; font-size: 14px; color: #365314; }\n      .action { padding: 10px 0; border-bottom: 1px solid #e2e8f0; display: flex; gap: 12px; align-items: start; font-size: 14px; }\n      .action input { margin-top: 4px; }\n      .action .owner { color: #2563eb; font-weight: 500; }\n      .action .due { color: #94a3b8; font-size: 12px; margin-left: auto; }\n      .notes { font-size: 14px; color: #334155; line-height: 1.7; }\n      .notes ul { margin: 8px 0 16px 20px; }\n    </style></head><body><div class=\"wrap\">\n      <header><h1>Pricing strategy sync</h1><div class=\"meta\"><span>April 19, 2026 · 60 min</span><span>Remote · Zoom</span></div></header>\n      <h2>Attendees</h2><div class=\"attendees\"><span class=\"pill\">Alice (Eng)</span><span class=\"pill\">Bob (Product)</span><span class=\"pill\">Carol (GTM)</span><span class=\"pill\">Dan (Finance)</span></div>\n      <h2>Decisions</h2>\n      <div class=\"decision\"><strong>Pricing:</strong> $29/mo starter, $99/mo team, custom enterprise. Launch April 30.</div>\n      <div class=\"decision\"><strong>Free tier:</strong> Kept at 20 publishes/month but upping retention to 30 days.</div>\n      <h2>Action items</h2>\n      <div class=\"action\"><input type=\"checkbox\"><div>Write pricing blog post <span class=\"owner\">— Carol</span></div><span class=\"due\">Apr 24</span></div>\n      <div class=\"action\"><input type=\"checkbox\"><div>Build Stripe checkout flow <span class=\"owner\">— Alice</span></div><span class=\"due\">Apr 28</span></div>\n      <div class=\"action\"><input type=\"checkbox\"><div>Update FAQ + landing page <span class=\"owner\">— Bob</span></div><span class=\"due\">Apr 30</span></div>\n      <h2>Notes</h2>\n      <div class=\"notes\"><ul>\n        <li>Team price is 3.4× starter — positioned for 3-5 person teams with a shared billing account.</li>\n        <li>Considered usage-based pricing; deferred to Q3 once we have 100+ paying customers.</li>\n        <li>Enterprise: start at $500/mo, custom SLA, SAML.</li>\n      </ul></div>\n    </div></body></html>"
}
JSON

Raw HTML

meeting-notes.html
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1"><title>Meeting notes — 2026-04-19</title><style>
  *, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }
  body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; line-height: 1.6; color: #0f172a; background: #fff; }
  h1, h2, h3 { letter-spacing: -0.02em; }
  a { color: #2563eb; }
</style><style>
      .wrap { max-width: 720px; margin: 0 auto; padding: 40px 24px; }
      header { border-bottom: 1px solid #e2e8f0; padding-bottom: 16px; margin-bottom: 24px; }
      header h1 { font-size: 26px; font-weight: 700; }
      header .meta { color: #64748b; font-size: 14px; margin-top: 8px; display: flex; gap: 16px; flex-wrap: wrap; }
      h2 { font-size: 13px; text-transform: uppercase; letter-spacing: 0.1em; color: #64748b; margin: 24px 0 12px; }
      .attendees { display: flex; flex-wrap: wrap; gap: 8px; }
      .pill { background: #f1f5f9; padding: 4px 10px; border-radius: 999px; font-size: 13px; color: #334155; }
      .decision { background: #ecfccb; border-left: 3px solid #84cc16; padding: 12px 16px; border-radius: 4px; margin-bottom: 8px; font-size: 14px; color: #365314; }
      .action { padding: 10px 0; border-bottom: 1px solid #e2e8f0; display: flex; gap: 12px; align-items: start; font-size: 14px; }
      .action input { margin-top: 4px; }
      .action .owner { color: #2563eb; font-weight: 500; }
      .action .due { color: #94a3b8; font-size: 12px; margin-left: auto; }
      .notes { font-size: 14px; color: #334155; line-height: 1.7; }
      .notes ul { margin: 8px 0 16px 20px; }
    </style></head><body><div class="wrap">
      <header><h1>Pricing strategy sync</h1><div class="meta"><span>April 19, 2026 · 60 min</span><span>Remote · Zoom</span></div></header>
      <h2>Attendees</h2><div class="attendees"><span class="pill">Alice (Eng)</span><span class="pill">Bob (Product)</span><span class="pill">Carol (GTM)</span><span class="pill">Dan (Finance)</span></div>
      <h2>Decisions</h2>
      <div class="decision"><strong>Pricing:</strong> $29/mo starter, $99/mo team, custom enterprise. Launch April 30.</div>
      <div class="decision"><strong>Free tier:</strong> Kept at 20 publishes/month but upping retention to 30 days.</div>
      <h2>Action items</h2>
      <div class="action"><input type="checkbox"><div>Write pricing blog post <span class="owner">— Carol</span></div><span class="due">Apr 24</span></div>
      <div class="action"><input type="checkbox"><div>Build Stripe checkout flow <span class="owner">— Alice</span></div><span class="due">Apr 28</span></div>
      <div class="action"><input type="checkbox"><div>Update FAQ + landing page <span class="owner">— Bob</span></div><span class="due">Apr 30</span></div>
      <h2>Notes</h2>
      <div class="notes"><ul>
        <li>Team price is 3.4× starter — positioned for 3-5 person teams with a shared billing account.</li>
        <li>Considered usage-based pricing; deferred to Q3 once we have 100+ paying customers.</li>
        <li>Enterprise: start at $500/mo, custom SLA, SAML.</li>
      </ul></div>
    </div></body></html>