hasura/graphql-engine · error · NDCValidationError
data connector does not support queries
Error message
data connector does not support queries
What it means
A model or command routed to a data connector requires query capabilities that the connector does not report. Connectors advertise supported operations in their capabilities response; resolution fails early if queries are needed but unsupported.
Source
Thrown at v3/crates/metadata-resolve/src/helpers/ndc_validation.rs:131
field_name: FieldName,
},
#[error(
"Result type of function/procedure {function_or_procedure_name:} is {function_or_procedure_output_type:} but output type of command {command_name:} is {command_output_type:}"
)]
FuncProcAndCommandScalarOutputTypeMismatch {
function_or_procedure_name: String,
function_or_procedure_output_type: String,
command_name: String,
command_output_type: String,
},
#[error(
"Custom result type of function {function_or_procedure_name:} does not match custom output type of command: {command_name:}"
)]
FuncProcAndCommandCustomOutputTypeMismatch {
function_or_procedure_name: String,
command_name: String,
},
#[error("data connector does not support queries")]
QueryCapabilityUnsupported,
#[error("data connector does not support mutations")]
MutationCapabilityUnsupported,
// for `DataConnectorLink.argumentPresets` not all type representations are supported.
#[error(
"Unsupported type representation {representation:} in scalar type {scalar_type:}, for argument preset name {argument_name:}. Only 'json' representation is supported."
)]
UnsupportedTypeInDataConnectorLinkArgumentPreset {
representation: String,
scalar_type: DataConnectorScalarType,
argument_name: open_dds::types::DataConnectorArgumentName,
},
#[error(
"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:}'."
)]
NoSuchArgumentInNDCArgumentMapping {View on GitHub (pinned to 724551b9ae)
Solutions
- Verify the connector's /capabilities response includes queries
- Upgrade or reconfigure the data connector to support queries
- Route the model/command to a connector that supports queries, or remove the model
Defensive patterns
Strategy: fallback
Validate before calling
let caps = fetch_connector_capabilities().await?;
if !caps.queries.supported { /* skip/redirect model before resolving */ } Prevention
- Check the connector capabilities response before attaching models
When it happens
Trigger: Attaching a model backed by a read-only-misconfigured connector that omits 'queries' from its capabilities; pointing metadata at a connector that only supports mutations/procedures.
Common situations: Using a minimal custom connector without query support; capabilities response changed after a connector upgrade; wrong connector URL wired in config.
Related errors
- Relationship '{name}' is either remote or not having 'relati
- data connector does not support mutations
- setting up global config failed: %w
- unable to parse server endpoint: %w
- User defined functions not supported in queries
AI-assisted analysis of hasura/graphql-engine@724551b9ae (2026-08-28).
Data as JSON: /api/errors/bb6145a7f4146a64.
Report an issue: GitHub.