Skip to content

Transcripts

Sayrix edited this page Apr 25, 2026 · 2 revisions

Ticket-Bot can generate ticket transcripts and upload them to ticket.pm when a ticket closes.

Required Config

Enable transcripts:

tickets: {
  close: {
    createTranscript: true
  }
}

Set the optional passkey in config/.env:

TICKETPM_PASSKEY=your_passkey_here

If no passkey is set, ticket.pm will handle the upload as an unauthenticated user, losing the ability to manage and search transcripts in a ticket.pm account. Setting a passkey allows uploads to be associated with your ticket.pm account, enabling transcript management features.

Transcript ID Style

The top-level config option uuidType controls the transcript ID style:

uuidType: "uuid"

Supported values:

  • uuid: current default style.
  • emoji: older style.

Internally, uuidType !== "emoji" enables UUID-style transcript IDs.

What Gets Uploaded

When closing a ticket, the bot:

  1. Fetches the ticket channel.
  2. Fetches guild information.
  3. Fetches all channel messages in chronological order.
  4. Enriches users, channels, members, roles, polls, avatars, and media when possible.
  5. Uploads the draft transcript to ticket.pm.
  6. Stores the resulting transcript URL in the ticket record.

Transcript links use:

https://ticket.pm/<transcript-id>

Close Flow Behavior

Transcript creation starts during close. The bot updates the ephemeral close status while it:

  • Collects messages.
  • Creates transcript data.
  • Uploads transcript data.
  • Uploads avatars.
  • Uploads attachments.

The close flow waits up to 15 minutes for the transcript result. If transcript upload is still processing after that, the ticket still closes and the transcript may be shown as unavailable.

Template Tokens

Close templates can use:

  • {reason}
  • {transcriptStatus}
  • {transcriptUrl}
  • {claimStatus}
  • {claimerId}
  • {claimerMention}
  • {closerId}
  • {closerMention}
  • {closerName}
  • {channelId}
  • {userId}

Troubleshooting Transcripts

If transcripts do not appear:

  • Confirm tickets.close.createTranscript is true.
  • Confirm TICKETPM_PASSKEY is set if your ticket.pm account requires it.
  • Confirm the bot can read ticket message history.
  • Check bot logs for Failed to create transcript.
  • Check whether the ticket had many attachments; uploads can take time.
  • Confirm outbound network access from your host or container.

Clone this wiki locally