# Customer history desk for Dixa escalations and callbacks

> Look up any customer by email or phone and see every conversation they have ever had, their ratings, and an instant prep brief.

- Workflow type: app
- Services: Dixa, Slack
- Categories: Customer Support, Operations
- Published: 2026-08-21

## What it does

- Find any customer by email address or phone number and pull up everything they have ever contacted you about on one screen.
- See their whole support history as a single timeline, with satisfaction scores on every conversation and full transcripts one click away.
- Get the numbers that matter up front: how many times they have contacted you, how many in the last ninety days, their average rating, and a flag when someone keeps coming back.
- Press one button to have an assistant write a prep brief covering recurring issues, sentiment trend, and unresolved items, saved back onto the customer's latest conversation so the whole team sees it.

## What you'll need

- A Dixa account, with an administrator on hand to connect it the first time
- Your customer support history already living in Dixa
- A Slack workspace, only if you want to share briefs with your account team

## Prompt

Build me an internal customer history desk that our support agents open before every escalation or scheduled callback. Today, reconstructing one customer's story in Dixa means opening conversation after conversation, so the whole point of this app is to put a person's entire support history on a single screen.

The app opens on a single search box where an agent types an email address or a phone number. Use the Dixa List end users operation to find the person, filtering by email or by phone. Those two filters are mutually exclusive and passing both returns an error, so detect which one the agent typed and send only that filter. If more than one end user matches, show the matches and let the agent pick the right one. Once a person is selected, load their full profile with Get end user and show their name, email, phone, and when they were created at the top of the page.

Directly under the profile, show the four summary numbers an agent needs in the first ten seconds: the total number of conversations this person has ever had with us, how many of those started in the last ninety days, their average satisfaction rating, and a clear repeat contact flag. Raise the repeat contact flag prominently whenever the person has contacted us more than three times within any thirty day window, since that is the signal something is genuinely unresolved.

The main view is a single scrollable timeline of every conversation this person has ever had, newest first, loaded from List end user conversations. Each row shows the date, the channel, the subject or opening line, the current status, and a satisfaction badge pulled from List ratings for a conversation. Rows are expandable, and only when an agent expands a row do you call List messages for that conversation and render the full transcript inline, with every message labelled by author and timestamp.

Page the timeline rather than trying to pull an entire history at once. Dixa list endpoints return their results in a data array and use cursor pagination: pass pageLimit, read the opaque Base64 pageKey out of the response meta object, then pass that value back to fetch the next page. Never construct a pageKey by hand. Dixa also limits you to ten requests per second, so do not fan out List messages across the whole history when the page first loads. Fetch transcripts lazily per conversation on expand, and throttle the rating lookups that back the timeline badges. Keep id types straight as they move between handlers: Dixa conversation ids are integers, while end user, agent, team, and queue ids are UUID strings.

From any row in the timeline an agent can tag that conversation using Tag conversation, so a customer can be marked as a known escalation risk without leaving the page. Populate the tag picker from List tags, and remember that only active tags can be applied.

Add a Write me a brief button at the top of the customer view. It kicks off a background agent that reads the person's full conversation history and writes a short prep note covering three things: the recurring issues this person keeps running into, whether their sentiment is trending up or down over time, and anything still open or unresolved. When the agent finishes, save the brief onto the person's most recent conversation using Add internal note so the rest of the team sees it inside Dixa too, and show it in the app above the timeline. Keep the brief short enough to read in the minute before a call rather than a full summary of every transcript.

Once a brief exists, give the agent the option to share it into the account team's channel using the Slack Send a Message operation. Let the agent choose the channel and review the message before it goes out.

Keep a short list of each agent's recent lookups so they can jump straight back to a customer they were just working on, and show previously generated briefs on the customer view stamped with the date they were written, so an agent can tell at a glance whether someone has already prepped this account.

## How to customize

- Change the repeat contact threshold, set by default to more than three contacts in a month.
- Adjust the recent activity window from ninety days to whatever period your team reviews on.
- Choose which Slack channel briefs get shared into, or turn sharing off entirely.

## FAQ

### Do I need to be a Dixa administrator to set this up?

An administrator needs to connect Dixa once, because only admins can create the access this app uses. After that, any support agent on your team can open the app and look customers up.

### Can I search by phone number instead of email?

Yes. The app accepts either an email address or a phone number. You search with one at a time, and it works out which you typed.

### Does this change anything in Dixa?

It only reads your history unless you ask it to act. The two things it writes are the prep brief, which is saved as an internal note, and any tag you choose to apply to a conversation.

### Will the customer see the prep brief?

No. The brief is saved as an internal note, which is visible to your team inside Dixa and never shown to the customer.

### How far back does the history go?

As far back as your Dixa records go. The timeline loads in pages as you scroll rather than pulling everything at once, so even long histories open quickly.

Use this prompt in General Input: https://www.generalinput.com/prompts/customer-history-desk-for-dixa-escalations-and-callbacks