메뉴 아이템 전체 수정 (PUT)
PUT /menu-items/{menuItemId}
권한: OWNER, MANAGER
모든 필드를 교체합니다. 카테고리 이동이 가능합니다.
Path Parameters
| Parameter | Description |
|---|---|
|
메뉴 아이템 ID |
Request Fields
| Path | Type | Description |
|---|---|---|
|
|
메뉴 이름 |
|
|
메뉴 설명 |
|
|
가격 |
|
|
인기 메뉴 여부 |
|
|
이동할 카테고리 ID |
|
|
메뉴 상태 ( |
|
|
태그 목록 |
HTTP Request Example
PUT /menu-items/caa44e30-b9e8-4a53-b3de-8d5a9c5b2a59 HTTP/1.1
Content-Type: application/json
Content-Length: 186
Host: localhost:8080
{"name":"양념치킨","description":"달콤한 양념","price":19000,"isPopular":true,"categoryId":"f10ca526-0a73-4438-8921-21cbece43e70","menuStatus":"AVAILABLE","tagNames":["치킨"]}
Response Fields
| Path | Type | Description |
|---|---|---|
|
|
응답 코드 |
|
|
HTTP 상태 |
|
|
응답 메시지 |
|
|
메뉴 아이템 ID |
|
|
메뉴 이름 |
|
|
메뉴 설명 |
|
|
가격 |
|
|
정렬 순서 |
|
|
인기 메뉴 여부 |
|
|
메뉴 상태 ( |
|
|
카테고리 ID |
|
|
카테고리 이름 |
|
|
카테고리 정렬 순서 |
|
|
태그 목록 |
HTTP Response Example
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 424
{"code":"MI201","status":"OK","message":"메뉴 아이템 수정 성공","data":{"id":"caa44e30-b9e8-4a53-b3de-8d5a9c5b2a59","name":"후라이드치킨","description":"바삭한 후라이드","price":18000,"orderNo":1,"isPopular":false,"menuStatus":"AVAILABLE","category":{"id":"f10ca526-0a73-4438-8921-21cbece43e70","name":"치킨류","orderNo":1},"tagNames":["치킨","바삭"]},"timestamp":"2026-03-11T10:10:04.19992141"}
메뉴 아이템 부분 수정 (PATCH)
PATCH /menu-items/{menuItemId}
권한: OWNER, MANAGER
전달된 필드만 변경합니다. 전달하지 않은 필드는 기존 값을 유지합니다.
Path Parameters
| Parameter | Description |
|---|---|
|
메뉴 아이템 ID |
Request Fields
| Path | Type | Description |
|---|---|---|
|
|
변경할 메뉴 이름 |
|
|
변경할 메뉴 설명 |
|
|
변경할 가격 |
|
|
변경할 인기 메뉴 여부 |
|
|
이동할 카테고리 ID |
|
|
변경할 메뉴 상태 ( |
|
|
변경할 태그 목록 |
HTTP Request Example
PATCH /menu-items/be1f5f89-dc84-4fc6-b7a4-7c38f9944231 HTTP/1.1
Content-Type: application/json
Content-Length: 124
Host: localhost:8080
{"name":"양념치킨","description":null,"price":null,"isPopular":null,"categoryId":null,"menuStatus":null,"tagNames":null}
Response Fields
| Path | Type | Description |
|---|---|---|
|
|
응답 코드 |
|
|
HTTP 상태 |
|
|
응답 메시지 |
|
|
메뉴 아이템 ID |
|
|
메뉴 이름 |
|
|
메뉴 설명 |
|
|
가격 |
|
|
정렬 순서 |
|
|
인기 메뉴 여부 |
|
|
메뉴 상태 ( |
|
|
카테고리 ID |
|
|
카테고리 이름 |
|
|
카테고리 정렬 순서 |
|
|
태그 목록 |
HTTP Response Example
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 425
{"code":"MI201","status":"OK","message":"메뉴 아이템 수정 성공","data":{"id":"be1f5f89-dc84-4fc6-b7a4-7c38f9944231","name":"후라이드치킨","description":"바삭한 후라이드","price":18000,"orderNo":1,"isPopular":false,"menuStatus":"AVAILABLE","category":{"id":"20ef1858-78d0-4af1-a5f4-8da66506e138","name":"치킨류","orderNo":1},"tagNames":["치킨","바삭"]},"timestamp":"2026-03-11T10:10:04.150978452"}
메뉴 아이템 순서 변경
PATCH /menu-items/{menuItemId}/orders?order={order}
권한: OWNER, MANAGER
Path Parameters
| Parameter | Description |
|---|---|
|
메뉴 아이템 ID |
Query Parameters
| Parameter | Description |
|---|---|
|
변경할 정렬 순서 (1 이상) |
HTTP Request Example
PATCH /menu-items/f5c576ee-3a08-4c95-9499-7df16933d6a8/orders?order=2 HTTP/1.1
Content-Type: application/x-www-form-urlencoded
Host: localhost:8080
Response Fields
| Path | Type | Description |
|---|---|---|
|
|
응답 코드 |
|
|
HTTP 상태 |
|
|
응답 메시지 |
|
|
메뉴 아이템 ID |
|
|
메뉴 이름 |
|
|
메뉴 설명 |
|
|
가격 |
|
|
변경된 정렬 순서 |
|
|
인기 메뉴 여부 |
|
|
메뉴 상태 ( |
|
|
카테고리 ID |
|
|
카테고리 이름 |
|
|
카테고리 정렬 순서 |
|
|
태그 목록 |
HTTP Response Example
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 432
{"code":"MI203","status":"OK","message":"메뉴 아이템 순서 변경 성공","data":{"id":"f5c576ee-3a08-4c95-9499-7df16933d6a8","name":"후라이드치킨","description":"바삭한 후라이드","price":18000,"orderNo":1,"isPopular":false,"menuStatus":"AVAILABLE","category":{"id":"8d96804e-7ce4-441a-a05e-38e233740e86","name":"치킨류","orderNo":1},"tagNames":["치킨","바삭"]},"timestamp":"2026-03-11T10:10:04.113351153"}
메뉴 아이템 삭제
DELETE /menu-items/{menuItemId}
권한: OWNER, MANAGER
Path Parameters
| Parameter | Description |
|---|---|
|
메뉴 아이템 ID |
HTTP Request Example
DELETE /menu-items/617296f5-2287-4cd2-87e6-ea45a681e77a HTTP/1.1
Host: localhost:8080
Response Fields
| Path | Type | Description |
|---|---|---|
|
|
응답 코드 |
|
|
HTTP 상태 |
|
|
응답 메시지 |
|
|
응답 데이터 (없음) |
HTTP Response Example
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 129
{"code":"MI202","status":"OK","message":"메뉴 아이템 삭제 성공","data":null,"timestamp":"2026-03-11T10:10:04.174920724"}