LordXido's picture
Update app/main.py
480d00b verified
from fastapi import FastAPI, Header, HTTPException
from datetime import datetime
import hashlib
app = FastAPI(
title="Codex ReflexGuard Enterprise API",
version="1.0.0",
description="Enterprise Reflex Intelligence API"
)
# ---------------- SECURITY ----------------
VALID_KEYS = {
"codex-enterprise-demo-key"
}
def verify_key(key: str | None):
if key not in VALID_KEYS:
raise HTTPException(status_code=401, detail="Invalid API Key")
# ---------------- ROOT ----------------
@app.get("/")
def root():
return {
"service": "Codex ReflexGuard Enterprise",
"status": "RUNNING",
"docs": "/docs",
"health": "/health",
"endpoint": "/v1/reflex/check"
}
# ---------------- HEALTH ----------------
@app.get("/health")
def health():
return {"status": "ok", "time": datetime.utcnow().isoformat()}
# ---------------- CORE API ----------------
@app.post("/v1/reflex/check")
def reflex_check(payload: dict, x_api_key: str = Header(None)):
verify_key(x_api_key)
scenario = payload.get("scenario", "")
source = payload.get("source", "unknown")
score = min(len(scenario) / 100.0, 1.0)
state = "BLOCK" if score > 0.6 else "ALLOW"
return {
"timestamp": datetime.utcnow().isoformat(),
"scenario_hash": hashlib.sha256(scenario.encode()).hexdigest(),
"score": score,
"decision": state,
"source": source
}