Files
whatsappNucleo/server/api/instances/[id]/reset.post.ts
josedario87 3817e3c4ae
All checks were successful
build-and-deploy / build-and-deploy (push) Successful in 51s
Feature: Boton para reiniciar conexion de instancia
2025-12-02 19:36:06 -06:00

34 lines
907 B
TypeScript

/**
* POST /api/instances/[id]/reset
* Reset instance connection (disconnect and clear QR)
*/
import { query } from '../../../utils/database'
import { baileysManager } from '../../../services/baileys/manager'
export default defineEventHandler(async (event) => {
const username = getHeader(event, 'x-authentik-username')
if (!username) {
throw createError({ statusCode: 401, message: 'Unauthorized' })
}
const id = getRouterParam(event, 'id')
if (!id) {
throw createError({ statusCode: 400, message: 'Instance ID required' })
}
// Disconnect if connected
try {
await baileysManager.disconnect(id)
} catch (e) {
// Ignore if not connected
}
// Reset in database
await query(
`UPDATE instances SET status = 'disconnected', qr_code = NULL, pairing_code = NULL WHERE id = $1`,
[id]
)
return { success: true, message: 'Instance reset successfully' }
})