v0.4.0
관리자용 API 탐색기가 생겼고, 자동화가 kibble을 읽을 수 있게 됐습니다. 지금까지 API 토큰은 기록을 밀어넣기만 할 수 있었습니다.
새 기능
API 탐색기 — 더보기 → 관리 → API 탐색기 (관리자 전용)
- 읽기(GET) 21종을 화면에서 눌러 상태 코드·소요 시간·응답 본문을 바로 확인합니다
- 쓰기는 실행 버튼 없이 curl 예시만 — 눌러 보는 화면에서 실제 기록이 생기면 안 되니까요
- kibble은 GET으로 아무것도 쓰지 않으므로(K-7) 읽기 목록은 눌러도 기록이 바뀌지 않습니다
GET /api/states — 역방향 읽기 API
홈어시스턴트 같은 자동화가 반려동물의 현재 상태를 한 번에 읽습니다.
| 필드 | 내용 |
|---|---|
lastEvents[] |
타입별 마지막 기록 — 시각, 수량·단위, 경과 시간(hoursSince) |
today[] |
오늘(KST) 타입별 건수와 합계 |
medication |
진행 중 과정, 오늘 먹인/계획 횟수, 시각이 지난 슬롯 |
reminders[] |
예정일과 지남 여부 |
curl "$BASE/api/states" -H "Authorization: Bearer kbl_..."GET /api/events/:id — 기록 하나만 읽습니다 (세션 전용).
업그레이드
Docker 이미지 빌드가 끝난 뒤:
updateDB 마이그레이션은 없습니다.
⚠️ 기존 API 토큰은 상태 조회가 막힙니다
GET /api/states에는 state:read 스코프가 필요합니다. 지금까지 발급된 토큰은 event:create만 갖고 있어서 403이 납니다.
배포만으로 쓰기 전용 토큰에 읽기 권한이 붙으면 조용한 권한 확대라, 일부러 이렇게 뒀습니다. 상태 조회를 쓰시려면 토큰을 새로 발급하세요:
curl -X POST "$BASE/api/tokens" \
-H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" \
-d '{"name":"홈어시스턴트","scopes":["event:create","state:read"],"petId":"<pet-id>"}'기존 토큰의 기록 생성은 그대로 동작합니다 — 상태 조회를 안 쓰신다면 아무것도 안 하셔도 됩니다.
Full Changelog: v0.3.1...v0.4.0