fix: datetime serialization in API response models
Tool types and git repositories response models declared created_at/ updated_at as str but ORM returns datetime objects. Change to datetime type so Pydantic serializes correctly to ISO format strings.
This commit is contained in:
@@ -2,6 +2,7 @@ import os
|
||||
import shutil
|
||||
import subprocess
|
||||
import uuid
|
||||
from datetime import datetime
|
||||
|
||||
from fastapi import APIRouter, Depends, HTTPException, Response, status
|
||||
from pydantic import BaseModel, ConfigDict
|
||||
@@ -57,8 +58,9 @@ class GitRepositoryResponse(BaseModel):
|
||||
owner_id: uuid.UUID
|
||||
is_mirror: bool
|
||||
remote_url: str | None
|
||||
last_push: str | None
|
||||
created_at: str | None
|
||||
last_push: datetime | None
|
||||
created_at: datetime
|
||||
updated_at: datetime
|
||||
|
||||
|
||||
@router.post("/{project_id}/repositories", response_model=GitRepositoryResponse, status_code=status.HTTP_201_CREATED)
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import uuid
|
||||
from datetime import datetime
|
||||
|
||||
import yaml
|
||||
from fastapi import APIRouter, Depends, HTTPException, status
|
||||
@@ -112,8 +113,8 @@ class ToolTypeResponse(BaseModel):
|
||||
required_variables: list[str]
|
||||
is_builtin: bool
|
||||
created_by_id: uuid.UUID | None
|
||||
created_at: str
|
||||
updated_at: str
|
||||
created_at: datetime
|
||||
updated_at: datetime
|
||||
|
||||
|
||||
@router.post("", response_model=ToolTypeResponse, status_code=status.HTTP_201_CREATED)
|
||||
|
||||
Reference in New Issue
Block a user