- `docs/` 를 .gitignore 에서 빼 git 추적 대상으로 전환 (위키·완료 이력·검증 기록) - `docs/raw/PLAN.md` · `docs/raw/OWNERS.md` 를 저장소 최상위로 이동 후 .gitignore 에 등록 — 창끼리 공유하되 저장소에는 안 올리는 장부 - 살아 있는 경로 참조 7개 파일 정정 (아카이브 107건은 그때 사실이라 그대로 둠) - graphify 날짜별 산출물(`docs/wiki/graphify-out/20*/`) 제외 — `graphify update` 가 다시 만듦 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
62 lines
4.0 KiB
Markdown
62 lines
4.0 KiB
Markdown
---
|
|
type: page-api
|
|
status: draft
|
|
page_id: B01_Dashboard
|
|
related_pages: ["[[B01_Dashboard/B01_frontend]]", "[[B01_Dashboard/B01_backend]]", "[[B01_Dashboard/B01_db]]", "[[architecture/project_map]]", "[[architecture/workflow_data_flow]]"]
|
|
last_updated: 2026-08-08
|
|
source: 상위 프로젝트 B01_Dashboard_Router.py 실 코드 직접 확인 (2026-08-08)
|
|
---
|
|
|
|
# B01_Dashboard — API
|
|
|
|
이 API는 [[B01_Dashboard/B01_frontend]]의 요청을 받아 [[B01_Dashboard/B01_backend]]가 처리하며, 인증·오류 규칙은 [[auth_rbac]]과 [[api_common]]을 사용한다.
|
|
|
|
기본 prefix: `/api/dashboard` (`B01_Dashboard_Router.py:50`). 공통 인증·오류 형식은 [[auth_rbac]], [[api_common]] 참조.
|
|
|
|
## 사용자·회사
|
|
| 항목 | 위치 | 역할 |
|
|
|---|---|---|
|
|
| `GET /me` | `B01_Dashboard_Router.py:88` | 로그인 사용자 대시보드 정보 조회 (하드 삭제 스위치 `project_delete_hard` 포함) |
|
|
| `PATCH /me` | `B01_Dashboard_Router.py:98` | 내 기본정보 수정 |
|
|
| `GET /user/projects` | `B01_Dashboard_Router.py:107` | 내 프로젝트와 workflow 상태 조회 |
|
|
| `GET /user/company` | `B01_Dashboard_Router.py:112` | 소속 회사 조회 |
|
|
| `GET /user/companies` | `B01_Dashboard_Router.py:117` | 가입 대상 회사 검색 |
|
|
| `POST /user/company/create` | `B01_Dashboard_Router.py:126` | 회사 생성 후 생성자 연결 |
|
|
| `POST /user/company/join` | `B01_Dashboard_Router.py:135` | 회사 가입 신청 |
|
|
|
|
## 회사 관리자
|
|
| 항목 | 위치 | 역할 |
|
|
|---|---|---|
|
|
| `GET /admin/members` | `B01_Dashboard_Router.py:144` | 회사 팀원 목록 |
|
|
| `POST /admin/members` | `B01_Dashboard_Router.py:152` | 이메일로 팀원 추가 |
|
|
| `DELETE /admin/members/{user_id}` | `B01_Dashboard_Router.py:163` | 팀원 회사 연결 해제 |
|
|
| `GET /admin/join-requests` | `B01_Dashboard_Router.py:172` | 회사 가입 신청 목록 |
|
|
| `PATCH /admin/join-requests/{request_id}` | `B01_Dashboard_Router.py:177` | 가입 신청 승인·거절 |
|
|
| `GET /admin/projects` | `B01_Dashboard_Router.py:195` | 회사 프로젝트 목록 |
|
|
|
|
## 프로젝트·자동화
|
|
| 항목 | 위치 | 역할 |
|
|
|---|---|---|
|
|
| `PUT /projects/{project_id}` | `B01_Dashboard_Router.py:203` | 프로젝트 기본정보 수정 |
|
|
| `DELETE /projects/{project_id}` | `B01_Dashboard_Router.py:219` | SYSTEM_ADMIN 프로젝트 삭제 (개발 모드 시 하드 삭제, 운영 모드 시 소프트 삭제 분기) |
|
|
| `GET /projects/{project_id}/automations` | `B01_Dashboard_Router.py:366` | 자동화 목록; USER 차단 |
|
|
| `POST /projects/{project_id}/automations` | `B01_Dashboard_Router.py:379` | 자동화 생성 |
|
|
| `PUT /automations/{automation_id}` | `B01_Dashboard_Router.py:396` | 자동화 수정 |
|
|
| `DELETE /automations/{automation_id}` | `B01_Dashboard_Router.py:414` | 자동화 삭제 |
|
|
| `POST /automations/{automation_id}/execute` | `B01_Dashboard_Router.py:429` | 자동화 실행시각 기록 |
|
|
|
|
## 시스템 관리자
|
|
| 항목 | 위치 | 역할 |
|
|
|---|---|---|
|
|
| `GET /admin/companies` | `B01_Dashboard_Router.py:246` | 전체 회사 조회 |
|
|
| `POST /admin/companies` | `B01_Dashboard_Router.py:252` | 시스템 관리자 회사 생성 |
|
|
| `GET /admin/users` | `B01_Dashboard_Router.py:261` | 전체 사용자 조회 |
|
|
| `PATCH /admin/users/{user_id}/role` | `B01_Dashboard_Router.py:267` | 역할 변경과 마지막 ADMIN 보호 |
|
|
| `PUT /admin/users/{user_id}` | `B01_Dashboard_Router.py:285` | 사용자 관리정보 수정 |
|
|
| `PATCH /admin/users/{user_id}/company` | `B01_Dashboard_Router.py:304` | 사용자 회사 배정·해제 |
|
|
| `GET /admin/join-requests-all` | `B01_Dashboard_Router.py:316` | 전체 가입 신청 조회 |
|
|
| `PATCH /admin/join-requests/{request_id}/approve` | `B01_Dashboard_Router.py:322` | 시스템 관리자 가입 승인 |
|
|
| `GET /admin/audit-logs` | `B01_Dashboard_Router.py:332` | 시스템 감사 로그 페이지 조회 |
|
|
| `GET /admin/resources` | `B01_Dashboard_Router.py:342` | 1~90일 리소스 통계 조회 |
|
|
| `GET /admin/projects-all` | `B01_Dashboard_Router.py:351` | 전체 프로젝트 조회 |
|