The problem
Distribution-list and group-membership requests are high-volume but low-risk: users want to be added to a project mailing list, an announcement channel, or a shared calendar group. The approval pattern is straightforward, but manual handling consumes IT time on what is fundamentally a self-service-eligible operation.
What AscendCore does
A user requests addition or removal from an M365 distribution list, mail-enabled security group, or Microsoft 365 group via Microsoft Teams or Slack. AscendCore resolves the group by display name, proposes the membership change to the IT admin channel with the group type clearly labeled (so approvers can apply the appropriate policy), executes via Microsoft Graph on approval, and writes a tamper-evident audit row.
Commands
/group-add <user-email> "<distribution list name>"
/group-remove <user-email> "<distribution list name>"
The /group-add and /group-remove commands serve all three group types — distribution lists, mail-enabled security groups, and Microsoft 365 groups — through one approval flow. The approval card surfaces the resolved group type ("Distribution list", "Mail-enabled security group", "Microsoft 365 group", "Security group") so IT admins know exactly what's being authorized.
Workflow
- Detect — slash command (Slack) or message (Teams) with the user email and group name
- Resolve — match the requested name to a real Entra group ID; if multiple groups match, surface disambiguation suggestions
- Classify: identify the group type and label it for the approver
- Propose — admin approval card with member, group, group type, group ID, description
- Approve — IT admin clicks Approve in the configured admin channel
- Execute: the membership change is applied in Microsoft 365
- Notify — requester DM'd by the bot; approval card updated in admin channel
- Audit: the change is recorded on the tamper-evident audit chain
Integrations
- Microsoft 365: distribution list and Microsoft 365 group membership
- Microsoft Entra ID: security group and mail-enabled security group membership
- Slack + Microsoft Teams — Request trigger and confirmation surface, with full Adaptive Card and Block Kit parity
Status
Live in production — shares the same wired flow as the security-group membership runbook (RB-013). Same audit chain, same approval card UX, with the group type clearly disambiguated for the approver. Verified end-to-end with cryptographic chain integrity.
