Skip to content

Temp Roles

Grant a role for a limited duration. Auto-revoked when the timer elapses.

When to use

  • Event roles ("@LAN-Attendees" valid for 3 days around an event)
  • Reward / honour roles with a half-life ("Member of the Month" for 30 days)
  • Trial promotions ("@Trial-Mod" for 7 days to evaluate)
  • Cooldown roles ("@no-self-promo for 1 day after the last self-promo")

Where it lives

Dashboard: Community → Temp Roles. Slash command: /ptemprole.

Slash commands

  • /ptemprole grant @user <role> <duration> — staff grants a temp role.
  • /ptemprole revoke @user <role> — staff revokes early.
  • /ptemprole info [user] — member checks their own temp roles, or staff checks someone else.

Duration format: 5m, 2h, 1d, 1w. Min 60 seconds, max 1 year.

Presets

You can define presets on the dashboard — named duration shortcuts (e.g. "Hour Pass" = 1h, "Day Pass" = 1d). Members + staff see them in the slash-command auto-complete.

Built-in suggested presets: 5m, 15m, 1h, 6h, 1d, 7d, 30d.

Settings

SettingWhat it does
EnabledMaster switch.
PresetsNamed duration shortcuts.
Max grants per userCap concurrent temp roles a single user can hold. Default 25.
Recent grants trackedShow the last N grants per user in /ptemprole info. Default 50.

Permissions

  • community.view — see settings + own grants via info
  • community.edit — grant / revoke / change presets

Discord's Manage Roles is accepted as a legacy fallback path.

Limits

  • 25 presets per guild
  • 25 concurrent grants per user
  • 50 recent grants tracked per user

Behaviour

  • Background scheduler revokes expired grants. Runs every ~30 seconds.
  • Hierarchy must allow Phantom to grant the role; otherwise the grant fails with an Error Log entry.
  • A member who leaves the server keeps the grant record; if they rejoin before expiry, the role is re-applied (via Role Persistence infrastructure).

Phantom is a product of Hydra Labs. The bot is run as a managed service; you do not need to host it yourself.