TeamPanel
Modules

Automation

Automatically react to events in TeamPanel and send messages to Discord or your own webhooks.

Automation

With automations, you notify your team as soon as something changes in TeamPanel — e.g. a new meeting, application, or to-do task. You can find them under Administration → Automation.

How it works

Each automation consists of:

  1. Trigger – When should something happen? (e.g. member joined, to-do created, backup failed)
  2. Conditions (optional) – Only run when certain criteria are met
  3. Action – Send a message via Discord webhook, Discord embed/channel, or Custom Webhook (HTTP)

Create a new automation

  1. Open Administration → Automation
  2. Click + or New automation
  3. Optionally choose a template (e.g. welcome message, new application, backup error, new to-do task)
  4. Configure trigger, conditions, and action
  5. Save

Permissions & limits

Management is typically a superadmin task. The number of automations and features such as custom webhooks or white-label (custom display name/avatar/color) depend on your plan.

Action types

TypeDescription
Discord WebhookClassic webhook URL to a channel
Discord Embed / ChannelMessage as embed; channel can be selected via the bot
Custom WebhookAny http(s) URL – e.g. for your own integrations

Common triggers

  • Members: joined, left, group changed
  • Meetings: created, date changed
  • Announcements: created
  • Applications: new, status changed, message
  • To-dos: created, updated, deleted, members assigned
  • Backups: successful / failed
  • Media: Media uploaded
  • and more events in the builder

For the full list of placeholders, see Placeholders for automations.

Media uploaded

The Media uploaded event (MEDIA_UPLOADED) fires for every upload to Media – in the dashboard and via the Media API (e.g. from your game server).

PlaceholderContent
{mediaId}File ID
{mediaFileName}File name
{mediaMimeType}MIME type, e.g. image/jpeg
{mediaSize}File size
{mediaUrl}Public CDN link – empty for private files
{mediaPublic}Whether the file is public
{mediaFolder}Folder of the file
{mediaTags}Tags of the file
{mediaViaApi}Whether the upload came via the API
{mediaCreatedAt}Upload time

The usual team and member placeholders (e.g. {teamName}, {username}) are available as well.

Use conditions to filter, e.g. mediaFolder equals evidence or mediaTags contains type:screenshot.

Example: post new screenshots to Discord

  1. Choose the Media uploaded trigger
  2. Conditions: mediaTags contains type:screenshot and mediaPublic is true
  3. Action Discord Embed / Channel with e.g. the title New screenshot and the text {mediaFileName} – {mediaUrl}

Private files

For private files {mediaUrl} stays empty – there is no permanent public link. Filter on mediaPublic or link to the Media instead.

Create a webhook in Discord

  1. Choose a Discord channel (e.g. team chat or a dedicated info channel)
  2. Channel settings → Integrations → Webhooks → New Webhook
  3. Copy the webhook URL and paste it into TeamPanel

Tips

  • Use templates as a starting point and customize text/placeholders
  • Conditions help you avoid spam (e.g. only certain groups)
  • For API integrations, see also the Public API

See also

On this page