Drop a script tag on your site, your team answers chats from a dashboard. No Intercom account, no $74/mo per seat. Your conversations stay on your server.
Every operation in Parlor is available through a JSON REST API. No SDK required — use curl, fetch, or any HTTP client.
GET /api/conversations — list all conversations with optional search and filter query parametersPOST /api/conversations — create a new conversation recordGET /api/conversations/{id} — retrieve a single conversation by IDPUT /api/conversations/{id} — update an existing conversationDELETE /api/conversations/{id} — remove a conversationGET /api/stats — aggregated statistics with status breakdownGET /api/health — health check endpoint for monitoringPrivacy-conscious teams often build internal conversations workflows in Notion or Google Sheets because the alternative is a $200/month SaaS contract. Parlor gives you a purpose-built tool at a fraction of the cost, running on infrastructure you already control.
Deploy Parlor as a systemd service, a Docker container, or a bare process behind tmux. It reads two environment variables: PORT and DATA_DIR. Everything else is self-contained. The /api/health endpoint returns the service status and conversations count, which you can wire into your existing monitoring stack.
A regulated company runs Parlor inside their air-gapped network. No data leaves the building. Compliance auditors can inspect the SQLite file directly. When the team needs a report, they query the API and format the output however the auditor expects.
GET /api/conversations — List all conversations. Supports ?q=keyword for search and ?status=value for filteringPOST /api/conversations — Create a new conversation. Send JSON with at least visitor_nameGET /api/conversations/{id} — Fetch one conversation by IDPUT /api/conversations/{id} — Update fields on an existing conversationDELETE /api/conversations/{id} — Remove a conversationGET /api/stats — Returns total count and breakdown by statusGET /api/health — Returns {"status":"ok"} for uptime monitoringSelf-hosted live chat widget. Self-hosted on your infrastructure. Your data never leaves your server.
curl -fsSL https://stockyard.dev/install.sh | sh -s -- --tool parlor
PORT=9790 ./parlor
http://localhost:9790
Single binary. Embedded SQLite. No Docker. No database. No dependencies.
Your license key arrives by email within 5 minutes of checkout. Set it as an environment variable and restart the binary.
export PARLOR_LICENSE_KEY=stockyard_xxxxxxxxxxxxxxxxxxxx ./parlor
No cloud connectivity required. The binary validates the key offline with Ed25519 signatures.