admin
| Method | Path | Summary |
|---|---|---|
| GET | /api/v1/years/{year}/admin/analytics | — |
| GET | /api/v1/years/{year}/admin/assignments | — |
| POST | /api/v1/years/{year}/admin/assignments/{submission_id}/reviewers | — |
| DELETE | /api/v1/years/{year}/admin/assignments/{submission_id}/reviewers/{reviewer_id} | — |
| POST | /api/v1/years/{year}/admin/demo-data/clear | — |
| POST | /api/v1/years/{year}/admin/demo-data/keep-sample | — |
| POST | /api/v1/years/{year}/admin/demo-data/seed | — |
| GET | /api/v1/years/{year}/admin/demo-data/status | — |
| PATCH | /api/v1/years/{year}/admin/event-settings | — |
| POST | /api/v1/years/{year}/admin/judges/invite | — |
| PATCH | /api/v1/years/{year}/admin/judges/{judge_id}/status | — |
| GET | /api/v1/years/{year}/admin/judging/rankings | — |
| GET | /api/v1/years/{year}/admin/presentations/export.csv | — |
| GET | /api/v1/years/{year}/admin/reviewers-tracks | — |
| POST | /api/v1/years/{year}/admin/reviewers/invite | — |
| POST | /api/v1/years/{year}/admin/reviewers/{reviewer_id}/remind | — |
| PATCH | /api/v1/years/{year}/admin/reviewers/{reviewer_id}/status | — |
| GET | /api/v1/years/{year}/admin/stats | — |
| GET | /api/v1/years/{year}/admin/submissions | — |
| PATCH | /api/v1/years/{year}/admin/submissions/{submission_id} | — |
| GET | /api/v1/years/{year}/admin/submissions/{submission_id}/events | — |
| GET | /api/v1/years/{year}/admin/system/status | — |
| POST | /api/v1/years/{year}/admin/tracks | — |
| PATCH | /api/v1/years/{year}/admin/tracks/{track_id} | — |
| GET | /api/v1/years/{year}/admin/users | — |
admin-agenda
| Method | Path | Summary |
|---|---|---|
| GET | /api/v1/years/{year}/admin/agenda | — |
| PUT | /api/v1/years/{year}/admin/agenda | — |
admin-floorplan
| Method | Path | Summary |
|---|---|---|
| GET | /api/v1/years/{year}/floorplan/bootstrap | — |
| POST | /api/v1/years/{year}/floorplan/draft/assignments/clear-presentation | — |
| DELETE | /api/v1/years/{year}/floorplan/draft/assignments/{slot_id} | — |
| PUT | /api/v1/years/{year}/floorplan/draft/assignments/{slot_id} | — |
| POST | /api/v1/years/{year}/floorplan/draft/auto-allocate | — |
| PUT | /api/v1/years/{year}/floorplan/draft/layout | — |
| POST | /api/v1/years/{year}/floorplan/published | — |
admin-moderation
| Method | Path | Summary |
|---|---|---|
| GET | /api/v1/years/{year}/admin/session-moderation | — |
| GET | /api/v1/years/{year}/admin/sessions/{agenda_item_id}/comments | — |
| DELETE | /api/v1/years/{year}/admin/sessions/{agenda_item_id}/comments/{comment_id} | — |
| GET | /api/v1/years/{year}/admin/sessions/{agenda_item_id}/feedback | — |
| PATCH | /api/v1/years/{year}/admin/sessions/{agenda_item_id}/users/{user_id}/comments-enabled | — |
agenda
| Method | Path | Summary |
|---|---|---|
| GET | /api/v1/years/{year}/agenda | — |
| GET | /api/v1/years/{year}/agenda/talks/{public_id} | — |
auth
| Method | Path | Summary |
|---|---|---|
| GET | /api/v1/auth/me | Convenience profile lookup (same as GET /me/profile). |
| DELETE | /api/v1/auth/session | Clients sign out of Firebase; this endpoint exists for API parity. |
| POST | /api/v1/auth/session | Exchange a Firebase ID token for the local portal profile (links firebase_uid if needed). Clients keep using the Firebase ID token as Bearer on subsequent API calls. |
| POST | /api/v1/auth/signup | Author registration after Firebase Auth createUser. Institution is fixed server-side (UWI STA). |
| POST | /api/v1/auth/signup-attendee | Festival attendee registration after Firebase Auth createUser. |
authors
| Method | Path | Summary |
|---|---|---|
| GET | /api/v1/years/{year}/authors | — |
| GET | /api/v1/years/{year}/authors/{author_ref} | — |
awards
| Method | Path | Summary |
|---|---|---|
| GET | /api/v1/years/{year}/awards/results | Return the published-facing oral and poster rankings for an event year. |
digest
| Method | Path | Summary |
|---|---|---|
| GET | /api/v1/years/{year}/digest | — |
| GET | /api/v1/years/{year}/digest/export.pdf | — |
event-settings
| Method | Path | Summary |
|---|---|---|
| GET | /api/v1/years/{year}/event-settings | Public: key dates for banners and researcher UI (scoped to year). |
floorplan
| Method | Path | Summary |
|---|---|---|
| GET | /api/v1/years/{year}/floorplan/published | — |
health
| Method | Path | Summary |
|---|---|---|
| GET | /api/v1/health | — |
judge
| Method | Path | Summary |
|---|---|---|
| GET | /api/v1/years/{year}/judge/evaluations | — |
| POST | /api/v1/years/{year}/judge/evaluations | — |
| GET | /api/v1/years/{year}/judge/submissions | — |
me
| Method | Path | Summary |
|---|---|---|
| GET | /api/v1/me/profile | — |
| PATCH | /api/v1/me/profile | — |
me-submissions
| Method | Path | Summary |
|---|---|---|
| GET | /api/v1/years/{year}/me/submissions | — |
| POST | /api/v1/years/{year}/me/submissions | — |
| DELETE | /api/v1/years/{year}/me/submissions/{submission_id} | — |
| PATCH | /api/v1/years/{year}/me/submissions/{submission_id} | — |
portal
| Method | Path | Summary |
|---|---|---|
| PATCH | /api/v1/admin/portal/current-year | — |
| GET | /api/v1/portal/current-year | Public: which year the root domain should open. |
| GET | /api/v1/portal/years | Public: years that have (or should have) an event site. |
reviewer
| Method | Path | Summary |
|---|---|---|
| GET | /api/v1/years/{year}/reviewer/assignments | — |
| GET | /api/v1/years/{year}/reviewer/assignments/{submission_id} | — |
| PUT | /api/v1/years/{year}/reviewer/assignments/{submission_id}/draft | — |
| POST | /api/v1/years/{year}/reviewer/assignments/{submission_id}/reviews | — |
sessions
| Method | Path | Summary |
|---|---|---|
| GET | /api/v1/years/{year}/me/rsvps | — |
| GET | /api/v1/years/{year}/sessions/{agenda_item_id} | — |
| GET | /api/v1/years/{year}/sessions/{agenda_item_id}/comments | — |
| POST | /api/v1/years/{year}/sessions/{agenda_item_id}/comments | — |
| PUT | /api/v1/years/{year}/sessions/{agenda_item_id}/feedback | — |
| GET | /api/v1/years/{year}/sessions/{agenda_item_id}/feedback/me | — |
| DELETE | /api/v1/years/{year}/sessions/{agenda_item_id}/rsvp | — |
| POST | /api/v1/years/{year}/sessions/{agenda_item_id}/rsvp | — |
status
| Method | Path | Summary |
|---|---|---|
| GET | /api/v1/status | — |
| POST | /api/v1/status/seed-demo-data | — |
other
| Method | Path | Summary |
|---|---|---|
| GET | /api/v1 | Versioned API route index (v1 only). |
| GET | /api/v1/index.json | JSON catalog of v1 routes (for tooling). |