Project Profile

VeriSightAI

Verification-first content intelligence. Source-backed AI content verification, confidence rules, publish-safety, pricing, QA, and production architecture.

Launch App
Python · FastAPIGemini 2.5 Pro/FlashReact 19 · TailwindMongoDB · GridFSStripe PaymentsSingle Gemini Flash call produces summary, insights, notable quotes, and claim candidates — building a reusable representation for all downstream outputs.5 social platforms × 3 variants, newsroom article, research brief. Lazy generation to minimise cost. Polish pass via Gemini Pro with 6 editorial styles.FastAPI + Python

Production · Live on verisightai.ai

  • Turn video into
  • verified
  • , publish-safe content.
  • VeriSight AI is not a transcription tool. Transcription is just the input. The product is trust
  • — source-backed claims, confidence-aware outputs, and contradiction warnings.
  • Python · FastAPI
  • Gemini 2.5 Pro/Flash
  • React 19 · Tailwind
  • MongoDB · GridFS
  • Stripe Payments
  • Whisper STT
  • YouTube · Vimeo · Loom
  • 27 Iterations · 88+ Tests
  • See It Live
  • Explore the Stack

Product Identity

  • Not another summariser.
  • A trust layer
  • for AI content.
  • Every other tool in this space stops at the transcript. VeriSight starts there and goes further — verifying claims, flagging contradictions, and ensuring every published output is source-backed.
  • Most tools sell
  • VeriSight sells
  • Transcription / subtitles
  • Verification-first content intelligence
  • Note-taking
  • Source-backed claims
  • Generic AI summaries
  • Confidence-aware outputs
  • AI writers
  • Contradiction warnings & publish-safety

Pipeline

  • End-to-end in 8 stages.
  • From URL submission to publish-ready content with trust signals — fully automated, never fabricated.
  • 01 / INPUT
  • Source Validation
  • Accepts YouTube, Vimeo, Loom URLs or direct media uploads. Rights confirmation, plan gates, quota checks run before anything else.
  • 02 / ACQUIRE
  • Transcript Orchestrator
  • Prioritised strategy cascade: captions → Whisper audio STT → audio cleanup. Multi-adapter fallback with rotating egress proxies. Never fabricates.
  • 03 / DERIVE
  • Shared Derived Representation
  • Single Gemini Flash call produces summary, insights, notable quotes, and claim candidates — building a reusable representation for all downstream outputs.
  • 04 / VERIFY
  • Fact-Check Engine
  • Each claim verified against live web search (DuckDuckGo + Wikipedia). Confidence scores, verification status, and contradiction flags assigned per claim.
  • 05 / TRUST
  • Trust Signal Surfacing
  • Badges, average confidence score, contradiction warnings. Advisory popup triggered when average confidence falls below 50%.
  • 06 / OUTPUT
  • Multi-Format Delivery
  • 5 social platforms × 3 variants, newsroom article, research brief. Lazy generation to minimise cost. Polish pass via Gemini Pro with 6 editorial styles.
  • 07 / CACHE
  • Global Result Cache
  • 30-day global dedupe: any previously-analyzed video is instantly cloned for the next user, saving AI cost and 3–10 minutes of wait time.
  • 08 / EXPORT
  • Gated Exports
  • TXT, PDF, DOCX exports honour plan tier and watermarking rules. Per-job premium unlock ($1.50) opens all export formats for a single analysis.

Verification Contract

  • Hard-coded confidence rules.
  • No hallucination, no guessing.
  • Server-side rules are non-negotiable. The LLM cannot override them. Confidence values are clamped and enforced post-generation — the policy is a hard contract, not a prompt suggestion.
  • ✓ verified
  • 1.0
  • Exact confidence — green badge. Verified against live sources.
  • ◑ partially_verified
  • 0.10–0.90
  • Clamped range — amber badge. Partially supported by evidence.
  • ? unclear
  • ≤ 0.20
  • Capped — red badge. No clear supporting evidence found.
  • ✗ contradicted
  • 0.0
  • Exact zero — rose badge. Active contradicting evidence present.
  • ◷ needs_review
  • ≤ 0.10
  • Capped — slate badge. Requires human editorial judgement.

