#52 [Admin Panel] Invitation System - Send Invitation
Description
EditImplement POST /api/v1/admin/invitations endpoint to invite users to tenant.
**API Specification:**
- Endpoint: POST /api/v1/admin/invitations
- Permission Required: manage_users
- Request Body: {email, roles[]?, message?, expires_in_days?}
- Response: {invitation_id, email, roles[], expires_at, invitation_url}
**Requirements:**
- Generate secure invitation token (32-byte random)
- Send invitation email with personalized link
- Configurable expiration (default: 7 days)
- Pre-assign roles (applied on acceptance)
- Optional custom message in email
- Prevent duplicate invitations to same email
- Log audit event
**Database Schema (invitations table):**
- invitation_id (UUID), tenant_id
- email, roles[] (JSONB)
- token_hash (SHA256)
- message, expires_at
- created_at, created_by
- accepted_at, accepted_by_user_id
- status (pending, accepted, expired, cancelled)
**Email Template:**
- Include tenant name, inviter name
- Custom message if provided
- Expiration warning
- Accept invitation button/link
**IMPORTANT:** Implement with ultra attention to details and correctness.
**BEFORE CLOSING:** Take screenshot showing invitation creation. Add comment summarizing implementation.
Comments
Loading comments...
Context
Loading context...
Audit History
View AllLoading audit history...