Support Thread

Delete Post Notification

Delete Post Notification — APG vNext Guide

Delete Post Notification — a feature discussion or integration topic from the APG vNext community forum.

APG vNext Integration Capabilities

  • Authentication: ASP.NET Membership, Active Directory/LDAP, OAuth (Facebook, Twitter, Google)
  • Email: Configurable SMTP, HTML templates, digest notifications, bounce handling
  • Mobile: Responsive design + official Tapatalk integration from v5.5+
  • Search: Built-in full-text search powered by SQL Server Full-Text Indexing
  • Analytics: Google Analytics, Adsense, and third-party widget support
  • CDN: Static asset CDN support configurable via admin panel

Browse the full list at Features Overview or ask in the support forum.

Delete Post Notification System in APG vNext

APG vNext can notify members, moderators, or administrators when posts are deleted. This is useful for moderation transparency (members know their post was removed and why), compliance (keeping an audit trail), and team coordination (moderators see when others have actioned reports). This guide covers configuring delete notifications for each audience.

Notifying the Post Author When Their Post is Deleted

<!-- web.config -->
<add key="APG.Moderation.NotifyAuthorOnDelete"  value="true" />
<add key="APG.Moderation.DeleteNotifySubject"   value="Your post has been removed" />
<add key="APG.Moderation.DeleteNotifyTemplate"  value="/email-templates/post-deleted.html" />

Delete Notification Email Template

<!-- /email-templates/post-deleted.html -->
<p>Hi {MemberName},</p>
<p>Your post in "{ThreadTitle}" was removed by a moderator.</p>
<p>Reason: {DeleteReason}</p>
<p>If you have questions, please <a href="{ContactUrl}">contact us</a>.</p>

Notifying Admins When Any Post is Deleted

<add key="APG.Moderation.NotifyAdminOnDelete"    value="true" />
<add key="APG.Moderation.DeleteAdminNotifyEmail" value="[email protected]" />

Requiring a Delete Reason

<add key="APG.Moderation.RequireDeleteReason" value="true" />
<!-- Moderator must enter a reason before delete completes -->
<!-- Reason is stored in apg_ModerationAudit.ActionReason -->

Webhook Notifications for Post Deletions

APG vNext 5.x supports outbound webhooks that fire when moderation actions are taken, including post deletions. This enables integration with external systems — Slack channels for moderator team notifications, compliance logging systems, or CRM tools that track member behaviour:

<!-- web.config: configure moderation webhook -->
<add key="APG.Webhooks.Moderation.Enabled"   value="true" />
<add key="APG.Webhooks.Moderation.Endpoint"  value="https://hooks.slack.com/services/..." />
<add key="APG.Webhooks.Moderation.Secret"    value="your-webhook-secret" />
<add key="APG.Webhooks.Moderation.Events"    value="post.deleted,post.edited,thread.locked" />

The webhook payload for a post deletion event:

// POST to your endpoint with HMAC-SHA256 signature in X-APG-Signature header:
{
  "event": "post.deleted",
  "timestamp": "2026-02-19T14:22:33Z",
  "data": {
    "postID": 98765,
    "threadID": 12340,
    "threadTitle": "How to configure email notifications",
    "authorMemberID": 4421,
    "authorUsername": "john_doe",
    "deletedByMemberID": 1,
    "deletedByUsername": "admin",
    "deleteReason": "Spam",
    "softDelete": true
  }
}

Moderation Audit Log for Post Deletions

All post deletion events are logged in apg_ModerationAudit. This provides a permanent audit trail independent of the webhook system — even if the webhook delivery fails, the audit log captures the event. Query the audit log to review deletion activity:

-- Recent post deletions with reasons:
SELECT ma.ActionDate,
       m_mod.UserName AS ModeratorName,
       m_auth.UserName AS PostAuthor,
       ma.ActionReason AS DeleteReason,
       t.Subject AS ThreadTitle
FROM   apg_ModerationAudit ma
JOIN   apg_Members m_mod  ON m_mod.MemberID = ma.ModeratorID
JOIN   apg_Members m_auth ON m_auth.MemberID = ma.TargetMemberID
JOIN   apg_Threads t       ON t.ThreadID = ma.ThreadID
WHERE  ma.ActionType = 'DeletePost'
  AND  ma.ActionDate >= DATEADD(day, -30, GETUTCDATE())
ORDER  BY ma.ActionDate DESC;

Member Communication Best Practices After Deletion

How you communicate with a member after deleting their post significantly affects whether they understand the community standards or feel unfairly treated. A well-written deletion notification that clearly states the specific rule that was violated, avoids accusatory language, and provides a path for the member to appeal (by contacting a moderator) is far more effective at preventing repeat rule violations than a generic notification. Members who feel the moderation was fair and transparent are more likely to stay in the community and adjust their behaviour; members who feel blindsided or unfairly treated often escalate, post complaints, or leave entirely. Investing in good deletion notification email templates pays dividends in community health and member retention over time.

Rate Limiting Delete Notifications

On forums with active moderation where moderators delete dozens of posts per day during spam waves, individual deletion notification emails can overwhelm both the email queue and the notified members' inboxes. Configure APG vNext to batch deletion notifications into a digest rather than sending one email per deletion:

<!-- Batch deletion notifications into a daily digest: -->
<add key="APG.Moderation.DeleteNotifyMode"      value="Digest" />
<!-- Options: Immediate, Digest, None -->
<add key="APG.Moderation.DeleteDigestSchedule"  value="18:00" />
<!-- Send digest at 6:00 PM server time each day -->
<add key="APG.Moderation.DeleteDigestMinPosts"  value="1" />
<!-- Only send digest if at least 1 post was deleted that day -->

In Digest mode, members receive a single daily email listing all posts that were removed in the past 24 hours, each with the moderator-provided reason. This is less intrusive for members whose post was removed for a minor formatting issue, while still maintaining transparency. High-priority deletions (e.g., content violating legal requirements) can bypass the digest and trigger an immediate notification using the APG.Moderation.DeleteNotifyPriority configuration key.

Configuring Notification Suppression for Self-Deletions

When a member deletes their own post (before a moderator does), sending them a deletion notification email would be confusing and unnecessary. Configure APG vNext to suppress notifications for self-deletions while continuing to notify the author for moderator-initiated deletions. This distinction keeps notifications meaningful and prevents alert fatigue from members who regularly clean up their own off-topic replies.

Related Resources


Looking for more help? Browse the support forum or check the Knowledge Base.