coolify/app/Livewire
Andras Bacsai 90ddbb3572 feat(security): support expiration on API tokens with warning notifications
Add optional expiration to personal API tokens. Users pick a duration
(1/7/30/60/90 days or Never) at creation time. Expired tokens are
rejected by Sanctum, pruned hourly by sanctum:prune-expired, and a
team notification fires ~24h before expiry so owners can rotate
before API calls start failing.

- ApiTokens Livewire component stores expires_at from expiresInDays
- Rework issued-tokens UI from card grid to table (matches other views)
- New ApiTokenExpirationWarningJob scheduled hourly (idempotent via RateLimiter)
- New ApiTokenExpiringNotification (email/discord/telegram/slack/pushover)
- api_token_expiring added to alwaysSendEvents so users cannot silence
  expiry warnings from the per-event notification toggle UI
- sanctum:prune-expired cadence moved from daily to hourly

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-04-20 14:28:38 +02:00
..
Admin refactor(admin): use named routes for admin index navigation 2026-04-19 11:58:52 +02:00
Boarding fix(models): replace forceFill/forceCreate with fill/create and add fillable guards 2026-03-31 13:45:31 +02:00
Destination refactor: scope destination and resource lookups by current team 2026-04-19 11:55:12 +02:00
Notifications fix(validation): add input validation for emails configuration 2026-03-29 12:13:30 +05:30
Profile fix(user): ensure email attributes are stored in lowercase for consistency and prevent case-related issues 2025-09-05 17:44:34 +02:00
Project fix(database): skip credential pattern validation for unchanged values 2026-04-20 13:58:44 +02:00
Security feat(security): support expiration on API tokens with warning notifications 2026-04-20 14:28:38 +02:00
Server fix(models): replace forceFill/forceCreate with fill/create and add fillable guards 2026-03-31 13:45:31 +02:00
Settings refactor(settings): validate dev_helper_version and escape build args 2026-04-20 11:51:27 +02:00
SharedVariables fix(shared-variables): support direct mount params and comment field for server variables 2026-03-31 14:58:01 +02:00
Source/Github fix: add URL validation for GitHub source api_url and html_url fields 2026-03-26 13:45:33 +01:00
Storage refactor(storage): tighten S3 endpoint URL validation (#9668) 2026-04-20 11:51:51 +02:00
Subscription fix(subscription): prevent duplicate subscriptions with updateOrCreate 2026-03-24 10:52:41 +01:00
Tags Revert "rector: arrrrr" 2025-01-07 15:31:43 +01:00
Team feat(livewire): add selectedActions parameter and error handling to delete methods 2026-03-11 15:04:45 +01:00
Terminal feat: replace terminal dropdown with searchable datalist component 2025-10-12 14:57:45 +02:00
ActivityMonitor.php refactor: simplify remote process chain and harden ActivityMonitor 2026-03-26 13:26:16 +01:00
Dashboard.php refactor: replace queries with cached versions for performance improvements 2025-12-08 13:39:33 +01:00
DeploymentsIndicator.php Refactor deployment indicator to use server-side route detection 2025-12-11 09:39:56 +01:00
ForcePasswordReset.php fix(models): replace forceFill/forceCreate with fill/create and add fillable guards 2026-03-31 13:45:31 +02:00
GlobalSearch.php Resolve remaining merge conflicts 2026-04-14 11:14:22 +02:00
Help.php refactor(help): raise feedback subject cap to 600 characters 2026-04-19 14:48:34 +02:00
LayoutPopups.php
MonacoEditor.php Merge branch 'next' into andrasbacsai/livewire-model-binding 2025-10-16 11:05:29 +02:00
NavbarDeleteTeam.php feat(livewire): add selectedActions parameter and error handling to delete methods 2026-03-11 15:04:45 +01:00
SettingsBackup.php fix(models): replace forceCreate with forceFill+save pattern 2026-03-31 13:50:37 +02:00
SettingsDropdown.php feat(ui): display current version in settings dropdown and update UI accordingly 2025-09-01 16:23:14 +02:00
SettingsEmail.php fix(validation): add input validation for emails configuration 2026-03-29 12:13:30 +05:30
SettingsOauth.php fix: add null checks and validation to OAuth bulk update method 2025-10-27 17:04:33 +01:00
SwitchTeam.php fix(ui): always redirect to dashboard after team switch 2025-02-03 21:38:40 +01:00
Upgrade.php fix(upgrade): clear stale upgrade flag when version is already current 2026-04-09 14:31:12 +02:00
VerifyEmail.php Revert "rector: arrrrr" 2025-01-07 15:31:43 +01:00