Files
video-gen/video-gen-api/app/schemas/credit.py
T
2026-08-11 09:24:18 +08:00

37 lines
940 B
Python

from __future__ import annotations
from datetime import datetime
from pydantic import BaseModel
class CreditRecordOut(BaseModel):
id: str
type: str
amount: float
balance_delta: float = 0
expired_amount: float = 0
balance_after: float
description: str
billing_scene: str | None = None
scene_name_snapshot: str | None = None
input_tokens: int | None = None
output_tokens: int | None = None
total_tokens: int | None = None
llm_call_count: int | None = None
llm_success_call_count: int | None = None
llm_failed_call_count: int | None = None
created_at: datetime
model_config = {"from_attributes": True}
class CreditBalanceOut(BaseModel):
credits: float
available_credits: float
next_expiring_credits: float = 0
next_expires_at: datetime | None = None
next_last_usable_at: datetime | None = None
records: list[CreditRecordOut]
total: int = 0