okdata 0.1.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,227 @@
1
+ """Generated by scripts/generate.ts from @okdata/catalog. Do not edit by hand."""
2
+ from __future__ import annotations
3
+
4
+ from typing import Dict
5
+
6
+ from .._types import EndpointInfo
7
+
8
+ CATALOG_REVISION = "2128c2e84655fc1f"
9
+ PRICE_BOOK = "1b273c48fea9634e"
10
+
11
+ # id: (id, path, list, post, batch_max, unit, price, max_charge, page_size, params, object, title, paused)
12
+ ENDPOINTS: Dict[str, EndpointInfo] = {
13
+ "douyin.videos.search": EndpointInfo("douyin.videos.search", "/v1/douyin/videos/search", True, False, None, "call", "0.02", "0.02", 20, {"query": "string", "sort": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "Douyin video search", False),
14
+ "douyin.videos.get": EndpointInfo("douyin.videos.get", "/v1/douyin/videos/get", False, False, None, "call", "0.002", "0.002", None, {"id": "string", "url": "string", "view": "string", "fields": "string[]"}, "post", "Douyin video detail", False),
15
+ "douyin.videos.comments.list": EndpointInfo("douyin.videos.comments.list", "/v1/douyin/videos/comments/list", True, False, None, "call", "0.002", "0.002", 20, {"id": "string", "sort": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "comment", "Douyin video comments", False),
16
+ "douyin.users.get": EndpointInfo("douyin.users.get", "/v1/douyin/users/get", False, False, None, "call", "0.002", "0.002", None, {"id": "string", "url": "string", "view": "string", "fields": "string[]"}, "account", "Douyin account profile", False),
17
+ "douyin.users.videos.list": EndpointInfo("douyin.users.videos.list", "/v1/douyin/users/videos/list", True, False, None, "call", "0.002", "0.002", 20, {"id": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "Douyin account videos", False),
18
+ "douyin.trends.list": EndpointInfo("douyin.trends.list", "/v1/douyin/trends/list", True, False, None, "call", "0.002", "0.002", 50, {"cursor": "string", "view": "string", "fields": "string[]"}, "trend", "Douyin hot search board", False),
19
+ "xiaohongshu.notes.search": EndpointInfo("xiaohongshu.notes.search", "/v1/xiaohongshu/notes/search", True, False, None, "call", "0.02", "0.02", 20, {"query": "string", "sort": "string", "type": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "Xiaohongshu note search", False),
20
+ "xiaohongshu.notes.get": EndpointInfo("xiaohongshu.notes.get", "/v1/xiaohongshu/notes/get", False, False, None, "call", "0.02", "0.02", None, {"id": "string", "url": "string", "view": "string", "fields": "string[]"}, "post", "Xiaohongshu note detail", False),
21
+ "xiaohongshu.notes.comments.list": EndpointInfo("xiaohongshu.notes.comments.list", "/v1/xiaohongshu/notes/comments/list", True, False, None, "call", "0.02", "0.02", 10, {"id": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "comment", "Xiaohongshu note comments", False),
22
+ "xiaohongshu.users.get": EndpointInfo("xiaohongshu.users.get", "/v1/xiaohongshu/users/get", False, False, None, "call", "0.02", "0.02", None, {"id": "string", "url": "string", "view": "string", "fields": "string[]"}, "account", "Xiaohongshu account profile", False),
23
+ "xiaohongshu.users.notes.list": EndpointInfo("xiaohongshu.users.notes.list", "/v1/xiaohongshu/users/notes/list", True, False, None, "call", "0.02", "0.02", 20, {"id": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "Xiaohongshu account notes", False),
24
+ "xiaohongshu.trends.list": EndpointInfo("xiaohongshu.trends.list", "/v1/xiaohongshu/trends/list", True, False, None, "call", "0.02", "0.02", 20, {"cursor": "string", "view": "string", "fields": "string[]"}, "trend", "Xiaohongshu hot topics", False),
25
+ "wechat_mp.accounts.search": EndpointInfo("wechat_mp.accounts.search", "/v1/wechat_mp/accounts/search", True, False, None, "item", "0.058", "0.58", 10, {"query": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "account", "Official Account search", False),
26
+ "wechat_mp.accounts.articles.list": EndpointInfo("wechat_mp.accounts.articles.list", "/v1/wechat_mp/accounts/articles/list", True, False, None, "call", "0.02", "0.02", 10, {"id": "string", "tab": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "Official Account article history", False),
27
+ "wechat_mp.articles.get": EndpointInfo("wechat_mp.articles.get", "/v1/wechat_mp/articles/get", False, False, None, "call", "0.02", "0.02", None, {"url": "string", "view": "string", "fields": "string[]"}, "post", "Official Account article detail", False),
28
+ "bilibili.videos.search": EndpointInfo("bilibili.videos.search", "/v1/bilibili/videos/search", True, False, None, "call", "0.002", "0.002", 20, {"query": "string", "sort": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "Bilibili video search", False),
29
+ "bilibili.videos.get": EndpointInfo("bilibili.videos.get", "/v1/bilibili/videos/get", False, False, None, "call", "0.002", "0.002", None, {"id": "string", "url": "string", "view": "string", "fields": "string[]"}, "post", "Bilibili video detail", False),
30
+ "bilibili.videos.comments.list": EndpointInfo("bilibili.videos.comments.list", "/v1/bilibili/videos/comments/list", True, False, None, "call", "0.002", "0.002", 20, {"id": "string", "sort": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "comment", "Bilibili video comments", False),
31
+ "bilibili.trends.list": EndpointInfo("bilibili.trends.list", "/v1/bilibili/trends/list", True, False, None, "call", "0.002", "0.002", 50, {"board": "string", "view": "string", "fields": "string[]"}, "trend", "Bilibili hot searches", False),
32
+ "weibo.posts.search": EndpointInfo("weibo.posts.search", "/v1/weibo/posts/search", True, False, None, "call", "0.002", "0.002", 10, {"query": "string", "sort": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "Weibo post search", False),
33
+ "weibo.trends.list": EndpointInfo("weibo.trends.list", "/v1/weibo/trends/list", True, False, None, "call", "0.002", "0.002", 50, {"cursor": "string", "view": "string", "fields": "string[]"}, "trend", "Weibo hot search", False),
34
+ "weibo.users.get": EndpointInfo("weibo.users.get", "/v1/weibo/users/get", False, False, None, "call", "0.002", "0.002", None, {"id": "string", "view": "string", "fields": "string[]"}, "account", "Weibo account profile", False),
35
+ "tiktok.videos.search": EndpointInfo("tiktok.videos.search", "/v1/tiktok/videos/search", True, False, None, "call", "0.002", "0.002", 30, {"query": "string", "sort": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "TikTok video search", False),
36
+ "tiktok.videos.get": EndpointInfo("tiktok.videos.get", "/v1/tiktok/videos/get", False, False, None, "call", "0.002", "0.002", None, {"id": "string", "url": "string", "view": "string", "fields": "string[]"}, "post", "TikTok video detail", False),
37
+ "tiktok.videos.comments.list": EndpointInfo("tiktok.videos.comments.list", "/v1/tiktok/videos/comments/list", True, False, None, "call", "0.002", "0.002", 50, {"id": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "comment", "TikTok video comments", False),
38
+ "tiktok.users.get": EndpointInfo("tiktok.users.get", "/v1/tiktok/users/get", False, False, None, "call", "0.002", "0.002", None, {"username": "string", "view": "string", "fields": "string[]"}, "account", "TikTok account profile", False),
39
+ "x.posts.get": EndpointInfo("x.posts.get", "/v1/x/posts/get", False, False, None, "call", "0.0003", "0.0003", None, {"id": "string", "url": "string", "view": "string", "fields": "string[]"}, "post", "X post detail", False),
40
+ "x.posts.search": EndpointInfo("x.posts.search", "/v1/x/posts/search", True, False, None, "call", "0.002", "0.002", 20, {"query": "string", "sort": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "X post search", False),
41
+ "x.users.get": EndpointInfo("x.users.get", "/v1/x/users/get", False, True, 100, "item", "0.0004", "0.04", None, {"id": "string", "username": "string", "ids": "string[]", "view": "string", "fields": "string[]"}, "account", "X account profile", False),
42
+ "x.users.posts.list": EndpointInfo("x.users.posts.list", "/v1/x/users/posts/list", True, False, None, "call", "0.002", "0.002", 20, {"username": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "X account posts", False),
43
+ "x.trends.list": EndpointInfo("x.trends.list", "/v1/x/trends/list", True, False, None, "call", "0.009", "0.009", 30, {"country": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "trend", "X trending topics", False),
44
+ "youtube.videos.search": EndpointInfo("youtube.videos.search", "/v1/youtube/videos/search", True, False, None, "call", "0.004", "0.004", 20, {"query": "string", "sort": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "YouTube video search", False),
45
+ "youtube.videos.get": EndpointInfo("youtube.videos.get", "/v1/youtube/videos/get", False, False, None, "call", "0.002", "0.002", None, {"id": "string", "url": "string", "view": "string", "fields": "string[]"}, "post", "YouTube video detail", False),
46
+ "youtube.videos.comments.list": EndpointInfo("youtube.videos.comments.list", "/v1/youtube/videos/comments/list", True, False, None, "call", "0.002", "0.002", 20, {"id": "string", "sort": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "comment", "YouTube video comments", False),
47
+ "youtube.videos.transcript.get": EndpointInfo("youtube.videos.transcript.get", "/v1/youtube/videos/transcript/get", False, False, None, "call", "0.004", "0.004", None, {"id": "string", "lang": "string", "view": "string", "fields": "string[]"}, "transcript", "YouTube video transcript", False),
48
+ "douyin.xingtu.creators.search": EndpointInfo("douyin.xingtu.creators.search", "/v1/douyin/xingtu/creators/search", True, False, None, "call", "0.004", "0.004", 20, {"query": "string", "search_by": "string", "followers_min": "integer", "followers_max": "integer", "engagement_min": "integer", "gender": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "creator", "Douyin Xingtu creator search", False),
49
+ "douyin.xingtu.creators.rates.get": EndpointInfo("douyin.xingtu.creators.rates.get", "/v1/douyin/xingtu/creators/rates/get", False, False, None, "call", "0.04", "0.04", None, {"id": "string", "view": "string", "fields": "string[]"}, "creator_rate", "Douyin Xingtu creator rate card", False),
50
+ "xiaohongshu.pgy.creators.search": EndpointInfo("xiaohongshu.pgy.creators.search", "/v1/xiaohongshu/pgy/creators/search", True, False, None, "call", "0.04", "0.04", 20, {"query": "string", "search_by": "string", "followers_min": "integer", "followers_max": "integer", "type": "string", "sort": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "creator", "Xiaohongshu PGY creator search", False),
51
+ "xiaohongshu.pgy.creators.get": EndpointInfo("xiaohongshu.pgy.creators.get", "/v1/xiaohongshu/pgy/creators/get", False, False, None, "call", "0.04", "0.04", None, {"id": "string", "view": "string", "fields": "string[]"}, "creator", "Xiaohongshu PGY creator detail", False),
52
+ "meta.ads.search": EndpointInfo("meta.ads.search", "/v1/meta/ads/search", True, False, None, "call", "0.004", "0.004", 30, {"query": "string", "country": "string", "status": "string", "media": "string", "sort": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "ad", "Meta Ad Library search", False),
53
+ "meta.ads.get": EndpointInfo("meta.ads.get", "/v1/meta/ads/get", False, False, None, "call", "0.004", "0.004", None, {"id": "string", "url": "string", "view": "string", "fields": "string[]"}, "ad", "Meta Ad Library ad detail", False),
54
+ "meta.advertisers.ads.list": EndpointInfo("meta.advertisers.ads.list", "/v1/meta/advertisers/ads/list", True, False, None, "call", "0.004", "0.004", 30, {"id": "string", "name": "string", "country": "string", "status": "string", "media": "string", "sort": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "ad", "Meta advertiser ads", False),
55
+ "google.advertisers.search": EndpointInfo("google.advertisers.search", "/v1/google/advertisers/search", True, False, None, "call", "0.004", "0.004", 10, {"query": "string", "country": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "advertiser", "Google Ads Transparency advertiser search", False),
56
+ "google.advertisers.ads.list": EndpointInfo("google.advertisers.ads.list", "/v1/google/advertisers/ads/list", True, False, None, "call", "0.004", "0.004", 40, {"id": "string", "domain": "string", "country": "string", "format": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "ad", "Google advertiser ads", False),
57
+ "tiktok.ads.search": EndpointInfo("tiktok.ads.search", "/v1/tiktok/ads/search", True, False, None, "call", "0.004", "0.004", 12, {"query": "string", "advertiser": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "ad", "TikTok Ads Library search", False),
58
+ "tiktok.creative_center.ads.search": EndpointInfo("tiktok.creative_center.ads.search", "/v1/tiktok/creative_center/ads/search", True, False, None, "call", "0.002", "0.002", 20, {"query": "string", "country": "string", "window": "string", "sort": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "ad", "TikTok Creative Center top ads", False),
59
+ "tiktok.shop.products.search": EndpointInfo("tiktok.shop.products.search", "/v1/tiktok/shop/products/search", True, False, None, "call", "0.004", "0.004", 20, {"query": "string", "country": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "product", "TikTok Shop product search", False),
60
+ "tiktok.shop.products.get": EndpointInfo("tiktok.shop.products.get", "/v1/tiktok/shop/products/get", False, False, None, "call", "0.002", "0.002", None, {"id": "string", "url": "string", "country": "string", "view": "string", "fields": "string[]"}, "product", "TikTok Shop product detail", False),
61
+ "tiktok.shop.products.reviews.list": EndpointInfo("tiktok.shop.products.reviews.list", "/v1/tiktok/shop/products/reviews/list", True, False, None, "call", "0.002", "0.002", 20, {"id": "string", "country": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "review", "TikTok Shop product reviews", False),
62
+ "xiaohongshu.shop.products.search": EndpointInfo("xiaohongshu.shop.products.search", "/v1/xiaohongshu/shop/products/search", True, False, None, "call", "0.02", "0.02", 20, {"query": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "product", "Xiaohongshu shop product search", False),
63
+ "xiaohongshu.shop.products.reviews.list": EndpointInfo("xiaohongshu.shop.products.reviews.list", "/v1/xiaohongshu/shop/products/reviews/list", True, False, None, "call", "0.02", "0.02", 12, {"id": "string", "sort": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "review", "Xiaohongshu shop product reviews", False),
64
+ "instagram.users.get": EndpointInfo("instagram.users.get", "/v1/instagram/users/get", False, False, None, "call", "0.004", "0.004", None, {"username": "string", "view": "string", "fields": "string[]"}, "account", "Instagram account profile", False),
65
+ "instagram.users.posts.list": EndpointInfo("instagram.users.posts.list", "/v1/instagram/users/posts/list", True, False, None, "call", "0.004", "0.004", 12, {"username": "string", "type": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "Instagram account posts", False),
66
+ "instagram.posts.get": EndpointInfo("instagram.posts.get", "/v1/instagram/posts/get", False, False, None, "call", "0.004", "0.004", None, {"id": "string", "url": "string", "view": "string", "fields": "string[]"}, "post", "Instagram post detail", False),
67
+ "instagram.posts.comments.list": EndpointInfo("instagram.posts.comments.list", "/v1/instagram/posts/comments/list", True, False, None, "call", "0.004", "0.004", 15, {"id": "string", "url": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "comment", "Instagram post comments", False),
68
+ "instagram.comments.replies.list": EndpointInfo("instagram.comments.replies.list", "/v1/instagram/comments/replies/list", True, False, None, "call", "0.004", "0.004", 15, {"id": "string", "post_id": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "comment", "Instagram comment replies", False),
69
+ "instagram.hashtags.posts.list": EndpointInfo("instagram.hashtags.posts.list", "/v1/instagram/hashtags/posts/list", True, False, None, "call", "0.004", "0.004", 10, {"id": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "Instagram hashtag posts", False),
70
+ "instagram.posts.transcript.get": EndpointInfo("instagram.posts.transcript.get", "/v1/instagram/posts/transcript/get", False, False, None, "call", "0.004", "0.004", None, {"id": "string", "url": "string", "view": "string", "fields": "string[]"}, "transcript", "Instagram reel transcript", False),
71
+ "instagram.users.search": EndpointInfo("instagram.users.search", "/v1/instagram/users/search", True, False, None, "call", "0.002", "0.002", 20, {"query": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "account", "Instagram account search", False),
72
+ "reddit.posts.search": EndpointInfo("reddit.posts.search", "/v1/reddit/posts/search", True, False, None, "call", "0.004", "0.004", 25, {"query": "string", "sort": "string", "published_within": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "Reddit post search", False),
73
+ "reddit.posts.get": EndpointInfo("reddit.posts.get", "/v1/reddit/posts/get", False, False, None, "call", "0.002", "0.002", None, {"id": "string", "url": "string", "view": "string", "fields": "string[]"}, "post", "Reddit post detail", False),
74
+ "reddit.posts.comments.list": EndpointInfo("reddit.posts.comments.list", "/v1/reddit/posts/comments/list", True, False, None, "call", "0.002", "0.002", 10, {"id": "string", "url": "string", "sort": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "comment", "Reddit post comments", False),
75
+ "reddit.popular.posts.list": EndpointInfo("reddit.popular.posts.list", "/v1/reddit/popular/posts/list", True, False, None, "call", "0.002", "0.002", 10, {"cursor": "string", "view": "string", "fields": "string[]"}, "post", "Reddit Popular feed", False),
76
+ "reddit.subreddits.posts.list": EndpointInfo("reddit.subreddits.posts.list", "/v1/reddit/subreddits/posts/list", True, False, None, "call", "0.004", "0.004", 25, {"id": "string", "sort": "string", "published_within": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "Reddit community posts", False),
77
+ "reddit.subreddits.get": EndpointInfo("reddit.subreddits.get", "/v1/reddit/subreddits/get", False, False, None, "call", "0.002", "0.002", None, {"id": "string", "view": "string", "fields": "string[]"}, "account", "Reddit community profile", False),
78
+ "reddit.trends.list": EndpointInfo("reddit.trends.list", "/v1/reddit/trends/list", True, False, None, "call", "0.002", "0.002", 6, {"cursor": "string", "view": "string", "fields": "string[]"}, "trend", "Reddit trending searches", False),
79
+ "reddit.users.get": EndpointInfo("reddit.users.get", "/v1/reddit/users/get", False, False, None, "call", "0.002", "0.002", None, {"username": "string", "view": "string", "fields": "string[]"}, "account", "Reddit user profile", False),
80
+ "reddit.users.posts.list": EndpointInfo("reddit.users.posts.list", "/v1/reddit/users/posts/list", True, False, None, "call", "0.002", "0.002", 25, {"username": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "Reddit user posts", False),
81
+ "reddit.users.subreddits.list": EndpointInfo("reddit.users.subreddits.list", "/v1/reddit/users/subreddits/list", True, False, None, "call", "0.002", "0.002", 30, {"username": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "account", "Reddit user active communities", False),
82
+ "reddit.posts.transcript.get": EndpointInfo("reddit.posts.transcript.get", "/v1/reddit/posts/transcript/get", False, False, None, "call", "0.004", "0.004", None, {"id": "string", "url": "string", "view": "string", "fields": "string[]"}, "transcript", "Reddit video transcript", False),
83
+ "kuaishou.videos.search": EndpointInfo("kuaishou.videos.search", "/v1/kuaishou/videos/search", True, False, None, "call", "0.02", "0.02", 10, {"query": "string", "sort": "string", "published_within": "string", "duration": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "Kuaishou video search", False),
84
+ "kuaishou.videos.get": EndpointInfo("kuaishou.videos.get", "/v1/kuaishou/videos/get", False, False, None, "call", "0.002", "0.002", None, {"id": "string", "url": "string", "view": "string", "fields": "string[]"}, "post", "Kuaishou video detail", False),
85
+ "kuaishou.videos.comments.list": EndpointInfo("kuaishou.videos.comments.list", "/v1/kuaishou/videos/comments/list", True, False, None, "call", "0.002", "0.002", 10, {"id": "string", "url": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "comment", "Kuaishou video comments", False),
86
+ "kuaishou.comments.replies.list": EndpointInfo("kuaishou.comments.replies.list", "/v1/kuaishou/comments/replies/list", True, False, None, "call", "0.002", "0.002", 20, {"id": "string", "post_id": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "comment", "Kuaishou comment replies", False),
87
+ "kuaishou.users.get": EndpointInfo("kuaishou.users.get", "/v1/kuaishou/users/get", False, False, None, "call", "0.02", "0.02", None, {"id": "string", "view": "string", "fields": "string[]"}, "account", "Kuaishou account profile", False),
88
+ "kuaishou.users.search": EndpointInfo("kuaishou.users.search", "/v1/kuaishou/users/search", True, False, None, "call", "0.02", "0.02", 20, {"query": "string", "filter": "string", "gender": "string", "sort": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "account", "Kuaishou account search", False),
89
+ "kuaishou.users.videos.list": EndpointInfo("kuaishou.users.videos.list", "/v1/kuaishou/users/videos/list", True, False, None, "call", "0.02", "0.02", 20, {"id": "string", "sort": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "Kuaishou account videos", False),
90
+ "kuaishou.trends.list": EndpointInfo("kuaishou.trends.list", "/v1/kuaishou/trends/list", True, False, None, "call", "0.002", "0.002", 51, {"cursor": "string", "view": "string", "fields": "string[]"}, "trend", "Kuaishou hot list", False),
91
+ "zhihu.posts.search": EndpointInfo("zhihu.posts.search", "/v1/zhihu/posts/search", True, False, None, "call", "0.002", "0.002", 20, {"query": "string", "sort": "string", "type": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "Zhihu search", False),
92
+ "zhihu.questions.answers.list": EndpointInfo("zhihu.questions.answers.list", "/v1/zhihu/questions/answers/list", True, False, None, "call", "0.002", "0.002", 20, {"id": "string", "url": "string", "view": "string", "fields": "string[]"}, "post", "Zhihu question answers", False),
93
+ "zhihu.questions.get": EndpointInfo("zhihu.questions.get", "/v1/zhihu/questions/get", False, False, None, "call", "0.002", "0.002", None, {"id": "string", "url": "string", "view": "string", "fields": "string[]"}, "post", "Zhihu question detail", True),
94
+ "zhihu.answers.get": EndpointInfo("zhihu.answers.get", "/v1/zhihu/answers/get", False, False, None, "call", "0.002", "0.002", None, {"id": "string", "url": "string", "view": "string", "fields": "string[]"}, "post", "Zhihu answer detail", True),
95
+ "zhihu.answers.comments.list": EndpointInfo("zhihu.answers.comments.list", "/v1/zhihu/answers/comments/list", True, False, None, "call", "0.002", "0.002", 10, {"id": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "comment", "Zhihu answer comments", True),
96
+ "zhihu.comments.replies.list": EndpointInfo("zhihu.comments.replies.list", "/v1/zhihu/comments/replies/list", True, False, None, "call", "0.002", "0.002", 20, {"id": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "comment", "Zhihu comment replies", True),
97
+ "zhihu.articles.get": EndpointInfo("zhihu.articles.get", "/v1/zhihu/articles/get", False, False, None, "call", "0.002", "0.002", None, {"id": "string", "url": "string", "view": "string", "fields": "string[]"}, "post", "Zhihu article detail", True),
98
+ "zhihu.columns.articles.list": EndpointInfo("zhihu.columns.articles.list", "/v1/zhihu/columns/articles/list", True, False, None, "call", "0.002", "0.002", 20, {"id": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "Zhihu column articles", True),
99
+ "zhihu.pins.get": EndpointInfo("zhihu.pins.get", "/v1/zhihu/pins/get", False, False, None, "call", "0.002", "0.002", None, {"id": "string", "url": "string", "view": "string", "fields": "string[]"}, "post", "Zhihu pin detail", True),
100
+ "zhihu.users.get": EndpointInfo("zhihu.users.get", "/v1/zhihu/users/get", False, False, None, "call", "0.002", "0.002", None, {"username": "string", "view": "string", "fields": "string[]"}, "account", "Zhihu user profile", True),
101
+ "zhihu.users.search": EndpointInfo("zhihu.users.search", "/v1/zhihu/users/search", True, False, None, "call", "0.002", "0.002", 20, {"query": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "account", "Zhihu user search", True),
102
+ "zhihu.users.followers.list": EndpointInfo("zhihu.users.followers.list", "/v1/zhihu/users/followers/list", True, False, None, "call", "0.002", "0.002", 20, {"username": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "account", "Zhihu user followers", True),
103
+ "zhihu.users.answers.list": EndpointInfo("zhihu.users.answers.list", "/v1/zhihu/users/answers/list", True, False, None, "call", "0.002", "0.002", 20, {"username": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "Zhihu user answers", True),
104
+ "zhihu.users.articles.list": EndpointInfo("zhihu.users.articles.list", "/v1/zhihu/users/articles/list", True, False, None, "call", "0.002", "0.002", 20, {"username": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "Zhihu user articles", True),
105
+ "zhihu.users.pins.list": EndpointInfo("zhihu.users.pins.list", "/v1/zhihu/users/pins/list", True, False, None, "call", "0.002", "0.002", 20, {"username": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "Zhihu user pins", True),
106
+ "wechat_channels.videos.search": EndpointInfo("wechat_channels.videos.search", "/v1/wechat_channels/videos/search", True, False, None, "call", "0.02", "0.02", 10, {"query": "string", "sort": "string", "published_within": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "WeChat Channels video search", False),
107
+ "wechat_channels.users.search": EndpointInfo("wechat_channels.users.search", "/v1/wechat_channels/users/search", True, False, None, "call", "0.02", "0.02", 1, {"query": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "account", "WeChat Channels account search", False),
108
+ "wechat_channels.users.get": EndpointInfo("wechat_channels.users.get", "/v1/wechat_channels/users/get", False, False, None, "call", "0.02", "0.02", None, {"id": "string", "view": "string", "fields": "string[]"}, "account", "WeChat Channels account profile", False),
109
+ "wechat_channels.users.videos.list": EndpointInfo("wechat_channels.users.videos.list", "/v1/wechat_channels/users/videos/list", True, False, None, "call", "0.02", "0.02", 15, {"id": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "WeChat Channels account videos", False),
110
+ "wechat_channels.videos.get": EndpointInfo("wechat_channels.videos.get", "/v1/wechat_channels/videos/get", False, False, None, "call", "0.02", "0.02", None, {"id": "string", "url": "string", "view": "string", "fields": "string[]"}, "post", "WeChat Channels video detail", False),
111
+ "wechat_channels.videos.comments.list": EndpointInfo("wechat_channels.videos.comments.list", "/v1/wechat_channels/videos/comments/list", True, False, None, "call", "0.015", "0.015", 25, {"id": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "comment", "WeChat Channels video comments", False),
112
+ "wechat_channels.comments.replies.list": EndpointInfo("wechat_channels.comments.replies.list", "/v1/wechat_channels/comments/replies/list", True, False, None, "call", "0.015", "0.015", 20, {"id": "string", "post_id": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "comment", "WeChat Channels comment replies", False),
113
+ "wechat_channels.users.live_replays.list": EndpointInfo("wechat_channels.users.live_replays.list", "/v1/wechat_channels/users/live_replays/list", True, False, None, "call", "0.02", "0.02", 48, {"id": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "WeChat Channels live replays", False),
114
+ "douyin.comments.replies.list": EndpointInfo("douyin.comments.replies.list", "/v1/douyin/comments/replies/list", True, False, None, "call", "0.002", "0.002", 20, {"id": "string", "post_id": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "comment", "Douyin comment replies", False),
115
+ "douyin.hashtags.videos.list": EndpointInfo("douyin.hashtags.videos.list", "/v1/douyin/hashtags/videos/list", True, False, None, "call", "0.002", "0.002", 10, {"id": "string", "sort": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "Douyin hashtag videos", False),
116
+ "douyin.users.search": EndpointInfo("douyin.users.search", "/v1/douyin/users/search", True, False, None, "call", "0.002", "0.002", 30, {"query": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "account", "Douyin account search", False),
117
+ "douyin.videos.metrics": EndpointInfo("douyin.videos.metrics", "/v1/douyin/videos/metrics", False, False, None, "call", "0.002", "0.002", None, {"id": "string", "url": "string", "view": "string", "fields": "string[]"}, "post", "Douyin video play count", False),
118
+ "douyin.videos.related": EndpointInfo("douyin.videos.related", "/v1/douyin/videos/related", True, False, None, "call", "0.002", "0.002", 10, {"id": "string", "view": "string", "fields": "string[]"}, "post", "Douyin related videos", False),
119
+ "douyin.videos.trending": EndpointInfo("douyin.videos.trending", "/v1/douyin/videos/trending", True, False, None, "call", "0.002", "0.002", 9, {"board": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "Douyin video boards", False),
120
+ "douyin.keywords.related": EndpointInfo("douyin.keywords.related", "/v1/douyin/keywords/related", True, False, None, "call", "0.02", "0.02", 10, {"keyword": "string", "view": "string", "fields": "string[]"}, "keyword_related", "Douyin search suggestions", False),
121
+ "douyin.index.brands.history": EndpointInfo("douyin.index.brands.history", "/v1/douyin/index/brands/history", False, False, None, "call", "0.002", "0.002", None, {"brand": "string", "since": "string", "until": "string", "view": "string", "fields": "string[]"}, "brand_history", "Douyin index: brand trends", False),
122
+ "douyin.index.brands.metrics": EndpointInfo("douyin.index.brands.metrics", "/v1/douyin/index/brands/metrics", False, False, None, "call", "0.002", "0.002", None, {"brand": "string", "since": "string", "until": "string", "view": "string", "fields": "string[]"}, "brand_metrics", "Douyin index: brand vs industry", False),
123
+ "douyin.index.creators.videos.list": EndpointInfo("douyin.index.creators.videos.list", "/v1/douyin/index/creators/videos/list", True, False, None, "call", "0.002", "0.002", 20, {"id": "string", "since": "string", "until": "string", "view": "string", "fields": "string[]"}, "post", "Douyin index: account top videos", False),
124
+ "douyin.index.creators.audience.get": EndpointInfo("douyin.index.creators.audience.get", "/v1/douyin/index/creators/audience/get", False, False, None, "call", "0.002", "0.002", None, {"id": "string", "view": "string", "fields": "string[]"}, "audience", "Douyin index: account followers", False),
125
+ "douyin.index.creators.metrics": EndpointInfo("douyin.index.creators.metrics", "/v1/douyin/index/creators/metrics", False, False, None, "call", "0.002", "0.002", None, {"id": "string", "view": "string", "fields": "string[]"}, "index_creator_metrics", "Douyin index: account daily averages", False),
126
+ "douyin.index.keywords.audience.get": EndpointInfo("douyin.index.keywords.audience.get", "/v1/douyin/index/keywords/audience/get", False, False, None, "call", "0.002", "0.002", None, {"keyword": "string", "since": "string", "until": "string", "view": "string", "fields": "string[]"}, "keyword_audience", "Douyin index: keyword audience", False),
127
+ "douyin.index.keywords.history": EndpointInfo("douyin.index.keywords.history", "/v1/douyin/index/keywords/history", True, True, None, "call", "0.006", "0.006", 1, {"keyword": "string", "keywords": "string[]", "since": "string", "until": "string", "view": "string", "fields": "string[]"}, "keyword_history", "Douyin index: keyword trends", False),
128
+ "douyin.index.keywords.related": EndpointInfo("douyin.index.keywords.related", "/v1/douyin/index/keywords/related", True, False, None, "call", "0.002", "0.002", 170, {"keyword": "string", "until": "string", "view": "string", "fields": "string[]"}, "keyword_related", "Douyin index: related keywords", False),
129
+ "douyin.index.trends.list": EndpointInfo("douyin.index.trends.list", "/v1/douyin/index/trends/list", True, False, None, "call", "0.002", "0.002", 30, {"board": "string", "view": "string", "fields": "string[]"}, "trend", "Douyin index: live hot topics", False),
130
+ "douyin.index.videos.search": EndpointInfo("douyin.index.videos.search", "/v1/douyin/index/videos/search", True, False, None, "call", "0.002", "0.002", 20, {"query": "string", "view": "string", "fields": "string[]"}, "post", "Douyin index: top videos for a keyword", False),
131
+ "douyin.users.history": EndpointInfo("douyin.users.history", "/v1/douyin/users/history", False, True, 5, "call", "0.002", "0.002", None, {"id": "string", "ids": "string[]", "window": "string", "view": "string", "fields": "string[]"}, "account_history", "Douyin account growth", False),
132
+ "douyin.xingtu.creators.get": EndpointInfo("douyin.xingtu.creators.get", "/v1/douyin/xingtu/creators/get", False, True, 50, "call", "0.004", "0.004", None, {"id": "string", "ids": "string[]", "view": "string", "fields": "string[]"}, "creator", "Douyin Xingtu creator profile", False),
133
+ "douyin.xingtu.creators.audience.get": EndpointInfo("douyin.xingtu.creators.audience.get", "/v1/douyin/xingtu/creators/audience/get", False, False, None, "call", "0.004", "0.004", None, {"id": "string", "view": "string", "fields": "string[]"}, "audience", "Douyin Xingtu creator audience", False),
134
+ "douyin.xingtu.creators.metrics": EndpointInfo("douyin.xingtu.creators.metrics", "/v1/douyin/xingtu/creators/metrics", False, False, None, "call", "0.004", "0.004", None, {"id": "string", "window": "string", "view": "string", "fields": "string[]"}, "xingtu_creator_metrics", "Douyin Xingtu creator reach", False),
135
+ "douyin.xingtu.creators.videos.list": EndpointInfo("douyin.xingtu.creators.videos.list", "/v1/douyin/xingtu/creators/videos/list", True, False, None, "call", "0.004", "0.004", 20, {"id": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "xingtu_creator_post", "Douyin Xingtu creator videos", False),
136
+ "douyin.xingtu.creators.keywords.get": EndpointInfo("douyin.xingtu.creators.keywords.get", "/v1/douyin/xingtu/creators/keywords/get", False, False, None, "call", "0.002", "0.002", None, {"id": "string", "view": "string", "fields": "string[]"}, "xingtu_creator_keywords", "Douyin Xingtu creator keywords", False),
137
+ "douyin.xingtu.creators.scores.get": EndpointInfo("douyin.xingtu.creators.scores.get", "/v1/douyin/xingtu/creators/scores/get", False, False, None, "call", "0.008", "0.008", None, {"id": "string", "view": "string", "fields": "string[]"}, "xingtu_creator_scores", "Douyin Xingtu creator scores", False),
138
+ "douyin.xingtu.creators.content_mix.get": EndpointInfo("douyin.xingtu.creators.content_mix.get", "/v1/douyin/xingtu/creators/content_mix/get", False, False, None, "call", "0.004", "0.004", None, {"id": "string", "view": "string", "fields": "string[]"}, "xingtu_creator_content_mix", "Douyin Xingtu creator content mix", False),
139
+ "douyin.xingtu.creators.conversion.get": EndpointInfo("douyin.xingtu.creators.conversion.get", "/v1/douyin/xingtu/creators/conversion/get", False, False, None, "call", "0.004", "0.004", None, {"id": "string", "view": "string", "fields": "string[]"}, "xingtu_creator_conversion", "Douyin Xingtu creator conversion", False),
140
+ "douyin.xingtu.campaigns.list": EndpointInfo("douyin.xingtu.campaigns.list", "/v1/douyin/xingtu/campaigns/list", True, False, None, "call", "0.004", "0.004", 40, {"since": "string", "until": "string", "view": "string", "fields": "string[]"}, "xingtu_campaign", "Douyin Xingtu marketing calendar", False),
141
+ "douyin.xingtu.videos.get": EndpointInfo("douyin.xingtu.videos.get", "/v1/douyin/xingtu/videos/get", False, False, None, "call", "0.004", "0.004", None, {"id": "string", "url": "string", "view": "string", "fields": "string[]"}, "post", "Douyin Xingtu video report", False),
142
+ "xiaohongshu.images.search": EndpointInfo("xiaohongshu.images.search", "/v1/xiaohongshu/images/search", True, False, None, "call", "0.02", "0.02", 20, {"query": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "Xiaohongshu image search", False),
143
+ "xiaohongshu.comments.replies.list": EndpointInfo("xiaohongshu.comments.replies.list", "/v1/xiaohongshu/comments/replies/list", True, False, None, "call", "0.02", "0.02", 5, {"id": "string", "post_id": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "comment", "Xiaohongshu comment replies", False),
144
+ "xiaohongshu.topics.notes.list": EndpointInfo("xiaohongshu.topics.notes.list", "/v1/xiaohongshu/topics/notes/list", True, False, None, "call", "0.02", "0.02", 10, {"id": "string", "view": "string", "fields": "string[]"}, "post", "Xiaohongshu topic notes", False),
145
+ "xiaohongshu.topics.get": EndpointInfo("xiaohongshu.topics.get", "/v1/xiaohongshu/topics/get", False, False, None, "call", "0.02", "0.02", None, {"id": "string", "view": "string", "fields": "string[]"}, "topic", "Xiaohongshu topic detail", False),
146
+ "xiaohongshu.users.search": EndpointInfo("xiaohongshu.users.search", "/v1/xiaohongshu/users/search", True, False, None, "call", "0.02", "0.02", 20, {"query": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "account", "Xiaohongshu account search", False),
147
+ "xiaohongshu.shop.products.get": EndpointInfo("xiaohongshu.shop.products.get", "/v1/xiaohongshu/shop/products/get", False, False, None, "call", "0.02", "0.02", None, {"id": "string", "view": "string", "fields": "string[]"}, "product", "Xiaohongshu shop product detail", False),
148
+ "xiaohongshu.keywords.related": EndpointInfo("xiaohongshu.keywords.related", "/v1/xiaohongshu/keywords/related", True, False, None, "call", "0.02", "0.02", 10, {"keyword": "string", "view": "string", "fields": "string[]"}, "keyword_related", "Xiaohongshu search suggestions", False),
149
+ "xiaohongshu.videos.get": EndpointInfo("xiaohongshu.videos.get", "/v1/xiaohongshu/videos/get", False, False, None, "call", "0.02", "0.02", None, {"id": "string", "url": "string", "view": "string", "fields": "string[]"}, "post", "Xiaohongshu video note with its video", False),
150
+ "xiaohongshu.pgy.keywords.history": EndpointInfo("xiaohongshu.pgy.keywords.history", "/v1/xiaohongshu/pgy/keywords/history", False, False, None, "call", "0.04", "0.04", None, {"keyword": "string", "view": "string", "fields": "string[]"}, "keyword_history", "Xiaohongshu PGY keyword search index", False),
151
+ "xiaohongshu.pgy.keywords.related": EndpointInfo("xiaohongshu.pgy.keywords.related", "/v1/xiaohongshu/pgy/keywords/related", True, False, None, "call", "0.04", "0.04", 98, {"keyword": "string", "view": "string", "fields": "string[]"}, "keyword_related", "Xiaohongshu PGY related keywords", False),
152
+ "xiaohongshu.pgy.creators.audience.get": EndpointInfo("xiaohongshu.pgy.creators.audience.get", "/v1/xiaohongshu/pgy/creators/audience/get", False, False, None, "call", "0.04", "0.04", None, {"id": "string", "view": "string", "fields": "string[]"}, "audience", "Xiaohongshu PGY creator audience", False),
153
+ "xiaohongshu.pgy.creators.metrics": EndpointInfo("xiaohongshu.pgy.creators.metrics", "/v1/xiaohongshu/pgy/creators/metrics", False, False, None, "call", "0.04", "0.04", None, {"id": "string", "window": "string", "tab": "string", "view": "string", "fields": "string[]"}, "pgy_creator_metrics", "Xiaohongshu PGY creator note metrics", False),
154
+ "xiaohongshu.pgy.creators.notes.list": EndpointInfo("xiaohongshu.pgy.creators.notes.list", "/v1/xiaohongshu/pgy/creators/notes/list", True, False, None, "call", "0.04", "0.04", 8, {"id": "string", "tab": "string", "type": "string", "sort": "string", "traffic": "string", "feature_tag": "string", "category": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "pgy_creator_post", "Xiaohongshu PGY creator notes", False),
155
+ "xiaohongshu.pgy.creators.followers.history": EndpointInfo("xiaohongshu.pgy.creators.followers.history", "/v1/xiaohongshu/pgy/creators/followers/history", False, False, None, "call", "0.04", "0.04", None, {"id": "string", "window": "string", "view": "string", "fields": "string[]"}, "follower_history", "Xiaohongshu PGY creator follower history", False),
156
+ "xiaohongshu.pgy.creators.related": EndpointInfo("xiaohongshu.pgy.creators.related", "/v1/xiaohongshu/pgy/creators/related", True, False, None, "call", "0.04", "0.04", 4, {"id": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "creator", "Xiaohongshu PGY similar creators", False),
157
+ "xiaohongshu.pgy.notes.trending": EndpointInfo("xiaohongshu.pgy.notes.trending", "/v1/xiaohongshu/pgy/notes/trending", True, False, None, "call", "0.04", "0.04", 34, {"board": "string", "query": "string", "window": "string", "type": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "Xiaohongshu PGY trending notes", False),
158
+ "xiaohongshu.pgy.creators.costs.metrics": EndpointInfo("xiaohongshu.pgy.creators.costs.metrics", "/v1/xiaohongshu/pgy/creators/costs/metrics", False, False, None, "call", "0.04", "0.04", None, {"id": "string", "tab": "string", "view": "string", "fields": "string[]"}, "pgy_creator_costs", "Xiaohongshu PGY creator costs and summary", False),
159
+ "xiaohongshu.pgy.creators.followers.metrics": EndpointInfo("xiaohongshu.pgy.creators.followers.metrics", "/v1/xiaohongshu/pgy/creators/followers/metrics", False, False, None, "call", "0.04", "0.04", None, {"id": "string", "view": "string", "fields": "string[]"}, "pgy_creator_followers", "Xiaohongshu PGY creator follower quality", False),
160
+ "xiaohongshu.pgy.creators.costs.history": EndpointInfo("xiaohongshu.pgy.creators.costs.history", "/v1/xiaohongshu/pgy/creators/costs/history", False, False, None, "call", "0.04", "0.04", None, {"id": "string", "window": "string", "tab": "string", "view": "string", "fields": "string[]"}, "pgy_creator_cost_history", "Xiaohongshu PGY creator core figures history", False),
161
+ "xiaohongshu.pgy.notes.get": EndpointInfo("xiaohongshu.pgy.notes.get", "/v1/xiaohongshu/pgy/notes/get", False, False, None, "call", "0.04", "0.04", None, {"id": "string", "view": "string", "fields": "string[]"}, "pgy_note", "Xiaohongshu PGY note figures", False),
162
+ "weibo.posts.get": EndpointInfo("weibo.posts.get", "/v1/weibo/posts/get", False, False, None, "call", "0.002", "0.002", None, {"id": "string", "url": "string", "view": "string", "fields": "string[]"}, "post", "Weibo post detail", False),
163
+ "weibo.posts.comments.list": EndpointInfo("weibo.posts.comments.list", "/v1/weibo/posts/comments/list", True, False, None, "call", "0.002", "0.002", 20, {"id": "string", "url": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "comment", "Weibo post comments", False),
164
+ "weibo.comments.replies.list": EndpointInfo("weibo.comments.replies.list", "/v1/weibo/comments/replies/list", True, False, None, "call", "0.002", "0.002", 20, {"id": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "comment", "Weibo comment replies", False),
165
+ "weibo.posts.likers.list": EndpointInfo("weibo.posts.likers.list", "/v1/weibo/posts/likers/list", True, False, None, "call", "0.002", "0.002", 50, {"id": "string", "url": "string", "view": "string", "fields": "string[]"}, "account", "Weibo post likers", False),
166
+ "weibo.users.posts.list": EndpointInfo("weibo.users.posts.list", "/v1/weibo/users/posts/list", True, False, None, "call", "0.002", "0.002", 20, {"id": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "Weibo account posts", False),
167
+ "weibo.users.followers.list": EndpointInfo("weibo.users.followers.list", "/v1/weibo/users/followers/list", True, False, None, "call", "0.002", "0.002", 20, {"id": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "account", "Weibo account followers", False),
168
+ "weibo.users.search": EndpointInfo("weibo.users.search", "/v1/weibo/users/search", True, False, None, "call", "0.002", "0.002", 20, {"query": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "account", "Weibo account search", False),
169
+ "bilibili.users.get": EndpointInfo("bilibili.users.get", "/v1/bilibili/users/get", False, False, None, "call", "0.002", "0.002", None, {"id": "string", "view": "string", "fields": "string[]"}, "account", "Bilibili account profile", False),
170
+ "bilibili.users.videos.list": EndpointInfo("bilibili.users.videos.list", "/v1/bilibili/users/videos/list", True, False, None, "call", "0.002", "0.002", 30, {"id": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "Bilibili account videos", False),
171
+ "bilibili.comments.replies.list": EndpointInfo("bilibili.comments.replies.list", "/v1/bilibili/comments/replies/list", True, False, None, "call", "0.002", "0.002", 20, {"id": "string", "post_id": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "comment", "Bilibili comment replies", False),
172
+ "bilibili.videos.trending": EndpointInfo("bilibili.videos.trending", "/v1/bilibili/videos/trending", True, False, None, "call", "0.002", "0.002", 20, {"cursor": "string", "view": "string", "fields": "string[]"}, "post", "Bilibili popular videos", False),
173
+ "wechat_channels.videos.share_link.get": EndpointInfo("wechat_channels.videos.share_link.get", "/v1/wechat_channels/videos/share_link/get", False, False, None, "call", "0.02", "0.02", None, {"id": "string", "view": "string", "fields": "string[]"}, "channels_share_link", "WeChat Channels video share link", False),
174
+ "wechat_channels.users.collections.list": EndpointInfo("wechat_channels.users.collections.list", "/v1/wechat_channels/users/collections/list", True, False, None, "call", "0.02", "0.02", 7, {"id": "string", "view": "string", "fields": "string[]"}, "channels_collection", "WeChat Channels account collections", False),
175
+ "wechat_channels.collections.videos.list": EndpointInfo("wechat_channels.collections.videos.list", "/v1/wechat_channels/collections/videos/list", True, False, None, "call", "0.02", "0.02", 20, {"id": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "WeChat Channels collection videos", False),
176
+ "wechat.posts.search": EndpointInfo("wechat.posts.search", "/v1/wechat/posts/search", True, False, None, "call", "0.02", "0.02", 20, {"query": "string", "sort": "string", "published_within": "string", "type": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "WeChat Search articles and videos", False),
177
+ "wechat.accounts.search": EndpointInfo("wechat.accounts.search", "/v1/wechat/accounts/search", True, False, None, "call", "0.02", "0.02", 8, {"query": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "account", "WeChat Official Account live search", False),
178
+ "wechat_mp.accounts.get": EndpointInfo("wechat_mp.accounts.get", "/v1/wechat_mp/accounts/get", False, False, None, "call", "0.02", "0.02", None, {"id": "string", "view": "string", "fields": "string[]"}, "account", "Official Account profile", False),
179
+ "wechat_mp.articles.comments.list": EndpointInfo("wechat_mp.articles.comments.list", "/v1/wechat_mp/articles/comments/list", True, False, None, "call", "0.02", "0.02", 20, {"url": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "comment", "Official Account article comments", False),
180
+ "wechat_mp.articles.metrics": EndpointInfo("wechat_mp.articles.metrics", "/v1/wechat_mp/articles/metrics", False, False, None, "call", "0.02", "0.02", None, {"url": "string", "view": "string", "fields": "string[]"}, "post", "Official Account article stats", False),
181
+ "wechat_mp.comments.replies.list": EndpointInfo("wechat_mp.comments.replies.list", "/v1/wechat_mp/comments/replies/list", True, False, None, "call", "0.02", "0.02", 3, {"id": "string", "post_id": "string", "view": "string", "fields": "string[]"}, "comment", "Official Account comment replies", False),
182
+ "wechat_mp.accounts.owner.get": EndpointInfo("wechat_mp.accounts.owner.get", "/v1/wechat_mp/accounts/owner/get", False, False, None, "call", "0.15", "0.15", None, {"id": "string", "view": "string", "fields": "string[]"}, "account_owner", "Official Account owner", False),
183
+ "wechat_channels.videos.metrics": EndpointInfo("wechat_channels.videos.metrics", "/v1/wechat_channels/videos/metrics", False, False, None, "call", "0.015", "0.015", None, {"id": "string", "view": "string", "fields": "string[]"}, "post", "WeChat Channels video stats", False),
184
+ "wechat.index.keywords.history": EndpointInfo("wechat.index.keywords.history", "/v1/wechat/index/keywords/history", True, False, None, "call", "0.15", "0.15", 1, {"keyword": "string", "view": "string", "fields": "string[]"}, "keyword_history", "WeChat Index", False),
185
+ "wechat.keywords.related": EndpointInfo("wechat.keywords.related", "/v1/wechat/keywords/related", True, False, None, "call", "0.15", "0.15", 9, {"keyword": "string", "view": "string", "fields": "string[]"}, "keyword_related", "WeChat Search suggestions", False),
186
+ "wechat.miniprograms.search": EndpointInfo("wechat.miniprograms.search", "/v1/wechat/miniprograms/search", True, False, None, "call", "0.15", "0.15", 25, {"query": "string", "view": "string", "fields": "string[]"}, "miniprogram", "WeChat mini program search", False),
187
+ "wechat_channels.backup.users.get": EndpointInfo("wechat_channels.backup.users.get", "/v1/wechat_channels/backup/users/get", False, False, None, "call", "0.03", "0.03", None, {"id": "string", "view": "string", "fields": "string[]"}, "account", "WeChat Channels account profile (backup)", False),
188
+ "wechat_channels.backup.users.videos.list": EndpointInfo("wechat_channels.backup.users.videos.list", "/v1/wechat_channels/backup/users/videos/list", True, False, None, "call", "0.06", "0.06", 15, {"id": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "WeChat Channels account videos (backup)", False),
189
+ "wechat_channels.backup.videos.search": EndpointInfo("wechat_channels.backup.videos.search", "/v1/wechat_channels/backup/videos/search", True, False, None, "call", "0.15", "0.15", 10, {"query": "string", "sort": "string", "published_within": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "WeChat Channels video search (backup)", False),
190
+ "wechat.backup.posts.search": EndpointInfo("wechat.backup.posts.search", "/v1/wechat/backup/posts/search", True, False, None, "call", "0.15", "0.15", 20, {"query": "string", "sort": "string", "published_within": "string", "type": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "WeChat Search articles and videos (backup)", False),
191
+ "telegram.channels.get": EndpointInfo("telegram.channels.get", "/v1/telegram/channels/get", False, False, None, "call", "0.002", "0.002", None, {"username": "string", "view": "string", "fields": "string[]"}, "account", "Telegram channel profile", False),
192
+ "telegram.channels.messages.list": EndpointInfo("telegram.channels.messages.list", "/v1/telegram/channels/messages/list", True, False, None, "call", "0.002", "0.002", 20, {"username": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "Telegram channel messages", False),
193
+ "telegram.messages.get": EndpointInfo("telegram.messages.get", "/v1/telegram/messages/get", False, False, None, "call", "0.002", "0.002", None, {"id": "string", "url": "string", "view": "string", "fields": "string[]"}, "post", "Telegram message detail", False),
194
+ "youtube.comments.replies.list": EndpointInfo("youtube.comments.replies.list", "/v1/youtube/comments/replies/list", True, False, None, "call", "0.002", "0.002", 10, {"id": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "comment", "YouTube comment replies", False),
195
+ "youtube.channels.posts.list": EndpointInfo("youtube.channels.posts.list", "/v1/youtube/channels/posts/list", True, False, None, "call", "0.002", "0.002", 10, {"id": "string", "username": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "YouTube channel posts", False),
196
+ "youtube.posts.get": EndpointInfo("youtube.posts.get", "/v1/youtube/posts/get", False, False, None, "call", "0.002", "0.002", None, {"id": "string", "url": "string", "view": "string", "fields": "string[]"}, "post", "YouTube post detail", False),
197
+ "youtube.channels.get": EndpointInfo("youtube.channels.get", "/v1/youtube/channels/get", False, False, None, "call", "0.002", "0.002", None, {"id": "string", "username": "string", "view": "string", "fields": "string[]"}, "account", "YouTube channel profile", False),
198
+ "youtube.channels.search": EndpointInfo("youtube.channels.search", "/v1/youtube/channels/search", True, False, None, "call", "0.004", "0.004", 20, {"query": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "account", "YouTube channel search", False),
199
+ "youtube.channels.videos.list": EndpointInfo("youtube.channels.videos.list", "/v1/youtube/channels/videos/list", True, False, None, "call", "0.002", "0.002", 30, {"id": "string", "username": "string", "type": "string", "sort": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "YouTube channel videos", False),
200
+ "tiktok.videos.transcript.get": EndpointInfo("tiktok.videos.transcript.get", "/v1/tiktok/videos/transcript/get", False, False, None, "call", "0.002", "0.002", None, {"id": "string", "url": "string", "lang": "string", "view": "string", "fields": "string[]"}, "transcript", "TikTok video transcript", False),
201
+ "tiktok.comments.replies.list": EndpointInfo("tiktok.comments.replies.list", "/v1/tiktok/comments/replies/list", True, False, None, "call", "0.002", "0.002", 20, {"id": "string", "post_id": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "comment", "TikTok comment replies", False),
202
+ "tiktok.users.search": EndpointInfo("tiktok.users.search", "/v1/tiktok/users/search", True, False, None, "call", "0.002", "0.002", 30, {"query": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "account", "TikTok account search", False),
203
+ "tiktok.users.videos.list": EndpointInfo("tiktok.users.videos.list", "/v1/tiktok/users/videos/list", True, False, None, "call", "0.002", "0.002", 10, {"username": "string", "sort": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "TikTok account videos", False),
204
+ "tiktok.creative_center.ads.get": EndpointInfo("tiktok.creative_center.ads.get", "/v1/tiktok/creative_center/ads/get", False, False, None, "call", "0.002", "0.002", None, {"id": "string", "view": "string", "fields": "string[]"}, "ad", "TikTok Creative Center top ad", False),
205
+ "tiktok.shop.sellers.products.list": EndpointInfo("tiktok.shop.sellers.products.list", "/v1/tiktok/shop/sellers/products/list", True, False, None, "call", "0.002", "0.002", 20, {"id": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "product", "TikTok Shop seller products", False),
206
+ "tiktok.users.followers.list": EndpointInfo("tiktok.users.followers.list", "/v1/tiktok/users/followers/list", True, False, None, "call", "0.002", "0.002", 20, {"username": "string", "id": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "account", "TikTok account followers", False),
207
+ "tiktok.hashtags.videos.list": EndpointInfo("tiktok.hashtags.videos.list", "/v1/tiktok/hashtags/videos/list", True, False, None, "call", "0.002", "0.002", 20, {"id": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "TikTok hashtag videos", False),
208
+ "x.posts.replies.list": EndpointInfo("x.posts.replies.list", "/v1/x/posts/replies/list", True, False, None, "call", "0.002", "0.002", 35, {"id": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "X post replies", False),
209
+ "x.posts.quotes.list": EndpointInfo("x.posts.quotes.list", "/v1/x/posts/quotes/list", True, False, None, "item", "0.0003", "0.006", 20, {"id": "string", "sort": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "X post quotes", False),
210
+ "x.posts.retweeters.list": EndpointInfo("x.posts.retweeters.list", "/v1/x/posts/retweeters/list", True, False, None, "call", "0.002", "0.002", 100, {"id": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "account", "X post retweeters", False),
211
+ "x.posts.article.get": EndpointInfo("x.posts.article.get", "/v1/x/posts/article/get", False, False, None, "call", "0.002", "0.002", None, {"id": "string", "view": "string", "fields": "string[]"}, "post", "X article", False),
212
+ "x.threads.posts.list": EndpointInfo("x.threads.posts.list", "/v1/x/threads/posts/list", True, False, None, "item", "0.0003", "0.015", 20, {"id": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "X thread", False),
213
+ "x.users.search": EndpointInfo("x.users.search", "/v1/x/users/search", True, False, None, "item", "0.0004", "0.008", 20, {"query": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "account", "X account search", False),
214
+ "x.users.followers.list": EndpointInfo("x.users.followers.list", "/v1/x/users/followers/list", True, False, None, "item", "0.0001", "0.02", 200, {"username": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "account", "X account followers", False),
215
+ "x.users.following.list": EndpointInfo("x.users.following.list", "/v1/x/users/following/list", True, False, None, "item", "0.0001", "0.02", 200, {"username": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "account", "X account following", False),
216
+ "x.users.mentions.list": EndpointInfo("x.users.mentions.list", "/v1/x/users/mentions/list", True, False, None, "item", "0.0003", "0.006", 20, {"username": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "X account mentions", False),
217
+ "x.lists.posts.list": EndpointInfo("x.lists.posts.list", "/v1/x/lists/posts/list", True, False, None, "call", "0.002", "0.002", 100, {"id": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "X list posts", False),
218
+ "x.lists.members.list": EndpointInfo("x.lists.members.list", "/v1/x/lists/members/list", True, False, None, "item", "0.0004", "0.008", 20, {"id": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "account", "X list members", False),
219
+ "x.lists.followers.list": EndpointInfo("x.lists.followers.list", "/v1/x/lists/followers/list", True, False, None, "item", "0.0004", "0.008", 20, {"id": "string", "view": "string", "fields": "string[]"}, "account", "X list followers", False),
220
+ "x.communities.get": EndpointInfo("x.communities.get", "/v1/x/communities/get", False, False, None, "call", "0.0004", "0.0004", None, {"id": "string", "view": "string", "fields": "string[]"}, "community", "X community profile", False),
221
+ "x.communities.posts.list": EndpointInfo("x.communities.posts.list", "/v1/x/communities/posts/list", True, False, None, "item", "0.0003", "0.006", 20, {"id": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "X community posts", False),
222
+ "x.communities.members.list": EndpointInfo("x.communities.members.list", "/v1/x/communities/members/list", True, False, None, "item", "0.0004", "0.008", 20, {"id": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "account", "X community members", False),
223
+ "douyin.backup.users.videos.list": EndpointInfo("douyin.backup.users.videos.list", "/v1/douyin/backup/users/videos/list", True, False, None, "call", "0.0025", "0.0025", 20, {"id": "string", "url": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "Douyin account videos (backup)", False),
224
+ "douyin.backup.videos.search": EndpointInfo("douyin.backup.videos.search", "/v1/douyin/backup/videos/search", True, False, None, "call", "0.03", "0.03", 8, {"query": "string", "sort": "string", "published_within": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "Douyin video search (backup)", False),
225
+ "weibo.backup.trends.list": EndpointInfo("weibo.backup.trends.list", "/v1/weibo/backup/trends/list", True, False, None, "call", "0.0025", "0.0025", 50, {"board": "string", "view": "string", "fields": "string[]"}, "trend", "Weibo hot search (backup)", False),
226
+ "bilibili.backup.users.videos.list": EndpointInfo("bilibili.backup.users.videos.list", "/v1/bilibili/backup/users/videos/list", True, False, None, "call", "0.0025", "0.0025", 20, {"id": "string", "cursor": "string", "view": "string", "fields": "string[]"}, "post", "Bilibili account videos (backup)", False),
227
+ }
@@ -0,0 +1,36 @@
1
+ """Generated by scripts/generate.ts from @okdata/catalog. Do not edit by hand."""
2
+ from __future__ import annotations
3
+
4
+ from typing import Dict, Optional, Tuple
5
+
6
+ ERROR_CODES: Tuple[str, ...] = ("invalid_params", "max_price_exceeded", "cursor_invalid", "cursor_mismatch", "unauthorized", "insufficient_balance", "key_budget_exceeded", "account_suspended", "key_scope_denied", "unknown_endpoint", "not_found", "result_not_found", "idempotency_conflict", "call_in_progress", "cursor_expired", "result_expired", "rate_limited", "cost_cap_exceeded", "uncharged_cost_limit", "settlement_unknown", "internal_error", "upstream_failed", "cursor_unavailable", "upstream_busy", "capability_paused", "timeout")
7
+
8
+ # code: (HTTP status, charged (None: not known yet), retry advice)
9
+ ERRORS: Dict[str, Tuple[int, Optional[bool], str]] = {
10
+ "invalid_params": (400, False, "after_fix"),
11
+ "max_price_exceeded": (400, False, "after_fix"),
12
+ "cursor_invalid": (400, False, "no"),
13
+ "cursor_mismatch": (400, False, "after_fix"),
14
+ "unauthorized": (401, False, "no"),
15
+ "insufficient_balance": (402, False, "after_fix"),
16
+ "key_budget_exceeded": (402, False, "after_fix"),
17
+ "account_suspended": (403, False, "no"),
18
+ "key_scope_denied": (403, False, "no"),
19
+ "unknown_endpoint": (404, False, "no"),
20
+ "not_found": (404, False, "no"),
21
+ "result_not_found": (404, False, "no"),
22
+ "idempotency_conflict": (409, False, "after_fix"),
23
+ "call_in_progress": (409, False, "same_key"),
24
+ "cursor_expired": (410, False, "no"),
25
+ "result_expired": (410, False, "no"),
26
+ "rate_limited": (429, False, "yes"),
27
+ "cost_cap_exceeded": (429, False, "yes"),
28
+ "uncharged_cost_limit": (429, False, "yes"),
29
+ "settlement_unknown": (500, None, "same_key"),
30
+ "internal_error": (500, False, "yes"),
31
+ "upstream_failed": (502, False, "yes"),
32
+ "cursor_unavailable": (502, False, "yes"),
33
+ "upstream_busy": (503, False, "yes"),
34
+ "capability_paused": (503, False, "yes"),
35
+ "timeout": (504, False, "yes"),
36
+ }