import { getNocoDbConfiguration } from "../utils/nocodb"; import { requireAuth } from "../utils/auth"; export default defineEventHandler(async (event) => { console.log('[unlink-berth-recommendations] Request received'); // Check authentication (x-tag header OR Keycloak session) await requireAuth(event); const body = await readBody(event); const { interestId, berthIds } = body; if (!interestId || !berthIds || !Array.isArray(berthIds)) { throw createError({ statusCode: 400, statusMessage: "interestId and berthIds array are required" }); } const config = getNocoDbConfiguration(); const interestsTableId = "mbs9hjauug4eseo"; const berthRecommendationsLinkFieldId = "cgthyq2e95ajc52"; // Berth Recommendations field // Format the berth IDs for the API const berthRecords = berthIds.map(id => ({ Id: id })); const result = await $fetch( `${config.url}/api/v2/tables/${interestsTableId}/links/${berthRecommendationsLinkFieldId}/records/${interestId}`, { method: 'DELETE', headers: { "xc-token": config.token, }, body: berthRecords, } ); return result; });