{"record":{"id":"c1703b781b045d02","repo":"apache/superset","slug":"changing-this-report-is-forbidden","errorCode":null,"errorMessage":"Changing this report is forbidden","messagePattern":"Changing this report is forbidden","errorType":"exception","errorClass":"ReportScheduleForbiddenError","httpStatus":403,"severity":"error","filePath":"superset/commands/report/base.py","lineNumber":134,"sourceCode":"\n    def _check_object_access(\n        self,\n        object_id: int,\n        *,\n        kind: str,\n        dao: type[BaseDAO[Any]],\n        not_found_exc: type[ValidationError],\n        exceptions: list[ValidationError],\n    ) -> None:\n        \"\"\"Validate the object exists and the current user can access it.\"\"\"\n        obj = dao.find_by_id(object_id)\n        if not obj:\n            exceptions.append(not_found_exc())\n        else:\n            try:\n                security_manager.raise_for_access(**{kind: obj})\n            except SupersetSecurityException as ex:\n                raise ReportScheduleForbiddenError() from ex\n        self._properties[kind] = obj\n\n    def validate_chart_dashboard(\n        self, exceptions: list[ValidationError], update: bool = False\n    ) -> None:\n        \"\"\"Validate chart or dashboard relation\"\"\"\n        chart_id = self._properties.get(\"chart\")\n        dashboard_id = self._properties.get(\"dashboard\")\n        creation_method = self._properties.get(\"creation_method\")\n\n        if creation_method == ReportCreationMethod.CHARTS and not chart_id:\n            # User has not saved chart yet in Explore view\n            exceptions.append(ChartNotSavedValidationError())\n            return\n\n        if creation_method == ReportCreationMethod.DASHBOARDS and not dashboard_id:\n            exceptions.append(DashboardNotSavedValidationError())\n            return","sourceCodeStart":116,"sourceCodeEnd":152,"githubUrl":"https://github.com/apache/superset/blob/f4587218dd19d046c3e4d00063e7d27f8a2ed354/superset/commands/report/base.py#L116-L152","documentation":"Error \"Changing this report is forbidden\" thrown in apache/superset.","triggerScenarios":"A non-owner user attempts to modify a report schedule.","commonSituations":"Creating or updating a report schedule targeting a dashboard or chart the user cannot write to.","solutions":["Ask an owner of the report schedule to make the change, or request the can_write permission on Alerts & Reports."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"f4587218dd19d046c3e4d00063e7d27f8a2ed354","analyzedAt":"2026-08-14T22:39:27.425Z","schemaVersion":2},"datasetVersion":"2026-08-15T22:17:37.221Z"}