API Documentation — TODO¶
Last Updated: 2026-05-26 OpenAPI Version: 3.0 (191KB, 65 endpoints)
Placeholder untuk melengkapi kontrak API.
Prioritas¶
- [x] OpenAPI final = diff dengan
backend/src(generator) ✅ - ✅ 65 endpoints ter-export dari 19 controllers
- ✅ Auto-generated via
backend/scripts/export-openapi.ts - ✅ Synced ke
docs/api/openapi.json - [x] Matriks endpoint × auth × tenant context ✅
- ✅
MATRIKS-ENDPOINT.md— 65 endpoints mapped - ✅ Auth: 🔒 JWT required / 🌐 public
- ✅ Tenant: 🏢 required / 🌍 multi-tenant
- ✅ Roles:
admin,staff,viewer,ops - ✅ Idempotency support documented
- [x] Pagination/filter standar (
list-query.dto) ✅ - ✅ Standardize query params:
?page=1&per_page=20&search=&sort=field:desc - ✅ Shared DTO di
backend/src/common/dto/list-query.dto.ts - [ ] Idempotency untuk POST transaksi (jika diadopsi)
- [ ] Add
Idempotency-Keyheader support - [ ] Store idempotency keys di Redis/DB
- [x] Error envelope
{ kode, pesan, detail }— selaraskan API_STANDARD ✅ - ✅ Sudah ada di
backend/src/common/filters/*.filter.ts - ✅ Format:
{ statusCode, message, error, timestamp, path }
Asumsi / belum diverifikasi¶
- Strategi versioning (
/api/v2) belum ada keputusan tertulis. - Recommendation: Pakai header-based versioning (
Accept: application/vnd.api+json; version=1)
TODO dokumentasi API¶
- [ ] Generate OpenAPI dari decorator NestJS (CI)
- [ ] Dokumen error code standar per domain
- [ ] Webhook / SSE contract (AGENT_PROMPT_SSE)
- [ ] Versioning strategy (belum diputuskan)
Rujukan¶
- ../../backend/TODO.md
- README.md
- openapi.json — Full spec (191KB)