{"record":{"id":"4c750213ae6aa014","repo":"weaviate/weaviate","slug":"could-not-recognize-object-s-properties-v","errorCode":null,"errorMessage":"could not recognize object's properties: %v","messagePattern":"could not recognize object's properties: (.+?)","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"usecases/objects/validation/properties_validation.go","lineNumber":71,"sourceCode":"\t}\n\n\tif vectorWeights != nil {\n\t\tres, err := v.validateVectorWeights(vectorWeights)\n\t\tif err != nil {\n\t\t\treturn fmt.Errorf(\"vector weights: %w\", err)\n\t\t}\n\n\t\tvectorWeights = res\n\t}\n\n\tif isp == nil {\n\t\t// no properties means nothing to validate\n\t\treturn nil\n\t}\n\n\tinputSchema, ok := isp.(map[string]interface{})\n\tif !ok {\n\t\treturn fmt.Errorf(\"could not recognize object's properties: %v\", isp)\n\t}\n\treturnSchema := map[string]interface{}{}\n\n\tfor propertyKey, propertyValue := range inputSchema {\n\t\tif propertyValue == nil {\n\t\t\tcontinue // nil values are removed and filtered out\n\t\t}\n\n\t\t// properties in the class are saved with lower case first letter\n\t\tpropertyKeyLowerCase := schema.LowercaseFirstLetter(propertyKey)\n\t\tproperty, err := schema.GetPropertyByName(class, propertyKeyLowerCase)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdataType, err := schema.GetPropertyDataType(class, propertyKeyLowerCase)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}","sourceCodeStart":53,"sourceCodeEnd":89,"githubUrl":"https://github.com/weaviate/weaviate/blob/75aa4b6d11f8818305aafd4440b4e32794f7ca04/usecases/objects/validation/properties_validation.go#L53-L89","documentation":"The object's 'properties' field is non-nil but not a JSON object: after JSON decoding it must be map[string]interface{}, and the type assertion failed (e.g. it was an array, string, or number). A shape guard on user-supplied input, not a schema error.","triggerScenarios":"Thrown at usecases/objects/validation/properties_validation.go:71 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Send properties as a JSON object: {\"title\": ...}, not an array or scalar.","If using a client SDK, pass a map/dict for properties rather than a serialized string.","Check for double-encoded JSON (a string containing JSON) in the request body."],"exampleFix":null,"handlingStrategy":"type-guard","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"75aa4b6d11f8818305aafd4440b4e32794f7ca04","analyzedAt":"2026-09-04T14:58:20.392Z","contentChangedAt":"2026-09-04T14:58:20.392Z","schemaVersion":2},"datasetVersion":"2026-09-11T21:17:09.523Z"}