url location corrected for list

This commit is contained in:
DaKheera47 2026-01-20 13:30:56 +00:00
parent e5293fc82a
commit 55d97c8099
3 changed files with 16 additions and 7 deletions

View File

@ -10,8 +10,8 @@ MODEL=openai/gpt-4o-mini
# RXResume credentials for PDF generation
# Create an account at: https://rxresu.me
RXRESUME_EMAIL=your_email@example.com
RXRESUME_PASSWORD=your_password_here
# for reference: https://docs.rxresu.me/guides/using-the-api
RXRESUME_API_KEY=
# Optional: Basic Auth for write access (read-only without auth)
# When set, all write actions (POST/PATCH/DELETE) require Basic Auth.

View File

@ -301,7 +301,7 @@ settingsRouter.patch('/', async (req: Request, res: Response) => {
settingsRouter.get('/rx-resumes', async (_req: Request, res: Response) => {
try {
const resumes = await listResumes();
res.json({ success: true, resumes });
res.json({ success: true, data: { resumes } });
} catch (error) {
const message = error instanceof Error ? error.message : 'Unknown error';
console.error(`❌ Failed to fetch Reactive Resumes: ${message}`);

View File

@ -20,14 +20,21 @@ export async function fetchRxResume(path: string, options: RequestInit = {}): Pr
}
const baseUrl = process.env.RXRESUME_URL || 'https://rxresu.me';
const cleanBaseUrl = baseUrl.endsWith('/') ? baseUrl.slice(0, -1) : baseUrl;
let cleanBaseUrl = baseUrl.endsWith('/') ? baseUrl.slice(0, -1) : baseUrl;
// Handle cases where the base URL already includes /api or /api/openapi
if (cleanBaseUrl.endsWith('/api/openapi')) {
cleanBaseUrl = cleanBaseUrl.slice(0, -12);
} else if (cleanBaseUrl.endsWith('/api')) {
cleanBaseUrl = cleanBaseUrl.slice(0, -4);
}
// The API endpoints are at /api/openapi/*
const url = `${cleanBaseUrl}/api/openapi${path}`;
const headers = {
'x-api-key': apiKey,
'Content-Type': 'application/json',
// intentionally removed because it doesn't work with this added...
// 'Content-Type': 'application/json',
...(options.headers || {}),
} as Record<string, string>;
@ -83,9 +90,11 @@ export async function exportResumePdf(id: string): Promise<string> {
const result = await fetchRxResume(`/printer/resume/${id}/pdf`);
return result.url;
}
/**
* List all resumes.
* According to official OpenAPI spec, the endpoint is /resume/list
*/
export async function listResumes(): Promise<{ id: string; name: string }[]> {
return fetchRxResume('/resume');
return fetchRxResume('/resume/list');
}