diff --git a/server/routes/users/[id]/watch-history/[tmdbid]/index.ts b/server/routes/users/[id]/watch-history/[tmdbid]/index.ts index 766dd80..9c965d7 100644 --- a/server/routes/users/[id]/watch-history/[tmdbid]/index.ts +++ b/server/routes/users/[id]/watch-history/[tmdbid]/index.ts @@ -52,16 +52,17 @@ export default defineEventHandler(async event => { } if (method === 'PUT') { - try { - const body = await readBody(event); + const body = await readBody(event); - // Accept single object (normal playback) or array (e.g. user import) - const bodySchema = z.union([ - watchHistoryItemSchema, - z.array(watchHistoryItemSchema).max(1000), - ]); - const parsed = bodySchema.parse(body); - const items = Array.isArray(parsed) ? parsed : [parsed]; + // Accept single object (normal playback) or array (e.g. user import) + const bodySchema = z.union([ + watchHistoryItemSchema, + z.array(watchHistoryItemSchema).max(1000), + ]); + const parsed = bodySchema.parse(body); + const items = Array.isArray(parsed) ? parsed : [parsed]; + + try { const upsertPromises = items.map(validatedBody => { const itemTmdbId = items.length === 1 ? tmdbId : (validatedBody.tmdbId ?? tmdbId);