Files
boc/aamos-ai-site/reality-alerts/index.html
T

214 lines
12 KiB
HTML
Raw Normal View History

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Reality Alerts API — AI-Verified Field Intelligence | AAMOS</title>
<meta name="description" content="Real-world observations from the field, AI-verified and automatically routed. REST API for municipalities, insurers, and utilities.">
<link rel="preconnect" href="https://fonts.googleapis.com">
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap" rel="stylesheet">
<style>
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
:root {
--navy: #0A2540; --blue: #635BFF; --blue-light: #7B74FF;
--gray-50: #F8FAFC; --gray-100: #F1F5F9; --gray-200: #E2E8F0;
--gray-400: #94A3B8; --gray-600: #475569; --gray-800: #1E293B; --white: #FFFFFF;
--font: 'Inter', system-ui, -apple-system, sans-serif;
}
body { font-family: var(--font); background: var(--white); color: var(--gray-800); line-height: 1.6; }
a { color: inherit; text-decoration: none; }
nav {
position: sticky; top: 0; z-index: 100;
background: rgba(255,255,255,0.95); backdrop-filter: blur(8px);
border-bottom: 1px solid var(--gray-200);
padding: 0 24px; height: 60px;
display: flex; align-items: center; justify-content: space-between;
}
.nav-logo { font-size: 18px; font-weight: 700; color: var(--navy); }
.nav-logo span { color: var(--blue); }
.nav-back { font-size: 14px; color: var(--gray-600); }
.btn-nav { background: var(--navy); color: var(--white); padding: 8px 16px; border-radius: 8px; font-weight: 600; font-size: 14px; }
.hero {
background: linear-gradient(135deg, #0d1f3c 0%, #1a3a60 100%);
color: var(--white); padding: 72px 24px 64px; text-align: center;
}
.hero-badge {
display: inline-block; background: rgba(99,91,255,0.25); color: #a5b4fc;
border: 1px solid rgba(99,91,255,0.4); border-radius: 100px;
padding: 4px 14px; font-size: 12px; font-weight: 600;
letter-spacing: 0.05em; text-transform: uppercase; margin-bottom: 20px;
}
.hero h1 { font-size: clamp(28px, 5vw, 46px); font-weight: 700; letter-spacing: -1px; line-height: 1.1; margin-bottom: 16px; }
.hero p { font-size: 17px; color: rgba(255,255,255,0.75); max-width: 500px; margin: 0 auto 32px; }
.btn-primary { background: var(--blue); color: var(--white); padding: 14px 28px; border-radius: 10px; font-size: 15px; font-weight: 600; display: inline-block; transition: background 0.15s; }
.btn-primary:hover { background: var(--blue-light); }
.content { max-width: 860px; margin: 0 auto; padding: 64px 24px; }
.block { margin-bottom: 60px; }
.block-label { font-size: 12px; font-weight: 700; color: var(--blue); letter-spacing: 0.1em; text-transform: uppercase; margin-bottom: 12px; }
.block h2 { font-size: clamp(22px, 3.5vw, 30px); font-weight: 700; letter-spacing: -0.5px; color: var(--navy); margin-bottom: 24px; }
.feature-list { display: grid; gap: 16px; }
.feature-item { display: flex; gap: 16px; align-items: flex-start; padding: 20px; background: var(--gray-50); border-radius: 12px; border: 1px solid var(--gray-200); }
.feature-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--blue); margin-top: 7px; flex-shrink: 0; }
.feature-item h4 { font-size: 15px; font-weight: 600; color: var(--navy); margin-bottom: 4px; }
.feature-item p { font-size: 14px; color: var(--gray-600); }
.code-block {
background: var(--navy); border-radius: 14px; padding: 24px;
font-family: 'SF Mono', 'Fira Code', monospace; font-size: 13px;
line-height: 1.75; color: rgba(255,255,255,0.85); overflow-x: auto;
}
.code-block .kw { color: #a5b4fc; }
.code-block .str { color: #86efac; }
.code-block .cm { color: rgba(255,255,255,0.4); }
.code-block .num { color: #fcd34d; }
.pricing-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 16px; }
.price-card { border: 1px solid var(--gray-200); border-radius: 16px; padding: 28px 24px; display: flex; flex-direction: column; }
.price-card.featured { border-color: var(--blue); box-shadow: 0 0 0 3px rgba(99,91,255,0.1); }
.price-tier { font-size: 13px; font-weight: 700; color: var(--blue); text-transform: uppercase; letter-spacing: 0.05em; margin-bottom: 8px; }
.price-amount { font-size: 32px; font-weight: 700; color: var(--navy); letter-spacing: -1px; }
.price-amount span { font-size: 15px; font-weight: 500; color: var(--gray-400); }
.price-desc { font-size: 13px; color: var(--gray-400); margin-top: 4px; margin-bottom: 20px; }
.price-features { list-style: none; display: flex; flex-direction: column; gap: 10px; flex: 1; margin-bottom: 24px; }
.price-features li { font-size: 14px; color: var(--gray-600); display: flex; align-items: center; gap: 8px; }
.price-features li::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--blue); flex-shrink: 0; }
.btn-outline { border: 1px solid var(--gray-200); border-radius: 8px; padding: 10px 16px; font-size: 14px; font-weight: 600; color: var(--navy); text-align: center; display: block; transition: border-color 0.15s; }
.btn-outline:hover { border-color: var(--blue); }
.btn-filled { background: var(--blue); border-radius: 8px; padding: 10px 16px; font-size: 14px; font-weight: 600; color: white; text-align: center; display: block; }
.cta-bottom { background: var(--navy); color: var(--white); padding: 64px 24px; text-align: center; }
.cta-bottom h2 { font-size: clamp(22px, 4vw, 32px); font-weight: 700; letter-spacing: -0.5px; margin-bottom: 14px; }
.cta-bottom p { color: rgba(255,255,255,0.7); font-size: 16px; margin-bottom: 28px; max-width: 400px; margin-left: auto; margin-right: auto; }
footer { border-top: 1px solid var(--gray-200); padding: 24px; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 12px; font-size: 13px; color: var(--gray-400); }
footer a { color: var(--gray-400); }
.footer-links { display: flex; gap: 20px; }
</style>
</head>
<body>
<nav>
<a href="/" class="nav-logo">A<span>AMOS</span></a>
<a href="/" class="nav-back">← All products</a>
<a href="#" class="btn-nav">Get API key</a>
</nav>
<section class="hero">
<div class="hero-badge">Real-world data</div>
<h1>Reality Alerts API</h1>
<p>Real-world alerts, verified by AI, routed automatically. Field intelligence delivered to your systems in real time.</p>
<a href="#" class="btn-primary">Get API key — free tier included</a>
</section>
<div class="content">
<div class="block">
<div class="block-label">What it does</div>
<h2>Ground truth from the field. AI-verified before it reaches you.</h2>
<div class="feature-list">
<div class="feature-item">
<div class="feature-dot"></div>
<div>
<h4>AI-verified observations</h4>
<p>Every alert submitted by a field observer is validated by our AI — image quality, metadata consistency, liveness — before it reaches your endpoint.</p>
</div>
</div>
<div class="feature-item">
<div class="feature-dot"></div>
<div>
<h4>Automatic routing</h4>
<p>Alerts are matched to the responsible owner based on geolocation, category, and asset registry. No manual dispatch required.</p>
</div>
</div>
<div class="feature-item">
<div class="feature-dot"></div>
<div>
<h4>Severity scoring</h4>
<p>Each alert carries a severity score (01), category tags, and estimated urgency — ready to plug into your incident or ticketing system.</p>
</div>
</div>
<div class="feature-item">
<div class="feature-dot"></div>
<div>
<h4>Webhook delivery</h4>
<p>Configure your endpoint once. Alerts arrive as structured JSON payloads the moment they pass verification — no polling required.</p>
</div>
</div>
</div>
</div>
<div class="block">
<div class="block-label">API example</div>
<h2>Subscribe to alerts. Receive verified reality.</h2>
<div class="code-block">
<span class="cm"># Register your webhook endpoint</span><br>
<span class="kw">curl</span> -X POST https://api.aamos.ai/v1/reality-alerts/subscriptions \<br>
&nbsp;&nbsp;-H <span class="str">"Authorization: Bearer ***"</span> \<br>
&nbsp;&nbsp;-H <span class="str">"Content-Type: application/json"</span> \<br>
&nbsp;&nbsp;-d '{<br>
&nbsp;&nbsp;&nbsp;&nbsp;<span class="str">"webhook_url"</span>: <span class="str">"https://yourapp.com/webhooks/alerts"</span>,<br>
&nbsp;&nbsp;&nbsp;&nbsp;<span class="str">"categories"</span>: [<span class="str">"infrastructure"</span>, <span class="str">"flooding"</span>, <span class="str">"damage"</span>],<br>
&nbsp;&nbsp;&nbsp;&nbsp;<span class="str">"bbox"</span>: [<span class="num">17.8</span>, <span class="num">59.2</span>, <span class="num">18.3</span>, <span class="num">59.5</span>]<br>
&nbsp;&nbsp;}'<br><br>
<span class="cm"># Incoming webhook payload (verified alert)</span><br>
{<br>
&nbsp;&nbsp;<span class="str">"alert_id"</span>: <span class="str">"alt_9x8y7z"</span>,<br>
&nbsp;&nbsp;<span class="str">"category"</span>: <span class="str">"infrastructure"</span>,<br>
&nbsp;&nbsp;<span class="str">"subcategory"</span>: <span class="str">"road_damage"</span>,<br>
&nbsp;&nbsp;<span class="str">"severity"</span>: <span class="num">0.87</span>,<br>
&nbsp;&nbsp;<span class="str">"verified"</span>: <span class="kw">true</span>,<br>
&nbsp;&nbsp;<span class="str">"lat"</span>: <span class="num">59.3341</span>, <span class="str">"lng"</span>: <span class="num">18.0632</span>,<br>
&nbsp;&nbsp;<span class="str">"image_url"</span>: <span class="str">"https://cdn.aamos.ai/..."</span>,<br>
&nbsp;&nbsp;<span class="str">"responsible_entity"</span>: <span class="str">"Stockholm municipality"</span>,<br>
&nbsp;&nbsp;<span class="str">"observed_at"</span>: <span class="str">"2026-07-11T09:14:02Z"</span><br>
}
</div>
</div>
<div class="block">
<div class="block-label">Pricing</div>
<h2>Pay for verified alerts. Not noise.</h2>
<div class="pricing-grid">
<div class="price-card">
<div class="price-tier">Free</div>
<div class="price-amount">$0 <span>/mo</span></div>
<div class="price-desc">50 verified alerts / month</div>
<ul class="price-features">
<li>50 alerts / month</li>
<li>Webhook delivery</li>
<li>All categories</li>
<li>Community support</li>
</ul>
<a href="#" class="btn-outline">Get started</a>
</div>
<div class="price-card featured">
<div class="price-tier">Starter</div>
<div class="price-amount">$149 <span>/mo</span></div>
<div class="price-desc">2,000 verified alerts / month</div>
<ul class="price-features">
<li>2,000 alerts / month</li>
<li>Geographic bounding box filter</li>
<li>Category + severity filters</li>
<li>Asset registry integration</li>
<li>Email support</li>
</ul>
<a href="#" class="btn-filled">Get started</a>
</div>
<div class="price-card">
<div class="price-tier">Pro</div>
<div class="price-amount">$699 <span>/mo</span></div>
<div class="price-desc">Unlimited alerts + SLA</div>
<ul class="price-features">
<li>Unlimited alerts</li>
<li>Custom routing rules</li>
<li>Priority queue</li>
<li>99.9% SLA</li>
<li>Dedicated support</li>
</ul>
<a href="#" class="btn-outline">Get started</a>
</div>
</div>
</div>
</div>
<section class="cta-bottom">
<h2>Ready to receive verified field intelligence?</h2>
<p>Set up your webhook. Start receiving alerts in minutes.</p>
<a href="#" class="btn-primary">Get API key</a>
</section>
<footer>
<span>© 2026 AAMOS / Landvex AB</span>
<div class="footer-links"><a href="#">Privacy</a><a href="#">Terms</a><a href="/">Home</a></div>
</footer>
</body>
</html>