1.3 KiB
1.3 KiB
Task: User ICS export feed
Goal
Let each user subscribe to a private .ics feed containing their Socialize my work dates.
Feature Spec
docs/FEATURES/calendar-integrations.md
Scope
- Add backend support for user export feed tokens.
- Generate private unguessable feed URLs that do not require login.
- Let users enable, revoke, and regenerate their export URL.
- Emit valid
.icscontaining only the user'smy workdates. - Include assigned content, approval work, owned/created content where available, approval due dates, planned publish dates, and accessible campaign dates.
- Exclude imported holiday and observance events by default.
- Avoid sensitive comments or approval discussion details in exported entries.
- Add a user settings UI for copying, revoking, and regenerating the feed URL.
- Add backend tests for feed authorization boundary, token regeneration, and event contents.
Relevant Files
backend/src/Socialize.Api/Modules/CalendarIntegrations/backend/src/Socialize.Api/Modules/ContentItems/backend/src/Socialize.Api/Modules/Approvals/frontend/src/features/user-profile-settings/frontend/src/config.jsbackend/tests/Socialize.Tests/
Validation
dotnet build backend/Socialize.slnx
dotnet test backend/Socialize.slnx
cd frontend
npm run build
./scripts/update-openapi.sh