from marshmallow import Schema, fields class ModelSchema(Schema): id = fields.Integer(dump_only=True) provider = fields.String(required=True) name = fields.String(required=True) model_id = fields.String(required=True) api_key = fields.String(allow_none=True, load_only=True) base_url = fields.String(allow_none=True) is_default = fields.Boolean() is_active = fields.Boolean() created_at = fields.DateTime(dump_only=True) updated_at = fields.DateTime(dump_only=True) class ModelCreateSchema(Schema): provider = fields.String(required=True) name = fields.String(required=True) model_id = fields.String(required=True) api_key = fields.String(allow_none=True, load_only=True) base_url = fields.String(allow_none=True) is_default = fields.Boolean() is_active = fields.Boolean()