AI to query HaloPSA

I discovered n8n today and have signed up for the trial and the community.
I am not a developer, so I’m not sure if this is over my head, but I’ll give it a go.
I would like to use AI to query HaloPSA.
Last week I used the HaloPSA app client ID and secret to connect Microsoft Copilot Studio to our HaloPSA.
I then was able to ask for HaloPSA KB articles, inside a Microsoft Teams chat, but discovered it only ever returns 5, never more - a limitation of the inbuilt HaloPSA MCP server I’m told.
I also could not get that setup to return any ticket.
This week I found StackJack, which has 113 tools for HaloPSA, which seems better than the 20 tools that appear to be the default for HaloPSA (5 per category: Ticket, User, Client, Site).
I soon discovered it doesn’t work well with Copilot Studio (I had no luck at all getting that to work).
Today I discovered n8n and I’m wondering if I could use n8n (with whatever else I need) to query HaloPSA about tickets and KB articles.
I’ve tried multiple times today to build something in n8n to query HaloPSA, but without luck.
I was able to connect n8n to our HaloPSA using the HaloPSA app client ID and secret, but I don’t know how to build the rest.
Ideally, I would like the final solution to be an app inside Microsoft Teams, but for now I’m happy with anything at all that works.
Any thoughts?
Thanks

Describe the problem/error/question

What is the error message (if any)?

Please share your workflow

(Select the nodes on your canvas and use the keyboard shortcuts CMD+C/CTRL+C and CMD+V/CTRL+V to copy and paste the workflow.)

Share the output returned by the last node

Information on your n8n setup

  • n8n version:
  • Database (default: SQLite):
  • n8n EXECUTIONS_PROCESS setting (default: own, main):
  • Running n8n via (Docker, npm, n8n cloud, desktop app):
  • Operating system:

hi @n8n-newbietoo
Yes, you can do this in n8n.

I’d start by getting a simple workflow working first, like querying KB articles or fetching a ticket. Once that part is reliable, then I’d add the AI layer on top. I also wouldn’t start with Teams. I’d get everything working inside n8n first, then connect it to Teams afterward.The key is to build it step by step instead of trying to do everything at once.

Thanks for that reply.

I agree with what you said.

That is the approach I have been trying.

However, even with a simple workflow and correct permissions in HaloPSA I get no data returned in n8n. The workflow runs and says successful.

Yes, it sounds simple, but the reality is a different story.

I have deleted all my attempted workflows so far, as I need to better understand the basics.

Thanks

Have you verified whether you’re using the correct HaloPSA authentication method for n8n, rather than focusing on the AI part?

From my point of view, the first step would be to create a fresh HaloPSA credential in n8n using the auth method n8n expects, then test a single HaloPSA node with a very simple read operation like Get ticket or Get client. If that returns data, then the connection is good and you can build from there. If it still returns nothing, then the issue is in the HaloPSA connection itself, not in AI, Teams, or workflow design. Once the plain HaloPSA node is returning data reliably, only then would I add the AI Agent on top of it. n8n’s AI Agent is designed to call tools, but it only becomes useful after the underlying tool is already working.

Hi,
When you say “create a fresh HaloPSA credential in n8n using the auth method n8n expects”, how do I find out what auth method that is?

Thanks

have you checked what halopsa is actually returning? try adding a debug node right after the http request to see whats coming back. might be empty or structured differently than you expect. whats the raw output look like?

I haven’t tried using a HTTP request yet (never used one before, but happy to learn).
I am trying to use the n8n provided dedicated HaloPSA node

ah gotcha, sorry for assuming http request! the same idea applies with the built-in node though — when you run the workflow, click on it and check what the actual output looks like. does it come back empty or show something unexpected?

Not sure how to drive a http request

If I add one, with correct creds to access HaloPSA, the workflow succeeds, but nothing is returned

How could I bolt on an AI chat to ask questions like ‘Find KB articles about shared drives”?

I only want to query the internal HaloPSA and nothing out on the Internet.

Thanks

If I use the n8n provided HaloPSA node, and I just request a single ticket ID, that succeeds

But I would like to ask questions and have KB articles or tickets returned.

No worries! Before jumping to HTTP Request, try this: click on your HaloPSA node in the editor, run the workflow, then right-click on the node output and check what data it’s actually returning. Is it empty, or structured differently than expected? That’ll tell us if the node is working correctly or if there’s an auth issue. Once we know what’s coming back, we can decide the next step.

Good progress! For the AI chat part, you’d add an AI Agent node that calls the HaloPSA node as a tool. The AI Agent will take the user’s question (“Find KB articles about shared drives”), call the HaloPSA tool with the right parameters, and return the results. But first, make sure the basic HaloPSA node + HTTP Request are returning reliable data—then the AI layer becomes much simpler to add. Want to post your current workflow setup so we can debug the data issue first?

hi @n8n-newbietoo
don’t start with an AI chat agent first. Start by building a normal HaloPSA search workflow that returns KB articles/tickets for a text query. Once that works, put Chat Trigger + AI Agent in front of it, or use RAG if you want natural-language semantic search.

@n8n-newbietoo
What I mean is that I’d create a new HaloPSA credential in n8n and use the fields in that form as the source of truth. That shows me the exact auth method the node expects.
or HaloPSA, I’d expect to use OAuth2 with the client credentials flow, with the values coming from the HaloPSA API details page.
If I already had the HaloPSA node working, I’d reuse that same credential in the HTTP Request node with “Predefined Credential Type”, because that’s the safest way to avoid manually building headers or tokens.

Thanks all.

I’ve found what I’m looking for, which was a way to use an interactive AI chat (that actually worked) to query and control HaloPSA.

Connect StackJack to HaloPSA, then connect Claude to StackJack.

That’s it!

Start asking questions in Claude Desktop.

It does everything I want and so much more!

Incredibly powerful!

If I ever want an automated workflow, I’ll come to n8n

Thanks

1 Like

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.