18 lines
625 B
TypeScript

import { deleteUserDevice } from "../../db/devices";
/**
* DELETE /api/devices/:id
*
* User entfernt ein eigenes Device — gibt damit einen Slot frei.
* Idempotent: wenn Device nicht existiert oder bereits gelöscht → 200.
*/
export default defineEventHandler(async (event) => {
// skipDeviceCheck: User soll bei Geräte-Limit-Sperre trotzdem freigeben können.
const user = await requireUser(event, { skipDeviceCheck: true });
const id = getRouterParam(event, "id");
if (!id) throw createError({ statusCode: 400, message: "id required" });
await deleteUserDevice(user.id, id);
return { ok: true };
});