Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

CodeSignal

Building the API: Retrieval, Search, and Filter with Django

via CodeSignal

Overview

Implement the first set of read-focused API endpoints for your recipe database. You’ll add consistent JSON serialization, pagination, and robust validation/error handling, then expand into recipe discovery features like filtering by ingredients, returning steps as an array, and selecting random or top-rated recipes.

Syllabus

  • Unit 1: Building Recipe API
    • Implement Recipe Detail Endpoint
    • Complete get_recipe Function for Recipe Endpoint
    • Add Average Rating to Recipe Endpoint
    • Implement serialize_recipe Utility Function
    • Refactoring views using serialize_recipe
    • Scaffold Paginated Recipes Endpoint
    • Implement Paginated Recipe Endpoint
  • Unit 2: Advanced Recipe Search API
    • Add Endpoint for Recipe Steps Array
    • Convert Recipe Steps to Array Format
    • Ingredient Based Recipe Search Endpoint
    • Implement Ingredient Lookup Logic
    • Conditional Aggregation for Ingredient-Based Recipe Lookup
    • Filter Recipes Containing All Requested Ingredients
  • Unit 3: Dynamic Recipe Discovery
    • Implement Random Recipe Endpoint in Django
    • Implement get_random_recipe View Response Handling
    • Create Popular Recipes Endpoint Skeleton
    • Implement Average Rating Annotation for Popular Recipes
    • Implement Popular Recipes Endpoint Logic
    • Implement get_popular_recipes JSON Formatting
  • Unit 4: Removing Duplicate Recipes
    • Implement normalize_name Function
    • Find and Group Duplicate Recipes
    • Implement Duplicate Recipe Detection
    • Implement Safe Duplicate Recipe Deletion Logic

Reviews

Start your review of Building the API: Retrieval, Search, and Filter with Django

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.