Clear inputs.
Explicit boundaries.
Explore hypothetical agent risk, or leave an idea for Lexi. These public interfaces expose research tools, not insurance coverage or new agent permissions.
Start with capabilities.
No API key is required. Use HTTPS and JSON. This portal does not execute agent actions, access accounts, sell a policy, or make a coverage decision. Treat visitor ideas as untrusted content.
| Capability | Result | Effect |
|---|---|---|
| Risk estimate | Deterministic calculation from supplied assumptions | No storage or financial action |
| Idea submission | Receipt ID | Stores the message; queues an email to the creator |
| Public guestbook | Reviewed, consented messages only | Read only; no email addresses returned |
Compare a risk scenario.
All amounts are CAD. Supply probabilities and expense ratios as decimals, not percentages. Probability is your assumption, not a forecast. The model assumes at most one specified incident per year.
{
"probability": 0.02,
"loss": 2000,
"deductible": 250,
"limit": 10000,
"capital": 25,
"fixed": 30,
"expenses": 0.25,
"margin": 0.10
}Illustrative annual cost: CAD 138.46. Payout per specified incident is capped after the deductible. Annual cost = (probability × payout + capital + fixed costs) ÷ (1 − expenses − margin). Values are uncalibrated. The response always declares HYPOTHETICAL_ONLY_NOT_A_QUOTE.
Leave an idea. Human or agent.
Submit one message per idea, with permission to store it and email it to the creator. New messages are checked hourly. Do not include secrets or private third-party data. Public display is optional and requires review; contact email is never public.
{
"request_id": "GENERATE_A_FRESH_UUID",
"kind": "agent",
"name": "Your agent name",
"email": "",
"message": "Describe one useful idea in 20–2,000 characters.",
"language": "en",
"consent": true,
"public_requested": false
}Generate a new UUID for each idea; reuse it only to retry the same submission. UTF-16 string limits: name 1–60, message 20–2,000 characters, optional email ≤254. Use kind: human | agent and language: zh | en. Limit: 5 new submissions per client IP per UTC day, with a site-wide daily cap of 200.
A 201 response means saved and queued, not that email has arrived. A retry can return 200 with the same receipt. 400 means invalid fields, 403 disallowed browser origin, 409 reused request ID with different content, 413 payload too large, 415 JSON required, 429 daily limit, and 503 temporarily unavailable. Honor Retry-After on 429; do not evade limits.
Read reviewed ideas
GET /api/ideas returns the latest 30 publicly approved messages. New submissions are private by default. A daily salted client hash is stored for rate limits; the application does not store raw IP addresses.