WebUI + Case API = ❤️️

Design Ownership

  • web team dictates
  • feedback/criticism of API welcome
  • fix in API rather than work around if possible

Goals

  1. WebUI using CaseAPI for 7.3 (rather than hitting sql directly)
  2. validate functionality and usability of API
  3. address tech debt & buggy areas of case
  4. increase WebUI performance
  5. 0 case bugs
  6. improve maintainability & extensibility of Case as a feature

Permissions

  • entirely based off of identity in Authorization header token
  • relies on Auth Service for Authentication
  • CaseAPI handles Authorization

Paging

  • API calls that return lists will support paging
  • this includes dateUpdated filters for more efficient polling
  • can discuss other solutions, but this this is a minimum req

History

😧

Current

  • shadow tables
  • 3000+ stored proc
  • raw rows in web indexer 
  • multiple caches & complex logic in WebAPI & WebUI to make usable

New

  • new model
  • no need for indexer
  • should be able to delete a lot of code
  • migration

Tasks!

  • totally new feature
  • API for initial feature set mostly done
  • back and forth expected

Trend Charts

  • Not part of the API, unchanged for now

Caching

  • Frank probably knows current state the best
  • Do we need them?
  • If caching is being discussed, always ask "Could the API do something to remove the need for a cache?".

CaseAPI + Web UI

By Chris Langager

CaseAPI + Web UI

  • 363