{"uid":"cap_3JQuu9w1c3rj03YFVjtqm","slug":"bluesky-user-likes-feed-5b1d516e","name":"Bluesky User Likes Feed","description":"Get the posts a Bluesky user has liked, newest first.","url":"https://x402.apidirect.io/v1/bluesky/user/likes?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","HEAD","DELETE"],"type":"string"},"queryParams":{"type":"object","required":[],"properties":{"url":{"type":"string","maxLength":500,"description":"Bluesky profile URL, e.g. https://bsky.app/profile/bsky.app (max 500 characters). Provide either username or url."},"pages":{"type":"integer","default":1,"maximum":20,"minimum":1,"description":"Number of pages to fetch and merge into one response (1-20, billed per page returned). Each page returns up to 50 results. Fetching stops early when there are no more results."},"username":{"type":"string","maxLength":100,"description":"Bluesky handle, e.g. bsky.app, with or without leading @, or the account's DID (max 100 characters). Provide either username or url."},"get_sentiment":{"type":"boolean","default":false,"description":"Set to true to add AI emotion analysis to each result. Adds a `sentiment` object containing `emotions` (joy, trust, fear, surprise, sadness, disgust, anger and anticipation, each scored 0-100), `dominant_emotion`, `emotional_intensity` (0-10), and `polarity` (positive, negative or neutral). Any item"}}}},"additionalProperties":false}}},"responseSchema":null,"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.004","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.004/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.004","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.004","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_4zMLwgK1_bs_0J2lFUCmV","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.004","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Fetches the posts a Bluesky user has liked, returned newest first, with optional AI sentiment analysis.","exampleAgentPrompt":"Can you pull the last 2 pages of posts that @jack.bsky.social has liked on Bluesky, and include sentiment analysis so I can see the emotional tone of what they're engaging with?","exampleUseCases":[{"title":"Audience taste research for a brand","prompt":"Fetch the 3 most recent pages of likes for the Bluesky account bsky.app so I can see what kind of content resonates with their audience."},{"title":"Sentiment trend on a user's liked content","prompt":"Get the latest 50 posts liked by @pfrazee.com on Bluesky and turn on sentiment analysis — I want to see which emotions come up most in what he engages with."},{"title":"Competitive content intelligence","prompt":"Pull 1 page of recent likes from the Bluesky account @nytimes.bsky.social so I can see what news stories they're quietly endorsing."}],"resultDescription":"Returns a paginated list of posts the specified Bluesky user has liked, ordered newest first. Each item includes post content, author details, timestamps, and engagement counts. When get_sentiment is enabled, each post is also annotated with an emotions breakdown (joy, trust, fear, surprise, sadness, disgust, anger, anticipation scored 0–100), a dominant_emotion, an emotional_intensity score (0–10), and a polarity label (positive, negative, or neutral). Up to 50 results per page, up to 20 pages per call.","failureModes":["Unknown or invalid Bluesky handle returns a 404 or empty result set","Private or deactivated account may return no likes","pages parameter exceeding 20 is rejected by schema validation","Neither username nor url provided results in a missing-parameter error","Rate limiting or Bluesky API downtime can cause upstream failures","Sentiment analysis may be incomplete if post text is very short or non-textual"],"whenToPreferThis":"Use this endpoint when you need to programmatically retrieve the likes activity of a specific Bluesky user — especially for audience research, content intelligence, or sentiment profiling of what a user endorses. Prefer it over scraping Bluesky directly as it handles pagination, DID resolution, and optional AI sentiment enrichment in one call. Choose it over generic social listening tools when you specifically need Bluesky likes (not posts or reposts).","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-10-30T19:06:36.743Z","isFirstParty":false,"canonicalSlug":"bluesky-user-likes-feed-5b1d516e"}