31 lines
781 B
TypeScript
31 lines
781 B
TypeScript
import { NextResponse } from "next/server"
|
|
import { fetchAction } from "convex/nextjs"
|
|
import { internal } from "@/convex/_generated/api"
|
|
import { requireAdminToken } from "@/lib/server/admin-auth"
|
|
|
|
export async function POST(request: Request) {
|
|
const authError = requireAdminToken(request)
|
|
if (authError) {
|
|
return authError
|
|
}
|
|
|
|
try {
|
|
const result = await fetchAction(internal.ebay.refreshCache, {
|
|
reason: "admin",
|
|
force: true,
|
|
})
|
|
|
|
return NextResponse.json(result)
|
|
} catch (error) {
|
|
console.error("Failed to refresh eBay cache:", error)
|
|
return NextResponse.json(
|
|
{
|
|
error:
|
|
error instanceof Error
|
|
? error.message
|
|
: "Failed to refresh eBay cache",
|
|
},
|
|
{ status: 500 }
|
|
)
|
|
}
|
|
}
|