GET/api/favorites
현재 로그인 사용자의 즐겨찾기(bookmark) 목록을 관리한다.
API 라우트: GET/POST/DELETE /api/favorites
현재 로그인 사용자의 즐겨찾기(bookmark) 목록을 관리한다.
- GET : 전체 즐겨찾기 조회. 각 즐겨찾기는 label(표시명)·url(이동 경로)로 enrich 되어 반환.
?subjectType=issue|project|page 쿼리로 타입 필터 가능.
- POST : 즐겨찾기 추가. 이미 존재하면 멱등 처리(409 대신 기존 row 반환).
- DELETE: ?subjectType=&subjectId= 쿼리로 특정 즐겨찾기 삭제.
권한: 인증된 사용자 본인의 row 만 접근 (requireUser 가드).
부작용: DB favorites 테이블 insert/delete.
@author jijuta ([email protected])
@since 2026-05-12
@updated 2026-06-07 — JSDoc 표준(@author/@since/@param 등) 적용
Responses
200 성공401 미인증(JWT 쿠키 필요)403 권한 없음404 없음
cURLcurl -X GET https://sit.in-bridge.com/api/favorites \
-H "Authorization: Bearer $TOKEN"
JavaScriptconst res = await fetch("https://sit.in-bridge.com/api/favorites", {
method: "GET",
headers: {
"Authorization": `Bearer ${token}`
}
});
const data = await res.json();
POST/api/favorites
현재 로그인 사용자의 즐겨찾기(bookmark) 목록을 관리한다.
API 라우트: GET/POST/DELETE /api/favorites
현재 로그인 사용자의 즐겨찾기(bookmark) 목록을 관리한다.
- GET : 전체 즐겨찾기 조회. 각 즐겨찾기는 label(표시명)·url(이동 경로)로 enrich 되어 반환.
?subjectType=issue|project|page 쿼리로 타입 필터 가능.
- POST : 즐겨찾기 추가. 이미 존재하면 멱등 처리(409 대신 기존 row 반환).
- DELETE: ?subjectType=&subjectId= 쿼리로 특정 즐겨찾기 삭제.
권한: 인증된 사용자 본인의 row 만 접근 (requireUser 가드).
부작용: DB favorites 테이블 insert/delete.
@author jijuta ([email protected])
@since 2026-05-12
@updated 2026-06-07 — JSDoc 표준(@author/@since/@param 등) 적용
Request body
subjectIdstring<uuid>required
Responses
200 성공400 입력 검증 실패(zod)401 미인증(JWT 쿠키 필요)403 권한 없음404 없음
cURLcurl -X POST https://sit.in-bridge.com/api/favorites \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"subjectType":null,"subjectId":"00000000-0000-0000-0000-000000000000"}'
JavaScriptconst res = await fetch("https://sit.in-bridge.com/api/favorites", {
method: "POST",
headers: {
"Authorization": `Bearer ${token}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"subjectType": null,
"subjectId": "00000000-0000-0000-0000-000000000000"
})
});
const data = await res.json();
DELETE/api/favorites
현재 로그인 사용자의 즐겨찾기(bookmark) 목록을 관리한다.
API 라우트: GET/POST/DELETE /api/favorites
현재 로그인 사용자의 즐겨찾기(bookmark) 목록을 관리한다.
- GET : 전체 즐겨찾기 조회. 각 즐겨찾기는 label(표시명)·url(이동 경로)로 enrich 되어 반환.
?subjectType=issue|project|page 쿼리로 타입 필터 가능.
- POST : 즐겨찾기 추가. 이미 존재하면 멱등 처리(409 대신 기존 row 반환).
- DELETE: ?subjectType=&subjectId= 쿼리로 특정 즐겨찾기 삭제.
권한: 인증된 사용자 본인의 row 만 접근 (requireUser 가드).
부작용: DB favorites 테이블 insert/delete.
@author jijuta ([email protected])
@since 2026-05-12
@updated 2026-06-07 — JSDoc 표준(@author/@since/@param 등) 적용
Responses
200 성공401 미인증(JWT 쿠키 필요)403 권한 없음404 없음
cURLcurl -X DELETE https://sit.in-bridge.com/api/favorites \
-H "Authorization: Bearer $TOKEN"
JavaScriptconst res = await fetch("https://sit.in-bridge.com/api/favorites", {
method: "DELETE",
headers: {
"Authorization": `Bearer ${token}`
}
});
const data = await res.json();