Lin / docs /sprint-artifacts /tech-spec-api-url-fix.md
Zelyanoth's picture
added server address
cddcd30
# Tech-Spec: Fix API URL Configuration Issue
**Created:** December 23, 2025
**Status:** Ready for Development
## Overview
### Problem Statement
The frontend application is configured to use a hardcoded Hugging Face Space URL (`https://zelyanoth-lin-cbfcff2.hf.space`) instead of the user's local server IP address (`http://46.62.218.169/`). This causes API requests to fail with 404 errors when users try to access endpoints like `/api/posts/jobs/{jobId}`.
### Solution
Update the frontend environment configuration to use the correct API URL that matches the user's server IP address instead of the hardcoded Hugging Face Space URL.
### Scope (In/Out)
**In Scope:**
- Update frontend environment configuration files to use correct API URL
- Ensure API requests are made to the user's server IP address (`http://46.62.218.169/`)
- Test that API endpoints work correctly after configuration change
**Out Scope:**
- Backend server modifications
- Database schema changes
- UI/UX modifications
## Context for Development
### Codebase Patterns
- Frontend uses Vite with environment variables for configuration
- API calls are made through axios with a base URL configuration
- The project follows a standard React + Flask architecture
### Files to Reference
- `frontend/.env.production` - Contains the hardcoded Hugging Face Space URL
- `frontend/src/services/apiClient.js` - Contains the API client configuration logic
- `frontend/src/services/api.js` - Contains additional API configuration
### Technical Decisions
- The API URL should be configurable via environment variables to support different deployment environments
- The production environment file should be updated to use the correct server IP address
- CORS configuration in the backend already supports multiple origins including local addresses
## Implementation Plan
### Tasks
- [x] Update `frontend/.env.production` to use correct API URL
- [x] Verify that the API client properly handles the new URL configuration
- [x] Test that API requests are made to the correct server IP address
- [x] Verify that job polling endpoints work correctly
### Acceptance Criteria
- [x] AC 1: Given the updated configuration, when a user clicks the button to generate a post, then API requests should be made to `http://46.62.218.169/api/posts/` instead of the Hugging Face Space URL
- [x] AC 2: Given the updated configuration, when a user polls for job status, then requests to `/api/posts/jobs/{jobId}` should succeed without 404 errors
- [x] AC 3: Given the updated configuration, when the application runs in production mode, then all API calls should use the correct server IP address
## Additional Context
### Dependencies
- Frontend build process needs to be run after environment variable changes
- Backend server must be accessible at the configured IP address
### Testing Strategy
- Test the post generation flow after configuration changes
- Verify that job polling works correctly
- Check that all API endpoints return successful responses
### Notes
- The backend is already configured to accept requests from various origins including local addresses
- The frontend uses environment variables to determine the API URL based on the environment
- The hardcoded URL in the production environment file needs to be changed to the user's server IP