- Home
- Resources
- Integrations
- Help Scout
Help Scout n8n integrationAutomate Help Scout with n8n.
Every reply that lands in Help Scout can start a workflow. The Help Scout n8n integration ships a node with 13 operations spread over 4 resources, conversations, customers, mailboxes and threads, plus a trigger that listens to 12 events. For support teams still copying tickets by hand.
Verified Trustpilot reviews · AI, automation & growth agency
What does the Help Scout n8n integration actually give you?
Two nodes, both shipped inside n8n. The Help Scout node calls the Mailbox API on your behalf: 13 operations spread over 4 resources, so a workflow can open a conversation, add a thread to it, read or update a customer record, and list mailboxes. The Help Scout Trigger does the opposite job. It starts a workflow the moment Help Scout fires one of its 12 events.
Start with the noisiest part of a support inbox: reporting. A workflow that begins on convo.created and writes one row per ticket into Google Sheets gives the team a live backlog without anyone touching a spreadsheet. Same trigger, different ending: push the subject and the mailbox into Slack so the channel sees new tickets before anyone opens Help Scout.
Second pattern: escalation on feedback. The satisfaction.ratings event fires when a rating comes back, and a rating is the one signal nobody wants to read a day late. Route it to a channel, or chain it into conversation.get to pull the full conversation before the alert goes out, so the person reading it has the subject and the status in front of them.
Third pattern runs the other way, from another system into Help Scout. A form submission, a billing failure, a row flagged in a sheet: the workflow calls conversation.create with a mailbox, a subject, a status and a type, then thread.create to add the message body. The ticket exists in the right mailbox with the right content, and the agent who picks it up sees a normal conversation. Pair it with Gmail when the source is a mailbox n8n already watches.
Some of what you want will sit outside the 13 operations in the catalogue. That case has a standard answer in n8n: the HTTP Request node calls any endpoint of the Help Scout API and reuses the same credential through predefined authentication, so you stay on one connection instead of managing a second one.
Two things to plan for. Reads that return lists, conversations, customers, mailboxes and threads, are paginated: Return All walks every page of the API, while leaving it off caps the run at Limit. And the 12 events are not evenly spread. Group them and the shape is clear: 10 belong to the convo family, 1 to customer, 1 to satisfaction. Three families, 12 events, so almost every trigger you build starts on a conversation. If you want the wider comparison before committing, the n8n review covers it, and the n8n training walks through building these workflows.
How do you connect Help Scout to n8n?
- 01
Create a Help Scout app
The credential supports one authentication method: OAuth2, the flow where Help Scout hands n8n a token instead of you pasting a password anywhere. You need a Help Scout account first, then an app created on the Help Scout side following their OAuth documentation. That app is what identifies n8n when the token is issued, and it is the only piece of setup that happens outside n8n.
- 02
Save the credential once in n8n
In n8n, open the Credentials menu and create a Help Scout credential, meaning the stored connection n8n reuses instead of asking you to authenticate in every node. Complete the OAuth2 flow there. One credential covers both the Help Scout node and the Help Scout Trigger, so a workflow that listens and a workflow that writes run off the same connection.
- 03
Pick a resource and run one operation
Drop the Help Scout node on the canvas, select the credential from the dropdown, then pick a resource and an operation.
mailbox.getAllis the cheapest first test: it returns your mailboxes and proves the token works. Keep the mailbox identifier it gives you, sinceconversation.createasks for Mailbox Name or ID and the node can also offer it in a list.
What starts a Help Scout workflow?
Help Scout Trigger is the node that starts a workflow when something happens in Help Scout. It listens to 12 events, listed below by family. Pick one or several, activate the workflow: n8n registers the webhook on your Help Scout account.
What you see in n8n
Every event, by family
One row per object, one chip per action. The event to tick in the node is object.action; hover a chip to read exactly when it fires.
convo.*10convo.assignedcreateddeletedmergedmovedstatustags
convo.agent. reply. created
convo.customer. reply. created
convo.note. created
customer.*1customer.created
satisfaction.*1satisfaction.ratings
Configuration notes
01Set up the Help Scout Trigger
The trigger is a webhook listener, meaning Help Scout calls an n8n URL the moment something happens rather than n8n asking every few minutes. n8n registers that URL with Help Scout when you activate the workflow, and each event arrives within seconds. No polling, no interval to tune.
Key parameters
- Events: the list of event types this trigger listens to. Twelve are available, and you tick the ones you want. Leaving too many ticked means one workflow handling unrelated payloads, so a branch per concern usually stays easier to read.
02Conversation lifecycle events
Seven of the ten convo events track what happens to a ticket itself rather than what is written in it. convo.created fires on a new conversation, convo.assigned when it lands on someone, convo.status on a status change, convo.moved when it changes mailbox, convo.tags on tagging, convo.merged when two tickets become one, and convo.deleted on removal.
convo.assigned to log who took what, or on convo.status to measure how long tickets sit before they close. Tick convo.moved alongside if your team routes between several mailboxes and you want to see where the traffic actually goes. None of these seven events carries the message text itself, only the change to the ticket record, so pair one with conversation.get when the note or reply also matters.03Reply and note events
The remaining three convo events fire on content added to a conversation. convo.customer.reply.created fires when the customer writes back, convo.agent.reply.created when an agent answers, and convo.note.created when someone adds an internal note. Splitting them matters: a customer reply and an agent reply mean opposite things for a follow-up rule.
convo.note.created feeds a channel where a mention in a note pulls a colleague in without anyone leaving Help Scout. None of the three tells you the ticket status on its own, so a workflow that also needs the status chains conversation.get right after the trigger.04Customer and satisfaction events
The last two events sit in their own families. customer.created belongs to the customer family and fires when a new customer record appears. satisfaction.ratings is the whole satisfaction family on its own and fires when a rating comes in. Add the ten conversation events and you get the full count: 10 plus 1 plus 1, 12 events across 3 families.
customer.created is the hook for onboarding, since the record exists before anyone has enriched it. Chain customer.update behind it to fill in what another system already knows. satisfaction.ratings feeds the weekly quality review, and routing it to a channel puts feedback in front of the team the day it arrives. Neither event shares fields with the ten conversation events, so a workflow branching on the family needs its own mapping from the payload.The 13 operations, one by one
The Help Scout node exposes 13 operations across 4 resources. For each one: the node as you configure it in n8n, the required fields, and our field notes.
| Resource | Create | Get | Get Many | Update | Delete | Properties |
|---|---|---|---|---|---|---|
| Conversation | ✓ | ✓ | ✓ | ✓ | ||
| Customer | ✓ | ✓ | ✓ | ✓ | ✓ | |
| Mailbox | ✓ | ✓ | ||||
| Thread | ✓ | ✓ |
Operations index
Conversation
4 operationsCreate a conversation
conversation.createWhat you see in n8n
Notes & use cases
Opens a new conversation in a mailbox and returns the conversation created, which is how an event happening elsewhere becomes a ticket an agent can work on.
Key parameters
- Mailbox Name or ID: the mailbox the conversation is created in. Pick it from the list, or pass an ID with an expression such as
{{ $json.field }}. - Status:
active,closedorpending. - Subject: the conversation subject, the line agents scan in the queue.
- Type:
chat,emailorphone. - Resolve Data: off, the response only carries the ID of the resource; on, n8n resolves the data automatically.
pending status inside the billing mailbox, subject built from the invoice reference.Delete a conversation
conversation.deleteWhat you see in n8n
Notes & use cases
Removes a conversation from Help Scout. There is no confirmation step inside the node, so whatever reaches this operation is gone from the mailbox.
Key parameters
- Conversation ID: the conversation to remove, typically carried over from an earlier node with
{{ $json.field }}.
Get a conversation
conversation.getWhat you see in n8n
Notes & use cases
Fetches one conversation by its identifier, so a workflow that only knows an ID can work with the full record.
Key parameters
- Conversation ID: the identifier of the conversation to read, often taken from the trigger payload with
{{ $json.field }}.
Get many conversations
conversation.getAllWhat you see in n8n
Notes & use cases
Lists conversations and is where reporting workflows start, because the filters do the narrowing before any data reaches n8n.
Key parameters
- Return All: on, n8n walks every page of results; off, it stops at Limit.
- Modified Since: returns only conversations modified after this date, the usual guard for a scheduled run.
- Status:
active,all,closed,open,pendingorspam. - Mailbox ID: restricts the list to one mailbox.
- Embed: set to
threadsto load sub-entities with the conversation.
Customer
5 operationsCreate a customer
customer.createWhat you see in n8n
Notes & use cases
Adds a customer record to Help Scout. No field is required, so the shape of the record is entirely yours to decide.
Key parameters
- Emails: a collection where each entry adds an email to the record.
- First Name: when set, it must be between 1 and 40 characters.
- Job Title: 60 characters maximum.
- Organization: the company the contact belongs to.
- Phones, Websites, Social Profiles, Chat Handles, Address: one collection each, added entry by entry.
Get a customer
customer.getWhat you see in n8n
Notes & use cases
Reads a single customer record and hands it to the rest of the workflow.
Key parameters
- Customer ID: the identifier of the record to read, usually inherited from a previous node as
{{ $json.field }}.
Get many customers
customer.getAllWhat you see in n8n
Notes & use cases
Returns a list of customers, with filters applied by the API rather than by a filter node further down the workflow.
Key parameters
- Return All: on, every page of customers comes back; off, the run stops at Limit.
- Query: advanced search, for anything the plain filters do not express.
- Mailbox ID: keeps only customers from one mailbox.
- Sort Field and Sort Order: order the result, for example
modifiedAtwithdesc.
Get customer properties
customer.propertiesWhat you see in n8n
Notes & use cases
Returns the customer property definitions from the account, meaning the custom fields an admin configured in Help Scout rather than the values stored on one contact. It takes no parameters at all, so you drop it in and run it.
Update a customer
customer.updateWhat you see in n8n
Notes & use cases
Edits an existing customer record. Only the fields you fill in the collection are sent, so a workflow can touch one attribute without rewriting the contact.
Key parameters
- Customer ID: the record to edit, commonly passed as
{{ $json.field }}from the node before. - Organization, Job Title, Location: the attributes most often refreshed from another system.
- Notes: free background text on the contact.
- Photo Url: the URL of the customer photo.
Mailbox
2 operationsGet a mailbox
mailbox.getWhat you see in n8n
Notes & use cases
Returns the data of one mailbox, which is what you need when a workflow has an identifier and has to describe the mailbox in something a person will read.
Key parameters
- Mailbox ID: the mailbox to read, entered directly or built with an expression.
convo.moved event tells you a ticket changed mailbox, and this operation turns the identifier in the payload into something readable before the notification goes out to the team.Get many mailboxes
mailbox.getAllWhat you see in n8n
Notes & use cases
Lists the mailboxes on the account. It is the simplest operation in the node, which makes it the natural first run after saving a credential.
Key parameters
- Return All: on, every mailbox comes back; off, the node stops at Limit.
Get all mailboxes from Help Scout, published as workflow 567.Thread
2 operationsCreate a thread
thread.createWhat you see in n8n
Notes & use cases
Adds a message to an existing conversation. This is the operation that writes actual content, where conversation.create only opens the container.
Key parameters
- Conversation ID: the conversation the thread is added to.
- Type:
chat,customer,note,phoneorreply. The choice decides whether the message reads as an internal note or as a reply. - Text: the chat text.
- Attachments: a collection where each entry carries FileName, Mime Type and Data, a Base64 encoded stream.
Get many threads
thread.getAllWhat you see in n8n
Notes & use cases
Returns the threads of one conversation, which is how a workflow reads the exchange itself rather than the ticket header.
Key parameters
- Conversation ID: the conversation whose threads you want.
- Return All: on for the entire exchange, off to stop at Limit.
Park Help Scout retro-tagged tickets for review with OpenAI and TeamRetro, workflow 18453, where Help Scout data goes through a Code node and a Basic LLM Chain with a Structured Output Parser.Need help automating Help Scout with n8n?
A person reads every message.



