
Understand what an API is, why web APIs matter, and how Django REST Framework lets two computers talk to each other using JSON and clear endpoints.
Learn to test your API with curl in the terminal, including authentication tokens, and compare browser use with REST clients as we start building the API.
Build a Django api named zap it by modeling posts with title, url, poster, and created timestamp, plus a vote model to track each user’s vote.
Discover how to build an API with Django Rest Framework, install via pip, and enable standard REST API operations like get, post, put, patch, and delete.
Learn how serializers bridge Django models and JSON in the Django REST framework, create a post serializer, build a post list view, and map API/posts.
Create a superuser, register post and vote models in the Django admin, and expose posts via the REST framework API, viewable as JSON or HTML.
Switch the posts endpoint to a Django Rest Framework ListCreateAPIView, enabling reading and creating posts via the API, with automatic poster assignment and 200/201 responses.
Implement upvotes for posts by adding a vote serializer and vote create view in Django REST framework, enforcing one vote per user per post and requiring authentication.
Test api auth by creating a Django admin user and logging in via the rest framework to vote on a post; the next lecture covers deleting votes.
Learn to delete a user's vote with a DRF mixin and the destroy view, returning 204 no content on success and validating vote existence.
Learn how to implement retrieve and destroy for posts in a Django REST Framework API, with post-id URL design, authentication, and ownership checks to safely delete posts.
Recap highlights API limitations for Zap It, including no signup or login via API and a need for better documentation, with upcoming token authentication and a to-do Woo project.
Add an API to an existing Django project using Django REST framework, turning the to do Woo app into a mobile-friendly backend with create, update, complete, and list endpoints.
Create an api app, install django rest framework, and configure settings and urls so api/ requests forward to api.urls.
Create a Django REST framework API endpoint to list completed todos under api/todos/completed, using a serializer for the todo model and a user-scoped, authenticated query.
Create a dedicated to-do complete endpoint using a read-only serializer and a custom update function that sets the current time as the completed date.
Demonstrate basic authentication with the Django REST framework by curling the API with a username and password, discuss security risks of plain credentials, and preview token-based authentication and signup.
Learn how token authentication secures Django REST Framework APIs by issuing tokens to users, storing them in the database, and validating requests without exposing passwords.
Learn to authenticate against the Django REST Framework using token authentication, generate and retrieve user tokens, and access protected endpoints with curl by providing token in the authorization header.
Develop robust APIs in Django REST framework, using serializers and class-based views, and learn to add a token-authenticated API to an existing project for practical deployment.
Have you ever wanted to create an API for Django but didn't know where to start? Fed up with incomplete YouTube videos and poorly written tutorials? Do you have an existing Django project that you want to add an API to? Is the documentation for the Django REST Framework too complicated to understand?
THEN THIS IS THE COURSE FOR YOU!
In my course, I will walk you through the Django REST Framework from beginning to end! I'm a self-taught programmer so I know what it feels like to start from scratch. I care about your learning, but even more importantly... I care about you!
In this course we will:
Learn what REST APIs are and how to use them
Create a Reddit clone with API calls to make and delete posts, vote on posts and more!
Add API functionality to an existing Django project
Feel free to take a free preview of this course to see if it's a good fit for you. I am so confident that you will love my course, that I even offer a 100% 30-day money-back guarantee. You have nothing to lose, so come join me and let's get started!