Interactive Preview

  • See the verification engine.
  • Paste a video URL and watch VeriSight classify and confidence-score extracted claims in real time.
  • verisightai.ai/analyze
  • Analyze for Trust Signals
  • CLAIM VERIFICATION RESULTS · 3 claims extracted
  • ✓ VERIFIED
  • "Global AI investment exceeded $300 billion in 2024, with compute infrastructure accounting for the majority of spend."
  • confidence: 1.00 · source: Reuters, Bloomberg · 2 corroborating references
  • ◑ PARTIAL
  • "Smaller open-source models now match GPT-4 on most enterprise benchmarks."
  • confidence: 0.61 · source: Hugging Face leaderboard · benchmark-dependent
  • ✗ CONTRADICTED
  • "No major AI lab has faced regulatory fines to date."
  • confidence: 0.00 · contradicted by: EU AI Act enforcement record, 2025
  • ⚠ TRUST ADVISORY · avg confidence 54% · 1 contradicted claim detected · review before publishing

Engineering

  • Production-grade from day one.
  • Every architectural decision is documented, tested, and iterable. 27 shipped iterations with zero breaking regressions.
  • Backend
  • FastAPI + Python
  • FastAPI 0.110
  • Pydantic v2
  • asyncio
  • Motor (async Mongo)
  • Uvicorn
  • BackgroundTasks
  • AI / LLM
  • Gemini 2.5 Dual-Tier
  • gemini-2.5-flash
  • gemini-2.5-pro
  • Whisper STT
  • google-genai SDK
  • liteLLM
  • token budgeting
  • Search & Verification
  • Live Fact-Check Engine
  • DuckDuckGo Search
  • Wikipedia API
  • yt-dlp
  • BeautifulSoup4
  • rotating egress
  • sha256 claim cache
  • Database & Storage
  • MongoDB + GridFS
  • MongoDB Atlas
  • GridFS attachments
  • compound indexes
  • 30-day result cache
  • analytics_events
  • Auth & Payments
  • JWT + Stripe
  • PyJWT
  • bcrypt
  • magic-link email
  • Stripe Checkout
  • webhook verification
  • idempotent fulfil
  • Frontend
  • React 19 + shadcn/ui
  • React 19
  • React Router 7
  • Tailwind CSS 3
  • Radix UI primitives
  • Recharts
  • CRACO + Webpack
  • Exports & Docs
  • Multi-Format Output
  • fpdf2 (PDF)
  • python-docx
  • ReportLab
  • watermark engine
  • unicode e2e tested
  • Ops & Monitoring
  • Production Hardened
  • Sentry SDK
  • Hostinger SMTP
  • /health/deep endpoint
  • CORS lockdown
  • DMCA compliance
  • rotate_secrets.py
  • backend/services/transcript/orchestrator.py
  • # Transcript acquisition — prioritised strategy cascade, never fabricates
  • class
  • TranscriptOrchestrator
  • : def
  • __init__
  • (self): self
  • .adapters = [ PublicCaptionAdapter(), # native captions first (free, fast)
  • SessionBackedAdapter(), # browser-context extraction
  • RotatingEgressAdapter(), # rotating IPs for geo-blocked sources
  • AudioSTTAdapter(engine= "whisper"
  • ), # Whisper fallback for silent caption tracks
  • SecondarySTTAdapter(), # secondary provider for long-form content
  • AlternateExtractorAdapter(), # yt-dlp last resort
  • ] async def
  • acquire
  • (self, source: Source) -> TranscriptResult: for
  • adapter in
  • self
  • .adapters: if not
  • adapter.can_handle(source): continue
  • result = await
  • adapter.extract(source) if
  • result.quality_grade >= QualityGrade.ACCEPTABLE: return
  • result.with_provenance(adapter.label) raise
  • TranscriptUnavailableError( "All adapters exhausted — not fabricating"
  • )

