[Cotlet](https://cotlet.dev/index.md) · [Integrations](https://cotlet.dev/integrations.md) · [How it works](https://cotlet.dev/how-it-works.md) · [Use cases](https://cotlet.dev/use-cases.md) · [Security](https://cotlet.dev/security.md) · [For developers](https://cotlet.dev/for-developers.md) · [For automation agencies](https://cotlet.dev/for-agencies.md) · [Blog](https://cotlet.dev/blog.md) · [API docs](https://cotlet.dev/docs.md) · [Help center](https://cotlet.dev/help.md) · [Changelog](https://cotlet.dev/changelog.md) · [Contact](https://cotlet.dev/contact.md) · [Pricing](https://cotlet.dev/pricing.md) · [Sign up](https://cotlet.dev/signup)

# Follow up on pending HappyFox tickets

> Remind customers who have not answered a pending HappyFox ticket, quoting what you asked for, and stop at one reminder. Runs daily.

Source: https://cotlet.dev/integrations/happyfox-api-mcp-server/follow-up-on-pending-tickets

You asked a customer for an error message and left the ticket waiting. Three days later it still sits in the Pending Tickets queue, and nobody notices until the customer writes angrily.

Cotlet does it in your own HappyFox account with list\_queues, search\_tickets, get\_ticket and reply\_to\_ticket, called by your AI agent, an n8n workflow or a script.

[Sign up free](https://cotlet.dev/app/signup?app=happyfox) [All HappyFox tools](https://cotlet.dev/integrations/happyfox-api-mcp-server.md)

Hosted · nothing to install or maintain

## Can HappyFox do this on its own?

HappyFox Smart Rules can send a fixed email when conditions match, and canned actions insert one saved reply (checked 20 Oct 2026). Both send the same text for every ticket. Neither quotes what you asked for in that ticket, and neither decides that a second reminder is too much.

## How you do it in HappyFox today

1. The agent opens the Pending Tickets queue, which shows every ticket whose status has pending behaviour.
2. For each old ticket the agent opens it, rereads the thread to remember what was asked and writes a reply.
3. To save typing, the agent can pick a canned action in the Reply editor, which fills in the same text for every ticket.
4. An admin can build a Smart Rule that sends an email under NOTIFY > Send Email, with conditions on the ticket.
5. The checking is the part that gets forgotten, because a waiting ticket drops out of the daily queue work.

## How to follow up on pending HappyFox tickets

Prompt

```
Find HappyFox tickets in the Pending Tickets queue with no reply from the customer for 3 days. Send a short reminder that quotes what we asked for. If we already sent a reminder, tell me instead of sending a second one.
```

1. 01  
### Find the stale ones  
list\_queues finds Pending Tickets, and search\_tickets reads it page by page. Only tickets whose last update is older than your cutoff stay in the list.
2. 02  
### Read the thread  
get\_ticket returns the updates in order. The agent checks that the last message is from your staff, so a ticket where the customer already answered is skipped.
3. 03  
### Count reminders  
If an earlier staff message already is a reminder, the agent does not send another. It lists the ticket for you with the days waited.
4. 04  
### Write the reminder  
reply\_to\_ticket posts a reply that repeats the one question you asked, in your wording, and keeps the status as it is. Each reply asks for your OK until you switch confirmation off.
5. 05  
### Stop on new activity  
Right before sending, the agent reads the ticket again. HappyFox's own staff update call carries the last staff message to catch two agents answering at once, and the agent follows the same rule.

### What you get back

Example data

```
Pending for more than 3 days: 9
Reminder sent 5, e.g. #2011 Dana Whitfield, waiting 4 days for the export error text
Skipped 2 (customer replied since)
Already reminded, left for you 2:
- #1990 waiting 9 days
- #1994 waiting 7 days
```

### Other ways to ask

- Every Monday, list pending tickets older than a week with the question we asked and do not send anything.
- Remind only customers on tickets in the Enterprise category and write to me in a different tone for them.
- After one reminder and 3 more days of silence, set the ticket to the Completed status I name, with a polite closing message.

## What HappyFox allows, and what to know first

- HappyFox Pending Tickets is a ready-made queue that shows every ticket whose status has pending behaviour, which means unresolved.
- A status with Completed behaviour marks a ticket as resolved, and which status that is depends on the statuses you set up under Manage >> Statuses.
- A reply to a ticket reaches the contact by email, and an update with a private note does not.
- A Smart Rule has a setting to execute only once per ticket, which is the same stop this job applies to reminders.

reply\_to\_ticket asks for your OK by default. To run it daily without you, switch confirmation off for that tool in your dashboard.

Sources: [HappyFox Support: Manage Statuses](https://support.happyfox.com/kb/article/61-manage-statuses/) · [HappyFox Support: Use Canned Actions for frequent replies](https://support.happyfox.com/kb/article/49-use-canned-actions-for-frequent-replies/) · [HappyFox Support: Send Email using Smart Rules](https://support.happyfox.com/kb/article/896-send-email-using-smart-rules/) · [HappyFox Support: API Reference, Tickets API Endpoints](https://support.happyfox.com/kb/article/1039-happyfox-api-documentation/)

## Call reply\_to\_ticket from a script

curl

```
curl -X POST https://cotlet.dev/api/v1/happyfox/tickets/2011/replies \
  -H "Authorization: Bearer $COTLET_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"body":"Hi Dana, just checking in. To fix the export we still need the exact error text you see after clicking Export. A screenshot works too."}'
```

Example response

```
{
"ticket_id": 2011,
"update_id": 88120,
"kind": "staff_reply",
"status": "Awaiting customer",
"created_at": "2026-10-20T09:00:00Z"
}
```

MCP: add https://cotlet.dev/mcp/v1 with the same key; the call is happyfox\_write → reply\_to\_ticket. Example data.

[Schedule it in n8n, Make, Zapier or cron](https://cotlet.dev/integrations/happyfox-api-mcp-server.md#automations)

## HappyFox tools this automation uses

__Cotlet HappyFox tools used to follow up on pending HappyFox tickets__
| Tool | Parameters |
| ----------------- | ------------------------------- |
| list\_queues | none |
| search\_tickets | queue\_id, query, limit, cursor |
| get\_ticket | ticket\_id |
| reply\_to\_ticket | ticket\_id, body, status\_id |

[All 12 HappyFox tools with descriptions](https://cotlet.dev/integrations/happyfox-api-mcp-server.md#tools)

## 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.

## More HappyFox automations

- [Triage new HappyFox tickets with AI](https://cotlet.dev/integrations/happyfox-api-mcp-server/triage-new-support-tickets.md)
- [Reply to HappyFox tickets with canned actions](https://cotlet.dev/integrations/happyfox-api-mcp-server/reply-with-canned-actions.md)
- [HappyFox API and MCP server: every tool](https://cotlet.dev/integrations/happyfox-api-mcp-server.md)
- [All use cases](https://cotlet.dev/use-cases.md)

## 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.

[Sign up free](https://cotlet.dev/app/signup?app=happyfox)

---

Give your AI agents your signed-in browser.

**Product:** [Integrations](https://cotlet.dev/integrations.md) · [Use cases](https://cotlet.dev/use-cases.md) · [How it works](https://cotlet.dev/how-it-works.md) · [Pricing](https://cotlet.dev/pricing.md) · [Security](https://cotlet.dev/security.md)

**Resources:** [Blog](https://cotlet.dev/blog.md) · [API docs](https://cotlet.dev/docs.md) · [Help center](https://cotlet.dev/help.md) · [Changelog](https://cotlet.dev/changelog.md) · [GitHub](https://github.com/cotletdev/cotlet)

**Solutions:** [For developers](https://cotlet.dev/for-developers.md) · [For automation agencies](https://cotlet.dev/for-agencies.md)

**Company:** [About](https://cotlet.dev/about.md) · [AI info: company facts](https://cotlet.dev/ai-info.md) · [Contact](https://cotlet.dev/contact.md)

**Legal:** [Terms of service](https://cotlet.dev/terms) · [Privacy policy](https://cotlet.dev/privacy) · [Refund policy](https://cotlet.dev/refunds) · [Acceptable use](https://cotlet.dev/acceptable-use) · [Cookie policy](https://cotlet.dev/cookies) · [DPA](https://cotlet.dev/dpa) · [Subprocessors](https://cotlet.dev/subprocessors)

**Elsewhere:** [Status page](https://status.cotlet.dev) · [Cotlet on GitHub](https://github.com/cotletdev) · [Cotlet on X](https://x.com/cotletdev) · [Cotlet on LinkedIn](https://www.linkedin.com/company/cotletdev) · [Cotlet on Product Hunt](https://www.producthunt.com/products/cotlet) · [Cotlet on Crunchbase](https://www.crunchbase.com/organization/cotlet) · [Cotlet on SaaSHub](https://www.saashub.com/cotlet)

Cotlet is an independent service. It is not affiliated with, endorsed by or sponsored by any of the products listed on this site. Product names are trademarks of their respective owners.

## For AI agents: sign your user up

Is your user asking you to sign them up for Cotlet? You can do it for them, no account or key needed.

1. Read the fields and their allowed values: GET https://cotlet.dev/api/v1/access-requests
2. Ask the user for each value: email, apps, what you will do with them. If they leave the password to you, generate a strong one and show it to them.
3. Show the user what you will send, then POST it as JSON to https://cotlet.dev/api/v1/access-requests.

One call creates the account and sends the access request; we email the user when access is granted.
