Intry

Welcome

Start here for Intry developer documentation.

What you will find here

Intry connects visitors at the door with residents on their phones: carrier voice (Twilio/Telnyx), Knock push notifications, approve/deny flows, and a full audit trail. This site documents how the Intry Core API (Express + Prisma + PostgreSQL), admin tooling, mobile (Expo), and resident portal (Next.js + Clerk) fit together.

Repository entry points

AreaLocationNotes
Core APIsrc/server.ts, src/routes/Voice webhooks + v1 + admin
Admin APIsrc/routes/admin/WorkOS/Clerk + Unkey; X-Admin-Env
Schemaprisma/schema.prismaSource of truth for models
Admin UItools/intry-admin/Express proxy + Clerk gateway
Portaltools/intry-portal/Next.js + Clerk + i18n
Mobiletools/intry-app/Expo / React Native + Clerk
MCPtools/intry-mcp/Cursor / agent integration
Help centertools/intry-support/Resident/PM support docs

Conventions

  • IDs: UUIDs generated by the database — do not invent IDs on create.
  • Lists: Legacy { "<entityPlural>": [...], "total", "limit", "offset" } or newer { data, meta?, error? }.
  • Field names: Use exact Prisma names (unitLabel, e164, durationSec).

Living docs

These pages track the intry-mvp monorepo. Deep runbooks live in repo docs/; this site holds curated summaries. When behavior diverges, prefer code and OpenAPI.


Last verified: 2026-06-21 (commit 293c4a7)

On this page