{"record":{"id":"41e60de4b236e241","repo":"hasura/graphql-engine","slug":"the-url-for-the-data-connector-is-invalid-error","errorCode":null,"errorMessage":"The url for the data connector is invalid: {error}","messagePattern":"The url for the data connector is invalid: (.+?)","errorType":"validation","errorClass":"DataConnectorError::InvalidDataConnectorUrl","httpStatus":null,"severity":"error","filePath":"v3/crates/metadata-resolve/src/stages/data_connectors/error.rs","lineNumber":24,"sourceCode":"\nimpl ContextualError for NamedDataConnectorError {\n    fn create_error_context(&self) -> Option<error_context::Context> {\n        None\n    }\n}\n\n#[derive(Debug, thiserror::Error)]\n#[error(\"The data connector {data_connector_name} has an error: {error}\")]\npub struct NamedDataConnectorError {\n    pub data_connector_name: Qualified<DataConnectorName>,\n    pub error: DataConnectorError,\n}\n\n#[derive(Debug, thiserror::Error)]\npub enum DataConnectorError {\n    #[error(\"the data connector is defined more than once\")]\n    DuplicateDataConnectorDefinition,\n    #[error(\"The url for the data connector is invalid: {error}\")]\n    InvalidDataConnectorUrl { error: url::ParseError },\n    #[error(\"Invalid header name {header_name} specified\")]\n    InvalidHeaderName { header_name: String },\n    #[error(\"Invalid value specified for header {header_name}\")]\n    InvalidHeaderValue { header_name: String },\n    #[error(\"{0}\")]\n    NdcValidationError(NDCValidationError),\n    #[error(\n        \"The version specified in the capabilities (\\\"{version}\\\") is an invalid version: {error}\"\n    )]\n    InvalidNdcVersion {\n        version: String,\n        error: semver::Error,\n    },\n    #[error(\n        \"The version specified in the capabilities (\\\"{version}\\\") is not compatible with the schema version specified. The version requirement is {requirement}\"\n    )]\n    IncompatibleNdcVersion {","sourceCodeStart":6,"sourceCodeEnd":42,"githubUrl":"https://github.com/hasura/graphql-engine/blob/724551b9ae87845594ef0408cff0e50eb6c90dc5/v3/crates/metadata-resolve/src/stages/data_connectors/error.rs#L6-L42","documentation":"The URI configured for a data connector failed to parse (url::ParseError). The connector's endpoint must be a valid absolute URL.","triggerScenarios":"Setting a connector uri that is malformed — missing scheme, bad port, invalid characters, relative path only.","commonSituations":"Missing http:// prefix, typo'd URL, trailing whitespace, or environment-variable interpolation leaving an empty/invalid URL.","solutions":["Check the connector's uri field","Ensure it is a fully-qualified URL like https://host:port/path","Rebuild"],"exampleFix":"# before\nuri: \"connector-host:8080\"\n# after\nuri: \"http://connector-host:8080\"","handlingStrategy":"validation","validationCode":"url::Url::parse(&connector.uri)?; // fail fast before resolve","typeGuard":null,"tryCatchPattern":"Catch InvalidDataConnectorUrl and surface the url::ParseError to the config author.","preventionTips":["Parse connector URLs when loading config","Assert env-var interpolation produced non-empty values"],"tags":["data-connector","url","parse-error"],"backgroundTag":"invalid-url","analyzedSha":"724551b9ae87845594ef0408cff0e50eb6c90dc5","analyzedAt":"2026-08-28T07:32:55.105Z","schemaVersion":2},"datasetVersion":"2026-08-28T11:17:15.048Z"}