insanehome

Developers

Your CRM,
your stack.

REST endpoints, session auth, and Twilio voice callbacks today. Build on your CRM data without a proprietary query language.

Headless CRM architecture

Treat insanehome as your customer data backend. Grids are relational tables. Projects are isolated workspaces. Everything is accessible via REST—no proprietary query language required.

REST APIJSON payloadsTwilio callbacksSession auth
Example request
curl -X GET \
  'https://<your-worker-origin>/api/project-grid?projectId=...' \
  -H 'Cookie: ih_session=...' \
  -H 'Content-Type: application/json'

// Response
{
  "columns": [...],
  "rows": [...],
  "updatedAt": "2026-06-18T12:00:00Z"
}

Authentication

insanehome uses session-based authentication today. Sign in via the web app or Google OAuth—your session cookie is sent automatically on API requests from the browser. Server-to-server integrations should forward the session cookie or authenticate through the same auth endpoints the app uses.

Session cookies

After sign-in, API requests include an HTTP-only session cookie scoped to your domain. No Bearer token is required for browser-based access.

Auth endpoints

Use /api/auth/* for email and Google flows. Workspace access is enforced per session—requests outside your workspace return 403.

REST API

Core endpoints that ship today. All routes run on your worker origin—the same host as the web app.

MethodEndpoint
GET/api/account-projects
GET/PATCH/api/project
GET/PATCH/api/project-grid
GET/api/project-grid/live
POST/api/twilio/initiate-call
POST/api/twilio/*
POST/api/billing-checkout
POST/api/auth/*

Webhooks

Twilio voice callbacks are wired today. Generic record webhooks with HMAC verification are on the roadmap.

Available now — Twilio

call.initiated
call.completed
call.recording.ready
call.transcription.ready
call.status.updated

Coming soon — Record events

record.created
record.updated
record.deleted
automation.triggered
workspace.member.added

Twilio callback payload

{
  "CallSid": "CA...",
  "CallStatus": "completed",
  "RecordingUrl": "https://...",
  "projectId": "proj_xyz789"
}

Twilio callbacks POST to your worker origin. Configure voice webhooks in your Twilio console to point at /api/twilio/* routes.

Integration surface

Connect insanehome to the tools you already use.

Twilio Voice

Outbound calls, recordings, and transcription status webhooks—available today.

Grid API

Programmatic read/write access to your relational data model.

Session Auth

Cookie-based authentication scoped to your workspace.

Billing API

Stripe checkout integration for plan upgrades.

Custom Interfaces

Embed React-based views inside project workspaces.

Record Webhooks

Generic HMAC-signed webhooks for record events—on the roadmap.

Coming soon

Official SDK

TypeScript and Python client libraries are in active development. Join the waitlist to get early access and shape the API ergonomics.

Join waitlist
import { Insanehome } from '@insanehome/sdk';

const client = new Insanehome({ cookie: process.env.IH_SESSION });
const grid = await client.projectGrid.get({ projectId: '...' });

Start building today

API access included on all paid plans. Free tier includes read-only endpoints.