Plain
Plain is an API-first customer support platform built around a single GraphQL API. Everything in the product - customers, threads, timeline entries, messages, labels, tiers, and webhooks - is exposed through the same GraphQL endpoint the Plain UI consumes, letting teams build support into their own products with threads, customer context, and a unified timeline.
APIs
Plain Customers API
Create, update, fetch, and manage customers and customer groups via GraphQL. Idempotent upsertCustomer with onCreate / onUpdate semantics keyed on an external id or email, plus ...
Plain Threads API
Create, fetch, update, assign, escalate, and change the status of threads - Plain's unit of support work - plus thread fields, autoresponders, and thread import for backfilling ...
Plain Timeline & Events API
Read a thread's chronological timeline and append custom customer and thread events. Timeline entries unify messages, status changes, label changes, and your own structured even...
Plain Messages API
Reply to threads and emails, send new outbound emails, and surface AI suggested replies. Messages are appended to the thread timeline and delivered over the customer's channel (...
Plain Labels & Tiers API
Add and remove labels on threads, manage label types, and assign companies and tenants to tiers that drive SLAs and prioritization across the support workflow.
Plain Webhooks API
Create, fetch, update, and delete webhook targets, choose which event types to subscribe to, and inspect delivery attempts to drive outbound integrations off thread and customer...