What problem does it solve?
It standardizes how third-party Bots authenticate, authorize action permissions, and receive verified webhook deliveries in AIM, reducing integration drift and operational risk.
Core Features & Use Cases
- Bot identity and token lifecycle: Supports Bot tokens with SHA-256 hash storage, expiration/revocation, and enabled status checks for reliable access control.
- Action-based authorization: Enforces scoped permissions via
bot_actions, bot_token_permissions, and bot_event_actions so Bots can only call what they’re allowed to do.
- Webhook subscription with safe delivery: Subscribes to
message.created events, signs deliveries (HMAC), and handles retries with backoff to prevent callback loops and protect the archive pipeline.
- Operational bot provision (DB double-write): Provides a provisioning workflow to create Bot users, memberships, and issue tokens using operator scripts.
Quick Start
Provision a Bot by running the operator script scripts/bot-provision/provision_bot.sh, then share the plaintext token with the Bot developer for Authorization: Bot <token> calls to /api/bot/v1/*.