tinyhumansai/openhuman · error
failed to read response body for GET {url}: {error}
Error message
failed to read response body for GET {url}: {error} What it means
Raised in get_bytes when the response headers were read fine but streaming the body failed (connection reset mid-transfer, timeout). Only the body read fails; the status and content-type were already captured.
Source
Thrown at src/openhuman/integrations/client.rs:633
body,
},
"get_bytes",
path,
&url,
));
}
let content_type = resp
.headers()
.get(reqwest::header::CONTENT_TYPE)
.and_then(|value| value.to_str().ok())
.map(str::to_owned);
let filename = resp
.headers()
.get(reqwest::header::CONTENT_DISPOSITION)
.and_then(|value| value.to_str().ok())
.and_then(parse_content_disposition_filename);
let body = resp.bytes().await.map_err(|error| {
anyhow::anyhow!("failed to read response body for GET {url}: {error}")
})?;
tracing::debug!(
"[integrations] GET(bytes) {} → {} bytes (content_type={:?})",
url,
body.len(),
content_type
);
Ok((body, content_type, filename))
}
/// Fetch and cache pricing info from the backend. Returns a default
/// (empty) pricing struct on network errors so tool registration never fails.
pub async fn pricing(&self) -> &IntegrationPricing {
self.pricing
.get_or_init(|| async {
match self
.get::<IntegrationPricing>("/agent-integrations/pricing")
.awaitView on GitHub (pinned to 7491200858)
Solutions
- Retry the download — mid-transfer resets are transient
- Check network stability for large files
- Verify any proxy in front of the backend is not cutting long responses
Defensive patterns
Strategy: retry
When it happens
Trigger: Thrown at src/openhuman/integrations/client.rs:633 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of tinyhumansai/openhuman@7491200858 (2026-08-17).
Data as JSON: /api/errors/e64fd110ee8f8685.
Report an issue: GitHub.