Skip to content
jeddison edited this page Mar 14, 2013 · 8 revisions

Requirements:

  • Prove a set of REST JSON APIs that can easily be mixed into an Oscar project
  • The APIs should pick up any customised models within that project and expose their fields in the API
  • The APIs should be extensible so that projects can customise the output, authentication and authorization.
  • The APIs should expose the models from django-oscar-stores if this extension is installed (as this will be a common requirement).
  • The APIs should be versioned.

APIs:

  • User registration and authentication
  • User profile details (picking up on customised models)
  • User order history
  • Readonly product data, possibly including a search filter that uses the appropriate backend (eg Solr). This would enable both search and category browsing as well as display of product details.
  • Offers
  • Basket (including write operations to modify the basket)

Recommended to be excluded from API version 1.0:

  • Checkout (could be tricky to do in a flexible/extensible way). Initially this requirement would be best met by a mobile HTML view served from the server. This is more immediately maintainable, secure and flexible.

Questions:

  • Which REST framework to use: TastyPie or django REST framework. I have a mild preference for Tastypie as I know it better and it is easily extensible.
Clone this wiki locally