router-for-me/CLIProxyAPI · error
unexpected status %d: %s
Error message
unexpected status %d: %s
What it means
Error "unexpected status %d: %s" thrown in router-for-me/CLIProxyAPI.
Source
Thrown at internal/httpfetch/httpfetch.go:47
for key, value := range headers {
if value != "" {
req.Header.Set(key, value)
}
}
resp, errDo := client.Do(req)
if errDo != nil {
return nil, fmt.Errorf("request failed: %w", errDo)
}
defer func() {
if errClose := resp.Body.Close(); errClose != nil {
log.WithError(errClose).Debug("failed to close response body")
}
}()
if resp.StatusCode < http.StatusOK || resp.StatusCode >= http.StatusMultipleChoices {
body, _ := io.ReadAll(io.LimitReader(resp.Body, 4096))
return nil, fmt.Errorf("unexpected status %d: %s", resp.StatusCode, strings.TrimSpace(string(body)))
}
reader := io.Reader(resp.Body)
if maxSize > 0 {
reader = io.LimitReader(resp.Body, maxSize+1)
}
data, errRead := io.ReadAll(reader)
if errRead != nil {
return nil, fmt.Errorf("read response: %w", errRead)
}
if maxSize > 0 && int64(len(data)) > maxSize {
return nil, fmt.Errorf("response exceeds maximum allowed size of %d bytes", maxSize)
}
return data, nil
}
View on GitHub (pinned to 78f0c4079e)
Solutions
- Check the status code and body for the server's failure reason.
- Verify the request URL, credentials, and parameters, then retry.
When it happens
Trigger: Thrown at internal/httpfetch/httpfetch.go:47 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of router-for-me/CLIProxyAPI@78f0c4079e (2026-08-15).
Data as JSON: /api/errors/676242e4c964aec2.
Report an issue: GitHub.