tinyhumansai/openhuman · error · anyhow::Error
Missing required parameter: place_id
Error message
Missing required parameter: place_id
What it means
Required-parameter guard in the Google Places details tool's execute: `place_id` is missing or not a string. The schema requires place_id, which must come from a prior google_places_search result; this fires when the caller skips the search step or passes a wrong-typed argument.
Source
Thrown at src/openhuman/integrations/tools/google_places.rs:238
fn parameters_schema(&self) -> serde_json::Value {
json!({
"type": "object",
"properties": {
"place_id": {
"type": "string",
"description": "Google Places ID (from google_places_search results)"
}
},
"required": ["place_id"]
})
}
async fn execute(&self, args: serde_json::Value) -> anyhow::Result<ToolResult> {
let place_id = args
.get("place_id")
.and_then(|v| v.as_str())
.ok_or_else(|| anyhow::anyhow!("Missing required parameter: place_id"))?;
if place_id.trim().is_empty() {
return Ok(ToolResult::error("place_id cannot be empty"));
}
let body = json!({ "placeId": place_id });
tracing::debug!("[google_places_details] placeId={}", place_id);
match self
.client
.post::<DetailsResponse>("/agent-integrations/google-places/details", &body)
.await
{
Ok(resp) => {
let p = &resp.place;
let mut lines = vec![
format!("{}", p.name),View on GitHub (pinned to 7491200858)
Solutions
- Pass the place_id taken from google_places_search results
- Re-run the search to obtain a fresh place_id if it was lost
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at src/openhuman/integrations/tools/google_places.rs:238 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/4c7c4fffe27a5aac.
Report an issue: GitHub.