Reference
15 routes. Secrets live only in server-side environment variables; the browser holds none. Manual refreshes are limited to one per 10 minutes. Each line says what the route does in plain words: click it for who can call it, what you send, what comes back and the safety limits.
Names of configured integrations only: secret values never leave the server.
Supabase Postgres holds investors, signals and runs.
Gemini Flash reads and judges the evidence.
A second route to the same Gemini Flash model, used only if the first fails.
Tavily finds public pages about each investor.
Fills your name and pitch into each draft. It never sends mail.
The meeting link added to every draft.
The daily report to your phone.
Starts the Monday and Thursday refresh.
Open demo mode: no passcode needed.
Health, the scheduled and manual refresh, and re-scoring.
The same refresh, started by you from the page. It is limited to one every 10 minutes so the free search credits last.
{ "linkedin": true } (optional; roughly doubles the search credits this run uses)curl -X POST -H "x-admin-passcode: …" https://…/api/refreshThe columns a refresh can never write.
Edits only the columns that belong to you: relationship status, last contact date, contact history and personal notes. The refresh can never write these.
{ "relationship_status"?, "last_contact_date"?: "YYYY-MM-DD"|null, "add_contact"?: { date?, channel?, note }, "personal_notes"?: string|null } (strict: any other key is rejected)Add a startup, its rubric and its evaluation.
Saves a new startup and asks Gemini to draft its scoring rubric. If Gemini is down, a plain default rubric is used and labelled.
{ "name", "pitch", "sector", "stage": "pre_seed"|"seed"|"series_a"|"series_b_plus", "geography"?, "round_size"?, "ask"? }Gemini reads the evidence already collected and judges it for this startup, then fixed rules score every investor. No web search is run.
Saves your changes to a startup's rubric, or asks Gemini for a new one. Number changes re-score instantly.
{ "rubric": { ... } } or { "action": "regenerate" }Removes a startup with its rubric and scores. The shared investors and evidence stay.
Synthetic accounts only: real data is never touched.
Deletes the labelled demo investors and creates them again. Real investors are never touched.
Pretends to run a refresh on the demo accounts only: no searches, no AI, no credits.