{"record":{"id":"521b743a6dddbf74","repo":"langgenius/dify","slug":"no-oauth-client-config-for-provider-id","errorCode":null,"errorMessage":"No OAuth Client Config for {provider_id}","messagePattern":"No OAuth Client Config for (.+?)","errorType":"validation","errorClass":"ValueError","httpStatus":400,"severity":"error","filePath":"api/controllers/console/datasets/rag_pipeline/datasource_auth.py","lineNumber":176,"sourceCode":"    @setup_required\n    @login_required\n    @account_initialization_required\n    @edit_permission_required\n    @rbac_permission_required(RBACResourceScope.DATASET, RBACPermission.CREDENTIAL_MANAGE, resource_required=False)\n    @with_current_user\n    @with_current_tenant_id\n    def get(self, current_tenant_id: str, current_user: Account, provider_id: str):\n        tenant_id = current_tenant_id\n        credential_id = request.args.get(\"credential_id\")\n        datasource_provider_id = DatasourceProviderID(provider_id)\n        provider_name = datasource_provider_id.provider_name\n        plugin_id = datasource_provider_id.plugin_id\n        oauth_config = DatasourceProviderService().get_oauth_client(\n            tenant_id=tenant_id,\n            datasource_provider_id=datasource_provider_id,\n        )\n        if not oauth_config:\n            raise ValueError(f\"No OAuth Client Config for {provider_id}\")\n\n        context_id = OAuthProxyService.create_proxy_context(\n            user_id=current_user.id,\n            tenant_id=tenant_id,\n            plugin_id=plugin_id,\n            provider=provider_name,\n            credential_id=credential_id,\n        )\n        oauth_handler = OAuthHandler()\n        redirect_uri = f\"{dify_config.CONSOLE_API_URL}/console/api/oauth/plugin/{provider_id}/datasource/callback\"\n        authorization_url_response = oauth_handler.get_authorization_url(\n            tenant_id=tenant_id,\n            user_id=current_user.id,\n            plugin_id=plugin_id,\n            provider=provider_name,\n            redirect_uri=redirect_uri,\n            system_credentials=oauth_config,\n        )","sourceCodeStart":158,"sourceCodeEnd":194,"githubUrl":"https://github.com/langgenius/dify/blob/ef8544b173fd6cd7a8e71df2cab576e52bebbfbc/api/controllers/console/datasets/rag_pipeline/datasource_auth.py#L158-L194","documentation":"Error \"No OAuth Client Config for {provider_id}\" thrown in langgenius/dify.","triggerScenarios":"Thrown at api/controllers/console/datasets/rag_pipeline/datasource_auth.py:176 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":"ef8544b173fd6cd7a8e71df2cab576e52bebbfbc","analyzedAt":"2026-08-12T05:15:17.394Z","schemaVersion":2},"datasetVersion":"2026-08-12T13:17:24.610Z"}