From cbbf5d3d2556e42d417c41799523e460e6953b9b Mon Sep 17 00:00:00 2001 From: Bernd Storath <32197462+kaaax0815@users.noreply.github.com> Date: Mon, 29 Sep 2025 08:20:00 +0200 Subject: [PATCH] Feat: Return client id of newly created client (#2190) return client id of newly created client --- src/server/api/client/index.post.ts | 6 ++++-- src/server/database/repositories/client/service.ts | 3 ++- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/src/server/api/client/index.post.ts b/src/server/api/client/index.post.ts index 930c625e..e8e5da37 100644 --- a/src/server/api/client/index.post.ts +++ b/src/server/api/client/index.post.ts @@ -9,8 +9,10 @@ export default definePermissionEventHandler( validateZod(ClientCreateSchema, event) ); - await Database.clients.create({ name, expiresAt }); + const result = await Database.clients.create({ name, expiresAt }); await WireGuard.saveConfig(); - return { success: true }; + + const clientId = result[0]!.clientId; + return { success: true, clientId }; } ); diff --git a/src/server/database/repositories/client/service.ts b/src/server/database/repositories/client/service.ts index 3616aa09..2fcd40c3 100644 --- a/src/server/database/repositories/client/service.ts +++ b/src/server/database/repositories/client/service.ts @@ -132,7 +132,7 @@ export class ClientService { const ipv6Cidr = parseCidr(clientInterface.ipv6Cidr); const ipv6Address = nextIP(6, ipv6Cidr, clients); - await tx + return await tx .insert(client) .values({ name, @@ -150,6 +150,7 @@ export class ClientService { serverAllowedIps: [], enabled: true, }) + .returning({ clientId: client.id }) .execute(); }); }