mirror of
https://github.com/stackblitz-labs/bolt.diy
synced 2025-05-05 04:34:44 +00:00
33 lines
1.1 KiB
TypeScript
33 lines
1.1 KiB
TypeScript
import { json, type ActionFunctionArgs } from '@remix-run/node';
|
|
|
|
export async function action({ request }: ActionFunctionArgs) {
|
|
try {
|
|
// Add proper type assertion for the request body
|
|
const body = (await request.json()) as { projectId?: string; token?: string };
|
|
const { projectId, token } = body;
|
|
|
|
if (!projectId || !token) {
|
|
return json({ error: 'Project ID and token are required' }, { status: 400 });
|
|
}
|
|
|
|
const response = await fetch(`https://api.supabase.com/v1/projects/${projectId}/api-keys`, {
|
|
method: 'GET',
|
|
headers: {
|
|
Authorization: `Bearer ${token}`,
|
|
'Content-Type': 'application/json',
|
|
},
|
|
});
|
|
|
|
if (!response.ok) {
|
|
return json({ error: `Failed to fetch API keys: ${response.statusText}` }, { status: response.status });
|
|
}
|
|
|
|
const apiKeys = await response.json();
|
|
|
|
return json({ apiKeys });
|
|
} catch (error) {
|
|
console.error('Error fetching project API keys:', error);
|
|
return json({ error: error instanceof Error ? error.message : 'Unknown error occurred' }, { status: 500 });
|
|
}
|
|
}
|