{"uid":"cap_sJWR9HO5FDq-RnsjgnF8L","slug":"botsmith-x-kol-watchlist-monitor-67b6261d","name":"botsmith X KOL Watchlist Monitor","description":"X KOL Watchlist Monitor ($0.05/call): Watch up to 15 X (Twitter) accounts with one call: every new post from the list since your last poll, above your engagement floor, with retweets and crypto-spam (airdrop/giveaway/presale bait) filtered out and duplicates removed. Pass the returned newestId back as sinceId to get only what is new - replaces the search + filter + dedupe + paging loop KOL-monitoring agents build by hand. No X account or API key needed.","url":"https://x402.botsmith.dev/x/watchlist?utm_source=zero.xyz","method":"GET","headers":{},"bodySchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["input"],"properties":{"input":{"type":"object","required":["type","method"],"properties":{"type":{"type":"string","const":"http"},"method":{"enum":["GET"],"type":"string"},"queryParams":{"type":"object","required":["handles","minFaves","lang","filter"],"properties":{"lang":{"type":"string","default":"en","pattern":"^[a-z]{2}$","description":"Restrict to posts in this language"},"filter":{"enum":["spam","none"],"type":"string","default":"spam","description":"\"spam\" excludes airdrop/giveaway/presale bait; \"none\" returns everything"},"handles":{"type":"string","pattern":"^@?[A-Za-z0-9_]{1,15}(,\\s?@?[A-Za-z0-9_]{1,15}){0,14}$","description":"Comma-separated list of up to 15 X handles to monitor, with or without leading @"},"sinceId":{"type":"string","pattern":"^[0-9]{1,25}$","description":"Only return posts newer than this id; pass the newestId from your last poll"},"minFaves":{"type":"integer","default":5,"maximum":100000,"minimum":0,"description":"Minimum likes a post needs to be included (engagement floor)"}},"additionalProperties":false}},"additionalProperties":false},"output":{"type":"object","required":["type"],"properties":{"type":{"type":"string"},"example":{"type":"object","required":["posts","newestId","complete","query","polledAt"],"properties":{"posts":{"type":"array","items":{"type":"object","required":["id","url","text","createdAt","lang","author","metrics","hashtags","links","mentions"],"properties":{"id":{"type":"string"},"url":{"anyOf":[{"type":"string"},{"type":"null"}]},"lang":{"anyOf":[{"type":"string"},{"type":"null"}]},"text":{"type":"string"},"links":{"type":"array","items":{"type":"string"},"description":"Expanded outbound URLs"},"author":{"type":"object","required":["handle","name","id"],"properties":{"id":{"anyOf":[{"type":"string"},{"type":"null"}]},"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"handle":{"anyOf":[{"type":"string"},{"type":"null"}]}},"additionalProperties":false},"metrics":{"type":"object","required":["likes","retweets","replies","quotes","views"],"properties":{"likes":{"anyOf":[{"type":"integer","maximum":9007199254740991,"minimum":-9007199254740991},{"type":"null"}]},"views":{"anyOf":[{"type":"integer","maximum":9007199254740991,"minimum":-9007199254740991},{"type":"null"}]},"quotes":{"anyOf":[{"type":"integer","maximum":9007199254740991,"minimum":-9007199254740991},{"type":"null"}]},"replies":{"anyOf":[{"type":"integer","maximum":9007199254740991,"minimum":-9007199254740991},{"type":"null"}]},"retweets":{"anyOf":[{"type":"integer","maximum":9007199254740991,"minimum":-9007199254740991},{"type":"null"}]}},"additionalProperties":false},"hashtags":{"type":"array","items":{"type":"string"}},"mentions":{"type":"array","items":{"type":"string"},"description":"Mentioned handles"},"createdAt":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"ISO 8601"}},"additionalProperties":false},"description":"New posts, newest first, deduped"},"query":{"type":"string","description":"The search query executed upstream, for transparency"},"complete":{"type":"boolean","description":"False when more new posts exist than one call could fetch; poll again to catch up"},"newestId":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Pass back as sinceId on your next poll"},"polledAt":{"type":"string","description":"ISO 8601 time of this poll"}},"additionalProperties":false}}}}},"responseSchema":{"type":"json","example":{"posts":[{"id":"1846987139428634858","url":"https://x.com/example/status/1846987139428634858","lang":"en","text":"Shipping the new agent payments stack today. HTTP 402 is finally real.","links":["https://x402.org"],"author":{"id":"44196397","name":"Example Dev","handle":"example"},"metrics":{"likes":1200,"views":250000,"quotes":12,"replies":85,"retweets":340},"hashtags":["x402"],"mentions":["coinbase"],"createdAt":"2026-07-01T07:00:30.000Z"}],"query":"(from:aeyakovenko OR from:0xMert_ OR from:blknoiz06) min_faves:5 lang:en -filter:retweets -airdrop -giveaway -presale -\"drop your\" -\"gm family\" -winner","complete":true,"newestId":"1846987139428634858","polledAt":"2026-07-01T07:05:00.000Z"}},"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.05","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.05/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.05","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.05","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_QW8UqeRU8oA7qLlOgc7Gu","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.05","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Polls up to 15 X (Twitter) accounts for new posts since a given ID, filtered by engagement floor and spam type, returning deduplicated results with a cursor for incremental polling.","exampleAgentPrompt":"Watch these 15 crypto influencers on X — @elonmusk, @VitalikButerin, @cz_binance, @SBF_FTX, @aantonop, @balajis, @naval, @APompliano, @RaoulGMI, @CathieDWood, @novogratz, @woonomic, @PeterSchiff, @NickSzabo4, @TuurDemeester — only show me English posts with at least 50 likes, filter out spam, and start from post ID 1800000000000000000 so I only get what's new since my last check.","exampleUseCases":[{"title":"Crypto influencer feed for trading agent","prompt":"Monitor these 10 crypto KOLs — @elonmusk, @VitalikButerin, @cz_binance, @aantonop, @balajis, @naval, @APompliano, @RaoulGMI, @CathieDWood, @novogratz — for any new English posts with at least 100 likes, filter out airdrop and giveaway spam, and pick up from tweet ID 1799000000000000000 so we don't re-process anything."},{"title":"Newsletter curation from thought leaders","prompt":"Pull the latest posts from @paulg, @naval, @pmarca, @benedictevans, and @stratechery since post ID 1801000000000000000, only in English, with a minimum of 20 likes, and skip any spam — I want to curate the best new ideas for my weekly newsletter."},{"title":"Hourly KOL alert bot for a Telegram channel","prompt":"Every hour, check @DegenerateNews, @AltcoinSherpa, @Pentosh1, @CryptoCapo_, and @IncomeSharks for new English tweets with at least 10 likes since the last newestId I give you, and filter out all airdrop and presale bait — I'll push the results to my Telegram alert channel."}],"resultDescription":"Returns a JSON object containing: an array of posts (each with id, url, text, createdAt, lang, author object with handle/name/id, engagement metrics, hashtags, outbound links, and mentions), a newestId string to use as sinceId on the next poll, a complete flag indicating whether all results were returned, the query parameters used, and a polledAt timestamp.","failureModes":["Invalid handles format returns validation error — handles must be comma-separated, 1-15 accounts, valid X handle format","sinceId not numeric or out of range returns schema validation error","Language code not a valid two-letter ISO code returns error","minFaves out of range (above 100000) returns validation error","All posts filtered out by spam or engagement floor returns empty posts array with valid newestId","X/Twitter upstream unavailability causes fetch failure","Payment not completed results in 402 response before data is returned"],"whenToPreferThis":"Choose this endpoint when you need to monitor multiple X accounts (up to 15) in a single call with built-in spam filtering, engagement thresholds, and incremental cursor support — eliminating the need to build your own search, deduplication, retweet filtering, and paging logic. Prefer it over raw X API or search endpoints when you want a zero-setup KOL monitoring loop that requires no X account or API key, and when crypto spam filtering is important. Use the sibling X Tweet Search endpoint instead if you need arbitrary advanced-search query syntax beyond a fixed handle list.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-10-10T06:38:22.386Z","isFirstParty":false,"canonicalSlug":"botsmith-x-kol-watchlist-monitor-67b6261d"}