Quality Assurance

  • 88+ tests. Zero regressions across 27 iterations.
  • Every feature ships with a full pytest suite. Adjacent tests run on every iteration to catch regressions before they reach production.
  • PASSED
  • test_premium_unlock.py
  • — 9 cases: article, brief, polish, pdf, docx on premium_unlocked; 4 free-tier gate sanity checks
  • test_iter6_verisight.py
  • — 17 cases: trust advisory, contradiction warnings, confidence rule enforcement
  • test_orchestrator_api.py
  • — 10 cases: adapter cascade, quality grading, provenance tracking, fabrication guard
  • test_compliance_dmca.py
  • — URL suppression, takedown flow, re-submission blocking
  • test_stripe_webhook_security.py
  • — signature verification, bad payload, missing header, idempotency
  • test_video_cache_dedupe.py
  • — 4 cases: cache hit, fresh-URL miss, TTL-expired, incomplete prior
  • test_polish_article.py
  • — 5 cases: free block, no article 409, bad style 400, happy path, rate limit 429
  • test_admin_metrics.py
  • — 25 cases: all 11 dashboard sections, date ranges, KPI shapes, route guard
  • test_cost_optimization.py
  • — budget cap, per-user monthly limits, token estimation accuracy
  • test_export_unicode_e2e.py
  • — PDF/DOCX exports with Arabic, CJK, and emoji filenames + body content
  • test_support_tickets.py
  • — 23 cases: GridFS attachments, admin fetch, resolve + email send
  • test_secondary_stt.py
  • — Whisper long-form, engine fallback, 16-min free tier cap enforcement
  • test_factcheck_confidence_rules.py
  • — hard contract: server-side clamping, post-LLM enforcement
  • test_cors_required_in_prod.py
  • — wildcard rejection, regex fallback, production domain lockdown
  • test_production_config_validator.py
  • — boot refusal, missing keys, localhost Mongo rejection, JWT length
  • 88 passed
  • in 14 test files · 0 failures · 0 warnings · adjacent regression suite green on every iteration

Plans & Pricing

  • Simple. Transparent. Pay-per-job available.
  • Every plan grants access to the full verification engine. Higher tiers unlock volume, long-form content, and API access.
  • Free
  • $0
  • forever
  • 1 analysis / day · 3 / week
  • Watermarked copy export
  • Whisper ≤ 16 min
  • Social posts (5 platforms)
  • $1.00 AI budget cap
  • Get Started
  • Starter
  • $19
  • / month
  • 40 analyses / month
  • TXT export (no watermark)
  • Unlimited Whisper
  • Article + research brief
  • $8.00 AI budget cap
  • Start Starter
  • Pro
  • $49
  • 130 analyses / month
  • PDF + DOCX export
  • 1 long-form job / month (≥60 min)
  • Editorial polish (6 styles)
  • Instant cache badge
  • $30.00 AI budget cap
  • Go Pro
  • Agency
  • $149
  • 450 analyses / month
  • All export formats
  • 5 long-form jobs / month
  • API access + 5 seats
  • $100.00 AI budget cap
  • Contact Sales
  • Need just one job? $1.50 per-job credit
  • — unlocks all Pro features for a single analysis. No subscription required.

