Files
Aurora-Core/app/schemas/person.py
T

56 lines
1.2 KiB
Python
Raw Normal View History

2026-09-04 17:34:03 -05:00
"""Person response schemas."""
from __future__ import annotations
from datetime import date, datetime
from pydantic import BaseModel
from app.schemas.common import ArtworkOut
class PersonSummaryOut(BaseModel):
id: str
type: str = "person"
name: str
known_for_department: str | None = None
profile_path: str | None = None
popularity: float | None = None
class FilmographyCreditOut(BaseModel):
id: str
media_id: str
media_type: str
title: str
department: str
job: str | None = None
character: str | None = None
release_date: date | None = None
poster_path: str | None = None
class PersonDetailOut(BaseModel):
id: str
type: str = "person"
name: str
aliases: list[str] = []
biography: str | None = None
birthday: date | None = None
deathday: date | None = None
birthplace: str | None = None
gender: str | None = None
known_for_department: str | None = None
popularity: float | None = None
profile_images: list[ArtworkOut] = []
external_ids: dict[str, str] = {}
created_at: datetime
updated_at: datetime
class PersonCreditsOut(BaseModel):
id: str
cast: list[FilmographyCreditOut] = []
crew: list[FilmographyCreditOut] = []