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

# Support Tickets

> Create player support tickets from Unity and handle them in Console.

Support Tickets let players contact your team from inside the game while operators reply and manage status from Console.

## Create a Ticket

```cs theme={null}
var ticket = await player.CreateSupportTicket(
    subject: "Purchase not visible",
    body: "I bought an item but did not receive the reward mail.",
    category: "purchase"
);

Debug.Log(ticket.Ticket.Id);
```

Use any category strings that match your operation queues, such as `general`, `purchase`, `account`, or `bug`.

## List and Inspect Tickets

```cs theme={null}
var openTickets = await player.ListSupportTickets(
    status: "open",
    limit: 20
);

var detail = await player.GetSupportTicket(openTickets[0].Id);
```

List calls return only the current signed-in user's tickets. Details include the ticket, messages, and attachment metadata.

## Reply

```cs theme={null}
await player.ReplySupportTicket(
    detail.Ticket.Id,
    "I attached a receipt screenshot."
);
```

Operator replies and player replies are stored in the same ticket thread. Operator-only internal notes are created and shown only in Console.

## Attachment Metadata

The initial SDK records attachment metadata instead of uploading files directly. Upload the file through your approved storage flow, then attach its `storageKey` to the ticket.

```cs theme={null}
await player.AddSupportAttachment(
    ticket.Ticket.Id,
    filename: "receipt.png",
    contentType: "image/png",
    sizeBytes: 184320,
    storageKey: "support/user-123/receipt.png"
);
```

## Console Handling

Operators use Console Support to search tickets, update status and priority, reply to players, add internal notes, and export CSV for reports or incident review.
