Skip to main content
POST
/
v1
/
report
Generate Intelligence Report
curl --request POST \
  --url https://api.trynawa.com/v1/report
Generate a structured audience intelligence report from comment data. The report analyzes audience clusters, dominant narratives, sentiment patterns, spam/bot detection, and produces data-backed strategic recommendations.
Cost: 0.50perBasicreport(500credits).0.50** per Basic report (500 credits). **1.50 per Pro report (1500 credits). Pro includes content brief, repeat commenter analysis, and engagement playbook.

Request

Headers

HeaderRequiredDescription
AuthorizationYesBearer nawa_live_sk_xxx or Bearer nawa_test_sk_xxx
Content-TypeYesapplication/json

Body parameters

ParameterTypeRequiredDescription
commentsarrayYesArray of comment objects. Min 10, max 500. Each must have a text field.
comments[].textstringYesThe comment text.
comments[].authorstringNoCommenter handle or name.
comments[].likesintegerNoNumber of likes on the comment.
comments[].created_atstringNoISO 8601 timestamp.
tierstringNobasic or pro. Default: basic. Pro adds repeat commenter analysis and a content brief.
titlestringNoVideo or content title for context.
channel_contextstringNoBrief channel description to improve recommendation quality.

Example request

curl -X POST https://api.trynawa.com/v1/report \
  -H "Authorization: Bearer nawa_test_sk_xxx" \
  -H "Content-Type: application/json" \
  -d '{
    "comments": [
      {"text": "This is the best explanation of AI I have seen", "author": "TechFan42", "likes": 156},
      {"text": "You are just fear mongering for views", "author": "SkepticalSteve", "likes": 89},
      {"text": "Can you do a follow up on the regulation angle?", "author": "PolicyNerd", "likes": 45},
      {"text": "My company just laid off 200 people because of AI", "author": "AnxiousWorker", "likes": 234},
      {"text": "Subscribed! More content like this please", "author": "NewFan01", "likes": 12},
      {"text": "The statistics at 3:42 are wrong, check the OECD data", "author": "DataChecker", "likes": 67},
      {"text": "This confirms everything I have been saying", "author": "AIBull", "likes": 31},
      {"text": "What about the creative industries? You skipped that entirely", "author": "ArtistMike", "likes": 78},
      {"text": "Finally someone telling the truth", "author": "WokeUp2024", "likes": 102},
      {"text": "Great production quality as always", "author": "LoyalViewer", "likes": 8},
      {"text": "How do I protect my job from automation?", "author": "ConcernedDev", "likes": 55},
      {"text": "The guest was brilliant, get her back", "author": "FanOfGuest", "likes": 41}
    ],
    "tier": "pro",
    "title": "AI Is Coming For Your Job - Here Is What To Do",
    "channel_context": "Tech commentary channel, 500K subscribers, weekly uploads"
  }'

Response

Success response (200)

{
  "success": true,
  "result": {
    "id": "rpt_abc123def456",
    "object": "intelligence_report",
    "tier": "pro",
    "report_markdown": "## TL;DR\n\n**Your audience is growing but fragile...**\n\n## Executive Summary\n\n| Metric | Value |\n...\n\n## The One Finding That Matters\n\n**Your loudest critics are also your most-liked commenters...**\n...",
    "sections": {
      "tldr": "**Your audience is growing but fragile...**",
      "executive_summary": "| Metric | Value | ...",
      "headline_finding": "**Your loudest critics are also your most-liked commenters...**",
      "sentiment": "| Sentiment | Count | % | ...",
      "clusters": "### Fear-Driven Workers ESCALATING ...",
      "narratives": "| Narrative | Strength (%) | ...",
      "comment_types": "| Type | Count | ...",
      "top_commenters": "| Rank | Handle | Likes | ...",
      "spam_detected": "No coordinated spam detected.",
      "recommendations": "1. **Pin the DataChecker comment** ...",
      "channel_health": "| Signal | Status | Note | ...",
      "repeat_commenters": "| Handle | Comment Count | ...",
      "content_brief": "### Episode Concepts ..."
    },
    "comments_analyzed": 12,
    "cost_usd": 1.50,
    "credits_used": 1500
  },
  "errors": [],
  "request_id": "req_rpt_abc123"
}

Response headers

HeaderDescription
X-Request-IdUnique request identifier
X-NAWA-ProviderModel provider used (always claude)
X-NAWA-LatencyProcessing time in ms
X-NAWA-TierReport tier (basic or pro)

Result fields

FieldTypeDescription
idstringUnique report identifier
objectstringAlways intelligence_report
tierstringbasic or pro
report_markdownstringFull report in markdown format
sectionsobjectParsed report sections (see below)
comments_analyzedintegerNumber of comments analyzed
cost_usdnumberCost of this report
credits_usedintegerCredits deducted

Sections object

FieldTierDescription
tldrBothOpening verdict. What the reader needs to know in 20 seconds.
executive_summaryBothKey metrics table and strategic finding.
headline_findingBothThe one finding that matters. The single most important takeaway.
sentimentBothSentiment breakdown with pattern notes.
clustersBothAudience clusters with trajectory and sentiment.
narrativesBothNarrative strength map with trajectory.
comment_typesBothBreakdown of what fans are saying by comment type.
top_commentersBothTop 10 influence leaders by likes.
spam_detectedBothSpam and bot detection results.
recommendationsBothData-backed strategic recommendations.
channel_healthBothChannel health scorecard.
repeat_commentersProRepeat commenter analysis with superfan detection.
content_briefProEpisode concepts and engagement playbook.

Percentage tags

Every percentage in report tables carries one of three tags:
  • COUNT: verified from the source data. The model computed this number directly from the comments you provided.
  • ESTIMATE: analyst judgement. The model inferred this from patterns rather than counting exactly.
  • UNVERIFIED: the model omitted a tag. Post-processing stamps UNVERIFIED on any bare percentage in a table cell so downstream consumers know the tag is missing.

Error responses

StatusTypeWhen
400invalid_request_errorMissing/invalid comments, wrong tier, fewer than 10 comments
401authentication_errorInvalid or missing API key
402insufficient_creditsNot enough credits (need 500 for Basic, 1500 for Pro)
429rate_limit_errorRate limit exceeded (5 reports/minute)
500api_errorInternal or provider error

Report tier comparison

Core sections: TL;DR, Executive Summary, The One Finding That Matters, Sentiment Breakdown, Audience Clusters, Narrative Map, Comment Types, Top 10 Influence Leaders, Spam Detection, Recommendations, Channel Health scorecard.Best for: Quick channel health check, weekly monitoring, automated pipelines.
Everything in Basic, plus:
  • Repeat Commenter Analysis with superfan detection
  • Content Brief with 3 episode concepts, engagement playbook, pin recommendations
Best for: Agency client reports, content strategy planning, deep audience analysis.