Twitter keyword: 404 Not Found
Routes
/twitter/keyword/:keyword/:routeParams?
Full routes
/twitter/keyword/RSSHub
Related documentation
https://docs.rsshub.app/routes/popular#keyword
What is expected?
A list of tweets with the keyword RSSHub
What is actually happening?
"Looks like something went wrong", with the troubleshooting info
Deployment information
Self-hosted
Deployment information (for self-hosted)
Debian 13, Node v22.18.0, Docker 28.3.3
Additional info
I'm currently using the list timeline feed, which works fine. I also tested the user timeline feed, which also works as expected, with all the user's tweets showing up. The keyword feed is the only one that's broken for me.
Logs:
rsshub-1 | info: <-- GET /twitter/keyword/RSSHub
rsshub-1 | error: Error in /twitter/keyword/RSSHub: FetchError: [GET] "https://x.com/i/api/graphql/UN1i3zUiCWa-6r-Uaho4fw/SearchTimeline?features=%7B%22rweb_tipjar_consumption_enabled%22%3Atrue%2C%22responsive_web_graphql_exclude_directive_enabled%22%3Atrue%2C%22verified_phone_label_enabled%22%3Afalse%2C%22creator_subscriptions_tweet_preview_api_enabled%22%3Atrue%2C%22responsive_web_graphql_timeline_navigation_enabled%22%3Atrue%2C%22responsive_web_graphql_skip_user_profile_image_extensions_enabled%22%3Afalse%2C%22communities_web_enable_tweet_community_results_fetch%22%3Atrue%2C%22c9s_tweet_anatomy_moderator_badge_enabled%22%3Atrue%2C%22articles_preview_enabled%22%3Atrue%2C%22responsive_web_edit_tweet_api_enabled%22%3Atrue%2C%22graphql_is_translatable_rweb_tweet_is_translatable_enabled%22%3Atrue%2C%22view_counts_everywhere_api_enabled%22%3Atrue%2C%22longform_notetweets_consumption_enabled%22%3Atrue%2C%22responsive_web_twitter_article_tweet_consumption_enabled%22%3Atrue%2C%22tweet_awards_web_tipping_enabled%22%3Afalse%2C%22creator_subscriptions_quote_tweet_preview_enabled%22%3Afalse%2C%22freedom_of_speech_not_reach_fetch_enabled%22%3Atrue%2C%22standardized_nudges_misinfo%22%3Atrue%2C%22tweet_with_visibility_results_prefer_gql_limited_actions_policy_enabled%22%3Atrue%2C%22rweb_video_timestamps_enabled%22%3Atrue%2C%22longform_notetweets_rich_text_read_enabled%22%3Atrue%2C%22longform_notetweets_inline_media_enabled%22%3Atrue%2C%22responsive_web_enhance_cards_enabled%22%3Afalse%7D&variables=%7B%22rawQuery%22%3A%22RSSHub%22%2C%22count%22%3A20%2C%22querySource%22%3A%22typed_query%22%2C%22product%22%3A%22Latest%22%7D": 404 Not Found
rsshub-1 | info: --> GET /twitter/keyword/RSSHub 503 2s
This is not a duplicated issue
- [x] I have searched existing issues to ensure this bug has not already been reported
Searching for maintainers:
-
/twitter/keyword/:keyword/:routeParams?: @DIYgod @yindaheng98 @Rongronggg9 @pseudoyu
To maintainers: if you are not willing to be disturbed, list your username in
scripts/workflow/test-issue/call-maintainer.js. In this way, your username will be wrapped in an inline code block when tagged so you will not be notified.
If all routes can not be found, the issue will be closed automatically. Please use NOROUTE for a route-irrelevant issue or leave a comment if it is a mistake.
如果所有路由都无法匹配,issue 将会被自动关闭。如果 issue 和路由无关,请使用 NOROUTE 关键词,或者留下评论。我们会重新审核。
Hi @000yesnt! I'm Dosu and I’m helping the RSSHub team.
The 404 error on the /twitter/keyword/:keyword route is a known issue. This route relies on Twitter's internal GraphQL SearchTimeline endpoint, which now frequently returns 404 errors for unofficial or unauthenticated requests due to recent changes and increased anti-scraping measures by Twitter/X. This breakage is systemic and currently acknowledged in the documentation as a limitation of the route. Other Twitter routes like user and list timelines still work because they use different endpoints or scraping methods that haven't been restricted in the same way.
There is no permanent fix at the moment. Some users have had limited success by rotating multiple authentication tokens from different Twitter accounts, reducing request frequency, and monitoring for token expiration, but these are only temporary workarounds and may not restore keyword search functionality for long periods. For now, using list or user timeline feeds is the most reliable option for Twitter content in RSSHub.
Reference | Related discussion
To reply, just mention @dosu.
How did I do? Good | Irrelevant | Incorrect | Verbose | Hallucination | Report 🐛 | Other
I have a same problem with timeline