Kegbot/kegbot-server

Introduce a new (v2) api

mik3y opened this issue · 3 comments

mik3y commented

The existing api sucks to maintain/extend. Replace it.

Replacement should not require protobufs, and should use django-rest-framework, for better django/python developer familiarity.

Basic requirements

  • crud actions for all major object types (taps, kegs, etc)
  • record a drink/pour
  • upload/attach a photo
  • cors support, as necessary for an external frontend to work with it
  • don't conflict with legacy api paths (scope as /api/v2/...), at least for now

Auth requirements

  • respect site privacy settings (limit access when invite-only or private)
  • respect .is_staff user attribute (limit certain operations to staff, like modifying a tap)
  • support legacy api keys
mik3y commented

An initial implementation has been released in v1.3.0. It is default disabled & must be enabled with the KEGBOT_ENABLE_V2_API setting, which activates the various /api/v2 endpoints.

I'll keep this issue open while development continues, and close it once it the api is stable/default enabled.

This issue is stale because it has been open for 30 days with no activity.

This issue was automatically closed because it has been marked as inactive.