For Developers

  • Built to be extended.
  • Clean architecture, modular services, comprehensive admin tooling, and a health check system that tells you exactly what's wrong — not just that something is.
  • 🔒
  • JWT Auth + Magic Links
  • bcrypt-hashed passwords, 64-char JWT secrets, email-based passwordless login. Admin bootstrap endpoint gated by BOOTSTRAP_TOKEN for secure recovery.
  • 💳
  • Battle-Tested Stripe Integration
  • Direct stripe.Webhook.construct_event() bypassing the StripeObject shim pitfalls. Idempotent fulfillment via receipt_sent_at flags. Diagnostic UI shows per-session Stripe status.
  • 📊
  • 11-Section Admin Dashboard
  • Founder · Executive · Traffic · Funnel · Segments · Plans · Usage · Trust · Revenue · Exports · Health — with 4 date-range presets, KPI cards, and inline SVG sparklines.
  • ⚕️
  • Deep Health Endpoint
  • /api/health/deep checks MongoDB, Stripe, SMTP, JWT length, CORS config, and more. Reports degraded state with per-component detail — not just a binary OK/fail.
  • 🛡️
  • DMCA Compliance Built In
  • URL suppression list, takedown flow, re-submission blocking, and compliance audit trail. Fact-check cache keyed on claim SHA-256 to prevent stale verdicts.
  • 🔄
  • Cost Controls at Every Layer
  • Two-tier LLM routing (Flash for cleanup, Pro for verdicts). Per-user monthly budget caps. Per-claim fact-check caching with 30-day TTL. Token estimation before every call.
  • POST /api/jobs — submit a video for verification
  • # Submit a YouTube URL for verification-first content extraction
  • import
  • httpx response = httpx. post
  • ( "https://verisightai.ai/api/jobs"
  • , headers={ "Authorization"
  • : f"Bearer {token}"
  • }, json={ "source_url"
  • : "https://youtube.com/watch?v=dQw4w9WgXcQ"
  • , "rights_confirmed"
  • : True
  • , } ) job = response.json() # job.id → poll GET /api/jobs/{id} until status == "complete"
  • # job.fact_checks[0].status → "verified" | "contradicted" | "unclear"
  • # job.fact_checks[0].confidence → 0.0–1.0, server-enforced confidence rules
  • # job.posts.twitter[0] → platform-ready post, 3 variants
  • # job.article → full newsroom article (lazy, call POST /api/jobs/{id}/article)

Veri Sight

  • AI
  • Turn video into verified, publish-safe content.
  • Launch App
  • How It Works
  • Tech Stack
  • Pricing
  • For Developers
  • Support
  • © 2026 VeriSight AI · Built with FastAPI · React 19 · Gemini 2.5 · MongoDB · Stripe · verisightai.ai
