Skip to content
← Back to askepstein.ai

API Documentation

Public endpoints for the askepstein.ai OSINT platform

These endpoints are publicly accessible and do not require authentication. All responses are JSON unless otherwise noted. Rate limits apply per IP address.

Findings

GET/api/v1/findings/latest

Returns the most recent AI-generated research findings, sorted by creation date. High-confidence findings from autonomous corpus analysis.

Parameters

limitnumberMax results (default 20, max 100)
offsetnumberPagination offset (default 0)

Example Response

{
  "data": [
    {
      "id": "f1a2b3c4-...",
      "title": "Pattern: Coordinated Travel 1998-2002",
      "body": "Analysis reveals...",
      "findingType": "connection",
      "confidence": 87,
      "createdAt": "2026-03-20T14:30:00Z"
    }
  ],
  "total": 1342,
  "page": 1
}
Rate limit: 60 requests/minCache: 5 minutes

Corpus Statistics

GET/api/corpus/stats

Aggregate statistics for the entire investigation corpus, including email quality breakdowns, flight date validation metrics, and document counts.

Example Response

{
  "emails": {
    "total": 1780000,
    "clean": 1650000,
    "orphan": 85000,
    "unknown_sender": 45000
  },
  "flights": {
    "total": 4300,
    "has_valid_date": 4100,
    "malformed_dates": 120,
    "invalid_dates": 50,
    "future_dates": 5,
    "no_route": 25
  },
  "photos": { "total": 18000 },
  "people": { "total": 473 },
  "documents": { "total": 1400000 }
}
Rate limit: 30 requests/minCache: 10 minutes

Redaction Analysis

GET/api/agent/redaction-analysis/latest

Latest redaction pattern analysis results from the corpus. Identifies systematic redaction patterns across court-released documents.

Example Response

{
  "analysis": {
    "id": "ra-...",
    "totalDocuments": 142000,
    "redactedCount": 34500,
    "patterns": [...],
    "createdAt": "2026-03-20T00:00:00Z"
  }
}
Rate limit: 30 requests/min
GET/api/agent/redaction-analysis/census

Mention census across the corpus — frequency counts for named entities appearing in documents, emails, and flight logs.

Parameters

limitnumberMax results (default 50)

Example Response

{
  "census": [
    {
      "name": "Jeffrey Epstein",
      "mentions": 245000,
      "sources": ["emails", "flights", "documents"]
    }
  ]
}
Rate limit: 30 requests/min
GET/api/agent/redaction-analysis/gaps

Temporal and corpus coverage gaps — identifies time periods and document categories with missing or redacted data.

Example Response

{
  "temporal_gaps": [
    {
      "period": "2005-Q3",
      "expected_documents": 1200,
      "actual_documents": 340,
      "gap_percentage": 71.7
    }
  ],
  "corpus_gaps": [...]
}
Rate limit: 30 requests/min

RSS Feeds

Subscribe to real-time updates via RSS. All feeds return valid RSS 2.0 XML with Atom self-links.

GET/rss.xml

Primary RSS feed — latest AI-generated research findings with confidence scores and evidence type categories.

Example Response

<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>askepstein.ai — OSINT Investigations</title>
    <item>
      <title>Pattern: Coordinated Travel</title>
      <link>https://askepstein.ai/investigations/...</link>
      <description>[CONNECTION] Analysis reveals...</description>
      <pubDate>Thu, 20 Mar 2026 14:30:00 GMT</pubDate>
      <category>connection</category>
    </item>
  </channel>
</rss>
Cache: 30 minutes
GET/rss/investigations.xml

Investigations feed — auto-generated investigation narratives with summaries and evidence counts.

Example Response

<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>askepstein.ai — Investigations</title>
    <item>
      <title>Flight Pattern Analysis: Caribbean Routes</title>
      <link>https://askepstein.ai/investigations/...</link>
      <description>[AUTO] Multi-source analysis...</description>
    </item>
  </channel>
</rss>
Cache: 30 minutes
GET/rss/daily-drops.xml

Daily Drop feed — one new AI-discovered finding published every day at 00:00 UTC.

Example Response

<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>askepstein.ai — Daily Drop</title>
    <item>
      <title>Previously Unknown Meeting Pattern</title>
      <link>https://askepstein.ai/daily-drop/2026-03-20</link>
      <description>Today's discovery reveals...</description>
    </item>
  </channel>
</rss>
Cache: 30 minutes

Rate Limits

All public API endpoints enforce rate limits per IP address. Exceeding the limit returns HTTP 429 with a Retry-After header.

TierLimitApplies To
Standard60 req/minFindings, corpus stats
Analysis30 req/minRedaction analysis endpoints
AI Query10 req/min, 100 req/dayRAG search (authenticated)

Data Disclaimer

All data served by these endpoints is derived from publicly available court records, DOJ productions, FOIA releases, and congressional oversight documents. AI-generated findings are clearly labeled and include confidence scores. Nothing returned by this API constitutes legal advice, an accusation of criminal conduct, or a verified statement of fact unless explicitly sourced to an official public record.

TermsPrivacyContent PolicyLegal Notices