Lewati ke isi

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-Key header 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