mudler-agent and Ettore Di Giacinto
690f3994b0
feat(auth): let users pause and resume their API keys ( #12521 )
...
A key can now be paused until the owner resumes it, or until a given
time. A paused key is rejected by validation before last_used is
updated, and a pause time that has passed lifts the pause by itself.
Existing keys stay active.
PATCH /api/auth/api-keys/:id takes {"disabled": bool, "paused_until":
RFC 3339 string or null}. Only the key owner can change it, and a
paused_until in the past is rejected. The key list returns the pause
fields. The Account page gets a Pause and Resume button for each key
and a Paused badge that shows the resume time.
Assisted-by: Claude Code:claude-sonnet-5-5
Co-authored-by: Ettore Di Giacinto <mudler@localai.io >
2026-10-06 18:25:21 +02:00
..
2026-10-06 18:25:21 +02:00
2026-08-03 15:25:23 +02:00
2026-08-03 00:16:08 +02:00
2026-09-11 21:56:08 +00:00
2026-08-16 11:57:31 +02:00
2026-05-31 23:56:46 +02:00
2026-05-26 22:06:10 +02:00
2026-08-16 11:57:31 +02:00
2026-08-02 19:28:36 +02:00
2026-08-03 12:16:09 +02:00
2026-08-16 11:57:31 +02:00
2026-05-26 22:06:10 +02:00
2026-08-15 13:20:11 +02:00
2026-09-30 16:13:23 +02:00
2026-05-26 22:06:10 +02:00
2026-08-03 00:16:08 +02:00
2026-08-16 11:57:31 +02:00
2026-08-11 12:07:42 +02:00
2026-09-05 22:09:16 +00:00
2026-09-15 00:57:14 +02:00
2026-05-28 13:43:15 +02:00
2026-06-18 23:03:27 +02:00
2026-10-02 08:14:00 +02:00
2026-08-16 11:57:31 +02:00
2026-08-16 11:57:31 +02:00
2026-09-27 07:42:21 +00:00
2026-09-27 07:42:21 +00:00
2026-09-27 07:42:21 +00:00
2026-07-31 23:38:03 +02:00
2026-08-16 11:57:31 +02:00
2026-06-18 23:03:27 +02:00
2026-08-11 12:00:59 +02:00
2026-08-11 12:00:59 +02:00
2026-08-11 12:00:59 +02:00
2026-08-11 12:00:59 +02:00
2026-08-11 12:00:59 +02:00
2026-08-11 12:00:59 +02:00
2026-08-16 11:57:31 +02:00
2026-09-15 00:57:14 +02:00
2026-09-21 19:12:35 +02:00
2026-05-26 22:06:10 +02:00
2026-08-13 22:25:58 +02:00
2026-09-11 21:56:02 +00:00
2026-08-18 09:37:43 +02:00
2026-07-28 19:33:48 +02:00
2026-06-22 18:26:19 +02:00
2026-08-16 11:57:31 +02:00
2026-08-28 22:57:35 +02:00
2026-08-16 11:57:31 +02:00
2026-09-30 14:14:09 +00:00
2026-09-10 00:53:47 +02:00
2026-09-15 00:57:14 +02:00
2026-09-15 15:24:59 +02:00
2026-09-27 07:42:21 +00:00
2026-09-15 16:29:01 +02:00
2026-09-21 19:12:35 +02:00
2026-09-21 19:12:35 +02:00
2026-07-28 19:33:48 +02:00
2026-05-26 22:06:10 +02:00
2026-08-16 11:57:31 +02:00
2026-07-28 19:33:48 +02:00
2026-09-11 16:54:56 +02:00
2026-10-04 09:34:21 +02:00
2026-08-29 09:16:50 +02:00
2026-08-23 08:55:13 +02:00
2026-05-26 22:06:10 +02:00
2026-08-19 08:45:59 +02:00
2026-08-03 12:16:09 +02:00
2026-08-03 12:16:09 +02:00
2026-08-03 12:16:09 +02:00
2026-08-03 00:16:08 +02:00
2026-09-18 06:12:03 +01:00
2026-08-06 17:34:46 +02:00
2026-07-22 22:51:25 +02:00
2026-07-22 22:51:25 +02:00
2026-08-03 12:16:09 +02:00
2026-08-18 08:56:59 +02:00
2026-07-22 22:51:25 +02:00
2026-09-05 22:09:16 +00:00
2026-05-26 22:06:10 +02:00
2026-06-18 00:09:17 +02:00
2026-06-18 00:09:17 +02:00
2026-05-28 13:43:15 +02:00
2026-08-03 12:16:09 +02:00
2026-09-11 21:56:08 +00:00