Fix double /api/ prefix in API endpoint calls

When VITE_API_URL=/api, axios baseURL is already set to /api. However, all endpoint calls included the /api/ prefix, creating double paths like /api/api/auth/login/.

Removed /api/ prefix from 81 API endpoint calls across 22 files:
- src/api/auth.ts - Fixed login, logout, me, refresh, hijack endpoints
- src/api/client.ts - Fixed token refresh endpoint
- src/api/profile.ts - Fixed all profile, email, password, MFA, sessions endpoints
- src/hooks/*.ts - Fixed all remaining API calls (users, appointments, resources, etc)
- src/pages/*.tsx - Fixed signup and email verification endpoints

This ensures API requests use the correct path: /api/auth/login/ instead of /api/api/auth/login/

🤖 Generated with Claude Code

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
poduck
2025-11-30 15:27:57 -05:00
parent f1d4dac9d2
commit 4cd6610f2a
53 changed files with 476 additions and 687 deletions

View File

@@ -13,7 +13,7 @@ export const useServices = () => {
return useQuery<Service[]>({
queryKey: ['services'],
queryFn: async () => {
const { data } = await apiClient.get('/api/services/');
const { data } = await apiClient.get('/services/');
// Transform backend format to frontend format
return data.map((s: any) => ({
@@ -37,7 +37,7 @@ export const useService = (id: string) => {
return useQuery<Service>({
queryKey: ['services', id],
queryFn: async () => {
const { data } = await apiClient.get(`/api/services/${id}/`);
const { data } = await apiClient.get(`/services/${id}/`);
return {
id: String(data.id),
@@ -70,7 +70,7 @@ export const useCreateService = () => {
photos: serviceData.photos || [],
};
const { data } = await apiClient.post('/api/services/', backendData);
const { data } = await apiClient.post('/services/', backendData);
return data;
},
onSuccess: () => {
@@ -94,7 +94,7 @@ export const useUpdateService = () => {
if (updates.description !== undefined) backendData.description = updates.description;
if (updates.photos !== undefined) backendData.photos = updates.photos;
const { data } = await apiClient.patch(`/api/services/${id}/`, backendData);
const { data } = await apiClient.patch(`/services/${id}/`, backendData);
return data;
},
onSuccess: () => {
@@ -111,7 +111,7 @@ export const useDeleteService = () => {
return useMutation({
mutationFn: async (id: string) => {
await apiClient.delete(`/api/services/${id}/`);
await apiClient.delete(`/services/${id}/`);
},
onSuccess: () => {
queryClient.invalidateQueries({ queryKey: ['services'] });
@@ -129,7 +129,7 @@ export const useReorderServices = () => {
mutationFn: async (orderedIds: string[]) => {
// Convert string IDs to numbers for the backend
const order = orderedIds.map(id => parseInt(id, 10));
const { data } = await apiClient.post('/api/services/reorder/', { order });
const { data } = await apiClient.post('/services/reorder/', { order });
return data;
},
onSuccess: () => {