models.py 900 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. from pydantic import BaseModel, Field
  2. from typing import Optional
  3. from datetime import datetime
  4. import uuid
  5. class RecurringScheduleCreate(BaseModel):
  6. agent_id: str
  7. cron: str
  8. message: str
  9. role: str = "user"
  10. class RecurringSchedule(BaseModel):
  11. id: str = Field(default_factory=lambda: str(uuid.uuid4()))
  12. agent_id: str
  13. api_key: str
  14. cron: str
  15. message: str
  16. role: str = "user"
  17. created_at: datetime = Field(default_factory=datetime.utcnow)
  18. last_run: Optional[datetime] = None
  19. class OneTimeScheduleCreate(BaseModel):
  20. agent_id: str
  21. execute_at: str
  22. message: str
  23. role: str = "user"
  24. class OneTimeSchedule(BaseModel):
  25. id: str = Field(default_factory=lambda: str(uuid.uuid4()))
  26. agent_id: str
  27. api_key: str
  28. execute_at: str
  29. message: str
  30. role: str = "user"
  31. created_at: datetime = Field(default_factory=datetime.utcnow)