> ## Documentation Index
> Fetch the complete documentation index at: https://docs.getthread.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Catchall Asset Cross-Reference

> Find the real client for a catch-all or no-company ticket by matching the hostname, device or asset it names against your RMM, documentation tool and recent tickets, when the sender and body give no company.

Runs asAgent Build it with Agent Builder: add the action to a Flow, choose Prompt the Agent, and paste this in. It runs unattended on a matching ticket event. You can also run it yourself in Super Magic while you prove it out.Works withNinjaOneIT GlueHuduRole[Dispatcher](https://docs.getthread.com/start-here/roles/dispatcher)OutcomeTime & Cost Savings (Capacity), Faster Resolution & ResponseCategory[Triage & Routing](https://docs.getthread.com/skill-library/triage-and-routing/overview) · [View source ↗](https://github.com/Thread-Magic/super-magic-skills/blob/main/skills/triage-and-routing/catchall-asset-crossref/SKILL.md)

**When to use:** Alerts and forwarded mail land on your catch-all company with no useful sender domain: a backup job from a service account, a firewall notice, a "server X is down" email. The ticket does name a machine, though, and your RMM or documentation knows whose machine it is.

**Run it:** on one ticket · or as a Flow (when a ticket lands on the catch-all company). Run `triage-and-routing/catchall-routing` first, and this second for the tickets its evidence ladder could not place.

## Prompt

```
Place this catch-all ticket on its real client using the assets it names. On evidence, or not at all.

1. Skip if the ticket already has a real client, or already carries a routing note.

2. EXTRACT every hostname, device name, serial, configuration or asset name from the title, body and alert fields.

3. DISCARD your own infrastructure: a service account or credential that belongs to your MSP (for example "DOMAIN\<your MSP>" or a backup service account) points at you, not the client. Never route to your own company on that alone.

4. SEARCH each asset, in this order: RMM devices; documentation tool assets and configurations; your knowledge base; recent tickets that already sit on a real client. Skip any source that is not connected.

5. DECIDE.
- Exactly one client from any source: that is explicit-company strength evidence. Use it.
- Two or more different clients: ambiguous. Change nothing; list the candidates and their sources.
- No match: change nothing.

6. CONTACT at the matched client: the contact named in the ticket if they exist there; else that client's primary contact, noting it was a fallback. No contacts at all: note it and stop. Assign the contact, which moves the ticket to that client.

7. NOTE (internal, plain text): "CATCHALL ASSET ROUTING: matched <asset> in <source> to <client>. Contact: <name> (<direct or fallback>). Changed: <what>." Or "CATCHALL ASSET ROUTING: no confident match. Assets checked: <list>. Left for human review."

One routing note per ticket. Never close or recreate a ticket. Never invent clients, contacts or assets; say if a search may have capped.

As a Flow: your entire reply is the note.
```


## Related topics

- [Prompt engineering tips and tricks](https://docs.getthread.com/assistive-ai/prompt-tips-and-tricks.md)
- [How Configurations and Assets Work in Messenger Chat](https://docs.getthread.com/messenger/configurations-in-messenger.md)
- [Create your first Voice AI agent](https://docs.getthread.com/ai-agents/voice-ai-setup-phase-1-initial-configuration.md)
