Skip to main content
POST
/
tweet
/
statement
Extract structured claim from an X/Twitter tweet
curl --request POST \
  --url https://api.vidnavigator.com/v1/tweet/statement \
  --header 'Content-Type: application/json' \
  --header 'X-API-Key: <api-key>' \
  --data '
{
  "tweet_id": "1234567890123456789"
}
'
{
  "status": "success",
  "data": {
    "final_statement": "<string>",
    "statement_query": "<string>",
    "detailed_analysis": "<string>",
    "topics": [
      "<string>"
    ],
    "entities": [
      "<string>"
    ],
    "claim_type": "factual_claim",
    "intent": "educate",
    "tone": "serious",
    "emotion": "curiosity",
    "authority": "data_driven",
    "tweet_text": "<string>",
    "tweet_media_summary": "<string>",
    "quoted_tweet_text": "<string>",
    "quoted_media_summary": "<string>"
  }
}
Extract the real meaning behind an X/Twitter post by analyzing the original tweet, any quoted tweet, and media shared in both contexts.

Overview

This endpoint turns a single X post into a machine-readable intelligence object. It does not just retrieve tweet text or metadata. It analyzes what the author actually meant by combining the original tweet, any quoted tweet, and any media attached to either one. That means the output reflects the full communicative intent of the post, not just the visible text. If a tweet makes sense only when read together with a quoted post, an attached video, or media inside the quoted tweet, this endpoint includes that context in the analysis. It is designed for workflows that need more than keyword monitoring or tweet retrieval, such as fact-checking pipelines, narrative tracking, social risk monitoring, and structured ingestion into dashboards or AI systems.
This is not a basic tweet retrieval API. Its core value is intelligence extraction: understanding the author’s intent, the role of the quoted tweet, and the meaning conveyed by media attached to both the original and quoted post.

What This Endpoint Returns

Intent-Aware Claim Extraction

Extract a multi-sentence final_statement that reflects what the author actually meant, not just what the raw tweet text says in isolation.

Quoted Tweet Understanding

Incorporate quoted tweet context when the original post depends on it for meaning, stance, or narrative framing.

Multi-Axis Classification

Classify the original tweet by claim_type, intent, tone, emotion, and authority.

Media-Aware Intelligence

Analyze media attached to the tweet and media attached to the quoted tweet, including transcript retrieval or speech-to-text fallback when needed.

Why This Endpoint Is Different

Most tweet APIs stop at text retrieval, engagement metrics, or shallow metadata. This endpoint is built for intelligence extraction.
  • It understands the intent behind the original tweet.
  • It understands the quoted tweet as part of the message, not as unrelated metadata.
  • It analyzes shared media in the original tweet.
  • It analyzes shared media in the quoted tweet.
  • It returns a structured output that reflects the combined meaning of all of that context.
This is especially important for X posts where the author’s real point is only clear when you interpret the text together with a quoted post, a reaction clip, a narrated video, or media evidence embedded in either layer.

How It Works

  1. Send a tweet_id for the target X post.
  2. VidNavigator fetches the original tweet, any quoted tweet, and media attached to both.
  3. If video or audio is present in either context, the system retrieves transcripts or falls back to speech-to-text when needed.
  4. The combined context is analyzed to determine the real claim, intent, framing, and supporting media meaning.
  5. The result is returned as structured JSON ready for applications and pipelines.
This endpoint accepts a tweet ID, not a full URL. For example, from https://x.com/user/status/1912345678901234567, the tweet_id is 1912345678901234567.

Classification Axes

The classification labels below are derived from the original tweet text only, not from quoted tweets or attached media:
  • claim_type: factual_claim, opinion, question, call_to_action, satire, news_sharing, personal_experience
  • intent: educate, inform, analyze, persuade, entertain, inspire, challenge
  • tone: serious, humorous, provocative, neutral, warm, skeptical, inspirational
  • emotion: curiosity, urgency, outrage, fear, hope_inspiration, confidence_reassurance, empathy_warmth, awe_wonder
  • authority: data_driven, expert_led, experience_based, speculative

Example Usage

Best For

Use this endpoint when you need to understand what a post is really saying, especially when meaning depends on:
  • the author’s underlying intent
  • a quoted tweet that changes the framing
  • attached video or audio in the original tweet
  • attached video or audio in the quoted tweet
If you only need raw tweet metadata, this is more powerful than necessary. This endpoint is for interpretation and intelligence extraction.

Basic Request

curl -X POST "https://api.vidnavigator.com/v1/tweet/statement" \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "tweet_id": "1912345678901234567"
  }'

