{"record":{"id":"310df14da84d5638","repo":"nautechsystems/nautilus_trader","slug":"missing-betfair-credentials-in-config-and-environm","errorCode":null,"errorMessage":"Missing Betfair credentials in config and environment","messagePattern":"Missing Betfair credentials in config and environment","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"crates/adapters/betfair/src/config.rs","lineNumber":66,"sourceCode":"\nfn validate_market_start_time(label: &str, value: &Option<String>) -> anyhow::Result<()> {\n    if let Some(value) = value {\n        parse_betfair_timestamp(value)\n            .map(|_| ())\n            .map_err(|e| anyhow::anyhow!(\"Invalid {label} '{value}': {e}\"))?;\n    }\n\n    Ok(())\n}\n\nfn resolve_credential(\n    username: Option<String>,\n    password: Option<String>,\n    app_key: Option<String>,\n) -> anyhow::Result<BetfairCredential> {\n    match BetfairCredential::resolve(username, password, app_key) {\n        Ok(Some(credential)) => Ok(credential),\n        Ok(None) => anyhow::bail!(\"Missing Betfair credentials in config and environment\"),\n        Err(e) => Err(match e {\n            CredentialError::MissingPassword => anyhow::anyhow!(\n                \"Invalid Betfair credentials: username provided but password is missing\",\n            ),\n            CredentialError::MissingUsername => anyhow::anyhow!(\n                \"Invalid Betfair credentials: password or app key provided but username is missing\",\n            ),\n            CredentialError::MissingAppKey => {\n                anyhow::anyhow!(\"Invalid Betfair credentials: app key is missing\")\n            }\n        }),\n    }\n}\n\nfn build_stream_config(\n    stream_host: &Option<String>,\n    stream_port: &Option<u16>,\n    stream_heartbeat_ms: u64,","sourceCodeStart":48,"sourceCodeEnd":84,"githubUrl":"https://github.com/nautechsystems/nautilus_trader/blob/a4b06ed870971b5671d12754ea138a3ab99b1dec/crates/adapters/betfair/src/config.rs#L48-L84","documentation":"Error \"Missing Betfair credentials in config and environment\" thrown in nautechsystems/nautilus_trader.","triggerScenarios":"Thrown at crates/adapters/betfair/src/config.rs:66 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"a4b06ed870971b5671d12754ea138a3ab99b1dec","analyzedAt":"2026-08-16T22:54:50.089Z","schemaVersion":2},"datasetVersion":"2026-08-16T23:17:17.608Z"}