Skip to main content
The sources analytics endpoint returns a comprehensive view of source domain activity — aggregate stats, category breakdown, daily performance of top domains, and opportunity domains where your brand is not yet mentioned.

Get sources analytics

GET /projects/{project_id}/sources/analytics
Returns source statistics, category distribution, a performance chart for the top 10 domains, the top 20 domains by citation count, and opportunity domains.

Path parameters

ParamTypeDescription
project_idstring (UUID)The project ID

Query parameters

ParamTypeDefaultDescription
duration_daysinteger7Days to look back
date_fromstringStart date (YYYY-MM-DD)
date_tostringEnd date (YYYY-MM-DD)
providersstringComma-separated provider filter
curl "https://topify-customer-api-production.up.railway.app/api/public/v1/projects/{project_id}/sources/analytics?duration_days=7" \
  -H "X-API-Key: tk_live_..."

Response

{
  "success": true,
  "data": {
    "stats": {
      "total_sources": 245,
      "total_citations": 1832
    },
    "category_breakdown": {
      "corporate": 12.5,
      "editorial": 35.2,
      "institutional": 18.0,
      "reference": 22.1,
      "ugc": 8.7,
      "other": 3.5
    },
    "performance_chart": {
      "dates": ["2026-02-28", "2026-03-01", "2026-03-02"],
      "series": [
        {
          "domain": "techcrunch.com",
          "values": [8.2, 7.5, 9.1]
        },
        {
          "domain": "forbes.com",
          "values": [6.0, 5.8, 6.3]
        }
      ]
    },
    "top_domains": [
      {
        "source_id": "s1t2u3v4-...",
        "domain": "techcrunch.com",
        "category": 1,
        "reference_count": 127
      },
      {
        "source_id": "w5x6y7z8-...",
        "domain": "forbes.com",
        "category": 1,
        "reference_count": 89
      }
    ],
    "opportunities": [
      {
        "domain": "reddit.com",
        "citation_count": 45,
        "category": 4,
        "category_name": "ugc"
      }
    ]
  }
}

SourcesAnalyticsResponse fields

FieldTypeDescription
statsSourcesStatsAggregate source and citation counts
category_breakdownCategoryBreakdownCitation distribution by domain category (percentages)
performance_chartSourcePerformanceChartDaily citation share for the top 10 domains
top_domainsSourceDomainResponse[]Top 20 domains by citation count
opportunitiesSourceOpportunity[]High-citation domains where your brand is not mentioned

SourcesStats fields

FieldTypeDescription
total_sourcesintegerDistinct source domains cited in the date range
total_citationsintegerTotal citation count across all sources

CategoryBreakdown fields

Each field is a percentage (0—100) of total citations belonging to that category.
FieldCategory IDDescription
corporate0Company and brand websites
editorial1News outlets and media publications
institutional2Government, academic, and non-profit sites
reference3Encyclopedias, documentation, and knowledge bases
ugc4User-generated content (forums, social media, Q&A)
other5Uncategorized domains

SourcePerformanceChart fields

FieldTypeDescription
datesstring[]Sorted date strings in YYYY-MM-DD format
seriesDomainChartSeries[]One entry per top-10 domain

DomainChartSeries fields

FieldTypeDescription
domainstringDomain name
valuesfloat[]Daily citation share as a percentage of all citations that day, aligned to dates

SourceDomainResponse fields

FieldTypeDescription
source_idstring (UUID)Source ID
domainstringDomain name
categoryintegerDomain category ID (see CategoryBreakdown)
reference_countintegerTotal citations in the date range

SourceOpportunity fields

FieldTypeDescription
domainstringDomain name
citation_countintegerTotal citations where your brand was not mentioned
categoryintegerDomain category ID
category_namestringHuman-readable category name
Opportunities are domains cited 3 or more times where your brand is either not mentioned or has mentioned = false. These represent sources you could target for brand placement to increase visibility.

Use cases

Use category_breakdown to understand which types of sources AI providers cite most. A high ugc percentage may indicate opportunities to improve presence on community platforms.