router-for-me/CLIProxyAPI · error
failed to decode Realtime call request: %w
Error message
failed to decode Realtime call request: %w
What it means
Error "failed to decode Realtime call request: %w" thrown in router-for-me/CLIProxyAPI.
Source
Thrown at internal/client/codex/live/live.go:565
func applyClientSecretCallSession(body []byte, contentType, model string, session json.RawMessage) ([]byte, string, string, error) {
if len(session) == 0 {
return body, contentType, model, nil
}
mediaType, _, errMediaType := mime.ParseMediaType(contentType)
if errMediaType == nil && (strings.EqualFold(mediaType, "application/sdp") || strings.EqualFold(mediaType, "text/plain")) {
encoded, errEncode := encodeCallRequest(string(body), session)
if errEncode != nil {
return nil, "", "", errEncode
}
return encoded, "application/json", modelFromJSON(session), nil
}
if errMediaType != nil || !strings.EqualFold(mediaType, "application/json") {
return nil, "", "", errors.New("Realtime client secrets require an SDP or JSON call request")
}
var payload map[string]json.RawMessage
if errUnmarshal := json.Unmarshal(body, &payload); errUnmarshal != nil {
return nil, "", "", fmt.Errorf("failed to decode Realtime call request: %w", errUnmarshal)
}
payload["session"] = append(json.RawMessage(nil), session...)
encoded, errMarshal := json.Marshal(payload)
if errMarshal != nil {
return nil, "", "", fmt.Errorf("failed to encode Realtime call request: %w", errMarshal)
}
return encoded, "application/json", modelFromJSON(session), nil
}
func rewriteCallRequestModel(body []byte, contentType, model string) ([]byte, string, error) {
upstreamModel := codexRealtimeModel(model)
mediaType, _, errMediaType := mime.ParseMediaType(contentType)
if errMediaType != nil || !strings.EqualFold(mediaType, "application/json") || len(bytes.TrimSpace(body)) == 0 {
return body, upstreamModel, nil
}
var payload map[string]json.RawMessage
if errUnmarshal := json.Unmarshal(body, &payload); errUnmarshal != nil {
return nil, "", fmt.Errorf("failed to decode Realtime call request: %w", errUnmarshal)View on GitHub (pinned to 78f0c4079e)
Solutions
- Send a valid JSON Realtime call request body.
- Fix the JSON syntax error reported by the wrapped decode error.
When it happens
Trigger: Thrown at internal/client/codex/live/live.go:565 when the library encounters an invalid state.
Common situations: See trigger scenarios.
Understand the failure class
- Parsing and encoding errors: unexpected token, malformed input — why parsers reject input and how to find the real culprit.
AI-assisted analysis of router-for-me/CLIProxyAPI@78f0c4079e (2026-08-15).
Data as JSON: /api/errors/43db13e195123c49.
Report an issue: GitHub.