{"service":"Crosskhrome Unified API","domain":"https://crosskhrome.com","docs":"/docs","health":"/health","reverse_proxy":{"upstream":{"env":"DEEPSEEK / GEMINI / HUGGINGCHAT","meaning":"Backend sessions are securely managed on the server only."},"clients":{"env":"SERVICE_API_KEY","meaning":"The key you use in other applications as OpenAI Bearer api_key.","required_for_v1":true,"unified_key":"sk_crosskhrome_7jK8vN3mQ5pW2sR9tY1xL0aZ","tip":"Use this key in Cursor or other apps as your 'OpenAI API Key'."}},"endpoints":{"POST /v1/chat":"JSON body: message, optional model, system_prompt","POST /v1/chat/stream":"Same body, Server-Sent Events stream","POST /v1/clear":"Reset chat session","POST /v1/chat/completions":"OpenAI-compatible (messages[], model, stream)","GET /v1/models":"OpenAI-compatible model list"},"openai_compat":{"base_url":"http://0.0.0.0:8022/v1","api_key":"Must match .env client key if configured (see reverse_proxy.clients)","models":["deepseek-chat","deepseek-reasoner","deepseek-coder"]},"troubleshooting":["Server must stay running in its terminal; 'Uvicorn running on ...' must be visible.","If uvicorn exits with 10048 / 'address already in use': another process holds the port. Run: netstat -ano | findstr :8765  then  taskkill /PID <pid> /F   (Windows)","Use http://127.0.0.1:PORT/ not https. OpenAI SDK: base_url='http://127.0.0.1:8765/v1' (path /v1 required).","If localhost fails in browser, use 127.0.0.1 (IPv4 bind does not serve ::1).","Set API_DISABLE_CORS=1 only if you intentionally block cross-origin browser access."]}