24 lines
627 B
TypeScript
24 lines
627 B
TypeScript
import { asErrorMessage, jsonError } from '@/lib/server/http';
|
|
import { requireAuthenticatedSession } from '@/lib/server/auth-session';
|
|
import { enqueueTask } from '@/lib/server/tasks';
|
|
|
|
export async function POST() {
|
|
const { session, response } = await requireAuthenticatedSession();
|
|
if (response) {
|
|
return response;
|
|
}
|
|
|
|
try {
|
|
const task = await enqueueTask({
|
|
userId: session.user.id,
|
|
taskType: 'refresh_prices',
|
|
payload: {},
|
|
priority: 80
|
|
});
|
|
|
|
return Response.json({ task });
|
|
} catch (error) {
|
|
return jsonError(asErrorMessage(error, 'Failed to queue refresh task'));
|
|
}
|
|
}
|