> ## Documentation Index
> Fetch the complete documentation index at: https://docs.openapi.pluuug.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 📋 변경 기록

> 플러그 오픈 API의 버전별 변경 사항을 안내합니다.

## 2026-04-08

### 🆕 추가

* **의뢰 고유번호(`uniqueId`) 필드** — 모든 의뢰 관련 응답에 추가
  * 의뢰 목록(`GET /v1/inquiry`), 상세(`GET /v1/inquiry/{id}`) 응답에 포함
  * 계약, 할일 등 의뢰를 참조하는 중첩 객체에도 포함
  * UI에 표시되는 의뢰 고유번호(예: `Bw4TXy1JAl`)와 동일한 값
  * 읽기 전용, nullable

## 2026-03-23

### 🆕 추가

* **의뢰 파일 첨부 기능** 추가
  * `POST /v1/presigned` — 파일 업로드용 Presigned URL 발급
  * 의뢰 생성(`POST`), 수정(`PATCH`) 시 `file_set`으로 파일 첨부 지원 (최대 30개)
  * 의뢰 조회(`GET`) 시 첨부 파일 목록 및 다운로드 URL 포함
  * `DELETE /v1/inquiry/{inquiry_id}/file/{file_id}` — 의뢰 첨부 파일 삭제
* **의뢰 작업 목록 API** 신규 추가
  * `GET /v1/inquiry/work` — 의뢰 작업 목록 조회
* **로그 API** 신규 추가
  * `GET /v1/log/` — 로그 목록 조회

## 2026-03-06

### 🔄 변경

* **의뢰 API** — `fileLinkSet` (링크 첨부) 필드 추가
  * 의뢰 생성(`POST`), 조회(`GET`), 수정(`PATCH`) 시 링크 첨부 지원

* **전체 API** — nullable 필드 처리 개선 및 필수/선택 정리
  * 미입력 시 기본값이 생성되는 필드들을 nullable + optional로 변경
  * **고객**: `status`, `contact`, `email`, `inCharge` 등 대부분 필드 선택으로 변경 (`companyName`만 필수)
  * **의뢰**: `client`, `contract`, `funnel`, `status`, `name` 등 선택으로 변경 (미입력 시 기본값 생성)
  * **계약**: `endDate`, `startDate`, `client`, `inquiry`, `fieldSet` 등 선택으로 변경
  * **견적서**: `classification`, `description` 선택으로 변경
  * **정산**: `dueDate`, `inChargeSet`, `settledDate` 등 선택으로 변경
  * **Todo**: `inCharge`, `completedInCharge` nullable 처리
  * **실무자**: `position` nullable 처리

## 2026-03-03

### 🆕 추가

* **프로젝트 API** 신규 추가
  * `GET /v1/project` — 프로젝트 목록 조회
  * `POST /v1/project` — 프로젝트 생성
  * `GET /v1/project/{project_id}` — 프로젝트 단일 조회
  * `PATCH /v1/project/{project_id}` — 프로젝트 부분 수정
  * `DELETE /v1/project/{project_id}` — 프로젝트 삭제

* **실무자 API** 신규 추가
  * `GET /v1/worker` — 실무자 목록 조회
  * `POST /v1/worker` — 실무자 생성
  * `GET /v1/worker/{worker_id}` — 실무자 단일 조회
  * `PATCH /v1/worker/{worker_id}` — 실무자 부분 수정
  * `DELETE /v1/worker/{worker_id}` — 실무자 삭제

* **의뢰 히스토리 API** 신규 추가
  * `GET /v1/inquiry/{inquiry_id}/email_history` — 의뢰 이메일 히스토리 목록 조회
  * `GET /v1/inquiry/{inquiry_id}/email_reply_history` — 의뢰 이메일 회신 히스토리 목록 조회
  * `GET /v1/inquiry/{inquiry_id}/folder_history` — 의뢰 폴더 히스토리 목록 조회
  * `GET /v1/inquiry/{inquiry_id}/status_history` — 의뢰 단계 히스토리 목록 조회
  * `GET /v1/inquiry/{inquiry_id}/submit_history` — 의뢰 웹폼 히스토리 목록 조회
  * `GET /v1/inquiry/{inquiry_id}/text_history` — 의뢰 텍스트 히스토리 목록 조회
  * `POST /v1/inquiry/{inquiry_id}/text_history` — 의뢰 텍스트 히스토리 생성
  * `GET /v1/inquiry/{inquiry_id}/text_history/{history_id}` — 의뢰 텍스트 히스토리 단일 조회
  * `PATCH /v1/inquiry/{inquiry_id}/text_history/{history_id}` — 의뢰 텍스트 히스토리 부분 수정
  * `DELETE /v1/inquiry/{inquiry_id}/text_history/{history_id}` — 의뢰 텍스트 히스토리 삭제

### ⚠️ Deprecated

* **의뢰 히스토리 API** Deprecated
  * `GET /v1/inquiry/{inquiry_id}/history` → `GET /v1/inquiry/{inquiry_id}/text_history` 로 대체
  * `POST /v1/inquiry/{inquiry_id}/history` → `POST /v1/inquiry/{inquiry_id}/text_history` 로 대체
  * `GET /v1/inquiry/{inquiry_id}/history/{history_id}` → `GET /v1/inquiry/{inquiry_id}/text_history/{history_id}` 로 대체
  * `PATCH /v1/inquiry/{inquiry_id}/history/{history_id}` → `PATCH /v1/inquiry/{inquiry_id}/text_history/{history_id}` 로 대체
  * `DELETE /v1/inquiry/{inquiry_id}/history/{history_id}` → `DELETE /v1/inquiry/{inquiry_id}/text_history/{history_id}` 로 대체

### 🔒 보안 강화

* **X-Signature 필수화 예정**
  * 기존에는 `X-API-KEY`만으로 API에 접근할 수 있었지만, 앞으로 `X-Signature` 입력이 필수로 변경될 예정입니다.
  * `X-Signature`는 Secret Key를 기반으로 요청마다 생성되는 서명 값으로, API Key가 외부에 노출되더라도 무단 접근을 방지할 수 있습니다.
  * 정식 적용 일정은 추후 별도 공지를 통해 안내될 예정입니다. 현재 `X-Signature` 없이 API를 사용 중이시라면, 미리 서명 생성 로직을 적용해두시는 것을 권장합니다.
  * 자세한 서명 생성 방법은 [인증 가이드](/authentication)를 참고해주세요.

***

## 2026-02-27

### 🆕 추가

* **Todo API** 신규 추가
  * `GET /v1/todo` — Todo 목록 조회
  * `POST /v1/todo` — Todo 생성
  * `GET /v1/todo/{todo_id}` — Todo 단일 조회
  * `PATCH /v1/todo/{todo_id}` — Todo 부분 수정
  * `DELETE /v1/todo/{todo_id}` — Todo 삭제

***

## 2026-02-25

### 🔄 변경

* **목록 조회 API**에 `is_hidden` 필터 파라미터 추가
  * `GET /v1/inquiry` · `GET /v1/contract` · `GET /v1/client` · `GET /v1/settlement`
  * `true`: 숨김 항목만 조회 / `false`: 비숨김 항목만 조회 / 미전달: 전체 조회

***
