This repository has been archived on 2026-01-31. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
blue-ocean/app/api/restore/route.ts
Riccardo Senica be467f7403
Some checks failed
Deploy / lint-build-deploy (push) Failing after 2m35s
feat: move from upstash to redis
2026-01-19 18:55:22 +01:00

37 lines
974 B
TypeScript

import { redis } from '@utils/redis';
import { validateState } from '@utils/validateState';
import { NextResponse } from 'next/server';
export async function GET(req: Request) {
try {
const { searchParams } = new URL(req.url);
const key = searchParams.get('key');
if (!key) {
return NextResponse.json({ error: 'No key provided' }, { status: 400 });
}
const rawState = await redis.get(key);
if (!rawState) {
return NextResponse.json(
{ error: 'No data found for this key' },
{ status: 404 }
);
}
const state = JSON.parse(rawState);
const validatedState = validateState(state);
return NextResponse.json({ data: validatedState });
} catch (error) {
console.error('Restore operation failed:', error);
return NextResponse.json(
{
error: 'Restore failed',
details: error instanceof Error ? error.message : 'Unknown error',
},
{ status: 500 }
);
}
}