API Token Expiration in Laravel Jetstream 2.x: Compatibility and Configuration Impact
0 reputation · 17 Dec 2025, 12:42 UTC
Goal
Determine whether Laravel Jetstream should add built‑in expiration support to its Sanctum‑based API token UI without breaking existing installations.
Constraints and Uncertainty
The current token table lacks an expires_at column, tokens are stored as bcrypt hashes and remain valid until manually revoked. Adding expiration would require a migration, a decision on how to treat tokens created before the change, and UI adjustments for setting lifetimes. There is ongoing debate in the Jetstream repository about the best approach, with no consensus on whether expiration should be optional, configurable, or enforced by default.
- Should Jetstream introduce an optional expires_at column via a migration?
- How should existing tokens be handled when expiration support is added?
- What configuration options should be provided to enable or disable token expiration?