# API Client This directory contains the auto-generated TypeScript API client for the STA backend. ## Files - `schema.ts` - Auto-generated OpenAPI type definitions (do not edit manually) - `client.ts` - API client instance with type-safe methods ## Regenerating the Client To regenerate the TypeScript client after backend API changes: 1. Start the backend server: ```bash cargo run ``` 2. Download the OpenAPI spec: ```bash curl http://localhost:3100/specs > openapi.yaml ``` 3. Generate TypeScript types: ```bash pnpm exec openapi-typescript openapi.yaml -o src/api/schema.ts ``` ## Usage Example ```typescript import { apiClient } from '@/api/client'; // GET request const { data, error } = await apiClient.GET('/api/health'); if (error) { console.error('Health check failed:', error); } else { console.log('Server is healthy'); } // GET request with response data const { data: meta, error: metaError } = await apiClient.GET('/api/meta'); if (metaError) { console.error('Failed to get metadata:', metaError); } else { console.log('App name:', meta.name); console.log('App version:', meta.version); } ``` ## Configuration The API base URL can be configured via the `VITE_API_BASE_URL` environment variable. Create a `.env` file in the project root: ```env VITE_API_BASE_URL=http://localhost:3100 ``` For production builds, set the environment variable to point to your deployed backend.