Add a REST-based API to URLy Bird.
After completing this assignment, you should be able to:
- Design a simple REST API.
- Implement authentication and authorization for an API in Django.
Instead of forking this repo, use your previous URLy Bird project and push there.
Add an API under the URL /api
to URLy Bird.
This API should be read-only unless the user is authenticated. If authenticated, the user can add new bookmarks and edit and delete their own bookmarks.
The API should allow for:
- Viewing, editing, and deleting bookmarks
- Seeing the click stats for a bookmark
- Adding a click to a bookmark
- Allowing a user to see their overall stats (This is a replication of the overall stats page from the original assignment.)
For hard mode, do everything shown above, plus any of the following features.
- Allow new user creation through the API.
- Allow token-based authentication.
- Support topical lists or tags from the original assignment through the API.
- Add functional tests for your API.