{"record":{"id":"d92aaf7b9b8c3f6b","repo":"HKUDS/nanobot","slug":"no-api-key-configured-for-provider-provider-name","errorCode":null,"errorMessage":"No API key configured for provider '{provider_name}'.","messagePattern":"No API key configured for provider '(.+?)'\\.","errorType":"exception","errorClass":"ValueError","httpStatus":null,"severity":"error","filePath":"nanobot/providers/factory.py","lineNumber":123,"sourceCode":"\n    if backend == \"azure_openai\":\n        if not p or not p.api_base:\n            raise ValueError(\"Azure OpenAI requires api_base in config.\")\n    elif (\n        backend == \"openai_compat\"\n        and spec\n        and spec.is_direct\n        and not spec.default_api_base\n        and not (p and p.api_base)\n    ):\n        raise ValueError(f\"Provider '{provider_name}' requires api_base in config.\")\n    elif backend in {\"anthropic\", \"openai_compat\"} and not (\n        backend == \"openai_compat\" and model.startswith(\"bedrock/\")\n    ):\n        needs_key = not (p and p.api_key)\n        exempt = spec and (spec.is_oauth or spec.is_local or spec.is_direct)\n        if needs_key and not exempt:\n            raise ValueError(f\"No API key configured for provider '{provider_name}'.\")\n\n    return _ProviderSetup(\n        model=model,\n        provider_name=provider_name,\n        provider_config=p,\n        spec=spec,\n        backend=backend,\n    )\n\n\ndef validate_provider_setup(\n    config: Config,\n    *,\n    preset_name: str | None = None,\n    preset: ModelPresetConfig | None = None,\n    model: str | None = None,\n) -> None:\n    \"\"\"Validate local provider/model settings without loading a provider client.\"\"\"","sourceCodeStart":105,"sourceCodeEnd":141,"githubUrl":"https://github.com/HKUDS/nanobot/blob/42f37dc4c0e409eac7818a82d165c5f2757bc075/nanobot/providers/factory.py#L105-L141","documentation":"Error \"No API key configured for provider '{provider_name}'.\" thrown in HKUDS/nanobot.","triggerScenarios":"Thrown at nanobot/providers/factory.py:123 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":"42f37dc4c0e409eac7818a82d165c5f2757bc075","analyzedAt":"2026-08-26T00:18:52.276Z","schemaVersion":2},"datasetVersion":"2026-08-26T04:18:47.238Z"}