---
title: "search narrative candidate topics by keyword"
method: GET
path: "/v1/tool/search-narrative-candidates"
tags: ["Tool"]
---

# search narrative candidate topics by keyword

`GET /v1/tool/search-narrative-candidates`

Reverse-searches topic candidates from a human keyword to map a fuzzy narrative
into the platform's topic taxonomy.
Input is keyword (e.g., "RWA", "AI Agent", "Restaking").
Output is a list of candidate topics with topic_id, match rationale/keyword overlap,
and a trend/heat summary.
Recommended: let the client-side LLM cluster/name/summarize the candidates.

## Query parameters

- `keyword` string, required

## Response `200`

OK

- PubtoolItemsResponseDomainStory
  - `count` integer
  - `items` DomainStory[]
    - `analysis_time` string
    - `authors` string[]
    - `current_rank` integer
    - `first_tweet_time` string — the time of the first tweet in this story
    - `id` string
    - `is_manual` boolean
    - `is_new` boolean — first time in top stories
    - `keyword` string
    - `rank_status` string — 'new','up','down','same'
    - `score` number
    - `snapshot_time` string
    - `source_type` string
    - `summary` string
    - `tweet_urls` string[]

## Other responses

- `400` — Bad Request
- `429` — Too Many Requests

---

[API](https://skmtc.dev/chainbase/apis/data-cloud-task-api.md) · [All operations](https://skmtc.dev/chainbase/apis/data-cloud-task-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/chainbase/data-cloud-task-api/revisions/4013781aa422/schema)
