/** * POST /api/settings/print-agents/enroll-code (session) * Body: { name, orgId? } → { status, code, expiresAt, instanceUrl } * The code is pasted into the device (setup page or agent.env) and is single-use, 24 h. */ import { requireAdminSession, instanceOrigin } from '../../../utils/printAgentAuth' import { createEnrollCode } from '../../../utils/printSpoolDb' export default defineEventHandler(async (event) => { const session = await requireAdminSession(event) const body = await readBody(event).catch(() => ({})) || {} const name = String(body.name || '').trim().slice(0, 80) || 'Print-Agent' const orgId = Number(body.orgId ?? session.orgId) || 0 const { code, expiresAt } = createEnrollCode(session.clientId, orgId, name, session.userId) return { status: 200, code, expiresAt, name, orgId, instanceUrl: instanceOrigin(event) } })