Skip to main content

Purpose

Stores daily visibility report after analyzing sampled prompts. Updates prompt visibility results and creates a daily report record.

Architecture

Request Body

{
  "clerk_org_id": "org-slug-123",
  "results": [
    {
      "prompt_id": 123,
      "prompt": "best payment gateway",
      "entity_id": "uuid-...",
      "entity_name": "Acme Corp",
      "entity_type": "business",
      "platforms": {
        "chatgpt": true,
        "claude": false,
        "gemini": true,
        ...
      }
    }
  ],
  "report_date": "2024-01-15"
}

What Gets Updated

entity_prompts_tracker

For each prompt result:
  • Platform visibility booleans (chatgpt, claude, etc.)
  • checked_at timestamp
  • last_tested_at timestamp (for UI sorting)

visibility_reports

Daily report with:
  • prompts_sampled - Array of all prompt results
  • summary - Aggregated platform breakdown

Response Format

{
  "status": "success",
  "report_date": "2024-01-15",
  "prompts_updated": 10,
  "summary": {
    "total_checked": 10,
    "platforms_breakdown": {
      "chatgpt": 7,
      "claude": 5,
      "gemini": 8,
      ...
    }
  }
}

Code Location

src/app/apis/cron/store_visibility_report/routes.py