Skip to main content
Using TypeScript? Check out our GraphQL SDK for a fully typed client.
Creating a thread is useful in scenarios where you want to programmatically start a support interaction. You can do this in many different scenarios but the most common use-cases are when a contact form is submitted or when you want to provide proactive support off the back of some event or error happening in your product. A thread is created with an initial ‘message’ composed out of UI components. You have full control over the structure and appearance of the message in Plain. To create a thread you need a customerId. You can get a customer id by creating the customer in Plain first.
If you’re migrating historic threads from another support provider, use importThread instead. It preserves original timestamps and won’t trigger SLAs or autoresponders.
To create a thread, you need an API key with the following permissions:
  • thread:create
  • thread:read
Mutation
Variables