Extra Data Types
Beyond basic types, JustAPI supports all standard library and Pydantic types:
from uuid import UUIDfrom justapi import JustAPIApp
app = JustAPIApp()
@app.get("/users/{user_id}")def get_user(user_id: UUID): return {"user_id": str(user_id)}GET /users/550e8400-e29b-41d4-a716-446655440000 validates the UUID format.
datetime and date
Section titled “datetime and date”from datetime import datetime, datefrom justapi import JustAPIApp
app = JustAPIApp()
@app.post("/events")def create_event(start: datetime, end: date = None): return {"start": start.isoformat(), "end": end.isoformat() if end else None}Accepts ISO 8601 strings:
datetime:"2026-07-25T10:30:00Z"date:"2026-07-25"
from enum import Enumfrom justapi import JustAPIApp
class Priority(str, Enum): low = "low" medium = "medium" high = "high"
app = JustAPIApp()
@app.post("/tasks")def create_task(priority: Priority): return {"priority": priority.value}The docs will show a dropdown with the allowed values.
Decimal
Section titled “Decimal”from decimal import Decimalfrom justapi import JustAPIApp
app = JustAPIApp()
@app.post("/payments")def process_payment(amount: Decimal): return {"amount": str(amount)}Literal Types
Section titled “Literal Types”from typing import Literalfrom justapi import JustAPIApp
app = JustAPIApp()
@app.get("/status")def get_status(status: Literal["active", "inactive"]): return {"status": status}See Also
Section titled “See Also”- Python Types Intro — basic types
- Query Parameters & String Validations — string validation
- Path Parameters & Numeric Validations — numeric validation