system-prompts-and-models-o.../dealix/api/routers/customer_ops.py
Sami Assiri b13cb389cc feat(dealix): sync full Dealix package to repo
- API routers, ACA modules, integrations (draft operators)
- Docs, landing pages, scripts (launch readiness, scorecard)
- Tests and CI workflow updates for Dealix

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-01 21:01:17 +03:00

51 lines
1.7 KiB
Python

"""Customer ops API — onboarding, SLA, connectors (deterministic)."""
from __future__ import annotations
from fastapi import APIRouter, Body
from auto_client_acquisition.customer_ops.connector_setup_status import build_connector_status
from auto_client_acquisition.customer_ops.customer_success_cadence import build_weekly_cadence
from auto_client_acquisition.customer_ops.incident_router import build_incident_playbook, classify_incident
from auto_client_acquisition.customer_ops.onboarding_checklist import build_onboarding_checklist
from auto_client_acquisition.customer_ops.sla_tracker import build_sla_summary
from auto_client_acquisition.customer_ops.support_ticket_router import route_ticket
router = APIRouter(prefix="/api/v1/customer-ops", tags=["customer-ops"])
@router.get("/onboarding/checklist")
async def onboarding_checklist(service_id: str | None = None) -> dict[str, object]:
return build_onboarding_checklist(service_id)
@router.get("/support/sla")
async def support_sla() -> dict[str, object]:
return build_sla_summary()
@router.get("/connectors/status")
async def connectors_status() -> dict[str, object]:
return build_connector_status()
@router.get("/success/cadence")
async def success_cadence() -> dict[str, object]:
return build_weekly_cadence()
@router.get("/incidents/playbook")
async def incidents_playbook() -> dict[str, object]:
return build_incident_playbook()
@router.post("/support/route")
async def support_route(payload: dict[str, object] = Body(default_factory=dict)) -> dict[str, object]:
issue = str(payload.get("issue_ar") or "")
return route_ticket(issue)
@router.get("/incidents/classify")
async def incidents_classify(severity: str = "P3") -> dict[str, object]:
return classify_incident(severity)