Example: Feeding Results into Search or Verification

The statement_query field is useful when you want to take a tweet’s interpreted meaning and use it for search, fact-checking, or evidence retrieval:
cURL
curl -X POST "https://api.vidnavigator.com/v1/tweet/statement" \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "tweet_id": "1912345678901234567"
  }'
Once returned, you can use:
  • final_statement for human review
  • statement_query for search and retrieval
  • topics and entities for clustering, tagging, or analytics

Response Example

{
  "status": "success",
  "data": {
    "final_statement": "The author claims that a new city policy will ban gas-powered delivery scooters in the downtown area next month, arguing that the change is being rushed without enough support for affected workers.",
    "statement_query": "city policy banning gas-powered delivery scooters downtown next month impact on workers",
    "detailed_analysis": "The tweet presents a concrete policy claim and frames it as both imminent and harmful to delivery workers. The author positions the decision as poorly planned and emphasizes the lack of transition support. The message appears intended to persuade the audience that the policy is unfair rather than merely to report it. The framing combines factual assertion with rhetorical pressure.",
    "topics": [
      "urban policy",
      "delivery workers",
      "transport regulation",
      "labor impact"
    ],
    "entities": [
      "City Council",
      "downtown"
    ],
    "claim_type": "factual_claim",
    "intent": "persuade",
    "tone": "provocative",
    "emotion": "urgency",
    "authority": "speculative",
    "tweet_text": "Next month the city is banning gas scooters downtown and nobody has explained how delivery workers are supposed to adapt this fast.",
    "tweet_media_summary": "A short attached video shows several delivery riders speaking about costs, route changes, and reduced earnings if the rule takes effect.",
    "quoted_tweet_text": "Official announcement: downtown clean transport rules begin next month.",
    "quoted_media_summary": null
  }
}

Field Guide

FieldDescription
final_statementFull normalized claim in the author’s voice, informed by the full contextual analysis
statement_querySearch-ready distilled version of the claim
detailed_analysis3-5 sentence explanation covering claim, framing, evidence, and stance
topicsKey subjects discussed in the tweet
entitiesNamed entities such as people, organizations, or places
tweet_textOriginal text of the source tweet
tweet_media_summarySummary of media attached to the original tweet
quoted_tweet_textText of a quoted or referenced tweet, when present
quoted_media_summarySummary of media attached to the quoted tweet, when present

Intelligence Model

This endpoint should be thought of as a multi-layer interpretation pipeline:
  1. Read the original tweet text.
  2. Detect whether a quoted tweet changes or completes the meaning.
  3. Analyze media attached to the original tweet.
  4. Analyze media attached to the quoted tweet.
  5. Produce a final claim and classification that reflect the author’s intended message as completely as possible.
That is why the endpoint is effective for tweets where the visible text alone is incomplete, sarcastic, reactive, or dependent on embedded media.

Billing Notes

This endpoint can involve multiple stages depending on the tweet content:
  • The core claim extraction uses VIDEO_ANALYSES credits.
  • If the original or quoted tweet contains a video, transcript retrieval may use YOUTUBE_TRANSCRIPTS or VIDEO_TRANSCRIPTS.
  • If transcript retrieval is not possible and speech-to-text fallback is used, that media processing may consume VIDEO_UPLOADS.
For cost planning, a text-only tweet is typically simpler than a tweet with embedded media and a quoted post that also contains video.

Use Cases

Fact-Checking

Convert noisy social posts into verification-ready claims that analysts can review quickly.

Narrative Tracking

Group similar claims using statement_query, topics, and entities across many tweets.

Reputation Monitoring

Detect accusations, emotionally charged narratives, and emerging risk signals earlier.

AI Product Integration

Feed structured social intelligence into internal tools, LLM workflows, or search systems.

Troubleshooting

  • Invalid tweet ID: Make sure you are sending only the numeric post ID, not the full X URL.
  • Upstream fetch failure: If X content cannot be retrieved or parsed, the endpoint may return a 502 response.
  • Missing media summary: If no media is attached, or media could not be processed, tweet_media_summary and quoted_media_summary may be null.
  • Unexpected classification: claim_type, intent, tone, emotion, and authority are based only on the original tweet text, while final_statement and media summaries reflect the broader contextual analysis.

Authorizations

X-API-Key
string
header
required

API key authentication. Include your VidNavigator API key in the X-API-Key header.

Body

application/json
tweet_id
string
required

The X/Twitter tweet ID (numeric string)

Example:

"1234567890123456789"

Response

Successful extraction

status
enum<string>
Available options:
success
data
object