대시보드와 그에 연결된 모든 차트 및 데이터를 영구적으로 삭제합니다.
대시보드 삭제
사용자가 생성한 대시보드를 영구적으로 삭제합니다. 이 작업은 실행 취소할 수 없으며 모든 차트, 차트 세그먼트 및 대시보드 공유 구성이 제거됩니다.
기본 예제
mutation DeleteDashboard {
deleteDashboard(id: "dashboard_123") {
success
message
}
}
입력 매개변수
매개변수 | 유형 | 필수 | 설명 |
---|---|---|---|
id |
String! | ✅ 예 | 삭제할 대시보드의 고유 식별자 |
응답 필드
MutationResult
필드 | 유형 | 설명 |
---|---|---|
success |
Boolean! | 삭제가 성공했는지 여부 |
message |
String | 작업에 대한 상태 메시지 |
필수 권한
생성자 전용
- 대시보드 생성자만 대시보드를 삭제할 수 있습니다.
- EDITOR 액세스 권한이 있는 사용자는 대시보드를 삭제할 수 없습니다.
- 회사 관리자는 다른 사람이 생성한 대시보드를 삭제할 수 없습니다.
인증
- 인증되어야 하며 대시보드의 회사에 대한 액세스 권한이 있어야 합니다.
삭제되는 항목
대시보드를 삭제하면 다음 데이터가 영구적으로 제거됩니다:
대시보드 데이터
- 대시보드 제목 및 메타데이터
- 생성 및 수정 타임스탬프
- 대시보드 사용자 공유 구성
차트 데이터
- 대시보드 내의 모든 차트
- 차트 세그먼트 및 그 구성
- 차트 세그먼트 값 및 계산
- 차트 표시 설정 및 서식
관련 데이터
- 대시보드 사용자 역할 할당
- 대시보드 구독 또는 실시간 연결
오류 응답
대시보드 찾을 수 없음
{
"errors": [{
"message": "Dashboard not found",
"extensions": {
"code": "DASHBOARD_NOT_FOUND"
}
}]
}
권한 거부
{
"errors": [{
"message": "Only the creator of a dashboard can delete it",
"extensions": {
"code": "FORBIDDEN"
}
}]
}
인증 필요
{
"errors": [{
"message": "You must be authenticated to perform this action",
"extensions": {
"code": "UNAUTHENTICATED"
}
}]
}
중요한 고려 사항
영구적인 작업
- 실행 취소할 수 없음: 삭제되면 대시보드와 모든 데이터는 복구할 수 없습니다.
- 소프트 삭제 없음: 대시보드는 데이터베이스에서 영구적으로 제거됩니다.
- 즉각적인 효과: 삭제는 즉시 이루어집니다.
다른 사용자에 대한 영향
- 공유 사용자 액세스 상실: VIEWER 또는 EDITOR 액세스 권한이 있는 사용자는 더 이상 대시보드에 액세스할 수 없습니다.
- 활성 세션: 현재 대시보드를 보고 있는 사용자는 연결이 끊어집니다.
- 구독: 대시보드에 대한 모든 실시간 구독은 종료됩니다.
데이터 종속성
- 외부 종속성 없음: 대시보드를 삭제해도 프로젝트, 할 일 또는 기타 회사 데이터에 영향을 미치지 않습니다.
- 자체 포함: 대시보드 특정 데이터만 제거됩니다.
모범 사례
삭제 전
- 중요 데이터 내보내기: 중요한 차트 구성 또는 통찰력을 저장합니다.
- 공유 사용자에게 알리기: 대시보드에 액세스할 수 있는 팀원에게 알립니다.
- 복사 고려: 필요 시 대시보드 복사 기능을 사용하여 백업을 만듭니다.
- 통찰력 문서화: 중요한 비즈니스 통찰력이나 발견 사항을 저장합니다.
대체 작업
- 공유 제거: 삭제하는 대신 대시보드 사용자를 제거하는 것을 고려합니다.
- 아카이브 접근법: 내장된 아카이브 기능은 없지만, 대시보드 이름을 변경하여 아카이브되었음을 나타낼 수 있습니다.
일반적인 사용 사례
사용하지 않는 대시보드 정리
# First, list dashboards to identify unused ones
query FindUnusedDashboards {
dashboards(filter: { companyId: "company_123" }) {
items {
id
title
updatedAt
dashboardUsers {
id
}
}
}
}
# Then delete specific dashboard
mutation CleanupDashboard {
deleteDashboard(id: "old_dashboard_id") {
success
message
}
}
테스트 대시보드 제거
mutation RemoveTestDashboard {
deleteDashboard(id: "test_dashboard_123") {
success
message
}
}
보안 노트
생성자 확인
- 시스템은 요청한 사용자가 원래 생성자인지 확인합니다.
- 사용자 ID는 대시보드의
createdById
필드와 대조됩니다. - 역할 기반 재정의는 허용되지 않습니다(회사 소유자조차도 다른 사람의 대시보드를 삭제할 수 없습니다).
감사 추적
- 대시보드 삭제 이벤트는 감사 목적으로 기록됩니다.
- 삭제 타임스탬프와 요청한 사용자가 기록됩니다.
- 회사 관리자는 삭제 로그를 볼 수 있습니다.