{"record":{"id":"59a3ac8b195e9731","repo":"browser-use/browser-use","slug":"access-forbidden-please-check-your-browser-use-cl","errorCode":null,"errorMessage":"Access forbidden. Please check your browser-use cloud subscription status.","messagePattern":"Access forbidden\\. Please check your browser-use cloud subscription status\\.","errorType":"exception","errorClass":"CloudBrowserAuthError","httpStatus":403,"severity":"error","filePath":"browser_use/browser/cloud/cloud.py","lineNumber":73,"sourceCode":"\t\t\t)\n\n\t\theaders = {'X-Browser-Use-API-Key': api_token, 'Content-Type': 'application/json', **(extra_headers or {})}\n\n\t\t# Convert request to dictionary and exclude unset fields\n\t\trequest_body = request.model_dump(exclude_unset=True)\n\n\t\ttry:\n\t\t\tlogger.info('🌤️ Creating cloud browser instance...')\n\n\t\t\tresponse = await self.client.post(url, headers=headers, json=request_body)\n\n\t\t\tif response.status_code == 401:\n\t\t\t\traise CloudBrowserAuthError(\n\t\t\t\t\t'BROWSER_USE_API_KEY is invalid. Get a new key at:\\n'\n\t\t\t\t\t'https://cloud.browser-use.com/new-api-key?utm_source=oss&utm_medium=use_cloud'\n\t\t\t\t)\n\t\t\telif response.status_code == 403:\n\t\t\t\traise CloudBrowserAuthError('Access forbidden. Please check your browser-use cloud subscription status.')\n\t\t\telif not response.is_success:\n\t\t\t\terror_msg = f'Failed to create cloud browser: HTTP {response.status_code}'\n\t\t\t\ttry:\n\t\t\t\t\terror_data = response.json()\n\t\t\t\t\tif 'detail' in error_data:\n\t\t\t\t\t\terror_msg += f' - {error_data[\"detail\"]}'\n\t\t\t\texcept Exception:\n\t\t\t\t\tpass\n\t\t\t\traise CloudBrowserError(error_msg)\n\n\t\t\tbrowser_data = response.json()\n\t\t\tbrowser_response = CloudBrowserResponse(**browser_data)\n\n\t\t\t# Store session ID for cleanup\n\t\t\tself.current_session_id = browser_response.id\n\n\t\t\tlogger.info(f'🌤️ Cloud browser created successfully: {browser_response.id}')\n\t\t\tlogger.debug(f'🌤️ CDP URL: {browser_response.cdpUrl}')","sourceCodeStart":55,"sourceCodeEnd":91,"githubUrl":"https://github.com/browser-use/browser-use/blob/6c73fced2f6d45a11d88622fe56365a5fe18f28b/browser_use/browser/cloud/cloud.py#L55-L91","documentation":"Cloud browser creation returned HTTP 403: authentication succeeded but the account is not entitled to the requested operation — subscription inactive/lapsed, plan limits, or a feature (e.g. cloud profiles, specific proxy regions) not included in the plan. Distinct from 401 (bad credentials); this is an authorization/entitlement failure.","triggerScenarios":"`Browser(use_cloud=True)` or `cloud_profile_id=...` while the account has no active cloud subscription; requesting paid features (long `cloud_timeout`, premium proxy country) on a free plan; team key without permission for the target project/profile.","commonSituations":"Trial expired between runs; billing lapsed; using a colleague's key scoped to a different workspace; free-tier `cloud_timeout` above the 15-minute maximum.","solutions":["Check subscription status in the browser-use cloud dashboard and reactivate/upgrade if lapsed.","Lower request scope to plan limits (e.g. `cloud_timeout=15` on free tier, standard proxy regions).","Confirm the key belongs to the account/workspace that owns the profile or feature being requested."],"exampleFix":"# before\nbrowser = Browser(use_cloud=True, cloud_timeout=60)  # free tier max is 15 -> 403\n\n# after\nbrowser = Browser(use_cloud=True, cloud_timeout=15)","handlingStrategy":"try-catch","validationCode":"# Stay within plan limits up front\ncloud_timeout = 15  # free-tier max; raise only with a paid plan\nbrowser = Browser(use_cloud=True, cloud_timeout=cloud_timeout)","typeGuard":null,"tryCatchPattern":"from browser_use.browser.cloud.cloud import CloudBrowserAuthError\ntry:\n    browser = Browser(use_cloud=True)\nexcept CloudBrowserAuthError as e:\n    if 'forbidden' in str(e).lower():\n        logger.error('403: check subscription/entitlement in the cloud dashboard before retrying')\n    raise","preventionTips":["Verify subscription status and feature entitlements in the dashboard before shipping cloud features.","Keep request parameters (timeout, proxy regions, profiles) within your plan's documented limits.","Distinguish 401 (fix the key) from 403 (fix the account) in your error handling."],"tags":["cloud","authorization","http-403","subscription"],"backgroundTag":null,"analyzedSha":"6c73fced2f6d45a11d88622fe56365a5fe18f28b","analyzedAt":"2026-08-14T19:42:40.557Z","schemaVersion":2},"datasetVersion":"2026-08-15T17:31:12.345Z"}