Complete original text content
  1. Production · Live on verisightai.ai
  2. Turn video into
  3. verified
  4. , publish-safe content.
  5. VeriSight AI is not a transcription tool. Transcription is just the input. The product is trust
  6. — source-backed claims, confidence-aware outputs, and contradiction warnings.
  7. Python · FastAPI
  8. Gemini 2.5 Pro/Flash
  9. React 19 · Tailwind
  10. MongoDB · GridFS
  11. Stripe Payments
  12. Whisper STT
  13. YouTube · Vimeo · Loom
  14. 27 Iterations · 88+ Tests
  15. See It Live
  16. Explore the Stack
  17. Product Identity
  18. Not another summariser.
  19. A trust layer
  20. for AI content.
  21. Every other tool in this space stops at the transcript. VeriSight starts there and goes further — verifying claims, flagging contradictions, and ensuring every published output is source-backed.
  22. Most tools sell
  23. VeriSight sells
  24. Transcription / subtitles
  25. Verification-first content intelligence
  26. Note-taking
  27. Source-backed claims
  28. Generic AI summaries
  29. Confidence-aware outputs
  30. AI writers
  31. Contradiction warnings & publish-safety
  32. Pipeline
  33. End-to-end in 8 stages.
  34. From URL submission to publish-ready content with trust signals — fully automated, never fabricated.
  35. 01 / INPUT
  36. Source Validation
  37. Accepts YouTube, Vimeo, Loom URLs or direct media uploads. Rights confirmation, plan gates, quota checks run before anything else.
  38. 02 / ACQUIRE
  39. Transcript Orchestrator
  40. Prioritised strategy cascade: captions → Whisper audio STT → audio cleanup. Multi-adapter fallback with rotating egress proxies. Never fabricates.
  41. 03 / DERIVE
  42. Shared Derived Representation
  43. Single Gemini Flash call produces summary, insights, notable quotes, and claim candidates — building a reusable representation for all downstream outputs.
  44. 04 / VERIFY
  45. Fact-Check Engine
  46. Each claim verified against live web search (DuckDuckGo + Wikipedia). Confidence scores, verification status, and contradiction flags assigned per claim.
  47. 05 / TRUST
  48. Trust Signal Surfacing
  49. Badges, average confidence score, contradiction warnings. Advisory popup triggered when average confidence falls below 50%.
  50. 06 / OUTPUT
  51. Multi-Format Delivery
  52. 5 social platforms × 3 variants, newsroom article, research brief. Lazy generation to minimise cost. Polish pass via Gemini Pro with 6 editorial styles.
  53. 07 / CACHE
  54. Global Result Cache
  55. 30-day global dedupe: any previously-analyzed video is instantly cloned for the next user, saving AI cost and 3–10 minutes of wait time.
  56. 08 / EXPORT
  57. Gated Exports
  58. TXT, PDF, DOCX exports honour plan tier and watermarking rules. Per-job premium unlock ($1.50) opens all export formats for a single analysis.
  59. Verification Contract
  60. Hard-coded confidence rules.
  61. No hallucination, no guessing.
  62. Server-side rules are non-negotiable. The LLM cannot override them. Confidence values are clamped and enforced post-generation — the policy is a hard contract, not a prompt suggestion.
  63. ✓ verified
  64. 1.0
  65. Exact confidence — green badge. Verified against live sources.
  66. ◑ partially_verified
  67. 0.10–0.90
  68. Clamped range — amber badge. Partially supported by evidence.
  69. ? unclear
  70. ≤ 0.20
  71. Capped — red badge. No clear supporting evidence found.
  72. ✗ contradicted
  73. 0.0
  74. Exact zero — rose badge. Active contradicting evidence present.
  75. ◷ needs_review
  76. ≤ 0.10
  77. Capped — slate badge. Requires human editorial judgement.
  78. Interactive Preview
  79. See the verification engine.
  80. Paste a video URL and watch VeriSight classify and confidence-score extracted claims in real time.
  81. verisightai.ai/analyze
  82. Analyze for Trust Signals
  83. CLAIM VERIFICATION RESULTS · 3 claims extracted
  84. ✓ VERIFIED
  85. "Global AI investment exceeded $300 billion in 2024, with compute infrastructure accounting for the majority of spend."
  86. confidence: 1.00 · source: Reuters, Bloomberg · 2 corroborating references
  87. ◑ PARTIAL
  88. "Smaller open-source models now match GPT-4 on most enterprise benchmarks."
  89. confidence: 0.61 · source: Hugging Face leaderboard · benchmark-dependent
  90. ✗ CONTRADICTED
  91. "No major AI lab has faced regulatory fines to date."
  92. confidence: 0.00 · contradicted by: EU AI Act enforcement record, 2025
  93. ⚠ TRUST ADVISORY · avg confidence 54% · 1 contradicted claim detected · review before publishing
  94. Engineering
  95. Production-grade from day one.
  96. Every architectural decision is documented, tested, and iterable. 27 shipped iterations with zero breaking regressions.
  97. Backend
  98. FastAPI + Python
  99. FastAPI 0.110
  100. Pydantic v2
  101. asyncio
  102. Motor (async Mongo)
  103. Uvicorn
  104. BackgroundTasks
  105. AI / LLM
  106. Gemini 2.5 Dual-Tier
  107. gemini-2.5-flash
  108. gemini-2.5-pro
  109. google-genai SDK
  110. liteLLM
  111. token budgeting
  112. Search & Verification
  113. Live Fact-Check Engine
  114. DuckDuckGo Search
  115. Wikipedia API
  116. yt-dlp
  117. BeautifulSoup4
  118. rotating egress
  119. sha256 claim cache
  120. Database & Storage
  121. MongoDB + GridFS
  122. MongoDB Atlas
  123. GridFS attachments
  124. compound indexes
  125. 30-day result cache
  126. analytics_events
  127. Auth & Payments
  128. JWT + Stripe
  129. PyJWT
  130. bcrypt
  131. magic-link email
  132. Stripe Checkout
  133. webhook verification
  134. idempotent fulfil
  135. Frontend
  136. React 19 + shadcn/ui
  137. React 19
  138. React Router 7
  139. Tailwind CSS 3
  140. Radix UI primitives
  141. Recharts
  142. CRACO + Webpack
  143. Exports & Docs
  144. Multi-Format Output
  145. fpdf2 (PDF)
  146. python-docx
  147. ReportLab
  148. watermark engine
  149. unicode e2e tested
  150. Ops & Monitoring
  151. Production Hardened
  152. Sentry SDK
  153. Hostinger SMTP
  154. /health/deep endpoint
  155. CORS lockdown
  156. DMCA compliance
  157. rotate_secrets.py
  158. backend/services/transcript/orchestrator.py
  159. # Transcript acquisition — prioritised strategy cascade, never fabricates
  160. class
  161. TranscriptOrchestrator
  162. : def
  163. __init__
  164. (self): self
  165. .adapters = [ PublicCaptionAdapter(), # native captions first (free, fast)
  166. SessionBackedAdapter(), # browser-context extraction
  167. RotatingEgressAdapter(), # rotating IPs for geo-blocked sources
  168. AudioSTTAdapter(engine= "whisper"
  169. ), # Whisper fallback for silent caption tracks
  170. SecondarySTTAdapter(), # secondary provider for long-form content
  171. AlternateExtractorAdapter(), # yt-dlp last resort
  172. ] async def
  173. acquire
  174. (self, source: Source) -> TranscriptResult: for
  175. adapter in
  176. self
  177. .adapters: if not
  178. adapter.can_handle(source): continue
  179. result = await
  180. adapter.extract(source) if
  181. result.quality_grade >= QualityGrade.ACCEPTABLE: return
  182. result.with_provenance(adapter.label) raise
  183. TranscriptUnavailableError( "All adapters exhausted — not fabricating"
  184. )
  185. Quality Assurance
  186. 88+ tests. Zero regressions across 27 iterations.
  187. Every feature ships with a full pytest suite. Adjacent tests run on every iteration to catch regressions before they reach production.
  188. PASSED
  189. test_premium_unlock.py
  190. — 9 cases: article, brief, polish, pdf, docx on premium_unlocked; 4 free-tier gate sanity checks
  191. test_iter6_verisight.py
  192. — 17 cases: trust advisory, contradiction warnings, confidence rule enforcement
  193. test_orchestrator_api.py
  194. — 10 cases: adapter cascade, quality grading, provenance tracking, fabrication guard
  195. test_compliance_dmca.py
  196. — URL suppression, takedown flow, re-submission blocking
  197. test_stripe_webhook_security.py
  198. — signature verification, bad payload, missing header, idempotency
  199. test_video_cache_dedupe.py
  200. — 4 cases: cache hit, fresh-URL miss, TTL-expired, incomplete prior
  201. test_polish_article.py
  202. — 5 cases: free block, no article 409, bad style 400, happy path, rate limit 429
  203. test_admin_metrics.py
  204. — 25 cases: all 11 dashboard sections, date ranges, KPI shapes, route guard
  205. test_cost_optimization.py
  206. — budget cap, per-user monthly limits, token estimation accuracy
  207. test_export_unicode_e2e.py
  208. — PDF/DOCX exports with Arabic, CJK, and emoji filenames + body content
  209. test_support_tickets.py
  210. — 23 cases: GridFS attachments, admin fetch, resolve + email send
  211. test_secondary_stt.py
  212. — Whisper long-form, engine fallback, 16-min free tier cap enforcement
  213. test_factcheck_confidence_rules.py
  214. — hard contract: server-side clamping, post-LLM enforcement
  215. test_cors_required_in_prod.py
  216. — wildcard rejection, regex fallback, production domain lockdown
  217. test_production_config_validator.py
  218. — boot refusal, missing keys, localhost Mongo rejection, JWT length
  219. 88 passed
  220. in 14 test files · 0 failures · 0 warnings · adjacent regression suite green on every iteration
  221. Plans & Pricing
  222. Simple. Transparent. Pay-per-job available.
  223. Every plan grants access to the full verification engine. Higher tiers unlock volume, long-form content, and API access.
  224. Free
  225. $0
  226. forever
  227. 1 analysis / day · 3 / week
  228. Watermarked copy export
  229. Whisper ≤ 16 min
  230. Social posts (5 platforms)
  231. $1.00 AI budget cap
  232. Get Started
  233. Starter
  234. $19
  235. / month
  236. 40 analyses / month
  237. TXT export (no watermark)
  238. Unlimited Whisper
  239. Article + research brief
  240. $8.00 AI budget cap
  241. Start Starter
  242. Pro
  243. $49
  244. 130 analyses / month
  245. PDF + DOCX export
  246. 1 long-form job / month (≥60 min)
  247. Editorial polish (6 styles)
  248. Instant cache badge
  249. $30.00 AI budget cap
  250. Go Pro
  251. Agency
  252. $149
  253. 450 analyses / month
  254. All export formats
  255. 5 long-form jobs / month
  256. API access + 5 seats
  257. $100.00 AI budget cap
  258. Contact Sales
  259. Need just one job? $1.50 per-job credit
  260. — unlocks all Pro features for a single analysis. No subscription required.
  261. For Developers
  262. Built to be extended.
  263. Clean architecture, modular services, comprehensive admin tooling, and a health check system that tells you exactly what's wrong — not just that something is.
  264. 🔒
  265. JWT Auth + Magic Links
  266. bcrypt-hashed passwords, 64-char JWT secrets, email-based passwordless login. Admin bootstrap endpoint gated by BOOTSTRAP_TOKEN for secure recovery.
  267. 💳
  268. Battle-Tested Stripe Integration
  269. Direct stripe.Webhook.construct_event() bypassing the StripeObject shim pitfalls. Idempotent fulfillment via receipt_sent_at flags. Diagnostic UI shows per-session Stripe status.
  270. 📊
  271. 11-Section Admin Dashboard
  272. Founder · Executive · Traffic · Funnel · Segments · Plans · Usage · Trust · Revenue · Exports · Health — with 4 date-range presets, KPI cards, and inline SVG sparklines.
  273. ⚕️
  274. Deep Health Endpoint
  275. /api/health/deep checks MongoDB, Stripe, SMTP, JWT length, CORS config, and more. Reports degraded state with per-component detail — not just a binary OK/fail.
  276. 🛡️
  277. DMCA Compliance Built In
  278. URL suppression list, takedown flow, re-submission blocking, and compliance audit trail. Fact-check cache keyed on claim SHA-256 to prevent stale verdicts.
  279. 🔄
  280. Cost Controls at Every Layer
  281. Two-tier LLM routing (Flash for cleanup, Pro for verdicts). Per-user monthly budget caps. Per-claim fact-check caching with 30-day TTL. Token estimation before every call.
  282. POST /api/jobs — submit a video for verification
  283. # Submit a YouTube URL for verification-first content extraction
  284. import
  285. httpx response = httpx. post
  286. ( "https://verisightai.ai/api/jobs"
  287. , headers={ "Authorization"
  288. : f"Bearer {token}"
  289. }, json={ "source_url"
  290. : "https://youtube.com/watch?v=dQw4w9WgXcQ"
  291. , "rights_confirmed"
  292. : True
  293. , } ) job = response.json() # job.id → poll GET /api/jobs/{id} until status == "complete"
  294. # job.fact_checks[0].status → "verified" | "contradicted" | "unclear"
  295. # job.fact_checks[0].confidence → 0.0–1.0, server-enforced confidence rules
  296. # job.posts.twitter[0] → platform-ready post, 3 variants
  297. # job.article → full newsroom article (lazy, call POST /api/jobs/{id}/article)
  298. Veri Sight
  299. AI
  300. Turn video into verified, publish-safe content.
  301. Launch App
  302. How It Works
  303. Tech Stack
  304. Pricing
  305. Support
  306. © 2026 VeriSight AI · Built with FastAPI · React 19 · Gemini 2.5 · MongoDB · Stripe · verisightai.ai