Unify parsing workers, analytics API with PostgreSQL, map UI, and PI distribution into centers/ with Docker Compose. Co-authored-by: Cursor <cursoragent@cursor.com>
27 lines
663 B
Python
27 lines
663 B
Python
"""Shared ingest payload schemas (CP → CA)."""
|
|
|
|
from datetime import datetime
|
|
|
|
from pydantic import BaseModel, Field
|
|
|
|
|
|
class IngestEventItem(BaseModel):
|
|
source_type: str = "telegram"
|
|
source_url: str
|
|
raw_text: str = ""
|
|
title: str = ""
|
|
description: str = ""
|
|
locality: str = ""
|
|
latitude: float | None = None
|
|
longitude: float | None = None
|
|
event_date: datetime | None = None
|
|
region: str | None = None
|
|
topic: str | None = None
|
|
tags: list[str] | None = None
|
|
metadata: dict | None = None
|
|
|
|
|
|
class IngestPayload(BaseModel):
|
|
job_id: int | None = None
|
|
events: list[IngestEventItem] = Field(default_factory=list)
|