{"record":{"id":"b865fea8a78846d9","repo":"hasura/graphql-engine","slug":"field-field-name-not-found-in-object-type-obje","errorCode":null,"errorMessage":"Field {field_name:} not found in object type {object_type:} in data connector {data_connector_name:}.","messagePattern":"Field (.+?) not found in object type (.+?) in data connector (.+?)\\.","errorType":"validation","errorClass":"NDCValidationError","httpStatus":null,"severity":"error","filePath":"v3/crates/metadata-resolve/src/helpers/ndc_validation.rs","lineNumber":156,"sourceCode":"        \"Unsupported type representation {representation:} in scalar type {scalar_type:}, for argument preset name {argument_name:}. Only 'json' representation is supported.\"\n    )]\n    UnsupportedTypeInDataConnectorLinkArgumentPreset {\n        representation: String,\n        scalar_type: DataConnectorScalarType,\n        argument_name: open_dds::types::DataConnectorArgumentName,\n    },\n\n    #[error(\n        \"Argument '{argument_name:}' used in argument mapping for the field '{field_name:}' in object type '{object_type_name:}' is not defined in the data connector '{data_connector_name:}'.\"\n    )]\n    NoSuchArgumentInNDCArgumentMapping {\n        argument_name: open_dds::arguments::ArgumentName,\n        field_name: FieldName,\n        object_type_name: Qualified<CustomTypeName>,\n        data_connector_name: Qualified<DataConnectorName>,\n    },\n\n    #[error(\n        \"Field {field_name:} not found in object type {object_type:} in data connector {data_connector_name:}.\"\n    )]\n    NoSuchFieldInObjectType {\n        data_connector_name: Qualified<DataConnectorName>,\n        field_name: String,\n        object_type: String,\n    },\n\n    #[error(\"Internal error while serializing error message. Error: {err:}\")]\n    InternalSerializationError { err: serde_json::Error },\n}\n\npub fn validate_ndc(\n    model_name: &Qualified<ModelName>,\n    model: &models::Model,\n    schema: &data_connectors::DataConnectorSchema,\n) -> std::result::Result<(), NDCValidationError> {\n    let Some(model_source) = &model.source else {","sourceCodeStart":138,"sourceCodeEnd":174,"githubUrl":"https://github.com/hasura/graphql-engine/blob/724551b9ae87845594ef0408cff0e50eb6c90dc5/v3/crates/metadata-resolve/src/helpers/ndc_validation.rs#L138-L174","documentation":"A field mapping references a field that does not exist in the connector's object type. Validation ensures mapped fields exist in the NDC object type of the data connector.","triggerScenarios":"Mapping field 'x' when the connector's object type only defines 'y'; connector object type shape changed (field renamed/removed).","commonSituations":"Connector schema drift after upstream changes; stale schema cache; incorrect object type chosen in the mapping.","solutions":["Inspect the connector's object type fields and correct the mapped field name","Refresh/reload the connector schema","Update the mapping if the object type name itself is wrong"],"exampleFix":null,"handlingStrategy":"validation","validationCode":"let obj = connector.object_types.get(object_type).ok_or(config_err)?;\nassert!(obj.fields.contains_field(&field_name));","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Refresh connector schema before validating field mappings"],"tags":["ndc","field-mapping","object-type"],"backgroundTag":"ndc-field-not-found","analyzedSha":"724551b9ae87845594ef0408cff0e50eb6c90dc5","analyzedAt":"2026-08-28T07:32:55.105Z","schemaVersion":2},"datasetVersion":"2026-08-28T11:17:15.048Z"}