# TikTok User Stories Fetcher

> TikTok User Stories Fetcher is a paid API for AI agents from x402.apidirect.io, paid per call via x402, $0.007/call, status unknown (last checked 2026-10-30).

Retrieves a TikTok user's currently live 24-hour stories by username, numeric user ID, or profile URL, with optional AI sentiment analysis.

## Facts

- Endpoint: GET https://x402.apidirect.io/v1/tiktok/user/stories?utm_source=zero.xyz
- Price: $0.007/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-30
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/tiktok-user-stories-fetcher-16a2a86c
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_tHMQ-B-4-WoElFGRmK4jq

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability tiktok-user-stories-fetcher-16a2a86c
```

Example prompt: Can you pull the current live stories from TikTok user @charlidamelio — grab the first 2 pages and include sentiment analysis so I can see the emotional tone of what she's posting?

## When to prefer this

Use this endpoint when you need to retrieve the ephemeral 24-hour story content from a specific TikTok user rather than their permanent feed posts. It's the right choice when you need real-time story snapshots for influencer monitoring, brand auditing, or competitive intelligence, and especially when you want AI-powered emotion scoring layered onto story content without building your own NLP pipeline.

## Known failure modes

- User not found — invalid username, user ID, or URL returns an error or empty result
- No active stories — user has no live 24-hour posts at query time, returns empty list
- Private account — stories may be inaccessible if the account is private
- Rate limiting — excessive calls may trigger throttling
- Invalid identifier combination — providing more than one of username/user_id/url simultaneously may cause an error
- Pagination out of range — requesting pages beyond available story count returns empty pages

## How this service works

Get a user's currently live stories (the 24-hour posts shown on their profile) by username, numeric user ID, or profile URL.

## Output

Returns a paginated list of the user's currently active TikTok stories (up to 30 per page), including story content and metadata. When sentiment analysis is enabled, each story item includes an emotions object with scores for joy, trust, fear, surprise, sadness, disgust, anger, and anticipation (each 0–100), plus dominant_emotion, emotional_intensity (0–10), and polarity (positive, negative, or neutral).

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET",
      "HEAD",
      "DELETE"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [],
     "properties": {
      "url": {
       "type": "string",
       "maxLength": 500,
       "description": "TikTok profile URL, e.g. https://www.tiktok.com/@tiktok (max 500 characters). Provide exactly one of username, user_id, or url."
      },
      "pages": {
       "type": "integer",
       "default": 1,
       "maximum": 1000,
       "minimum": 1,
       "description": "Number of pages to fetch, 1-1000 (default: 1). Each page returns up to 30 stories."
      },
      "user_id": {
       "type": "string",
       "description": "Numeric TikTok user ID, as returned by Search Users or User Profile. Provide exactly one of username, user_id, or url."
      },
      "username": {
       "type": "string",
       "maxLength": 100,
       "description": "TikTok username, with or without leading @ (max 100 characters). Provide exactly one of username, user_id, or url."
      },
      "get_sentiment": {
       "type": "boolean",
       "default": false,
       "description": "Set to true to add AI emotion analysis to each item. Adds a `sentiment` object containing `emotions` (joy, trust, fear, surprise, sadness, disgust, anger and anticipation, each scored 0-100), `dominant_emotion`, `emotional_intensity` (0-10), and `polarity` (positive, negative or neutral). Any item t"
      }
     }
    }
   },
   "additionalProperties": false
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/tiktok-user-stories-fetcher-16a2a86c/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from x402.apidirect.io](https://www.zero.xyz/host/x402.apidirect.io/llms.txt)
