tinyhumansai/openhuman · error

Backend returned success but no data for {} {}

Error message

Backend returned success but no data for {} {}

What it means

Envelope decode succeeded and success=true, but the {success,data} envelope carried no data payload to deserialize into T. The backend violated its own response shape for this method/path; reported with failure=envelope_error.

Source

Thrown at src/openhuman/integrations/client.rs:495

        url: &str,
        value: serde_json::Value,
    ) -> anyhow::Result<T> {
        let method_upper = method.to_uppercase();
        let envelope: BackendResponse<T> = serde_json::from_value(value)?;
        if !envelope.success {
            let msg = envelope
                .error
                .unwrap_or_else(|| "unknown backend error".into());
            crate::core::observability::report_error_or_expected(
                msg.as_str(),
                "integrations",
                method,
                &[("path", path), ("failure", "envelope_error")],
            );
            anyhow::bail!("Backend error for {} {}: {}", method_upper, url, msg);
        }
        envelope.data.ok_or_else(|| {
            anyhow::anyhow!(
                "Backend returned success but no data for {} {}",
                method_upper,
                url
            )
        })
    }

    async fn request_json<T: serde::de::DeserializeOwned>(
        &self,
        method: reqwest::Method,
        path: &str,
        body: Option<&serde_json::Value>,
    ) -> anyhow::Result<T> {
        reject_backend_webhook_path(method.as_str(), path)?;
        enforce_backend_egress(path)?;
        emit_backend_egress(path);
        self.ensure_budget_available(path).await?;
        let url = crate::api::config::api_url(&self.backend_url, path);

View on GitHub (pinned to 7491200858)

Solutions

  1. Retry the request — occasionally a backend hiccup
  2. Check whether the endpoint genuinely returns an empty payload and the client expectation is wrong
  3. Report to the backend team if it reproduces consistently
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at src/openhuman/integrations/client.rs:495 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/b341a2b36386b247. Report an issue: GitHub.