Olympus/backend/hermes/app/schemas/audit.py
2026-07-03 00:04:44 +02:00

39 lines
783 B
Python

from datetime import datetime
from typing import Any
from pydantic import BaseModel, ConfigDict
class AuditLogResponse(BaseModel):
id: int
actor_user_id: int | None
actor_username: str
action: str
entity_type: str
entity_id: int | None
entity_label: str
ip_address: str
user_agent: str
before_data: Any = None
after_data: Any = None
metadata_data: Any = None
created_at: datetime
model_config = ConfigDict(from_attributes=True)
class AuditLogListResponse(BaseModel):
items: list[AuditLogResponse]
total: int
page: int
page_size: int
class ActivityFeedItem(BaseModel):
id: int
title: str
description: str
actor: str
entity_type: str
entity_id: int | None
created_at: datetime