HappyFox logo HappyFox automation · runs daily

Triage new HappyFox tickets with AI

Overnight tickets collect in the Unresponded Tickets queue, and every morning someone opens each one to read it, pick a priority and an owner and add a tag before anybody can start answering.

Cotlet does it in your own HappyFox account with list_queues, search_tickets, get_ticket, list_priorities, list_agents, update_ticket and add_private_note, called by your AI agent, an n8n workflow or a script.

Hosted · nothing to install or maintain

Can HappyFox do this on its own?

HappyFox Smart Rules act on conditions you define, and bulk actions apply one set of values to the tickets you select (checked 20 Oct 2026). Both apply values you decided in advance. Neither reads a ticket and chooses the values by what the customer wrote. The API sets the same fields, but you write the loop and look up the IDs yourself.

How you do it in HappyFox today

  1. An agent opens the Unresponded Tickets queue, one of the four ready-made queues next to Pending Tickets, All Tickets and Assigned to Me.
  2. The agent opens each ticket, reads the first message and sets status, priority and assignee on it, then adds tags.
  3. For a run of similar tickets, the agent selects them in the queue and uses bulk actions, which can assign many tickets to one agent.
  4. An admin with the Manage Smart Rules permission can build rules under Automate > Smart Rules, including dynamic auto-assignment.
  5. The reading is the slow part and it repeats every morning, so triage is the first thing to slip when the queue is long.

How to triage new HappyFox tickets with AI

Prompt

Go through the Unresponded Tickets queue in HappyFox. Set priority from what the customer wrote, assign billing questions to the Billing agent, add a tag and leave a one-line private note with the reason. Leave unclear ones for me.
  1. 01

    Collect what is new

    list_queues finds the queue by name, then search_tickets reads it page by page until next_cursor is empty, so a Monday backlog is triaged as one batch and not only its first page.

  2. 02

    Read each ticket

    get_ticket brings the first message and every update, so the priority comes from what the customer wrote and not from the subject line alone.

  3. 03

    Map to real values

    list_priorities and list_agents run once. Your rule ("billing questions go to the Billing agent") is matched to a priority and an agent that exist, and a rule that names a missing one is reported, not guessed.

  4. 04

    Set the fields

    update_ticket sets priority, assignee and tags on the clear cases and leaves the status as it is unless you ask. Every call asks for your OK until you switch confirmation off for update_ticket.

  5. 05

    Leave the reason

    add_private_note records one line per ticket on why it got that priority and owner, so the agent who opens it sees the logic and can overrule it.

  6. 06

    Skip what moved

    Right before writing, the agent reads the ticket again. A ticket a colleague answered or took in the meantime is logged as handled and left alone.

What you get back

Example data

Tickets in Unresponded: 14
Triaged 11:
- 4 to Billing, priority medium (refund and invoice questions)
- 3 to Tier 2, priority high (login errors with a screenshot)
- 4 to Support, priority low (how-to questions)
Left for you 3:
- #2041 asks for a refund and mentions a chargeback
- #2047 is one line, "it does not work"

Other ways to ask

  • Every hour, find tickets where the customer wrote "urgent" or "down", set them to the highest priority and list them for me.
  • Tag every new ticket with the product it mentions, using the tags I use now, and change nothing else.
  • Show me how you would triage today's new tickets as a table and write nothing to HappyFox.
  • Triage only tickets without an assignee that are older than 2 hours.

What HappyFox allows, and what to know first

  • HappyFox ships four ready-made queues: Pending Tickets, All Tickets, Unresponded Tickets and Assigned to Me.
  • A HappyFox status has one of two behaviours, Pending (unresolved) or Completed (resolved), and a new ticket gets the status marked as default under Manage >> Statuses.
  • HappyFox bulk actions on more than 50 tickets do not trigger Smart Rules or SLA, so a bulk change can skip your automation.
  • A Smart Rule has a setting to execute only once per ticket, which stops it from firing again on a ticket the agent has already touched.
  • The Kanban view groups tickets by status, priority, assignee or due date, and an assignee grouping has a column for unassigned tickets.

update_ticket and add_private_note ask for your OK by default. To run it daily without you, switch confirmation off for those tools in your dashboard.

Sources: HappyFox Support: Manage Statuses · HappyFox Support: Set Up Queues · HappyFox Support: Perform Bulk Actions on Tickets · HappyFox Support: Send Email using Smart Rules · HappyFox Support: Kanban View of Tickets

Call update_ticket from a script

curl

curl -X PATCH https://cotlet.dev/api/v1/happyfox/tickets/2038 \
  -H "Authorization: Bearer $COTLET_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"priority_id":4,"assignee_id":12,"add_tags":["billing","refund"]}'

Example response

{
  "ticket_id": 2038,
  "status": "New",
  "priority": "High",
  "assignee": "Sam Okafor",
  "tags": [
    "billing",
    "refund"
  ],
  "updated_at": "2026-10-20T09:02:00Z"
}

MCP: add https://cotlet.dev/mcp/v1 with the same key; the call is happyfox_write → update_ticket. Example data.

Schedule it in n8n, Make, Zapier or cron

HappyFox tools this automation uses

Cotlet HappyFox tools used to triage new HappyFox tickets with AI
Tool Parameters
list_queues none
search_tickets queue_id, query, limit, cursor
get_ticket ticket_id
list_priorities none
list_agents query
update_ticket ticket_id, status_id, priority_id, assignee_id, add_tags
add_private_note ticket_id, body, notify
All 12 HappyFox tools with descriptions

Frequently asked questions

Is it safe to connect HappyFox to Cotlet?

Yes. You sign in to HappyFox yourself, in your own Cloud Browser in the EU, and we never save your password. Your agents only get HappyFox once you enable it, every background request is listed, and the browser profile is stored encrypted with AES-256-GCM, the cipher 1Password uses for its vaults. The AI model never sees a login, posts and messages wait for your OK, and Disable for agents cuts access in one click. Independent scanners grade cotlet.dev A+ on Qualys SSL Labs, securityheaders.com and Mozilla Observatory; live results are on https://cotlet.dev/security.

Give your agent access to HappyFox.

Free 7-day trial with 2,000 credits, no card needed. Cotlet is independent and not affiliated with HappyFox.