{"record":{"id":"0ab9b2ce5fc151fd","repo":"influxdata/influxdb","slug":"missing-query-parameters-db","errorCode":null,"errorMessage":"missing query parameters 'db'","messagePattern":"missing query parameters 'db'","errorType":"http","errorClass":"Error","httpStatus":400,"severity":"error","filePath":"influxdb3_server/src/http.rs","lineNumber":264,"sourceCode":"\n    /// The request has no authentication, but authorization is configured.\n    #[error(\"authentication required\")]\n    Unauthenticated,\n\n    /// The provided authorization is not sufficient to perform the request.\n    #[error(\"access denied\")]\n    Forbidden,\n\n    /// The HTTP request method is not supported for this resource\n    #[error(\"unsupported method\")]\n    UnsupportedMethod,\n\n    /// Hyper serving error\n    #[error(\"error serving http: {0}\")]\n    ServingHttp(#[from] hyper::Error),\n\n    /// Missing parameters for query\n    #[error(\"missing query parameters 'db'\")]\n    MissingDeleteDatabaseParams,\n\n    /// Missing parameters for query\n    #[error(\"missing query parameters 'db' and 'q'\")]\n    MissingQueryParams,\n\n    /// Missing the `q` parameter in the v1 /query API\n    #[error(\"missing query parameter 'q'\")]\n    MissingQueryV1Params,\n\n    /// MIssing parameters for write\n    #[error(\"missing query parameter 'db'\")]\n    MissingWriteParams,\n\n    #[error(\"the mime type specified was not valid UTF8: {0}\")]\n    NonUtf8MimeType(#[from] FromUtf8Error),\n\n    /// Serde decode error","sourceCodeStart":246,"sourceCodeEnd":282,"githubUrl":"https://github.com/influxdata/influxdb/blob/06200ef96ba82c5f6727e5038a83af8e722c6875/influxdb3_server/src/http.rs#L246-L282","documentation":"This error indicates a request to the delete-database endpoint was made without the required `db` query parameter. The server needs to know which database to delete and refuses to proceed (or guess) when `db` is absent. The message text names the missing parameter.","triggerScenarios":"Calling DELETE /api/v3/{db} style delete route (or its configured equivalent) without `?db=...`, e.g. an empty query string or the parameter lost during URL construction.","commonSituations":"Template/interpolation bug leaving `db=` empty; client library version mismatch sending parameters in the body instead of the query string; proxies rewriting the URL and dropping query parameters.","solutions":["Add the `db` query parameter naming the database to delete: DELETE ...?db=mydb.","Verify the database name is non-empty after any string interpolation.","Check the exact route and parameter names for your server version (v1/v3 naming differs).","Confirm no proxy or SDK layer is stripping query parameters from the request."],"exampleFix":"// before\nclient.delete(\"http://localhost:8181/api/v3/delete\")\n// after\nclient.delete(\"http://localhost:8181/api/v3/delete?db=metrics\")","handlingStrategy":"validation","validationCode":"fn assert_db_param(db: &str) -> Result<&str, String> {\n    if db.trim().is_empty() { Err(\"'db' query parameter is required\".into()) } else { Ok(db) }\n}","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Always build delete requests through a helper that requires db: Option<String> to be Some.","Log the final URL before sending in debug mode.","Check interpolated values for empty strings after templating."],"tags":["http-api","missing-parameter","query-string","delete"],"backgroundTag":"missing-required-argument","analyzedSha":"06200ef96ba82c5f6727e5038a83af8e722c6875","analyzedAt":"2026-09-19T12:55:30.003Z","contentChangedAt":"2026-09-19T12:55:30.003Z","schemaVersion":2},"datasetVersion":"2026-09-23T08:17:48.524Z"}