Flask API Fundamentals · Flask Basics

Routes, Requests, and JSON

Read input from the request and validate it early.

Routes, Requests, and JSON

A Flask API usually reads query parameters, path parameters, or JSON bodies. Keep the handler small and validate inputs before you do work.

from flask import Flask, jsonify, request

app = Flask(__name__)


@app.post('/users')
def create_user():
    payload = request.get_json(silent=True) or {}
    name = payload.get('name', '').strip()
    if not name:
        return jsonify(error='name is required'), 400

    return jsonify(id=1, name=name), 201

Practical Tips

  • Use request.args for query strings.
  • Use request.get_json() for JSON payloads.
  • Return a tuple like (body, status_code) when the response should not be 200.

Open in the app to mark lessons complete, take notes and track your progress.