Skip to content
This repository was archived by the owner on Feb 22, 2026. It is now read-only.
This repository was archived by the owner on Feb 22, 2026. It is now read-only.

(feat: anon/backend) : Backend API tracker #581

@polopulao

Description

@polopulao

Milestone: API Readiness Tracker (v0.1)

Purpose: Central tracker for API surface. Check items as they’re completed.
Definition of Done (per endpoint):


0) Ops & Probes

  • GET /healthz

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • GET /readyz

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • GET /version

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • GET /metrics (Prometheus)

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • GET /db/health

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • GET /mongo/health

    • Spec [ ] Backend [ ] Tests [ ] Docs

1) Auth, Sessions & Identity

  • POST /auth/nonce (SIWE)

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • POST /auth/verify (SIWE → session/JWT)

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • POST /register (wallet-first)

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • POST /auth/logout

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • POST /auth/refresh

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • GET /me/sessions

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • DELETE /me/sessions/{session_id}

    • Spec [ ] Backend [ ] Tests [ ] Docs

zkTLS Employment Verification

  • POST /verify/employment/start

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • POST /verify/employment/submit

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • GET /verify/employment/status?company=...

    • Spec [ ] Backend [ ] Tests [ ] Docs

2) Users & Profiles

  • GET /user (me)

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • POST /profile (upsert)

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • GET /profile (public by wallet/id)

    • Spec [ ] Backend [ ] Tests [ ] Docs

3) Companies

  • POST /companies (admin create)

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • PUT /companies/{slug} (admin update)

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • GET /companies/{slug} (public)

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • GET /companies/{slug}/stats (aggregates + cache)

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • POST /companies/{slug}/claim (employer claims page)

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • PUT /admin/companies/{slug}/claim/{id} (approve/reject)

    • Spec [ ] Backend [ ] Tests [ ] Docs

4) Reviews (Employee Posts)

  • POST /post (create review; gating by on-chain verification)

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • GET /posts (global feed; filters + cursor)

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • GET /posts/{id} (single review)

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • GET /companies/{slug}/posts (company feed)

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • DELETE /posts/{id} (author soft delete → 410)

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • PATCH /posts/{id} (limited edit window + audit)

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • GET /posts/{id}/integrity (hash/CID)

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • POST /posts/{id}/response (official employer reply)

    • Spec [ ] Backend [ ] Tests [ ] Docs

Drafts

  • POST /posts/drafts

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • PUT /posts/drafts/{id}

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • DELETE /posts/drafts/{id}

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • POST /posts/drafts/{id}/publish

    • Spec [ ] Backend [ ] Tests [ ] Docs

Admin Moderation

  • PUT /admin/reviews/{id}/status (state machine)

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • GET /admin/reviews/audit (transitions audit)

    • Spec [ ] Backend [ ] Tests [ ] Docs

5) Reporting & Appeals

  • POST /reports (user flag review/comment)

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • GET /admin/reports?status=... (triage queue)

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • PUT /admin/reports/{id} (resolve)

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • POST /appeals (author/employer appeal moderation)

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • GET /appeals/{id} (view appeal)

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • GET /admin/appeals?status=...

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • PUT /admin/appeals/{id} (decision)

    • Spec [ ] Backend [ ] Tests [ ] Docs

6) Tags & Taxonomy

  • GET /tags (public whitelist)

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • POST /admin/tags

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • DELETE /admin/tags/{name}

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • GET /admin/tags

    • Spec [ ] Backend [ ] Tests [ ] Docs

7) Search, Summaries & Typeahead

  • GET /search (keyword/trigram; optional semantic blend)

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • GET /companies/{slug}/summary (AI pros/cons/themes; cached)

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • GET /typeahead?q=&scope=companies|tags|all (autocomplete)

    • Spec [ ] Backend [ ] Tests [ ] Docs

8) Interview Reviews (Structured)

  • POST /interviews

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • GET /interviews/{id}

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • GET /companies/{slug}/interviews

    • Spec [ ] Backend [ ] Tests [ ] Docs

9) Salary Reports (Structured)

  • POST /salaries

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • GET /companies/{slug}/salaries

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • GET /companies/{slug}/salaries/summary

    • Spec [ ] Backend [ ] Tests [ ] Docs

10) Engagement (Reactions, Comments, Bookmarks)

Reactions

  • POST /reactions

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • DELETE /reactions

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • GET /posts/{id}/reactions/summary

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • GET /comments/{id}/reactions/summary

    • Spec [ ] Backend [ ] Tests [ ] Docs

Comments (threaded)

  • POST /posts/{id}/comments

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • GET /posts/{id}/comments

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • DELETE /comments/{id} (author soft delete → 410)

    • Spec [ ] Backend [ ] Tests [ ] Docs

Bookmarks

  • POST /posts/{id}/bookmark

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • DELETE /posts/{id}/bookmark

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • GET /me/bookmarks

    • Spec [ ] Backend [ ] Tests [ ] Docs

Follow & Notifications

  • POST /companies/{slug}/follow

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • DELETE /companies/{slug}/follow

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • POST /tags/{name}/follow

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • DELETE /tags/{name}/follow

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • GET /me/notifications

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • PATCH /me/notifications/{id} (mark read)

    • Spec [ ] Backend [ ] Tests [ ] Docs

11) Privacy & Data Portability

  • POST /me/export (create export artifact)

    • Spec [ ] Backend [ ] Tests [ ] Docs
  • GET /me/export/status

    • Spec [ ] Backend [ ] Tests [ ] Docs

Non-prod Debug

  • POST /debug/verify-hash (developer utility)

    • Spec [ ] Backend [ ] Tests [ ] Docs

Progress & Notes

  • Progress: X / Y endpoints fully DONE
  • Blocking items: List blockers here
  • Changelog link: Add link when cutting a release

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions