mr-pmillz and Claude Opus 5.5
4cb620f46b
Fix Integration API organization delete (regression of #1376 )
...
DELETE /v1/org/{orgId} on the Integration API always returned
500 "An error occurred..." and left the organization in place, even for a
root API key holding the deleteOrg action. The handler looked up the
caller's ownership with req.user!.userId, but Integration API requests are
authenticated by verifyApiKey, which sets req.apiKey and never req.user,
so the lookup threw "Cannot read properties of undefined (reading
'userId')".
#1376 was fixed in f37eda47 by dropping the user-only permission check;
79cf7c84 later added the owner check to the handler shared by both
routers, reintroducing the failure for API keys.
Keep the owner check for dashboard sessions. For Integration API keys the
route is already restricted by verifyApiKeyIsRoot and
verifyApiKeyHasAction(deleteOrg), so load the organization directly. Both
paths still refuse a billing organization and return the same 404 for an
unknown organization.
Verified against a local SQLite instance with a root key: before the
change, create returned 201 and delete returned 500 with the organization
still present; after it, delete returns 200 and a repeated delete or GET
returns 404. npx tsc --noEmit passes.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-29 11:09:18 -04:00
Owen
750f267451
Try to link email to org when creating for first time
2026-09-21 16:25:58 -04:00
Fred KISSIE
8b20a88838
✨ delete org
2026-09-14 16:48:08 -04:00
Fred KISSIE
1d6d885f30
♻️ Only show the username instead of the name+username
2026-09-14 16:48:08 -04:00
Fred KISSIE
fef1476f67
✨ List of orgs, with all columns
2026-09-14 16:48:08 -04:00
Fred KISSIE
e371f26d73
✨ List orgs in server
2026-09-14 16:48:08 -04:00
miloschwartz
9a5824900d
strip encrypted ssh key from org response
2026-08-26 09:39:05 -04:00
Owen
c1caa30cb9
Move session logs to private
2026-08-19 17:25:32 -04:00
Owen
a74b0934fc
Allow changing the allow ssh and update shcmea
2026-08-17 14:12:39 -04:00
Owen
48c4b44f72
log chat sessions to database
2026-08-11 12:19:28 -04:00
Owen
d60c15b0ae
Fix typo
2026-06-29 15:24:16 -04:00
Owen
ff89a64453
Rename to limit id
2026-06-29 15:22:35 -04:00
Owen
a9b7cce49b
Improve efficiency of calculateUserClientsForOrgs
2026-06-23 17:14:40 -04:00
Owen
f48a4f7bc0
Enforce strick query params
...
Fixes #3313
2026-06-23 12:22:47 -04:00
Owen
c85a7f6ac5
Migrate unkown openapi response from string to {}
2026-06-09 15:35:08 -07:00
Owen
c1d933259a
Fix some ui form issues
2026-05-31 11:57:01 -07:00
Owen
0f2132e565
Merge branch 'main' into dev
2026-05-31 11:12:30 -07:00
Owen
6d4afd0953
Control updates from the ui
2026-05-21 15:43:31 -07:00
copilot-swe-agent[bot] and oschwartz10612
f3bee70c23
Reformat generated OpenAPI response schemas for readability
...
Agent-Logs-Url: https://github.com/fosrl/pangolin/sessions/7b395a8e-7fae-4f4d-952e-4030fea08262
Co-authored-by: oschwartz10612 <4999704+oschwartz10612@users.noreply.github.com >
2026-05-17 21:28:39 +00:00
copilot-swe-agent[bot] and oschwartz10612
15a9eb28d9
Add concrete OpenAPI data schemas for selected routes
...
Agent-Logs-Url: https://github.com/fosrl/pangolin/sessions/7b395a8e-7fae-4f4d-952e-4030fea08262
Co-authored-by: oschwartz10612 <4999704+oschwartz10612@users.noreply.github.com >
2026-05-17 21:25:53 +00:00
copilot-swe-agent[bot] and oschwartz10612
a0a093ed0b
Document all registerPath responses and normalize OpenAPI parser schemas
...
Agent-Logs-Url: https://github.com/fosrl/pangolin/sessions/73990123-9c27-444b-bc6e-77e890a0d57c
Co-authored-by: oschwartz10612 <4999704+oschwartz10612@users.noreply.github.com >
2026-05-17 06:43:10 +00:00
Owen
55989c2019
Add trial system
2026-04-18 13:40:50 -07:00
Owen
e0c96e7224
Configure connection log retention time
2026-03-30 11:31:46 -07:00
miloschwartz
0fecbe704b
Merge branch 'dev' into multi-role
2026-03-24 22:01:13 -07:00
Owen Schwartz
4843268537
Merge pull request #2552 from huzky-v/feat-add-bandwidth-reset-api
...
feat: Adding an organization sites bandwidth reset API
2026-03-18 16:17:43 -07:00
Jacky Fong
5c4de03588
add reset bandwidth api for site
...
Change endpoint
update to reset all site in the organization
move the logic to organization
move the permission to organization
2026-02-28 15:47:03 +08:00
Owen
75f34ff127
Stub cache
2026-02-25 16:17:06 -08:00
Owen
52937a6d90
Make sshCA GA
2026-02-25 16:04:47 -08:00
Owen
f50d1549b0
Update cache to use redis
2026-02-24 19:50:42 -08:00
miloschwartz
20e547a0f6
first pass
2026-02-24 17:58:11 -08:00
miloschwartz
3f2bdf081f
allow edit admin role ssh and support null authDaemonMode
2026-02-20 20:25:14 -08:00
miloschwartz
d6ba34aeea
set auth daemon type on resource
2026-02-20 17:33:21 -08:00
miloschwartz
d4bff9d5cb
clean orgId and fix primary badge
2026-02-17 20:35:36 -08:00
Owen
6661a76aa8
Update member resources page and testing new org counts
2026-02-17 20:01:43 -08:00
Owen
4d6240c987
Handle new usage tracking with multi org
2026-02-17 17:10:05 -08:00
miloschwartz
79cf7c84dc
support delete org and preserve path on switch
2026-02-17 16:45:15 -08:00
miloschwartz
b8c3cc751a
support creating multiple orgs in saas
2026-02-17 14:37:46 -08:00
Owen
9cf59c409e
Initial sign endpoint working
2026-02-16 15:19:29 -08:00
miloschwartz
33f0782f3a
support delete account
2026-02-14 18:01:37 -08:00
Owen
a26076e9db
Add final prices and fix logs
2026-02-11 10:06:56 -08:00
Owen
df1bf09163
Add pricing matrix
2026-02-11 10:06:55 -08:00
Owen
569dc735ce
Rename tiers and get working
2026-02-11 10:06:54 -08:00
Owen
4139a7b73f
Basic billing page is working
2026-02-11 10:06:03 -08:00
Owen
be60d66ce3
Switch to the new tier system and clean up checks
2026-02-11 10:06:03 -08:00
miloschwartz
068b2a0dcd
clean up paid features check
2026-01-22 11:16:27 -08:00
Owen
ce632a25cf
Consolidate the messages into the same enum
2026-01-17 11:41:10 -08:00
Owen
9114dd5992
Send terminate error messages
2026-01-16 14:57:54 -08:00
Owen
5c67a1cb12
Format
2025-12-22 16:28:41 -05:00
Owen
d8344988c0
Restrict license
2025-12-20 16:35:16 -05:00
Owen
fea4d43920
Make utility subnet configurable
2025-12-19 14:45:00 -05:00