Build lightweight AI agent admin
This commit is contained in:
@@ -0,0 +1,44 @@
|
||||
#!/usr/bin/env python
|
||||
# -*- coding: utf-8 -*-
|
||||
"""
|
||||
API Token Schema
|
||||
"""
|
||||
from datetime import datetime
|
||||
from typing import Optional
|
||||
|
||||
from pydantic import BaseModel, Field
|
||||
|
||||
from app.base_schema import CSTDatetime
|
||||
|
||||
|
||||
class ApiTokenCreate(BaseModel):
|
||||
"""创建API Token请求"""
|
||||
name: str = Field(..., min_length=1, max_length=100, description="令牌名称")
|
||||
expires_at: Optional[datetime] = Field(None, description="过期时间(不传表示永不过期)")
|
||||
description: Optional[str] = Field(None, max_length=500, description="令牌描述")
|
||||
|
||||
|
||||
class ApiTokenResponse(BaseModel):
|
||||
"""API Token响应(列表展示用,不包含完整token)"""
|
||||
id: str
|
||||
name: str
|
||||
token_prefix: str = Field(description="令牌前缀,用于识别")
|
||||
expires_at: Optional[CSTDatetime] = None
|
||||
last_used_at: Optional[CSTDatetime] = None
|
||||
description: Optional[str] = None
|
||||
is_active: bool
|
||||
sys_create_datetime: Optional[CSTDatetime] = None
|
||||
|
||||
class Config:
|
||||
from_attributes = True
|
||||
|
||||
|
||||
class ApiTokenCreateResponse(BaseModel):
|
||||
"""创建API Token的响应(仅创建时返回一次完整token)"""
|
||||
id: str
|
||||
name: str
|
||||
token: str = Field(description="完整的API Token(仅此一次展示,请妥善保存)")
|
||||
token_prefix: str
|
||||
expires_at: Optional[CSTDatetime] = None
|
||||
description: Optional[str] = None
|
||||
sys_create_datetime: Optional[CSTDatetime] = None
|
||||
Reference in New Issue
Block a user