{"openapi":"3.1.0","info":{"title":"ChatterAPI API","version":"0.1.0","description":"ChatterAPI is a Reddit and X data API for developers and AI agents. One API key and one credit balance. REST at https://api.chatterapi.com/v1 and a hosted MCP server at https://api.chatterapi.com/mcp. Every response includes the credits it cost. Failed calls cost 0. Credit costs: Reddit read: any search, one post, subreddit profile or feed, user profile, account status, post or comment history: 2; Reddit thread with comments, or an X lead finder page: 3; Reddit lead finder page: 4; X read: profile, tweets, search, replies, one page of followers: 3; X verified followers, per 20: 4; Search everywhere (Reddit + X): 5; Lead finder everywhere: 6; Brand mentions everywhere: 7; X action from your connected account (follow, like, retweet, tweet): 5; X DM send: 10; Failed call or bad input: 0.","contact":{"name":"ChatterAPI","email":"piyushh@amplifyxlabs.com","url":"https://chatterapi.com"},"license":{"name":"Proprietary","url":"https://chatterapi.com/terms"},"x-independence":"ChatterAPI is independent and not affiliated with Reddit, Inc. or X Corp."},"servers":[{"url":"https://chatterapi.com","description":"Production. Paths start with /v1."}],"security":[{"bearer":[]}],"tags":[{"name":"reddit","description":"Reddit read tools."},{"name":"x","description":"X read tools."},{"name":"everywhere","description":"Tools that search Reddit and X together."},{"name":"account","description":"Account, usage, health and the generic run alias."}],"paths":{"/v1/reddit/search":{"get":{"operationId":"reddit_search","summary":"Reddit Post Search","description":"Search Reddit posts by keyword across all of Reddit or inside one subreddit. Returns posts with title, body, author, subreddit, score, comment count and URL, newest data within minutes. Costs 2 credits per page of up to 25 posts. Tip: Reddit operators work inside q, e.g. \"exact phrase\", OR, NOT, author:name. Costs 2 credits.","tags":["reddit"],"x-credits":2,"x-mcp-tool":"reddit_search","parameters":[{"name":"q","in":"query","required":true,"description":"Search text. Reddit operators allowed.","schema":{"type":"string"}},{"name":"subreddit","in":"query","required":false,"description":"Limit to one subreddit, e.g. SaaS.","schema":{"type":"string"}},{"name":"sort","in":"query","required":false,"description":"Result order. top and comments rank the relevant results by score or comment count; new is the freshest.","schema":{"default":"relevance","type":"string","enum":["relevance","new","hot","top","comments"]}},{"name":"time","in":"query","required":false,"description":"Time window.","schema":{"default":"all","type":"string","enum":["hour","day","week","month","year","all"]}},{"name":"nsfw","in":"query","required":false,"description":"Include adult posts. true needs the 18+ setting and is billed as reddit.nsfw_search.","schema":{"type":["boolean","string"]}},{"name":"limit","in":"query","required":false,"description":"Max rows to return (1-100). Reddit pages hold about 25 rows; larger values still return one page.","schema":{"default":25,"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","in":"query","required":false,"description":"Opaque cursor from the previous response's page.nextCursor.","schema":{"type":"string","minLength":1,"maxLength":2048}}],"responses":{"200":{"description":"Success","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-charged":{"$ref":"#/components/headers/x-credits-charged"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"},"x-ratelimit-limit":{"$ref":"#/components/headers/x-ratelimit-limit"},"x-ratelimit-remaining":{"$ref":"#/components/headers/x-ratelimit-remaining"},"x-ratelimit-reset":{"$ref":"#/components/headers/x-ratelimit-reset"}},"content":{"application/json":{"schema":{"type":"object","required":["data","credits","requestId","cached"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/RedditPost"}},"page":{"$ref":"#/components/schemas/PageInfo"},"credits":{"$ref":"#/components/schemas/Credits"},"requestId":{"type":"string","examples":["req_01JA7Q3V8K2N4P5R6S7T8V"]},"cached":{"type":"boolean"},"warnings":{"type":"array","items":{"$ref":"#/components/schemas/Warning"}}}}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"402":{"$ref":"#/components/responses/Error402"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"429":{"$ref":"#/components/responses/Error429"},"500":{"$ref":"#/components/responses/Error500"},"502":{"$ref":"#/components/responses/Error502"},"504":{"$ref":"#/components/responses/Error504"}}}},"/v1/reddit/nsfw/search":{"get":{"operationId":"reddit_nsfw_search","summary":"Reddit NSFW Post Search","description":"Search Reddit posts including adult (NSFW) content. Only works when the account owner has turned on 18+ access in the dashboard; otherwise it returns scope_denied. Returns the same post objects as reddit.search. Costs 2 credits per page. Tip: set nsfwOnly=true to drop safe-for-work posts from the results. Costs 2 credits.","tags":["reddit"],"x-credits":2,"x-mcp-tool":"reddit_nsfw_search","parameters":[{"name":"q","in":"query","required":true,"description":"Search text. Reddit operators allowed.","schema":{"type":"string"}},{"name":"subreddit","in":"query","required":false,"description":"Limit to one subreddit.","schema":{"type":"string"}},{"name":"sort","in":"query","required":false,"description":"Result order. top and comments rank the relevant results by score or comment count; new is the freshest.","schema":{"default":"relevance","type":"string","enum":["relevance","new","hot","top","comments"]}},{"name":"time","in":"query","required":false,"description":"Time window.","schema":{"default":"all","type":"string","enum":["hour","day","week","month","year","all"]}},{"name":"nsfwOnly","in":"query","required":false,"description":"Return only posts marked NSFW.","schema":{"type":["boolean","string"]}},{"name":"limit","in":"query","required":false,"description":"Max rows to return (1-100). Reddit pages hold about 25 rows; larger values still return one page.","schema":{"default":25,"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","in":"query","required":false,"description":"Opaque cursor from the previous response's page.nextCursor.","schema":{"type":"string","minLength":1,"maxLength":2048}}],"responses":{"200":{"description":"Success","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-charged":{"$ref":"#/components/headers/x-credits-charged"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"},"x-ratelimit-limit":{"$ref":"#/components/headers/x-ratelimit-limit"},"x-ratelimit-remaining":{"$ref":"#/components/headers/x-ratelimit-remaining"},"x-ratelimit-reset":{"$ref":"#/components/headers/x-ratelimit-reset"}},"content":{"application/json":{"schema":{"type":"object","required":["data","credits","requestId","cached"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/RedditPost"}},"page":{"$ref":"#/components/schemas/PageInfo"},"credits":{"$ref":"#/components/schemas/Credits"},"requestId":{"type":"string","examples":["req_01JA7Q3V8K2N4P5R6S7T8V"]},"cached":{"type":"boolean"},"warnings":{"type":"array","items":{"$ref":"#/components/schemas/Warning"}}}}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"402":{"$ref":"#/components/responses/Error402"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"429":{"$ref":"#/components/responses/Error429"},"500":{"$ref":"#/components/responses/Error500"},"502":{"$ref":"#/components/responses/Error502"},"504":{"$ref":"#/components/responses/Error504"}}}},"/v1/reddit/comments/search":{"get":{"operationId":"reddit_search_comments","summary":"Reddit Comment Search","description":"Search Reddit comments by keyword, the place where people actually recommend and complain about tools. Returns comment text, author, score, subreddit, the parent post title and a link. Costs 2 credits per page. Tip: comments have no time filter upstream, so sort=new and stop paging once results get older than you need. Costs 2 credits.","tags":["reddit"],"x-credits":2,"x-mcp-tool":"reddit_search_comments","parameters":[{"name":"q","in":"query","required":true,"description":"Search text. Reddit operators allowed.","schema":{"type":"string"}},{"name":"sort","in":"query","required":false,"description":"Result order. Comments have no time filter, so use new to monitor.","schema":{"default":"relevance","type":"string","enum":["relevance","new","top"]}},{"name":"author","in":"query","required":false,"description":"Only comments by this username.","schema":{"type":"string"}},{"name":"nsfw","in":"query","required":false,"description":"Include comments from adult communities. true needs the 18+ setting.","schema":{"type":["boolean","string"]}},{"name":"limit","in":"query","required":false,"description":"Max rows to return (1-100). Reddit pages hold about 25 rows; larger values still return one page.","schema":{"default":25,"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","in":"query","required":false,"description":"Opaque cursor from the previous response's page.nextCursor.","schema":{"type":"string","minLength":1,"maxLength":2048}}],"responses":{"200":{"description":"Success","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-charged":{"$ref":"#/components/headers/x-credits-charged"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"},"x-ratelimit-limit":{"$ref":"#/components/headers/x-ratelimit-limit"},"x-ratelimit-remaining":{"$ref":"#/components/headers/x-ratelimit-remaining"},"x-ratelimit-reset":{"$ref":"#/components/headers/x-ratelimit-reset"}},"content":{"application/json":{"schema":{"type":"object","required":["data","credits","requestId","cached"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/RedditComment"}},"page":{"$ref":"#/components/schemas/PageInfo"},"credits":{"$ref":"#/components/schemas/Credits"},"requestId":{"type":"string","examples":["req_01JA7Q3V8K2N4P5R6S7T8V"]},"cached":{"type":"boolean"},"warnings":{"type":"array","items":{"$ref":"#/components/schemas/Warning"}}}}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"402":{"$ref":"#/components/responses/Error402"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"429":{"$ref":"#/components/responses/Error429"},"500":{"$ref":"#/components/responses/Error500"},"502":{"$ref":"#/components/responses/Error502"},"504":{"$ref":"#/components/responses/Error504"}}}},"/v1/reddit/media/search":{"get":{"operationId":"reddit_search_media","summary":"Reddit Media Search","description":"Find Reddit image, video and gallery posts by keyword. Returns posts with a media object holding direct image or video URLs. Costs 2 credits per page. Tip: set kind=image, video or gallery to narrow results; the body field is empty for media results. Costs 2 credits.","tags":["reddit"],"x-credits":2,"x-mcp-tool":"reddit_search_media","parameters":[{"name":"q","in":"query","required":true,"description":"Search text. Reddit operators allowed.","schema":{"type":"string"}},{"name":"kind","in":"query","required":false,"description":"Media type to return.","schema":{"default":"all","type":"string","enum":["image","video","gallery","all"]}},{"name":"sort","in":"query","required":false,"description":"Result order.","schema":{"default":"relevance","type":"string","enum":["relevance","new","hot","top","comments"]}},{"name":"time","in":"query","required":false,"description":"Time window.","schema":{"default":"all","type":"string","enum":["hour","day","week","month","year","all"]}},{"name":"nsfw","in":"query","required":false,"description":"Include adult media. true needs the 18+ setting.","schema":{"type":["boolean","string"]}},{"name":"limit","in":"query","required":false,"description":"Max rows to return (1-100). Reddit pages hold about 25 rows; larger values still return one page.","schema":{"default":25,"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","in":"query","required":false,"description":"Opaque cursor from the previous response's page.nextCursor.","schema":{"type":"string","minLength":1,"maxLength":2048}}],"responses":{"200":{"description":"Success","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-charged":{"$ref":"#/components/headers/x-credits-charged"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"},"x-ratelimit-limit":{"$ref":"#/components/headers/x-ratelimit-limit"},"x-ratelimit-remaining":{"$ref":"#/components/headers/x-ratelimit-remaining"},"x-ratelimit-reset":{"$ref":"#/components/headers/x-ratelimit-reset"}},"content":{"application/json":{"schema":{"type":"object","required":["data","credits","requestId","cached"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/RedditPost"}},"page":{"$ref":"#/components/schemas/PageInfo"},"credits":{"$ref":"#/components/schemas/Credits"},"requestId":{"type":"string","examples":["req_01JA7Q3V8K2N4P5R6S7T8V"]},"cached":{"type":"boolean"},"warnings":{"type":"array","items":{"$ref":"#/components/schemas/Warning"}}}}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"402":{"$ref":"#/components/responses/Error402"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"429":{"$ref":"#/components/responses/Error429"},"500":{"$ref":"#/components/responses/Error500"},"502":{"$ref":"#/components/responses/Error502"},"504":{"$ref":"#/components/responses/Error504"}}}},"/v1/reddit/posts/{id}":{"get":{"operationId":"reddit_scrape","summary":"Reddit Scraper","description":"Fetch one Reddit post by id or URL, with full body text, score, comment count, upvote ratio, flags and media. Costs 2 credits. Tip: to get the comments too, call reddit.thread instead (it includes the post). Costs 2 credits.","tags":["reddit"],"x-credits":2,"x-mcp-tool":"reddit_scrape","parameters":[{"name":"id","in":"path","required":true,"description":"Post id (1wdihhj), t3_ id, or any reddit.com / redd.it post URL.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-charged":{"$ref":"#/components/headers/x-credits-charged"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"},"x-ratelimit-limit":{"$ref":"#/components/headers/x-ratelimit-limit"},"x-ratelimit-remaining":{"$ref":"#/components/headers/x-ratelimit-remaining"},"x-ratelimit-reset":{"$ref":"#/components/headers/x-ratelimit-reset"}},"content":{"application/json":{"schema":{"type":"object","required":["data","credits","requestId","cached"],"properties":{"data":{"$ref":"#/components/schemas/RedditPost"},"credits":{"$ref":"#/components/schemas/Credits"},"requestId":{"type":"string","examples":["req_01JA7Q3V8K2N4P5R6S7T8V"]},"cached":{"type":"boolean"},"warnings":{"type":"array","items":{"$ref":"#/components/schemas/Warning"}}}}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"402":{"$ref":"#/components/responses/Error402"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"429":{"$ref":"#/components/responses/Error429"},"500":{"$ref":"#/components/responses/Error500"},"502":{"$ref":"#/components/responses/Error502"},"504":{"$ref":"#/components/responses/Error504"}}}},"/v1/reddit/threads/{id}":{"get":{"operationId":"reddit_thread","summary":"Reddit Comment Exporter","description":"Get a Reddit post together with its comments as a flat list (rebuild the tree with parentId). Returns the post, up to about 100 comments per page, and counts of replies Reddit did not load. Costs 3 credits per page. Tip: no thread API returns every comment on very large threads; compare comments.length with reportedCommentCount. Costs 3 credits.","tags":["reddit"],"x-credits":3,"x-mcp-tool":"reddit_thread","parameters":[{"name":"id","in":"path","required":true,"description":"Post id or post URL.","schema":{"type":"string"}},{"name":"cursor","in":"query","required":false,"description":"Next page of comments.","schema":{"type":"string","minLength":1,"maxLength":2048}}],"responses":{"200":{"description":"Success","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-charged":{"$ref":"#/components/headers/x-credits-charged"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"},"x-ratelimit-limit":{"$ref":"#/components/headers/x-ratelimit-limit"},"x-ratelimit-remaining":{"$ref":"#/components/headers/x-ratelimit-remaining"},"x-ratelimit-reset":{"$ref":"#/components/headers/x-ratelimit-reset"}},"content":{"application/json":{"schema":{"type":"object","required":["data","credits","requestId","cached"],"properties":{"data":{"$ref":"#/components/schemas/RedditThread"},"credits":{"$ref":"#/components/schemas/Credits"},"requestId":{"type":"string","examples":["req_01JA7Q3V8K2N4P5R6S7T8V"]},"cached":{"type":"boolean"},"warnings":{"type":"array","items":{"$ref":"#/components/schemas/Warning"}}}}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"402":{"$ref":"#/components/responses/Error402"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"429":{"$ref":"#/components/responses/Error429"},"500":{"$ref":"#/components/responses/Error500"},"502":{"$ref":"#/components/responses/Error502"},"504":{"$ref":"#/components/responses/Error504"}}}},"/v1/reddit/subreddits/search":{"get":{"operationId":"reddit_communities","summary":"Subreddit Finder","description":"Find subreddits about a topic. Returns each community's name, title, description, subscriber count, creation date and NSFW flag (rules and moderators are not included; call reddit.subreddit for those). Costs 2 credits per page. Tip: search the problem your customer has, not your product name. Costs 2 credits.","tags":["reddit"],"x-credits":2,"x-mcp-tool":"reddit_communities","parameters":[{"name":"q","in":"query","required":true,"description":"Topic to find communities for.","schema":{"type":"string"}},{"name":"nsfw","in":"query","required":false,"description":"Include adult communities. true is billed as reddit.nsfw_communities and needs the 18+ setting.","schema":{"type":["boolean","string"]}},{"name":"limit","in":"query","required":false,"description":"Max rows to return (1-100). Reddit pages hold about 25 rows; larger values still return one page.","schema":{"default":25,"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","in":"query","required":false,"description":"Opaque cursor from the previous response's page.nextCursor.","schema":{"type":"string","minLength":1,"maxLength":2048}}],"responses":{"200":{"description":"Success","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-charged":{"$ref":"#/components/headers/x-credits-charged"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"},"x-ratelimit-limit":{"$ref":"#/components/headers/x-ratelimit-limit"},"x-ratelimit-remaining":{"$ref":"#/components/headers/x-ratelimit-remaining"},"x-ratelimit-reset":{"$ref":"#/components/headers/x-ratelimit-reset"}},"content":{"application/json":{"schema":{"type":"object","required":["data","credits","requestId","cached"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/Subreddit"}},"page":{"$ref":"#/components/schemas/PageInfo"},"credits":{"$ref":"#/components/schemas/Credits"},"requestId":{"type":"string","examples":["req_01JA7Q3V8K2N4P5R6S7T8V"]},"cached":{"type":"boolean"},"warnings":{"type":"array","items":{"$ref":"#/components/schemas/Warning"}}}}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"402":{"$ref":"#/components/responses/Error402"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"429":{"$ref":"#/components/responses/Error429"},"500":{"$ref":"#/components/responses/Error500"},"502":{"$ref":"#/components/responses/Error502"},"504":{"$ref":"#/components/responses/Error504"}}}},"/v1/reddit/nsfw/subreddits/search":{"get":{"operationId":"reddit_nsfw_communities","summary":"NSFW Subreddit Finder","description":"Find subreddits including adult (NSFW) communities. Requires the account's 18+ setting, otherwise returns scope_denied. Same fields as reddit.communities. Costs 2 credits per page. Tip: set nsfwOnly=true to list only communities flagged NSFW. Costs 2 credits.","tags":["reddit"],"x-credits":2,"x-mcp-tool":"reddit_nsfw_communities","parameters":[{"name":"q","in":"query","required":true,"description":"Topic to find communities for.","schema":{"type":"string"}},{"name":"nsfwOnly","in":"query","required":false,"description":"Return only communities flagged NSFW.","schema":{"type":["boolean","string"]}},{"name":"limit","in":"query","required":false,"description":"Max rows to return (1-100). Reddit pages hold about 25 rows; larger values still return one page.","schema":{"default":25,"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","in":"query","required":false,"description":"Opaque cursor from the previous response's page.nextCursor.","schema":{"type":"string","minLength":1,"maxLength":2048}}],"responses":{"200":{"description":"Success","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-charged":{"$ref":"#/components/headers/x-credits-charged"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"},"x-ratelimit-limit":{"$ref":"#/components/headers/x-ratelimit-limit"},"x-ratelimit-remaining":{"$ref":"#/components/headers/x-ratelimit-remaining"},"x-ratelimit-reset":{"$ref":"#/components/headers/x-ratelimit-reset"}},"content":{"application/json":{"schema":{"type":"object","required":["data","credits","requestId","cached"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/Subreddit"}},"page":{"$ref":"#/components/schemas/PageInfo"},"credits":{"$ref":"#/components/schemas/Credits"},"requestId":{"type":"string","examples":["req_01JA7Q3V8K2N4P5R6S7T8V"]},"cached":{"type":"boolean"},"warnings":{"type":"array","items":{"$ref":"#/components/schemas/Warning"}}}}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"402":{"$ref":"#/components/responses/Error402"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"429":{"$ref":"#/components/responses/Error429"},"500":{"$ref":"#/components/responses/Error500"},"502":{"$ref":"#/components/responses/Error502"},"504":{"$ref":"#/components/responses/Error504"}}}},"/v1/reddit/subreddits/{name}":{"get":{"operationId":"reddit_subreddit","summary":"Subreddit Stats","description":"Get one subreddit's profile: title, description, subscriber count, creation date, NSFW flag, full rules, moderators and posting settings (which post types are allowed, whether posting is restricted). Costs 2 credits. Tip: read rules before drafting a post; if rules is null the data came from a fallback source that cannot see them, not because the subreddit has none. Costs 2 credits.","tags":["reddit"],"x-credits":2,"x-mcp-tool":"reddit_subreddit","parameters":[{"name":"name","in":"path","required":true,"description":"Subreddit name, r/name or URL, e.g. SaaS.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-charged":{"$ref":"#/components/headers/x-credits-charged"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"},"x-ratelimit-limit":{"$ref":"#/components/headers/x-ratelimit-limit"},"x-ratelimit-remaining":{"$ref":"#/components/headers/x-ratelimit-remaining"},"x-ratelimit-reset":{"$ref":"#/components/headers/x-ratelimit-reset"}},"content":{"application/json":{"schema":{"type":"object","required":["data","credits","requestId","cached"],"properties":{"data":{"$ref":"#/components/schemas/Subreddit"},"credits":{"$ref":"#/components/schemas/Credits"},"requestId":{"type":"string","examples":["req_01JA7Q3V8K2N4P5R6S7T8V"]},"cached":{"type":"boolean"},"warnings":{"type":"array","items":{"$ref":"#/components/schemas/Warning"}}}}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"402":{"$ref":"#/components/responses/Error402"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"429":{"$ref":"#/components/responses/Error429"},"500":{"$ref":"#/components/responses/Error500"},"502":{"$ref":"#/components/responses/Error502"},"504":{"$ref":"#/components/responses/Error504"}}}},"/v1/reddit/subreddits/{name}/posts":{"get":{"operationId":"reddit_subreddit_posts","summary":"Subreddit Posts","description":"List a subreddit's posts by hot, new, top, rising, controversial or best. Returns post objects with score, comment count and link. Costs 2 credits per page. Tip: sort=top with time=week shows what that community rewards; sort=new is the freshest feed. Costs 2 credits.","tags":["reddit"],"x-credits":2,"x-mcp-tool":"reddit_subreddit_posts","parameters":[{"name":"name","in":"path","required":true,"description":"Subreddit name, r/name or URL, e.g. SaaS.","schema":{"type":"string"}},{"name":"sort","in":"query","required":false,"description":"Feed order.","schema":{"default":"hot","type":"string","enum":["hot","new","top","rising","controversial","best"]}},{"name":"time","in":"query","required":false,"description":"Used when sort is top or controversial.","schema":{"default":"week","type":"string","enum":["hour","day","week","month","year","all"]}},{"name":"nsfw","in":"query","required":false,"description":"When false, NSFW posts are removed.","schema":{"type":["boolean","string"]}},{"name":"limit","in":"query","required":false,"description":"Max rows to return (1-100). Reddit pages hold about 25 rows; larger values still return one page.","schema":{"default":25,"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","in":"query","required":false,"description":"Opaque cursor from the previous response's page.nextCursor.","schema":{"type":"string","minLength":1,"maxLength":2048}}],"responses":{"200":{"description":"Success","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-charged":{"$ref":"#/components/headers/x-credits-charged"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"},"x-ratelimit-limit":{"$ref":"#/components/headers/x-ratelimit-limit"},"x-ratelimit-remaining":{"$ref":"#/components/headers/x-ratelimit-remaining"},"x-ratelimit-reset":{"$ref":"#/components/headers/x-ratelimit-reset"}},"content":{"application/json":{"schema":{"type":"object","required":["data","credits","requestId","cached"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/RedditPost"}},"page":{"$ref":"#/components/schemas/PageInfo"},"credits":{"$ref":"#/components/schemas/Credits"},"requestId":{"type":"string","examples":["req_01JA7Q3V8K2N4P5R6S7T8V"]},"cached":{"type":"boolean"},"warnings":{"type":"array","items":{"$ref":"#/components/schemas/Warning"}}}}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"402":{"$ref":"#/components/responses/Error402"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"429":{"$ref":"#/components/responses/Error429"},"500":{"$ref":"#/components/responses/Error500"},"502":{"$ref":"#/components/responses/Error502"},"504":{"$ref":"#/components/responses/Error504"}}}},"/v1/reddit/users/{name}":{"get":{"operationId":"reddit_user","summary":"Reddit User Lookup","description":"Look up a Reddit account by username: account age, total, post and comment karma, avatar, and when available bio and badges (verified, moderator, employee, premium). Costs 2 credits. Tip: set detail=full to ask for bio and badges (3 credits); they can still be null when Reddit does not expose them. Costs up to 3 credits.","tags":["reddit"],"x-credits":3,"x-mcp-tool":"reddit_user","parameters":[{"name":"name","in":"path","required":true,"description":"Reddit username, with or without u/, or a profile URL. 3-20 characters.","schema":{"type":"string"}},{"name":"detail","in":"query","required":false,"description":"full asks for bio and badges (null when Reddit does not expose them) and costs 3 credits; basic costs 2.","schema":{"default":"basic","type":"string","enum":["basic","full"]}}],"responses":{"200":{"description":"Success","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-charged":{"$ref":"#/components/headers/x-credits-charged"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"},"x-ratelimit-limit":{"$ref":"#/components/headers/x-ratelimit-limit"},"x-ratelimit-remaining":{"$ref":"#/components/headers/x-ratelimit-remaining"},"x-ratelimit-reset":{"$ref":"#/components/headers/x-ratelimit-reset"}},"content":{"application/json":{"schema":{"type":"object","required":["data","credits","requestId","cached"],"properties":{"data":{"$ref":"#/components/schemas/RedditUser"},"credits":{"$ref":"#/components/schemas/Credits"},"requestId":{"type":"string","examples":["req_01JA7Q3V8K2N4P5R6S7T8V"]},"cached":{"type":"boolean"},"warnings":{"type":"array","items":{"$ref":"#/components/schemas/Warning"}}}}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"402":{"$ref":"#/components/responses/Error402"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"429":{"$ref":"#/components/responses/Error429"},"500":{"$ref":"#/components/responses/Error500"},"502":{"$ref":"#/components/responses/Error502"},"504":{"$ref":"#/components/responses/Error504"}}}},"/v1/reddit/users/{name}/status":{"get":{"operationId":"reddit_user_status","summary":"Reddit Account Checker","description":"Check whether a Reddit account is active, suspended, or not visible (deleted, banned or shadowbanned). Returns a state, never an error, for accounts that don't exist. Costs 2 credits. Tip: run it on your own account; not_found_or_banned on an account you can log into means Reddit has shadowbanned it. Costs 2 credits.","tags":["reddit"],"x-credits":2,"x-mcp-tool":"reddit_user_status","parameters":[{"name":"name","in":"path","required":true,"description":"Reddit username, with or without u/, or a profile URL. 3-20 characters.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-charged":{"$ref":"#/components/headers/x-credits-charged"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"},"x-ratelimit-limit":{"$ref":"#/components/headers/x-ratelimit-limit"},"x-ratelimit-remaining":{"$ref":"#/components/headers/x-ratelimit-remaining"},"x-ratelimit-reset":{"$ref":"#/components/headers/x-ratelimit-reset"}},"content":{"application/json":{"schema":{"type":"object","required":["data","credits","requestId","cached"],"properties":{"data":{"$ref":"#/components/schemas/UserStatus"},"credits":{"$ref":"#/components/schemas/Credits"},"requestId":{"type":"string","examples":["req_01JA7Q3V8K2N4P5R6S7T8V"]},"cached":{"type":"boolean"},"warnings":{"type":"array","items":{"$ref":"#/components/schemas/Warning"}}}}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"402":{"$ref":"#/components/responses/Error402"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"429":{"$ref":"#/components/responses/Error429"},"500":{"$ref":"#/components/responses/Error500"},"502":{"$ref":"#/components/responses/Error502"},"504":{"$ref":"#/components/responses/Error504"}}}},"/v1/reddit/users/{name}/comments":{"get":{"operationId":"reddit_user_comments","summary":"Reddit Comment History","description":"List a Reddit user's recent comments with full text, subreddit, score, the post each one replies to, and a link. Costs 2 credits per page of up to 25. Tip: if bodyTruncated is true the data came from a fallback that only has previews; retry later for full text. Costs 2 credits.","tags":["reddit"],"x-credits":2,"x-mcp-tool":"reddit_user_comments","parameters":[{"name":"name","in":"path","required":true,"description":"Reddit username, with or without u/, or a profile URL. 3-20 characters.","schema":{"type":"string"}},{"name":"sort","in":"query","required":false,"description":"Order of the comment history.","schema":{"default":"new","type":"string","enum":["new","top","controversial"]}},{"name":"limit","in":"query","required":false,"description":"Max rows to return (1-100). Reddit pages hold about 25 rows; larger values still return one page.","schema":{"default":25,"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","in":"query","required":false,"description":"Opaque cursor from the previous response's page.nextCursor.","schema":{"type":"string","minLength":1,"maxLength":2048}}],"responses":{"200":{"description":"Success","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-charged":{"$ref":"#/components/headers/x-credits-charged"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"},"x-ratelimit-limit":{"$ref":"#/components/headers/x-ratelimit-limit"},"x-ratelimit-remaining":{"$ref":"#/components/headers/x-ratelimit-remaining"},"x-ratelimit-reset":{"$ref":"#/components/headers/x-ratelimit-reset"}},"content":{"application/json":{"schema":{"type":"object","required":["data","credits","requestId","cached"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/RedditComment"}},"page":{"$ref":"#/components/schemas/PageInfo"},"credits":{"$ref":"#/components/schemas/Credits"},"requestId":{"type":"string","examples":["req_01JA7Q3V8K2N4P5R6S7T8V"]},"cached":{"type":"boolean"},"warnings":{"type":"array","items":{"$ref":"#/components/schemas/Warning"}}}}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"402":{"$ref":"#/components/responses/Error402"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"429":{"$ref":"#/components/responses/Error429"},"500":{"$ref":"#/components/responses/Error500"},"502":{"$ref":"#/components/responses/Error502"},"504":{"$ref":"#/components/responses/Error504"}}}},"/v1/reddit/users/{name}/posts":{"get":{"operationId":"reddit_user_posts","summary":"Reddit Post History","description":"List the posts a Reddit user has submitted, newest first by default, with subreddit, score, comment count and link. Costs 2 credits per page. Tip: combine with reddit.user_comments to see where an account is active before you reach out. Costs 2 credits.","tags":["reddit"],"x-credits":2,"x-mcp-tool":"reddit_user_posts","parameters":[{"name":"name","in":"path","required":true,"description":"Reddit username, with or without u/, or a profile URL. 3-20 characters.","schema":{"type":"string"}},{"name":"sort","in":"query","required":false,"description":"Order of the post history.","schema":{"default":"new","type":"string","enum":["new","top","hot","controversial"]}},{"name":"nsfw","in":"query","required":false,"description":"When false, NSFW posts are removed.","schema":{"type":["boolean","string"]}},{"name":"limit","in":"query","required":false,"description":"Max rows to return (1-100). Reddit pages hold about 25 rows; larger values still return one page.","schema":{"default":25,"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","in":"query","required":false,"description":"Opaque cursor from the previous response's page.nextCursor.","schema":{"type":"string","minLength":1,"maxLength":2048}}],"responses":{"200":{"description":"Success","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-charged":{"$ref":"#/components/headers/x-credits-charged"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"},"x-ratelimit-limit":{"$ref":"#/components/headers/x-ratelimit-limit"},"x-ratelimit-remaining":{"$ref":"#/components/headers/x-ratelimit-remaining"},"x-ratelimit-reset":{"$ref":"#/components/headers/x-ratelimit-reset"}},"content":{"application/json":{"schema":{"type":"object","required":["data","credits","requestId","cached"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/RedditPost"}},"page":{"$ref":"#/components/schemas/PageInfo"},"credits":{"$ref":"#/components/schemas/Credits"},"requestId":{"type":"string","examples":["req_01JA7Q3V8K2N4P5R6S7T8V"]},"cached":{"type":"boolean"},"warnings":{"type":"array","items":{"$ref":"#/components/schemas/Warning"}}}}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"402":{"$ref":"#/components/responses/Error402"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"429":{"$ref":"#/components/responses/Error429"},"500":{"$ref":"#/components/responses/Error500"},"502":{"$ref":"#/components/responses/Error502"},"504":{"$ref":"#/components/responses/Error504"}}}},"/v1/reddit/users/search":{"get":{"operationId":"reddit_user_search","summary":"Reddit User Search","description":"Find Reddit accounts by keyword in their name or profile. Returns profiles with karma, age, bio and badges. Costs 2 credits per page. Tip: use it to find a company's or founder's official account before calling reddit.user_posts. Costs 2 credits.","tags":["reddit"],"x-credits":2,"x-mcp-tool":"reddit_user_search","parameters":[{"name":"q","in":"query","required":true,"description":"Keyword to match in usernames and profiles.","schema":{"type":"string"}},{"name":"nsfw","in":"query","required":false,"description":"Include adult accounts. true needs the 18+ setting.","schema":{"type":["boolean","string"]}},{"name":"limit","in":"query","required":false,"description":"Max rows to return (1-100). Reddit pages hold about 25 rows; larger values still return one page.","schema":{"default":25,"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","in":"query","required":false,"description":"Opaque cursor from the previous response's page.nextCursor.","schema":{"type":"string","minLength":1,"maxLength":2048}}],"responses":{"200":{"description":"Success","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-charged":{"$ref":"#/components/headers/x-credits-charged"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"},"x-ratelimit-limit":{"$ref":"#/components/headers/x-ratelimit-limit"},"x-ratelimit-remaining":{"$ref":"#/components/headers/x-ratelimit-remaining"},"x-ratelimit-reset":{"$ref":"#/components/headers/x-ratelimit-reset"}},"content":{"application/json":{"schema":{"type":"object","required":["data","credits","requestId","cached"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/RedditUser"}},"page":{"$ref":"#/components/schemas/PageInfo"},"credits":{"$ref":"#/components/schemas/Credits"},"requestId":{"type":"string","examples":["req_01JA7Q3V8K2N4P5R6S7T8V"]},"cached":{"type":"boolean"},"warnings":{"type":"array","items":{"$ref":"#/components/schemas/Warning"}}}}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"402":{"$ref":"#/components/responses/Error402"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"429":{"$ref":"#/components/responses/Error429"},"500":{"$ref":"#/components/responses/Error500"},"502":{"$ref":"#/components/responses/Error502"},"504":{"$ref":"#/components/responses/Error504"}}}},"/v1/reddit/users/{name}/analysis":{"get":{"operationId":"reddit_user_analysis","summary":"Reddit User Analyzer","description":"Analyse a public Reddit account from what Reddit shows right now: account age, karma split, most active subreddits, activity by UTC hour and weekday, average and median score, and the top 3 posts. It reads the profile plus the latest posts and comments (up to 25 of each), so every figure describes that sample, not the account's full history. Removed and deleted content cannot be recovered. Costs 7 credits when all three parts answer (3 for the profile, 2 for posts, 2 for comments); a part that fails is not charged. Tip: check sample.items before you trust the percentages; an account with few public posts gives thin results. Costs up to 7 credits.","tags":["reddit"],"x-credits":7,"x-mcp-tool":"reddit_user_analysis","parameters":[{"name":"name","in":"path","required":true,"description":"Reddit username, with or without u/, or a profile URL. 3-20 characters.","schema":{"type":"string"}},{"name":"nsfw","in":"query","required":false,"description":"When false, adult posts and comments are left out of the analysis. true needs the 18+ setting.","schema":{"type":["boolean","string"]}}],"responses":{"200":{"description":"Success","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-charged":{"$ref":"#/components/headers/x-credits-charged"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"},"x-ratelimit-limit":{"$ref":"#/components/headers/x-ratelimit-limit"},"x-ratelimit-remaining":{"$ref":"#/components/headers/x-ratelimit-remaining"},"x-ratelimit-reset":{"$ref":"#/components/headers/x-ratelimit-reset"}},"content":{"application/json":{"schema":{"type":"object","required":["data","credits","requestId","cached"],"properties":{"data":{"$ref":"#/components/schemas/RedditUserAnalysis"},"credits":{"$ref":"#/components/schemas/Credits"},"requestId":{"type":"string","examples":["req_01JA7Q3V8K2N4P5R6S7T8V"]},"cached":{"type":"boolean"},"warnings":{"type":"array","items":{"$ref":"#/components/schemas/Warning"}}}}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"402":{"$ref":"#/components/responses/Error402"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"429":{"$ref":"#/components/responses/Error429"},"500":{"$ref":"#/components/responses/Error500"},"502":{"$ref":"#/components/responses/Error502"},"504":{"$ref":"#/components/responses/Error504"}}}},"/v1/reddit/leads":{"get":{"operationId":"reddit_leads","summary":"Reddit Lead Finder","description":"Find Reddit posts and comments where people ask for a recommendation, compare tools, or complain about a tool in your category. Returns leads ranked by an intent score (0 to 1) with the matched phrases, so you can see why each one was picked. Costs 4 credits per page. Tip: pass competitors to catch people switching away from them. Costs 4 credits.","tags":["reddit"],"x-credits":4,"x-mcp-tool":"reddit_leads","parameters":[{"name":"q","in":"query","required":true,"description":"Your product category or the problem it solves, e.g. crm or cold email. 1-60 characters.","schema":{"type":"string"}},{"name":"competitors","in":"query","required":false,"description":"Up to 5 tools people might switch away from, e.g. hubspot,pipedrive.","schema":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"style":"form","explode":false},{"name":"exclude","in":"query","required":false,"description":"Up to 10 words that disqualify an item.","schema":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"style":"form","explode":false},{"name":"time","in":"query","required":false,"description":"How far back to look.","schema":{"default":"month","type":"string","enum":["day","week","month","year"]}},{"name":"minScore","in":"query","required":false,"description":"Minimum intent score from 0 to 1.","schema":{"default":0.3,"type":"number","minimum":0,"maximum":1}},{"name":"intents","in":"query","required":false,"description":"Which intents to return. Default: all three.","schema":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"style":"form","explode":false},{"name":"cursor","in":"query","required":false,"description":"Opaque cursor from the previous response's page.nextCursor.","schema":{"type":"string","minLength":1,"maxLength":2048}},{"name":"subreddit","in":"query","required":false,"description":"Limit the Reddit side to one subreddit.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-charged":{"$ref":"#/components/headers/x-credits-charged"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"},"x-ratelimit-limit":{"$ref":"#/components/headers/x-ratelimit-limit"},"x-ratelimit-remaining":{"$ref":"#/components/headers/x-ratelimit-remaining"},"x-ratelimit-reset":{"$ref":"#/components/headers/x-ratelimit-reset"}},"content":{"application/json":{"schema":{"type":"object","required":["data","credits","requestId","cached"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/Lead"}},"page":{"$ref":"#/components/schemas/PageInfo"},"credits":{"$ref":"#/components/schemas/Credits"},"requestId":{"type":"string","examples":["req_01JA7Q3V8K2N4P5R6S7T8V"]},"cached":{"type":"boolean"},"warnings":{"type":"array","items":{"$ref":"#/components/schemas/Warning"}}}}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"402":{"$ref":"#/components/responses/Error402"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"429":{"$ref":"#/components/responses/Error429"},"500":{"$ref":"#/components/responses/Error500"},"502":{"$ref":"#/components/responses/Error502"},"504":{"$ref":"#/components/responses/Error504"}}}},"/v1/x/users/{handle}":{"get":{"operationId":"x_user","summary":"X User Lookup","description":"Look up an X (Twitter) account by handle: name, bio, follower and following counts, tweet count, verification, whether it accepts DMs, location, website, avatar and join date. Costs 3 credits. Tip: canDm tells you if a cold DM can reach this account before you spend on x.dm_send. Costs 3 credits.","tags":["x"],"x-credits":3,"x-mcp-tool":"x_user","parameters":[{"name":"handle","in":"path","required":true,"description":"Handle with or without @, or a profile URL. 1-15 characters.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-charged":{"$ref":"#/components/headers/x-credits-charged"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"},"x-ratelimit-limit":{"$ref":"#/components/headers/x-ratelimit-limit"},"x-ratelimit-remaining":{"$ref":"#/components/headers/x-ratelimit-remaining"},"x-ratelimit-reset":{"$ref":"#/components/headers/x-ratelimit-reset"}},"content":{"application/json":{"schema":{"type":"object","required":["data","credits","requestId","cached"],"properties":{"data":{"$ref":"#/components/schemas/XUser"},"credits":{"$ref":"#/components/schemas/Credits"},"requestId":{"type":"string","examples":["req_01JA7Q3V8K2N4P5R6S7T8V"]},"cached":{"type":"boolean"},"warnings":{"type":"array","items":{"$ref":"#/components/schemas/Warning"}}}}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"402":{"$ref":"#/components/responses/Error402"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"429":{"$ref":"#/components/responses/Error429"},"500":{"$ref":"#/components/responses/Error500"},"502":{"$ref":"#/components/responses/Error502"},"504":{"$ref":"#/components/responses/Error504"}}}},"/v1/x/users/{source}/follows/{target}":{"get":{"operationId":"x_follow_check","summary":"X Follow Checker","description":"Check whether one X account follows another, in both directions, and whether the source can DM the target. Returns sourceFollowsTarget, targetFollowsSource, mutual and canDm. Costs 3 credits. Tip: canDm is X's own answer for this pair, so it can be true even when the target does not take DMs from strangers; check it before you spend on x.dm_send. Costs 3 credits.","tags":["x"],"x-credits":3,"x-mcp-tool":"x_follow_check","parameters":[{"name":"source","in":"path","required":true,"description":"The account that might follow, with or without @, or a profile URL. 1-15 characters.","schema":{"type":"string"}},{"name":"target","in":"path","required":true,"description":"The account that might be followed, with or without @, or a profile URL. 1-15 characters.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-charged":{"$ref":"#/components/headers/x-credits-charged"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"},"x-ratelimit-limit":{"$ref":"#/components/headers/x-ratelimit-limit"},"x-ratelimit-remaining":{"$ref":"#/components/headers/x-ratelimit-remaining"},"x-ratelimit-reset":{"$ref":"#/components/headers/x-ratelimit-reset"}},"content":{"application/json":{"schema":{"type":"object","required":["data","credits","requestId","cached"],"properties":{"data":{"$ref":"#/components/schemas/XFollowCheck"},"credits":{"$ref":"#/components/schemas/Credits"},"requestId":{"type":"string","examples":["req_01JA7Q3V8K2N4P5R6S7T8V"]},"cached":{"type":"boolean"},"warnings":{"type":"array","items":{"$ref":"#/components/schemas/Warning"}}}}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"402":{"$ref":"#/components/responses/Error402"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"429":{"$ref":"#/components/responses/Error429"},"500":{"$ref":"#/components/responses/Error500"},"502":{"$ref":"#/components/responses/Error502"},"504":{"$ref":"#/components/responses/Error504"}}}},"/v1/x/users/search":{"get":{"operationId":"x_user_search","summary":"X User Search","description":"Find X accounts by keyword in their name or bio, for example 'founder saas' or 'growth marketer'. Returns profiles with follower counts and DM availability. Costs 3 credits per page of about 20. Tip: X search matches bios loosely; check bio text before treating a result as a fit. Costs 3 credits.","tags":["x"],"x-credits":3,"x-mcp-tool":"x_user_search","parameters":[{"name":"q","in":"query","required":true,"description":"Keywords to match in names and bios.","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"Max rows to return (1-100). One X page holds about 20 rows, so values above 20 still return one page.","schema":{"default":20,"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","in":"query","required":false,"description":"Opaque cursor from the previous response's page.nextCursor.","schema":{"type":"string","minLength":1,"maxLength":2048}}],"responses":{"200":{"description":"Success","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-charged":{"$ref":"#/components/headers/x-credits-charged"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"},"x-ratelimit-limit":{"$ref":"#/components/headers/x-ratelimit-limit"},"x-ratelimit-remaining":{"$ref":"#/components/headers/x-ratelimit-remaining"},"x-ratelimit-reset":{"$ref":"#/components/headers/x-ratelimit-reset"}},"content":{"application/json":{"schema":{"type":"object","required":["data","credits","requestId","cached"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/XUser"}},"page":{"$ref":"#/components/schemas/PageInfo"},"credits":{"$ref":"#/components/schemas/Credits"},"requestId":{"type":"string","examples":["req_01JA7Q3V8K2N4P5R6S7T8V"]},"cached":{"type":"boolean"},"warnings":{"type":"array","items":{"$ref":"#/components/schemas/Warning"}}}}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"402":{"$ref":"#/components/responses/Error402"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"429":{"$ref":"#/components/responses/Error429"},"500":{"$ref":"#/components/responses/Error500"},"502":{"$ref":"#/components/responses/Error502"},"504":{"$ref":"#/components/responses/Error504"}}}},"/v1/x/users/{handle}/followers":{"get":{"operationId":"x_followers","summary":"X Follower Exporter","description":"Export the followers of any public X account, page by page, with each follower's bio, follower count and whether they accept DMs. Costs 3 credits per page of about 20 followers. Tip: filter by canDm and followers to build an outreach list; large accounts take many pages, so set a page budget. Costs 3 credits per page (20 rows by default).","tags":["x"],"x-credits":3,"x-credit-unit":"per page (20 rows by default)","x-mcp-tool":"x_followers","parameters":[{"name":"handle","in":"path","required":true,"description":"Handle with or without @, or a profile URL. 1-15 characters.","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"Max rows to return (1-100). One X page holds about 20 rows, so values above 20 still return one page.","schema":{"default":20,"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","in":"query","required":false,"description":"Opaque cursor from the previous response's page.nextCursor.","schema":{"type":"string","minLength":1,"maxLength":2048}}],"responses":{"200":{"description":"Success","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-charged":{"$ref":"#/components/headers/x-credits-charged"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"},"x-ratelimit-limit":{"$ref":"#/components/headers/x-ratelimit-limit"},"x-ratelimit-remaining":{"$ref":"#/components/headers/x-ratelimit-remaining"},"x-ratelimit-reset":{"$ref":"#/components/headers/x-ratelimit-reset"}},"content":{"application/json":{"schema":{"type":"object","required":["data","credits","requestId","cached"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/XUser"}},"page":{"$ref":"#/components/schemas/PageInfo"},"credits":{"$ref":"#/components/schemas/Credits"},"requestId":{"type":"string","examples":["req_01JA7Q3V8K2N4P5R6S7T8V"]},"cached":{"type":"boolean"},"warnings":{"type":"array","items":{"$ref":"#/components/schemas/Warning"}}}}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"402":{"$ref":"#/components/responses/Error402"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"429":{"$ref":"#/components/responses/Error429"},"500":{"$ref":"#/components/responses/Error500"},"502":{"$ref":"#/components/responses/Error502"},"504":{"$ref":"#/components/responses/Error504"}}}},"/v1/x/users/{handle}/following":{"get":{"operationId":"x_following","summary":"X Following Exporter","description":"List the accounts an X user follows, page by page, with bios, follower counts and DM availability. Costs 3 credits per page of about 20. Tip: following lists reveal the tools and people an account pays attention to, useful for competitor research. Costs 3 credits per page (20 rows by default).","tags":["x"],"x-credits":3,"x-credit-unit":"per page (20 rows by default)","x-mcp-tool":"x_following","parameters":[{"name":"handle","in":"path","required":true,"description":"Handle with or without @, or a profile URL. 1-15 characters.","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"Max rows to return (1-100). One X page holds about 20 rows, so values above 20 still return one page.","schema":{"default":20,"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","in":"query","required":false,"description":"Opaque cursor from the previous response's page.nextCursor.","schema":{"type":"string","minLength":1,"maxLength":2048}}],"responses":{"200":{"description":"Success","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-charged":{"$ref":"#/components/headers/x-credits-charged"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"},"x-ratelimit-limit":{"$ref":"#/components/headers/x-ratelimit-limit"},"x-ratelimit-remaining":{"$ref":"#/components/headers/x-ratelimit-remaining"},"x-ratelimit-reset":{"$ref":"#/components/headers/x-ratelimit-reset"}},"content":{"application/json":{"schema":{"type":"object","required":["data","credits","requestId","cached"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/XUser"}},"page":{"$ref":"#/components/schemas/PageInfo"},"credits":{"$ref":"#/components/schemas/Credits"},"requestId":{"type":"string","examples":["req_01JA7Q3V8K2N4P5R6S7T8V"]},"cached":{"type":"boolean"},"warnings":{"type":"array","items":{"$ref":"#/components/schemas/Warning"}}}}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"402":{"$ref":"#/components/responses/Error402"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"429":{"$ref":"#/components/responses/Error429"},"500":{"$ref":"#/components/responses/Error500"},"502":{"$ref":"#/components/responses/Error502"},"504":{"$ref":"#/components/responses/Error504"}}}},"/v1/x/users/{handle}/verified-followers":{"get":{"operationId":"x_verified_followers","summary":"Verified Follower Exporter","description":"Export only the verified (blue check) followers of an X account, page by page. Same fields as x.followers. Costs 4 credits per page of about 20. Tip: verified followers skew toward active, paying users, so they make a higher-intent outreach list. Costs 4 credits per 20 rows.","tags":["x"],"x-credits":4,"x-credit-unit":"per 20 rows","x-mcp-tool":"x_verified_followers","parameters":[{"name":"handle","in":"path","required":true,"description":"Handle with or without @, or a profile URL. 1-15 characters.","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"Max rows to return (1-100). One X page holds about 20 rows, so values above 20 still return one page.","schema":{"default":20,"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","in":"query","required":false,"description":"Opaque cursor from the previous response's page.nextCursor.","schema":{"type":"string","minLength":1,"maxLength":2048}}],"responses":{"200":{"description":"Success","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-charged":{"$ref":"#/components/headers/x-credits-charged"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"},"x-ratelimit-limit":{"$ref":"#/components/headers/x-ratelimit-limit"},"x-ratelimit-remaining":{"$ref":"#/components/headers/x-ratelimit-remaining"},"x-ratelimit-reset":{"$ref":"#/components/headers/x-ratelimit-reset"}},"content":{"application/json":{"schema":{"type":"object","required":["data","credits","requestId","cached"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/XUser"}},"page":{"$ref":"#/components/schemas/PageInfo"},"credits":{"$ref":"#/components/schemas/Credits"},"requestId":{"type":"string","examples":["req_01JA7Q3V8K2N4P5R6S7T8V"]},"cached":{"type":"boolean"},"warnings":{"type":"array","items":{"$ref":"#/components/schemas/Warning"}}}}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"402":{"$ref":"#/components/responses/Error402"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"429":{"$ref":"#/components/responses/Error429"},"500":{"$ref":"#/components/responses/Error500"},"502":{"$ref":"#/components/responses/Error502"},"504":{"$ref":"#/components/responses/Error504"}}}},"/v1/x/users/{handle}/tweets":{"get":{"operationId":"x_tweets","summary":"X Timeline Scraper","description":"Get an X account's recent tweets, newest first, with likes, retweets, replies, views and media. Costs 3 credits per page of about 20 tweets. Tip: set includeRetweets=false to see only what the account wrote itself. Costs 3 credits.","tags":["x"],"x-credits":3,"x-mcp-tool":"x_tweets","parameters":[{"name":"handle","in":"path","required":true,"description":"Handle with or without @, or a profile URL. 1-15 characters.","schema":{"type":"string"}},{"name":"includeRetweets","in":"query","required":false,"description":"When false, only tweets the account wrote itself.","schema":{"type":["boolean","string"]}},{"name":"limit","in":"query","required":false,"description":"Max rows to return (1-100). One X page holds about 20 rows, so values above 20 still return one page.","schema":{"default":20,"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","in":"query","required":false,"description":"Opaque cursor from the previous response's page.nextCursor.","schema":{"type":"string","minLength":1,"maxLength":2048}}],"responses":{"200":{"description":"Success","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-charged":{"$ref":"#/components/headers/x-credits-charged"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"},"x-ratelimit-limit":{"$ref":"#/components/headers/x-ratelimit-limit"},"x-ratelimit-remaining":{"$ref":"#/components/headers/x-ratelimit-remaining"},"x-ratelimit-reset":{"$ref":"#/components/headers/x-ratelimit-reset"}},"content":{"application/json":{"schema":{"type":"object","required":["data","credits","requestId","cached"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/XTweet"}},"page":{"$ref":"#/components/schemas/PageInfo"},"credits":{"$ref":"#/components/schemas/Credits"},"requestId":{"type":"string","examples":["req_01JA7Q3V8K2N4P5R6S7T8V"]},"cached":{"type":"boolean"},"warnings":{"type":"array","items":{"$ref":"#/components/schemas/Warning"}}}}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"402":{"$ref":"#/components/responses/Error402"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"429":{"$ref":"#/components/responses/Error429"},"500":{"$ref":"#/components/responses/Error500"},"502":{"$ref":"#/components/responses/Error502"},"504":{"$ref":"#/components/responses/Error504"}}}},"/v1/x/users/{handle}/mentions":{"get":{"operationId":"x_mentions","summary":"X Mentions Monitor","description":"Get recent tweets that mention an X handle (@name), newest first, with author profiles and engagement. Costs 3 credits per page of about 20. Tip: to catch brand mentions without the @, use x.search with the brand name or everywhere.mentions. Costs 3 credits.","tags":["x"],"x-credits":3,"x-mcp-tool":"x_mentions","parameters":[{"name":"handle","in":"path","required":true,"description":"Handle with or without @, or a profile URL. 1-15 characters.","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"Max rows to return (1-100). One X page holds about 20 rows, so values above 20 still return one page.","schema":{"default":20,"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","in":"query","required":false,"description":"Opaque cursor from the previous response's page.nextCursor.","schema":{"type":"string","minLength":1,"maxLength":2048}}],"responses":{"200":{"description":"Success","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-charged":{"$ref":"#/components/headers/x-credits-charged"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"},"x-ratelimit-limit":{"$ref":"#/components/headers/x-ratelimit-limit"},"x-ratelimit-remaining":{"$ref":"#/components/headers/x-ratelimit-remaining"},"x-ratelimit-reset":{"$ref":"#/components/headers/x-ratelimit-reset"}},"content":{"application/json":{"schema":{"type":"object","required":["data","credits","requestId","cached"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/XTweet"}},"page":{"$ref":"#/components/schemas/PageInfo"},"credits":{"$ref":"#/components/schemas/Credits"},"requestId":{"type":"string","examples":["req_01JA7Q3V8K2N4P5R6S7T8V"]},"cached":{"type":"boolean"},"warnings":{"type":"array","items":{"$ref":"#/components/schemas/Warning"}}}}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"402":{"$ref":"#/components/responses/Error402"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"429":{"$ref":"#/components/responses/Error429"},"500":{"$ref":"#/components/responses/Error500"},"502":{"$ref":"#/components/responses/Error502"},"504":{"$ref":"#/components/responses/Error504"}}}},"/v1/x/tweets/search":{"get":{"operationId":"x_search","summary":"X Tweet Search","description":"Search tweets by keyword with full X search operators (from:, to:, \"exact phrase\", OR, -word, min_faves:, filter:links). Returns tweets with author profiles and engagement. Costs 3 credits per page of about 20. Tip: sort=latest for monitoring, sort=top for the most-engaged tweets. Costs 3 credits.","tags":["x"],"x-credits":3,"x-mcp-tool":"x_search","parameters":[{"name":"q","in":"query","required":true,"description":"Keyword(s) and X operators.","schema":{"type":"string"}},{"name":"sort","in":"query","required":false,"description":"latest for monitoring, top for the most engaged tweets.","schema":{"default":"latest","type":"string","enum":["latest","top"]}},{"name":"since","in":"query","required":false,"description":"Earliest date, YYYY-MM-DD.","schema":{"type":"string"}},{"name":"until","in":"query","required":false,"description":"Latest date, YYYY-MM-DD.","schema":{"type":"string"}},{"name":"lang","in":"query","required":false,"description":"Tweet language, 2 letters.","schema":{"type":"string","pattern":"^[a-z]{2}$"}},{"name":"includeRetweets","in":"query","required":false,"description":"Include retweets.","schema":{"type":["boolean","string"]}},{"name":"limit","in":"query","required":false,"description":"Max rows to return (1-100). One X page holds about 20 rows, so values above 20 still return one page.","schema":{"default":20,"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","in":"query","required":false,"description":"Opaque cursor from the previous response's page.nextCursor.","schema":{"type":"string","minLength":1,"maxLength":2048}}],"responses":{"200":{"description":"Success","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-charged":{"$ref":"#/components/headers/x-credits-charged"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"},"x-ratelimit-limit":{"$ref":"#/components/headers/x-ratelimit-limit"},"x-ratelimit-remaining":{"$ref":"#/components/headers/x-ratelimit-remaining"},"x-ratelimit-reset":{"$ref":"#/components/headers/x-ratelimit-reset"}},"content":{"application/json":{"schema":{"type":"object","required":["data","credits","requestId","cached"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/XTweet"}},"page":{"$ref":"#/components/schemas/PageInfo"},"credits":{"$ref":"#/components/schemas/Credits"},"requestId":{"type":"string","examples":["req_01JA7Q3V8K2N4P5R6S7T8V"]},"cached":{"type":"boolean"},"warnings":{"type":"array","items":{"$ref":"#/components/schemas/Warning"}}}}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"402":{"$ref":"#/components/responses/Error402"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"429":{"$ref":"#/components/responses/Error429"},"500":{"$ref":"#/components/responses/Error500"},"502":{"$ref":"#/components/responses/Error502"},"504":{"$ref":"#/components/responses/Error504"}}}},"/v1/x/tweets/{id}":{"get":{"operationId":"x_tweet_detail","summary":"X Tweet Lookup","description":"Fetch one tweet by id or URL with its full text, author profile, engagement counts, media and reply context. Costs 3 credits. Tip: use conversationId with x.replies to read the whole discussion. Costs 3 credits.","tags":["x"],"x-credits":3,"x-mcp-tool":"x_tweet_detail","parameters":[{"name":"id","in":"path","required":true,"description":"Tweet id or tweet URL.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-charged":{"$ref":"#/components/headers/x-credits-charged"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"},"x-ratelimit-limit":{"$ref":"#/components/headers/x-ratelimit-limit"},"x-ratelimit-remaining":{"$ref":"#/components/headers/x-ratelimit-remaining"},"x-ratelimit-reset":{"$ref":"#/components/headers/x-ratelimit-reset"}},"content":{"application/json":{"schema":{"type":"object","required":["data","credits","requestId","cached"],"properties":{"data":{"$ref":"#/components/schemas/XTweet"},"credits":{"$ref":"#/components/schemas/Credits"},"requestId":{"type":"string","examples":["req_01JA7Q3V8K2N4P5R6S7T8V"]},"cached":{"type":"boolean"},"warnings":{"type":"array","items":{"$ref":"#/components/schemas/Warning"}}}}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"402":{"$ref":"#/components/responses/Error402"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"429":{"$ref":"#/components/responses/Error429"},"500":{"$ref":"#/components/responses/Error500"},"502":{"$ref":"#/components/responses/Error502"},"504":{"$ref":"#/components/responses/Error504"}}}},"/v1/x/tweets/{id}/replies":{"get":{"operationId":"x_replies","summary":"Tweet Replies Exporter","description":"List the replies to a tweet, page by page, with each reply's text, author profile and engagement. Costs 3 credits per page of about 20. Tip: people replying to a competitor's launch tweet are warm leads; check author.canDm. Costs 3 credits.","tags":["x"],"x-credits":3,"x-mcp-tool":"x_replies","parameters":[{"name":"id","in":"path","required":true,"description":"Tweet id or tweet URL.","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"Max rows to return (1-100). One X page holds about 20 rows, so values above 20 still return one page.","schema":{"default":20,"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","in":"query","required":false,"description":"Opaque cursor from the previous response's page.nextCursor.","schema":{"type":"string","minLength":1,"maxLength":2048}}],"responses":{"200":{"description":"Success","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-charged":{"$ref":"#/components/headers/x-credits-charged"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"},"x-ratelimit-limit":{"$ref":"#/components/headers/x-ratelimit-limit"},"x-ratelimit-remaining":{"$ref":"#/components/headers/x-ratelimit-remaining"},"x-ratelimit-reset":{"$ref":"#/components/headers/x-ratelimit-reset"}},"content":{"application/json":{"schema":{"type":"object","required":["data","credits","requestId","cached"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/XTweet"}},"page":{"$ref":"#/components/schemas/PageInfo"},"credits":{"$ref":"#/components/schemas/Credits"},"requestId":{"type":"string","examples":["req_01JA7Q3V8K2N4P5R6S7T8V"]},"cached":{"type":"boolean"},"warnings":{"type":"array","items":{"$ref":"#/components/schemas/Warning"}}}}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"402":{"$ref":"#/components/responses/Error402"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"429":{"$ref":"#/components/responses/Error429"},"500":{"$ref":"#/components/responses/Error500"},"502":{"$ref":"#/components/responses/Error502"},"504":{"$ref":"#/components/responses/Error504"}}}},"/v1/x/tweets/{id}/retweeters":{"get":{"operationId":"x_retweeters","summary":"Retweeter Exporter","description":"List the accounts that retweeted a tweet, page by page, with bios, follower counts and DM availability. Costs 3 credits per page of about 20. Tip: retweeters of a post in your niche are people who already care about the topic. Costs 3 credits.","tags":["x"],"x-credits":3,"x-mcp-tool":"x_retweeters","parameters":[{"name":"id","in":"path","required":true,"description":"Tweet id or tweet URL.","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"Max rows to return (1-100). One X page holds about 20 rows, so values above 20 still return one page.","schema":{"default":20,"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","in":"query","required":false,"description":"Opaque cursor from the previous response's page.nextCursor.","schema":{"type":"string","minLength":1,"maxLength":2048}}],"responses":{"200":{"description":"Success","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-charged":{"$ref":"#/components/headers/x-credits-charged"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"},"x-ratelimit-limit":{"$ref":"#/components/headers/x-ratelimit-limit"},"x-ratelimit-remaining":{"$ref":"#/components/headers/x-ratelimit-remaining"},"x-ratelimit-reset":{"$ref":"#/components/headers/x-ratelimit-reset"}},"content":{"application/json":{"schema":{"type":"object","required":["data","credits","requestId","cached"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/XUser"}},"page":{"$ref":"#/components/schemas/PageInfo"},"credits":{"$ref":"#/components/schemas/Credits"},"requestId":{"type":"string","examples":["req_01JA7Q3V8K2N4P5R6S7T8V"]},"cached":{"type":"boolean"},"warnings":{"type":"array","items":{"$ref":"#/components/schemas/Warning"}}}}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"402":{"$ref":"#/components/responses/Error402"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"429":{"$ref":"#/components/responses/Error429"},"500":{"$ref":"#/components/responses/Error500"},"502":{"$ref":"#/components/responses/Error502"},"504":{"$ref":"#/components/responses/Error504"}}}},"/v1/x/lists/{id}/members":{"get":{"operationId":"x_list_members","summary":"X List Members","description":"List everyone on a public X List, page by page, with profiles and DM availability. Costs 3 credits per page of about 20. Tip: curated lists (for example 'SaaS founders') are ready-made lead lists. Costs 3 credits.","tags":["x"],"x-credits":3,"x-mcp-tool":"x_list_members","parameters":[{"name":"id","in":"path","required":true,"description":"List id or an x.com/i/lists/<id> URL.","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"Max rows to return (1-100). One X page holds about 20 rows, so values above 20 still return one page.","schema":{"default":20,"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","in":"query","required":false,"description":"Opaque cursor from the previous response's page.nextCursor.","schema":{"type":"string","minLength":1,"maxLength":2048}}],"responses":{"200":{"description":"Success","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-charged":{"$ref":"#/components/headers/x-credits-charged"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"},"x-ratelimit-limit":{"$ref":"#/components/headers/x-ratelimit-limit"},"x-ratelimit-remaining":{"$ref":"#/components/headers/x-ratelimit-remaining"},"x-ratelimit-reset":{"$ref":"#/components/headers/x-ratelimit-reset"}},"content":{"application/json":{"schema":{"type":"object","required":["data","credits","requestId","cached"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/XUser"}},"page":{"$ref":"#/components/schemas/PageInfo"},"credits":{"$ref":"#/components/schemas/Credits"},"requestId":{"type":"string","examples":["req_01JA7Q3V8K2N4P5R6S7T8V"]},"cached":{"type":"boolean"},"warnings":{"type":"array","items":{"$ref":"#/components/schemas/Warning"}}}}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"402":{"$ref":"#/components/responses/Error402"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"429":{"$ref":"#/components/responses/Error429"},"500":{"$ref":"#/components/responses/Error500"},"502":{"$ref":"#/components/responses/Error502"},"504":{"$ref":"#/components/responses/Error504"}}}},"/v1/x/leads":{"get":{"operationId":"x_leads","summary":"X Lead Finder","description":"Find tweets where people ask for a recommendation, compare tools, or complain about a tool in your category. Returns leads ranked by an intent score (0 to 1) with the matched phrases and the author's handle. Costs 3 credits per page. Tip: pass competitors to catch people looking to switch. Costs 3 credits.","tags":["x"],"x-credits":3,"x-mcp-tool":"x_leads","parameters":[{"name":"q","in":"query","required":true,"description":"Your product category or the problem it solves, e.g. crm or cold email. 1-60 characters.","schema":{"type":"string"}},{"name":"competitors","in":"query","required":false,"description":"Up to 5 tools people might switch away from, e.g. hubspot,pipedrive.","schema":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"style":"form","explode":false},{"name":"exclude","in":"query","required":false,"description":"Up to 10 words that disqualify an item.","schema":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"style":"form","explode":false},{"name":"time","in":"query","required":false,"description":"How far back to look.","schema":{"default":"month","type":"string","enum":["day","week","month","year"]}},{"name":"minScore","in":"query","required":false,"description":"Minimum intent score from 0 to 1.","schema":{"default":0.3,"type":"number","minimum":0,"maximum":1}},{"name":"intents","in":"query","required":false,"description":"Which intents to return. Default: all three.","schema":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"style":"form","explode":false},{"name":"cursor","in":"query","required":false,"description":"Opaque cursor from the previous response's page.nextCursor.","schema":{"type":"string","minLength":1,"maxLength":2048}},{"name":"lang","in":"query","required":false,"description":"Tweet language, 2 letters.","schema":{"default":"en","type":"string","pattern":"^[a-z]{2}$"}}],"responses":{"200":{"description":"Success","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-charged":{"$ref":"#/components/headers/x-credits-charged"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"},"x-ratelimit-limit":{"$ref":"#/components/headers/x-ratelimit-limit"},"x-ratelimit-remaining":{"$ref":"#/components/headers/x-ratelimit-remaining"},"x-ratelimit-reset":{"$ref":"#/components/headers/x-ratelimit-reset"}},"content":{"application/json":{"schema":{"type":"object","required":["data","credits","requestId","cached"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/Lead"}},"page":{"$ref":"#/components/schemas/PageInfo"},"credits":{"$ref":"#/components/schemas/Credits"},"requestId":{"type":"string","examples":["req_01JA7Q3V8K2N4P5R6S7T8V"]},"cached":{"type":"boolean"},"warnings":{"type":"array","items":{"$ref":"#/components/schemas/Warning"}}}}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"402":{"$ref":"#/components/responses/Error402"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"429":{"$ref":"#/components/responses/Error429"},"500":{"$ref":"#/components/responses/Error500"},"502":{"$ref":"#/components/responses/Error502"},"504":{"$ref":"#/components/responses/Error504"}}}},"/v1/x/dm/send":{"post":{"operationId":"x_dm_send","summary":"Send a DM","description":"Send a direct message on X from an account the user connected in the dashboard. Needs accountId, a recipient (handle or user id) and text, plus an idempotencyKey so a retry never sends twice. Costs 10 credits, charged only if X accepts the message. Tip: check the recipient with x.user first; if canDm is false the send will fail. Costs 10 credits.","tags":["x"],"x-credits":10,"x-mcp-tool":"x_dm_send","parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Unique key per write so a retry never acts twice.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"accountId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$","description":"Id of an X account you connected in the dashboard."},"recipientHandle":{"description":"Recipient handle. Pass this or recipientId.","type":"string"},"recipientId":{"description":"Recipient user id. Pass this or recipientHandle.","type":"string","pattern":"^\\d{1,25}$"},"text":{"type":"string","minLength":1,"maxLength":10000,"description":"Message text, up to 10,000 characters."}},"required":["accountId","text"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-charged":{"$ref":"#/components/headers/x-credits-charged"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"},"x-ratelimit-limit":{"$ref":"#/components/headers/x-ratelimit-limit"},"x-ratelimit-remaining":{"$ref":"#/components/headers/x-ratelimit-remaining"},"x-ratelimit-reset":{"$ref":"#/components/headers/x-ratelimit-reset"}},"content":{"application/json":{"schema":{"type":"object","required":["data","credits","requestId","cached"],"properties":{"data":{"$ref":"#/components/schemas/XWriteResult"},"credits":{"$ref":"#/components/schemas/Credits"},"requestId":{"type":"string","examples":["req_01JA7Q3V8K2N4P5R6S7T8V"]},"cached":{"type":"boolean"},"warnings":{"type":"array","items":{"$ref":"#/components/schemas/Warning"}}}}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"402":{"$ref":"#/components/responses/Error402"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"409":{"$ref":"#/components/responses/Error409"},"429":{"$ref":"#/components/responses/Error429"},"500":{"$ref":"#/components/responses/Error500"},"502":{"$ref":"#/components/responses/Error502"},"504":{"$ref":"#/components/responses/Error504"}}}},"/v1/x/actions/follow":{"post":{"operationId":"x_follow","summary":"Follow / unfollow","description":"Follow or unfollow an X account from a connected account. Needs accountId, a target (handle or user id), action follow or unfollow, and an idempotencyKey. Costs 5 credits on success. Tip: following a lead before a DM makes the DM land in their main inbox more often, but pace it; accounts have a daily action limit. Costs 5 credits.","tags":["x"],"x-credits":5,"x-mcp-tool":"x_follow","parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Unique key per write so a retry never acts twice.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"accountId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$","description":"Id of an X account you connected in the dashboard."},"action":{"default":"follow","description":"Follow or unfollow.","type":"string","enum":["follow","unfollow"]},"targetHandle":{"description":"Handle to act on. Pass this or targetId.","type":"string"},"targetId":{"description":"User id to act on. Pass this or targetHandle.","type":"string","pattern":"^\\d{1,25}$"}},"required":["accountId"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-charged":{"$ref":"#/components/headers/x-credits-charged"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"},"x-ratelimit-limit":{"$ref":"#/components/headers/x-ratelimit-limit"},"x-ratelimit-remaining":{"$ref":"#/components/headers/x-ratelimit-remaining"},"x-ratelimit-reset":{"$ref":"#/components/headers/x-ratelimit-reset"}},"content":{"application/json":{"schema":{"type":"object","required":["data","credits","requestId","cached"],"properties":{"data":{"$ref":"#/components/schemas/XWriteResult"},"credits":{"$ref":"#/components/schemas/Credits"},"requestId":{"type":"string","examples":["req_01JA7Q3V8K2N4P5R6S7T8V"]},"cached":{"type":"boolean"},"warnings":{"type":"array","items":{"$ref":"#/components/schemas/Warning"}}}}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"402":{"$ref":"#/components/responses/Error402"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"409":{"$ref":"#/components/responses/Error409"},"429":{"$ref":"#/components/responses/Error429"},"500":{"$ref":"#/components/responses/Error500"},"502":{"$ref":"#/components/responses/Error502"},"504":{"$ref":"#/components/responses/Error504"}}}},"/v1/x/actions/like":{"post":{"operationId":"x_like","summary":"Like / retweet","description":"Like or retweet a tweet from a connected X account. Needs accountId, tweetId (or tweet URL), action like or retweet, and an idempotencyKey. Costs 5 credits on success. Tip: liking a lead's recent tweet before a DM is a light, low-risk warm-up. Costs 5 credits.","tags":["x"],"x-credits":5,"x-mcp-tool":"x_like","parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Unique key per write so a retry never acts twice.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"accountId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$","description":"Id of an X account you connected in the dashboard."},"tweetId":{"description":"Tweet id or tweet URL.","type":"string"},"action":{"default":"like","description":"Like or retweet.","type":"string","enum":["like","retweet"]}},"required":["accountId","tweetId"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-charged":{"$ref":"#/components/headers/x-credits-charged"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"},"x-ratelimit-limit":{"$ref":"#/components/headers/x-ratelimit-limit"},"x-ratelimit-remaining":{"$ref":"#/components/headers/x-ratelimit-remaining"},"x-ratelimit-reset":{"$ref":"#/components/headers/x-ratelimit-reset"}},"content":{"application/json":{"schema":{"type":"object","required":["data","credits","requestId","cached"],"properties":{"data":{"$ref":"#/components/schemas/XWriteResult"},"credits":{"$ref":"#/components/schemas/Credits"},"requestId":{"type":"string","examples":["req_01JA7Q3V8K2N4P5R6S7T8V"]},"cached":{"type":"boolean"},"warnings":{"type":"array","items":{"$ref":"#/components/schemas/Warning"}}}}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"402":{"$ref":"#/components/responses/Error402"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"409":{"$ref":"#/components/responses/Error409"},"429":{"$ref":"#/components/responses/Error429"},"500":{"$ref":"#/components/responses/Error500"},"502":{"$ref":"#/components/responses/Error502"},"504":{"$ref":"#/components/responses/Error504"}}}},"/v1/x/tweets":{"post":{"operationId":"x_tweet","summary":"Post a tweet","description":"Post a tweet or a reply from a connected X account. Needs accountId, text (up to 280 characters) and an idempotencyKey; pass replyToTweetId to reply. Costs 5 credits on success. Tip: never post the same text twice; X rejects duplicates and that reply fails. Costs 5 credits.","tags":["x"],"x-credits":5,"x-mcp-tool":"x_tweet","parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Unique key per write so a retry never acts twice.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"accountId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$","description":"Id of an X account you connected in the dashboard."},"text":{"type":"string","minLength":1,"description":"Tweet text, up to 280 characters."},"replyToTweetId":{"description":"Tweet id or URL to reply to.","type":"string"}},"required":["accountId","text"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-charged":{"$ref":"#/components/headers/x-credits-charged"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"},"x-ratelimit-limit":{"$ref":"#/components/headers/x-ratelimit-limit"},"x-ratelimit-remaining":{"$ref":"#/components/headers/x-ratelimit-remaining"},"x-ratelimit-reset":{"$ref":"#/components/headers/x-ratelimit-reset"}},"content":{"application/json":{"schema":{"type":"object","required":["data","credits","requestId","cached"],"properties":{"data":{"$ref":"#/components/schemas/XWriteResult"},"credits":{"$ref":"#/components/schemas/Credits"},"requestId":{"type":"string","examples":["req_01JA7Q3V8K2N4P5R6S7T8V"]},"cached":{"type":"boolean"},"warnings":{"type":"array","items":{"$ref":"#/components/schemas/Warning"}}}}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"402":{"$ref":"#/components/responses/Error402"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"409":{"$ref":"#/components/responses/Error409"},"429":{"$ref":"#/components/responses/Error429"},"500":{"$ref":"#/components/responses/Error500"},"502":{"$ref":"#/components/responses/Error502"},"504":{"$ref":"#/components/responses/Error504"}}}},"/v1/search":{"get":{"operationId":"everywhere_search","summary":"Search Everywhere","description":"Search one keyword across Reddit and X at once and get one merged list of posts and tweets, each with platform, author, community, score, link and date. Costs 5 credits for a page from both platforms (less if one platform has no more pages). Tip: sort=new for monitoring; sort=top ranks each platform's most-engaged items fairly against each other. Costs up to 5 credits.","tags":["everywhere"],"x-credits":5,"x-mcp-tool":"everywhere_search","parameters":[{"name":"q","in":"query","required":true,"description":"Search text. Quotes and OR work on both platforms.","schema":{"type":"string"}},{"name":"sort","in":"query","required":false,"description":"new for monitoring; top ranks each platform's most engaged items fairly.","schema":{"default":"relevance","type":"string","enum":["relevance","new","top"]}},{"name":"time","in":"query","required":false,"description":"Time window.","schema":{"default":"month","type":"string","enum":["hour","day","week","month","year","all"]}},{"name":"limit","in":"query","required":false,"description":"Max rows per platform (1-50); a merged page holds up to twice this.","schema":{"default":20,"type":"integer","minimum":1,"maximum":50}},{"name":"nsfw","in":"query","required":false,"description":"Include adult Reddit posts. true needs the 18+ setting; the price is the same.","schema":{"type":["boolean","string"]}},{"name":"cursor","in":"query","required":false,"description":"Opaque cursor from the previous response's page.nextCursor.","schema":{"type":"string","minLength":1,"maxLength":2048}}],"responses":{"200":{"description":"Success","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-charged":{"$ref":"#/components/headers/x-credits-charged"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"},"x-ratelimit-limit":{"$ref":"#/components/headers/x-ratelimit-limit"},"x-ratelimit-remaining":{"$ref":"#/components/headers/x-ratelimit-remaining"},"x-ratelimit-reset":{"$ref":"#/components/headers/x-ratelimit-reset"}},"content":{"application/json":{"schema":{"type":"object","required":["data","credits","requestId","cached"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/Mention"}},"page":{"$ref":"#/components/schemas/PageInfo"},"credits":{"$ref":"#/components/schemas/Credits"},"requestId":{"type":"string","examples":["req_01JA7Q3V8K2N4P5R6S7T8V"]},"cached":{"type":"boolean"},"warnings":{"type":"array","items":{"$ref":"#/components/schemas/Warning"}}}}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"402":{"$ref":"#/components/responses/Error402"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"429":{"$ref":"#/components/responses/Error429"},"500":{"$ref":"#/components/responses/Error500"},"502":{"$ref":"#/components/responses/Error502"},"504":{"$ref":"#/components/responses/Error504"}}}},"/v1/leads":{"get":{"operationId":"everywhere_leads","summary":"Lead Finder","description":"Find people on Reddit and X who are asking for a recommendation, comparing tools or complaining about one in your category, ranked by an intent score from 0 to 1 with the phrases that matched. Costs 6 credits per page (4 if only one platform answers). Tip: start with your category in two or three words and add up to five competitors. Costs up to 6 credits.","tags":["everywhere"],"x-credits":6,"x-mcp-tool":"everywhere_leads","parameters":[{"name":"q","in":"query","required":true,"description":"Your product category or the problem it solves, e.g. crm or cold email. 1-60 characters.","schema":{"type":"string"}},{"name":"competitors","in":"query","required":false,"description":"Up to 5 tools people might switch away from, e.g. hubspot,pipedrive.","schema":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"style":"form","explode":false},{"name":"exclude","in":"query","required":false,"description":"Up to 10 words that disqualify an item.","schema":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"style":"form","explode":false},{"name":"time","in":"query","required":false,"description":"How far back to look.","schema":{"default":"month","type":"string","enum":["day","week","month","year"]}},{"name":"minScore","in":"query","required":false,"description":"Minimum intent score from 0 to 1.","schema":{"default":0.3,"type":"number","minimum":0,"maximum":1}},{"name":"intents","in":"query","required":false,"description":"Which intents to return. Default: all three.","schema":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"style":"form","explode":false},{"name":"cursor","in":"query","required":false,"description":"Opaque cursor from the previous response's page.nextCursor.","schema":{"type":"string","minLength":1,"maxLength":2048}},{"name":"subreddit","in":"query","required":false,"description":"Limit the Reddit side to one subreddit.","schema":{"type":"string"}},{"name":"lang","in":"query","required":false,"description":"Tweet language, 2 letters.","schema":{"default":"en","type":"string","pattern":"^[a-z]{2}$"}}],"responses":{"200":{"description":"Success","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-charged":{"$ref":"#/components/headers/x-credits-charged"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"},"x-ratelimit-limit":{"$ref":"#/components/headers/x-ratelimit-limit"},"x-ratelimit-remaining":{"$ref":"#/components/headers/x-ratelimit-remaining"},"x-ratelimit-reset":{"$ref":"#/components/headers/x-ratelimit-reset"}},"content":{"application/json":{"schema":{"type":"object","required":["data","credits","requestId","cached"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/Lead"}},"page":{"$ref":"#/components/schemas/PageInfo"},"credits":{"$ref":"#/components/schemas/Credits"},"requestId":{"type":"string","examples":["req_01JA7Q3V8K2N4P5R6S7T8V"]},"cached":{"type":"boolean"},"warnings":{"type":"array","items":{"$ref":"#/components/schemas/Warning"}}}}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"402":{"$ref":"#/components/responses/Error402"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"429":{"$ref":"#/components/responses/Error429"},"500":{"$ref":"#/components/responses/Error500"},"502":{"$ref":"#/components/responses/Error502"},"504":{"$ref":"#/components/responses/Error504"}}}},"/v1/mentions":{"get":{"operationId":"everywhere_mentions","summary":"Brand Mentions","description":"Find every recent mention of a brand or product name across Reddit posts, Reddit comments and X, merged newest first. Supports other spellings, exclusion words and your own accounts to skip. Costs 7 credits for a page from all three sources. Tip: add your own handles to excludeAuthors so you only see what others say. Costs up to 7 credits.","tags":["everywhere"],"x-credits":7,"x-mcp-tool":"everywhere_mentions","parameters":[{"name":"q","in":"query","required":true,"description":"Brand or product name. 1-100 characters.","schema":{"type":"string"}},{"name":"aliases","in":"query","required":false,"description":"Up to 5 other spellings, e.g. chatterapi.io.","schema":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"style":"form","explode":false},{"name":"exclude","in":"query","required":false,"description":"Up to 10 words that disqualify a mention.","schema":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"style":"form","explode":false},{"name":"excludeAuthors","in":"query","required":false,"description":"Up to 20 of your own accounts to skip (Reddit usernames or X handles).","schema":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"style":"form","explode":false},{"name":"time","in":"query","required":false,"description":"How far back to look.","schema":{"default":"week","type":"string","enum":["day","week","month"]}},{"name":"strict","in":"query","required":false,"description":"Keep only items whose text contains a term.","schema":{"type":["boolean","string"]}},{"name":"cursor","in":"query","required":false,"description":"Opaque cursor from the previous response's page.nextCursor.","schema":{"type":"string","minLength":1,"maxLength":2048}}],"responses":{"200":{"description":"Success","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-charged":{"$ref":"#/components/headers/x-credits-charged"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"},"x-ratelimit-limit":{"$ref":"#/components/headers/x-ratelimit-limit"},"x-ratelimit-remaining":{"$ref":"#/components/headers/x-ratelimit-remaining"},"x-ratelimit-reset":{"$ref":"#/components/headers/x-ratelimit-reset"}},"content":{"application/json":{"schema":{"type":"object","required":["data","credits","requestId","cached"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/Mention"}},"page":{"$ref":"#/components/schemas/PageInfo"},"credits":{"$ref":"#/components/schemas/Credits"},"requestId":{"type":"string","examples":["req_01JA7Q3V8K2N4P5R6S7T8V"]},"cached":{"type":"boolean"},"warnings":{"type":"array","items":{"$ref":"#/components/schemas/Warning"}}}}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"402":{"$ref":"#/components/responses/Error402"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"429":{"$ref":"#/components/responses/Error429"},"500":{"$ref":"#/components/responses/Error500"},"502":{"$ref":"#/components/responses/Error502"},"504":{"$ref":"#/components/responses/Error504"}}}},"/v1/run/{toolId}":{"post":{"operationId":"run_tool","summary":"Run any tool by id","description":"Generic alias for agents and SDKs: the body is the tool's arguments object. Costs what the tool costs.","tags":["account"],"parameters":[{"name":"toolId","in":"path","required":true,"description":"Dotted tool id, e.g. reddit.search.","schema":{"type":"string","enum":["reddit.search","reddit.nsfw_search","reddit.search_comments","reddit.search_media","reddit.scrape","reddit.thread","reddit.communities","reddit.nsfw_communities","reddit.subreddit","reddit.subreddit_posts","reddit.user","reddit.user_status","reddit.user_comments","reddit.user_posts","reddit.user_search","reddit.user_analysis","reddit.leads","x.user","x.follow_check","x.user_search","x.followers","x.following","x.verified_followers","x.tweets","x.mentions","x.search","x.tweet_detail","x.replies","x.retweeters","x.list_members","x.leads","x.dm_send","x.follow","x.like","x.tweet","everywhere.search","everywhere.leads","everywhere.mentions"]}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"responses":{"200":{"description":"Success","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-charged":{"$ref":"#/components/headers/x-credits-charged"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"},"x-ratelimit-limit":{"$ref":"#/components/headers/x-ratelimit-limit"},"x-ratelimit-remaining":{"$ref":"#/components/headers/x-ratelimit-remaining"},"x-ratelimit-reset":{"$ref":"#/components/headers/x-ratelimit-reset"}},"content":{"application/json":{"schema":{"type":"object","required":["data","credits","requestId","cached"],"properties":{"data":{},"credits":{"$ref":"#/components/schemas/Credits"},"requestId":{"type":"string","examples":["req_01JA7Q3V8K2N4P5R6S7T8V"]},"cached":{"type":"boolean"},"warnings":{"type":"array","items":{"$ref":"#/components/schemas/Warning"}}}}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"402":{"$ref":"#/components/responses/Error402"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"429":{"$ref":"#/components/responses/Error429"},"500":{"$ref":"#/components/responses/Error500"},"502":{"$ref":"#/components/responses/Error502"},"504":{"$ref":"#/components/responses/Error504"}}}},"/v1/account":{"get":{"operationId":"account","summary":"Account and balance","description":"Plan, rate limit, 18+ setting and credit balance for the key's account. Free.","tags":["account"],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","required":["data","credits","requestId","cached"],"properties":{"data":{"type":"object"},"credits":{"$ref":"#/components/schemas/Credits"},"requestId":{"type":"string","examples":["req_01JA7Q3V8K2N4P5R6S7T8V"]},"cached":{"type":"boolean"},"warnings":{"type":"array","items":{"$ref":"#/components/schemas/Warning"}}}}}}},"401":{"$ref":"#/components/responses/Error401"},"500":{"$ref":"#/components/responses/Error500"}}}},"/v1/usage":{"get":{"operationId":"usage","summary":"Usage by tool and day","description":"Credits spent per tool and per day for the key's account. Free.","tags":["account"],"parameters":[{"name":"days","in":"query","required":false,"description":"Days to include.","schema":{"type":"integer","default":7,"minimum":1,"maximum":90}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object"}}}},"401":{"$ref":"#/components/responses/Error401"},"500":{"$ref":"#/components/responses/Error500"}}}},"/v1/health":{"get":{"operationId":"health","summary":"Health check","description":"Returns ok, the version and the server time. No key needed.","tags":["account"],"security":[],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"ok":{"type":"boolean"},"version":{"type":"string"},"time":{"type":"string"}}}}}},"500":{"$ref":"#/components/responses/Error500"}}}}},"components":{"securitySchemes":{"bearer":{"type":"http","scheme":"bearer","description":"ca_live_ or ca_test_ key"}},"schemas":{"RedditPost":{"type":"object","properties":{"id":{"type":"string"},"fullname":{"type":"string"},"title":{"type":"string"},"body":{"type":"string"},"author":{"type":["string","null"]},"subreddit":{"type":"string"},"permalink":{"type":"string"},"url":{"type":"string"},"externalUrl":{"type":["string","null"]},"score":{"type":["number","null"]},"numComments":{"type":["number","null"]},"upvoteRatio":{"type":["number","null"]},"createdAt":{"type":"string","description":"ISO 8601 UTC timestamp"},"nsfw":{"type":"boolean"},"locked":{"type":["boolean","null"]},"media":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["image","video","gallery"]},"urls":{"type":"array","items":{"type":"string"}}},"required":["type","urls"],"additionalProperties":false},{"type":"null"}]}},"required":["id","fullname","title","body","author","subreddit","permalink","url","externalUrl","score","numComments","upvoteRatio","createdAt","nsfw","locked","media"],"additionalProperties":false},"RedditComment":{"type":"object","properties":{"id":{"type":"string"},"fullname":{"type":"string"},"parentId":{"type":["string","null"]},"postId":{"type":["string","null"]},"postTitle":{"type":["string","null"]},"author":{"type":["string","null"]},"body":{"type":"string"},"bodyTruncated":{"type":"boolean"},"score":{"type":["number","null"]},"subreddit":{"type":["string","null"]},"permalink":{"type":["string","null"]},"url":{"type":["string","null"]},"createdAt":{"type":"string","description":"ISO 8601 UTC timestamp"}},"required":["id","fullname","parentId","postId","postTitle","author","body","bodyTruncated","score","subreddit","permalink","url","createdAt"],"additionalProperties":false},"RedditThread":{"type":"object","properties":{"post":{"anyOf":[{"type":"object","properties":{"id":{"type":"string"},"fullname":{"type":"string"},"title":{"type":"string"},"body":{"type":"string"},"author":{"type":["string","null"]},"subreddit":{"type":"string"},"permalink":{"type":"string"},"url":{"type":"string"},"externalUrl":{"type":["string","null"]},"score":{"type":["number","null"]},"numComments":{"type":["number","null"]},"upvoteRatio":{"type":["number","null"]},"createdAt":{"type":"string","description":"ISO 8601 UTC timestamp"},"nsfw":{"type":"boolean"},"locked":{"type":["boolean","null"]},"media":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["image","video","gallery"]},"urls":{"type":"array","items":{"type":"string"}}},"required":["type","urls"],"additionalProperties":false},{"type":"null"}]}},"required":["id","fullname","title","body","author","subreddit","permalink","url","externalUrl","score","numComments","upvoteRatio","createdAt","nsfw","locked","media"],"additionalProperties":false},{"type":"null"}]},"comments":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"fullname":{"type":"string"},"parentId":{"type":["string","null"]},"postId":{"type":["string","null"]},"postTitle":{"type":["string","null"]},"author":{"type":["string","null"]},"body":{"type":"string"},"bodyTruncated":{"type":"boolean"},"score":{"type":["number","null"]},"subreddit":{"type":["string","null"]},"permalink":{"type":["string","null"]},"url":{"type":["string","null"]},"createdAt":{"type":"string","description":"ISO 8601 UTC timestamp"}},"required":["id","fullname","parentId","postId","postTitle","author","body","bodyTruncated","score","subreddit","permalink","url","createdAt"],"additionalProperties":false}},"unloadedReplyStubs":{"type":"number"},"reportedCommentCount":{"type":["number","null"]}},"required":["post","comments","unloadedReplyStubs","reportedCommentCount"],"additionalProperties":false},"Subreddit":{"type":"object","properties":{"name":{"type":"string"},"title":{"type":["string","null"]},"description":{"type":["string","null"]},"subscribers":{"type":["number","null"]},"createdAt":{"anyOf":[{"type":"string","description":"ISO 8601 UTC timestamp"},{"type":"null"}]},"nsfw":{"type":["boolean","null"]},"url":{"type":"string"},"rules":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"title":{"type":"string"},"description":{"type":"string"},"appliesTo":{"type":["string","null"]}},"required":["title","description","appliesTo"],"additionalProperties":false}},{"type":"null"}]},"moderators":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"since":{"anyOf":[{"type":"string","description":"ISO 8601 UTC timestamp"},{"type":"null"}]}},"required":["name","since"],"additionalProperties":false}},{"type":"null"}]},"posting":{"anyOf":[{"type":"object","properties":{"submissionType":{"type":["string","null"]},"restrictPosting":{"type":["boolean","null"]},"linkFlairEnabled":{"type":["boolean","null"]},"allowImages":{"type":["boolean","null"]},"allowVideos":{"type":["boolean","null"]},"allowPolls":{"type":["boolean","null"]},"allowGalleries":{"type":["boolean","null"]},"submitText":{"type":["string","null"]}},"required":["submissionType","restrictPosting","linkFlairEnabled","allowImages","allowVideos","allowPolls","allowGalleries","submitText"],"additionalProperties":false},{"type":"null"}]}},"required":["name","title","description","subscribers","createdAt","nsfw","url","rules","moderators","posting"],"additionalProperties":false},"RedditUser":{"type":"object","properties":{"username":{"type":"string"},"id":{"type":["string","null"]},"createdAt":{"anyOf":[{"type":"string","description":"ISO 8601 UTC timestamp"},{"type":"null"}]},"karma":{"type":"object","properties":{"total":{"type":["number","null"]},"post":{"type":["number","null"]},"comment":{"type":["number","null"]}},"required":["total","post","comment"],"additionalProperties":false},"bio":{"type":["string","null"]},"avatarUrl":{"type":["string","null"]},"badges":{"anyOf":[{"type":"object","properties":{"verified":{"type":"boolean"},"employee":{"type":"boolean"},"moderator":{"type":"boolean"},"premium":{"type":"boolean"}},"additionalProperties":false},{"type":"null"}]}},"required":["username","id","createdAt","karma","bio","avatarUrl","badges"],"additionalProperties":false},"UserStatus":{"type":"object","properties":{"username":{"type":"string"},"state":{"type":"string","enum":["active","suspended","not_found_or_banned","unknown"]},"exists":{"type":["boolean","null"]}},"required":["username","state","exists"],"additionalProperties":false},"RedditUserAnalysis":{"type":"object","properties":{"username":{"type":"string"},"createdAt":{"anyOf":[{"type":"string","description":"ISO 8601 UTC timestamp"},{"type":"null"}]},"accountAgeDays":{"type":["number","null"]},"karma":{"type":"object","properties":{"total":{"type":["number","null"]},"post":{"type":["number","null"]},"comment":{"type":["number","null"]}},"required":["total","post","comment"],"additionalProperties":false},"sample":{"type":"object","properties":{"posts":{"type":"number"},"comments":{"type":"number"},"items":{"type":"number"},"postShare":{"type":["number","null"]},"commentShare":{"type":["number","null"]},"oldestAt":{"anyOf":[{"type":"string","description":"ISO 8601 UTC timestamp"},{"type":"null"}]},"newestAt":{"anyOf":[{"type":"string","description":"ISO 8601 UTC timestamp"},{"type":"null"}]},"spanDays":{"type":["number","null"]},"adultSkipped":{"type":"number"}},"required":["posts","comments","items","postShare","commentShare","oldestAt","newestAt","spanDays","adultSkipped"],"additionalProperties":false},"topSubreddits":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"posts":{"type":"number"},"comments":{"type":"number"},"items":{"type":"number"},"share":{"type":"number"}},"required":["name","posts","comments","items","share"],"additionalProperties":false}},"activityByHour":{"type":"array","items":{"type":"number"}},"activityByWeekday":{"type":"array","items":{"type":"number"}},"score":{"type":"object","properties":{"average":{"type":["number","null"]},"median":{"type":["number","null"]},"scored":{"type":"number"}},"required":["average","median","scored"],"additionalProperties":false},"topPosts":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"title":{"type":"string"},"subreddit":{"type":"string"},"score":{"type":["number","null"]},"numComments":{"type":["number","null"]},"createdAt":{"type":"string","description":"ISO 8601 UTC timestamp"},"url":{"type":"string"}},"required":["id","title","subreddit","score","numComments","createdAt","url"],"additionalProperties":false}}},"required":["username","createdAt","accountAgeDays","karma","sample","topSubreddits","activityByHour","activityByWeekday","score","topPosts"],"additionalProperties":false},"XUser":{"type":"object","properties":{"id":{"type":"string"},"handle":{"type":"string"},"name":{"type":"string"},"bio":{"type":["string","null"]},"followers":{"type":["number","null"]},"following":{"type":["number","null"]},"tweets":{"type":["number","null"]},"verified":{"type":["boolean","null"]},"blueVerified":{"type":["boolean","null"]},"canDm":{"type":["boolean","null"]},"protected":{"type":["boolean","null"]},"location":{"type":["string","null"]},"url":{"type":["string","null"]},"avatarUrl":{"type":["string","null"]},"createdAt":{"anyOf":[{"type":"string","description":"ISO 8601 UTC timestamp"},{"type":"null"}]}},"required":["id","handle","name","bio","followers","following","tweets","verified","blueVerified","canDm","protected","location","url","avatarUrl","createdAt"],"additionalProperties":false},"XFollowCheck":{"type":"object","properties":{"source":{"type":"string"},"target":{"type":"string"},"sourceFollowsTarget":{"type":"boolean"},"targetFollowsSource":{"type":"boolean"},"mutual":{"type":"boolean"},"canDm":{"type":["boolean","null"]}},"required":["source","target","sourceFollowsTarget","targetFollowsSource","mutual","canDm"],"additionalProperties":false},"XTweet":{"type":"object","properties":{"id":{"type":"string"},"text":{"type":"string"},"url":{"type":"string"},"createdAt":{"anyOf":[{"type":"string","description":"ISO 8601 UTC timestamp"},{"type":"null"}]},"lang":{"type":["string","null"]},"likes":{"type":["number","null"]},"retweets":{"type":["number","null"]},"replies":{"type":["number","null"]},"quotes":{"type":["number","null"]},"views":{"type":["number","null"]},"bookmarks":{"type":["number","null"]},"isReply":{"type":"boolean"},"inReplyToId":{"type":["string","null"]},"conversationId":{"type":["string","null"]},"isRetweet":{"type":"boolean"},"quotedTweetId":{"type":["string","null"]},"author":{"type":"object","properties":{"id":{"type":"string"},"handle":{"type":"string"},"name":{"type":"string"},"bio":{"type":["string","null"]},"followers":{"type":["number","null"]},"following":{"type":["number","null"]},"tweets":{"type":["number","null"]},"verified":{"type":["boolean","null"]},"blueVerified":{"type":["boolean","null"]},"canDm":{"type":["boolean","null"]},"protected":{"type":["boolean","null"]},"location":{"type":["string","null"]},"url":{"type":["string","null"]},"avatarUrl":{"type":["string","null"]},"createdAt":{"anyOf":[{"type":"string","description":"ISO 8601 UTC timestamp"},{"type":"null"}]}},"required":["id","handle","name","bio","followers","following","tweets","verified","blueVerified","canDm","protected","location","url","avatarUrl","createdAt"],"additionalProperties":false},"media":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string"},"url":{"type":"string"}},"required":["type","url"],"additionalProperties":false}}},"required":["id","text","url","createdAt","lang","likes","retweets","replies","quotes","views","bookmarks","isReply","inReplyToId","conversationId","isRetweet","quotedTweetId","author","media"],"additionalProperties":false},"Mention":{"type":"object","properties":{"platform":{"type":"string","enum":["reddit","x"]},"kind":{"type":"string","enum":["post","comment","tweet"]},"id":{"type":"string"},"url":{"type":"string"},"text":{"type":"string"},"author":{"type":["string","null"]},"authorUrl":{"type":["string","null"]},"community":{"type":["string","null"]},"score":{"type":["number","null"]},"createdAt":{"anyOf":[{"type":"string","description":"ISO 8601 UTC timestamp"},{"type":"null"}]}},"required":["platform","kind","id","url","text","author","authorUrl","community","score","createdAt"],"additionalProperties":false},"Lead":{"type":"object","properties":{"platform":{"type":"string","enum":["reddit","x"]},"kind":{"type":"string","enum":["post","comment","tweet"]},"id":{"type":"string"},"url":{"type":"string"},"text":{"type":"string"},"author":{"type":["string","null"]},"authorUrl":{"type":["string","null"]},"community":{"type":["string","null"]},"score":{"type":["number","null"]},"createdAt":{"anyOf":[{"type":"string","description":"ISO 8601 UTC timestamp"},{"type":"null"}]},"intent":{"type":"string","enum":["asking_for_recommendation","comparing_tools","complaining_about_tool","other"]},"intentScore":{"type":"number","minimum":0,"maximum":1},"matchedTerms":{"type":"array","items":{"type":"string"}}},"required":["platform","kind","id","url","text","author","authorUrl","community","score","createdAt","intent","intentScore","matchedTerms"],"additionalProperties":false},"PageInfo":{"type":"object","properties":{"nextCursor":{"type":["string","null"]},"hasMore":{"type":"boolean"}},"required":["nextCursor","hasMore"],"additionalProperties":false},"Warning":{"type":"object","properties":{"code":{"type":"string","enum":["partial_data","stale_data","platform_unavailable","source_unavailable"]},"platform":{"type":"string","enum":["reddit","x"]},"source":{"type":"string"},"fields":{"type":"array","items":{"type":"string"}}},"required":["code"],"additionalProperties":false},"Credits":{"type":"object","required":["charged","remaining"],"properties":{"charged":{"type":"integer"},"remaining":{"type":"integer"}}}},"headers":{"x-request-id":{"description":"request id","schema":{"type":"string"}},"x-credits-charged":{"description":"credits charged","schema":{"type":"integer"}},"x-credits-remaining":{"description":"credits remaining","schema":{"type":"integer"}},"x-ratelimit-limit":{"description":"ratelimit limit","schema":{"type":"integer"}},"x-ratelimit-remaining":{"description":"ratelimit remaining","schema":{"type":"integer"}},"x-ratelimit-reset":{"description":"ratelimit reset","schema":{"type":"integer"}}},"responses":{"Error400":{"description":"Bad request: invalid_input","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"}},"content":{"application/json":{"schema":{"type":"object","required":["error","requestId"],"properties":{"error":{"type":"object","required":["code","message","retryable","docsUrl"],"properties":{"code":{"type":"string","enum":["invalid_input"]},"message":{"type":"string"},"retryable":{"type":"boolean"},"docsUrl":{"type":"string","format":"uri"},"topupUrl":{"type":"string","format":"uri"},"retryAfter":{"type":"integer"},"instructionsForAgent":{"type":"string"}}},"requestId":{"type":"string"}}},"example":{"error":{"code":"invalid_input","message":"See docsUrl.","retryable":false,"docsUrl":"https://chatterapi.com/docs/errors#invalid_input"},"requestId":"req_01JA7Q3V8K2N4P5R6S7T8V"}}}},"Error401":{"description":"Unauthorized: missing_key, invalid_key, key_revoked","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"}},"content":{"application/json":{"schema":{"type":"object","required":["error","requestId"],"properties":{"error":{"type":"object","required":["code","message","retryable","docsUrl"],"properties":{"code":{"type":"string","enum":["missing_key","invalid_key","key_revoked"]},"message":{"type":"string"},"retryable":{"type":"boolean"},"docsUrl":{"type":"string","format":"uri"},"topupUrl":{"type":"string","format":"uri"},"retryAfter":{"type":"integer"},"instructionsForAgent":{"type":"string"}}},"requestId":{"type":"string"}}},"example":{"error":{"code":"missing_key","message":"See docsUrl.","retryable":false,"docsUrl":"https://chatterapi.com/docs/errors#missing_key","instructionsForAgent":"Ask the user for their ChatterAPI key (it starts with ca_live_). Do not retry without one."},"requestId":"req_01JA7Q3V8K2N4P5R6S7T8V"}}}},"Error402":{"description":"Payment required: insufficient_credits","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"}},"content":{"application/json":{"schema":{"type":"object","required":["error","requestId"],"properties":{"error":{"type":"object","required":["code","message","retryable","docsUrl"],"properties":{"code":{"type":"string","enum":["insufficient_credits"]},"message":{"type":"string"},"retryable":{"type":"boolean"},"docsUrl":{"type":"string","format":"uri"},"topupUrl":{"type":"string","format":"uri"},"retryAfter":{"type":"integer"},"instructionsForAgent":{"type":"string"}}},"requestId":{"type":"string"}}},"example":{"error":{"code":"insufficient_credits","message":"See docsUrl.","retryable":false,"docsUrl":"https://chatterapi.com/docs/errors#insufficient_credits","topupUrl":"https://chatterapi.com/dashboard/billing","instructionsForAgent":"The user's ChatterAPI balance is too low for this call. Tell them and share the topupUrl. Do not retry."},"requestId":"req_01JA7Q3V8K2N4P5R6S7T8V"}}}},"Error403":{"description":"Forbidden: account_suspended, scope_denied","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"}},"content":{"application/json":{"schema":{"type":"object","required":["error","requestId"],"properties":{"error":{"type":"object","required":["code","message","retryable","docsUrl"],"properties":{"code":{"type":"string","enum":["account_suspended","scope_denied"]},"message":{"type":"string"},"retryable":{"type":"boolean"},"docsUrl":{"type":"string","format":"uri"},"topupUrl":{"type":"string","format":"uri"},"retryAfter":{"type":"integer"},"instructionsForAgent":{"type":"string"}}},"requestId":{"type":"string"}}},"example":{"error":{"code":"account_suspended","message":"See docsUrl.","retryable":false,"docsUrl":"https://chatterapi.com/docs/errors#account_suspended","instructionsForAgent":"This ChatterAPI account is suspended. Tell the user to contact support. Do not retry."},"requestId":"req_01JA7Q3V8K2N4P5R6S7T8V"}}}},"Error404":{"description":"Not found: not_found","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"}},"content":{"application/json":{"schema":{"type":"object","required":["error","requestId"],"properties":{"error":{"type":"object","required":["code","message","retryable","docsUrl"],"properties":{"code":{"type":"string","enum":["not_found"]},"message":{"type":"string"},"retryable":{"type":"boolean"},"docsUrl":{"type":"string","format":"uri"},"topupUrl":{"type":"string","format":"uri"},"retryAfter":{"type":"integer"},"instructionsForAgent":{"type":"string"}}},"requestId":{"type":"string"}}},"example":{"error":{"code":"not_found","message":"See docsUrl.","retryable":false,"docsUrl":"https://chatterapi.com/docs/errors#not_found"},"requestId":"req_01JA7Q3V8K2N4P5R6S7T8V"}}}},"Error409":{"description":"Conflict: x_account_required, x_account_needs_reconnect","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"}},"content":{"application/json":{"schema":{"type":"object","required":["error","requestId"],"properties":{"error":{"type":"object","required":["code","message","retryable","docsUrl"],"properties":{"code":{"type":"string","enum":["x_account_required","x_account_needs_reconnect"]},"message":{"type":"string"},"retryable":{"type":"boolean"},"docsUrl":{"type":"string","format":"uri"},"topupUrl":{"type":"string","format":"uri"},"retryAfter":{"type":"integer"},"instructionsForAgent":{"type":"string"}}},"requestId":{"type":"string"}}},"example":{"error":{"code":"x_account_required","message":"See docsUrl.","retryable":false,"docsUrl":"https://chatterapi.com/docs/errors#x_account_required","instructionsForAgent":"This X action needs a connected X account. Ask the user to connect one on the Accounts page and pass its accountId."},"requestId":"req_01JA7Q3V8K2N4P5R6S7T8V"}}}},"Error429":{"description":"Too many requests: rate_limited","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"}},"content":{"application/json":{"schema":{"type":"object","required":["error","requestId"],"properties":{"error":{"type":"object","required":["code","message","retryable","docsUrl"],"properties":{"code":{"type":"string","enum":["rate_limited"]},"message":{"type":"string"},"retryable":{"type":"boolean"},"docsUrl":{"type":"string","format":"uri"},"topupUrl":{"type":"string","format":"uri"},"retryAfter":{"type":"integer"},"instructionsForAgent":{"type":"string"}}},"requestId":{"type":"string"}}},"example":{"error":{"code":"rate_limited","message":"See docsUrl.","retryable":true,"docsUrl":"https://chatterapi.com/docs/errors#rate_limited","instructionsForAgent":"Too many requests per second. Wait retryAfter seconds, then retry once."},"requestId":"req_01JA7Q3V8K2N4P5R6S7T8V"}}}},"Error500":{"description":"Internal error: internal","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"}},"content":{"application/json":{"schema":{"type":"object","required":["error","requestId"],"properties":{"error":{"type":"object","required":["code","message","retryable","docsUrl"],"properties":{"code":{"type":"string","enum":["internal"]},"message":{"type":"string"},"retryable":{"type":"boolean"},"docsUrl":{"type":"string","format":"uri"},"topupUrl":{"type":"string","format":"uri"},"retryAfter":{"type":"integer"},"instructionsForAgent":{"type":"string"}}},"requestId":{"type":"string"}}},"example":{"error":{"code":"internal","message":"See docsUrl.","retryable":true,"docsUrl":"https://chatterapi.com/docs/errors#internal"},"requestId":"req_01JA7Q3V8K2N4P5R6S7T8V"}}}},"Error502":{"description":"Bad gateway: upstream_error","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"}},"content":{"application/json":{"schema":{"type":"object","required":["error","requestId"],"properties":{"error":{"type":"object","required":["code","message","retryable","docsUrl"],"properties":{"code":{"type":"string","enum":["upstream_error"]},"message":{"type":"string"},"retryable":{"type":"boolean"},"docsUrl":{"type":"string","format":"uri"},"topupUrl":{"type":"string","format":"uri"},"retryAfter":{"type":"integer"},"instructionsForAgent":{"type":"string"}}},"requestId":{"type":"string"}}},"example":{"error":{"code":"upstream_error","message":"See docsUrl.","retryable":true,"docsUrl":"https://chatterapi.com/docs/errors#upstream_error"},"requestId":"req_01JA7Q3V8K2N4P5R6S7T8V"}}}},"Error504":{"description":"Gateway timeout: upstream_timeout","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"}},"content":{"application/json":{"schema":{"type":"object","required":["error","requestId"],"properties":{"error":{"type":"object","required":["code","message","retryable","docsUrl"],"properties":{"code":{"type":"string","enum":["upstream_timeout"]},"message":{"type":"string"},"retryable":{"type":"boolean"},"docsUrl":{"type":"string","format":"uri"},"topupUrl":{"type":"string","format":"uri"},"retryAfter":{"type":"integer"},"instructionsForAgent":{"type":"string"}}},"requestId":{"type":"string"}}},"example":{"error":{"code":"upstream_timeout","message":"See docsUrl.","retryable":true,"docsUrl":"https://chatterapi.com/docs/errors#upstream_timeout"},"requestId":"req_01JA7Q3V8K2N4P5R6S7T8V"}}}}}}}