SOCIAL MEDIA

Social Media APIs

50 production-grade social media APIs on upAPI. Every endpoint below is live behind the same gateway, takes the same API key, and returns JSON — no per-provider signup, no per-provider billing.

Social Media

Chatous Check Session

Check whether a Chatous connect.sid cookie is still accepted. Returns Chatous's own verdict (0 authenticated, 1111 anonymous or expired) so an expired session is reported as data rather than as a failure.

python
● live
Social Media

Chatous Get Account State

Read a Chatous account's own profile, its open conversations and their message history in one bounded WebSocket read. Chatous exposes no REST endpoint for any of this, so the socket's opening burst is the only source.

python
● live
Social Media

Chatous Poll Events

Listen on a Chatous account's WebSocket for a bounded window and return the events that arrived: new matches with the partner's profile, incoming messages, chat disconnects and queue acknowledgements.

python
● live
Social Media

Check Reddit Account Health

Check the health and status of a Reddit account. Pass sessionCookies for the reliable authenticated read (required for new/low-karma accounts); otherwise falls back to parsing the public profile.

python
● live
Social Media

Check Reddit Comment Visibility

Detect shadowban/auto-removal: read a comment's focused permalink JSON as a non-author and report whether it is actually visible to the public.

python
● live
Social Media

Get Bluesky Profile

Fetch a Bluesky (AT Protocol) profile by handle or DID. Returns display name, description, avatar/banner, follower and post counts, labels, and DID. Uses the public AppView - no auth required.

python
● live
Social Media

Get Contra Company Profile

Read one contra.com company profile by its slug: name, description, website, location, year founded, verification badge, review count and the client statistics Contra publishes (average rating, projects hired, total spend). Reads Contra's public page — no Contra account is required.

python
● live
Social Media

Get Contra Opportunity

Read one contra.com freelance opportunity by its slug: title, full description, budget range, required roles and tools, application window, and the hiring company with its review count and spend statistics. Reads Contra's public page — no Contra account is required.

python
● live
Social Media

Get LinkedIn Job Details

Fetch one LinkedIn job posting: full description, seniority level, employment type, job function, industries, applicant count and posting age. Accepts the job id from linkedin-jobs-search, a job URL or a urn:li:jobPosting URN. Reads LinkedIn's public guest surface — no LinkedIn account or cookie is required.

python
● live
Social Media

Get Mastodon Profile

Look up a Mastodon account by fully-qualified handle (e.g. Gargron@mastodon.social). Works against any Mastodon instance via its open REST API - no auth needed.

python
● live
Social Media

Get Subreddit Info

Fetch subreddit metadata: subscriber count, description, rules, active users and appearance settings. Requires a Reddit session cookie in sessionCookies (obtain it from reddit-login.post, or copy reddit_session out of a signed-in browser) — Reddit has blocked every anonymous read surface since 2026-07-30.

python
● live
Social Media

Get Trending Reddit Posts

Fetch trending, hot, rising, top, or new posts from any subreddit with pagination and time filtering. Requires a Reddit session cookie in sessionCookies (obtain it from reddit-login.post, or copy reddit_session out of a signed-in browser) — Reddit has blocked every anonymous read surface since 2026-07-30.

python
● live
Social Media

Get Upwork Job Details

Read one Upwork job posting in full: the complete description, required skills, budget, how many freelancers have applied and been interviewed, and the client's country, rating, hire count and total spend. Accepts the job ciphertext or the job URL. Reads Upwork's public visitor surface — no Upwork account is required.

python
● live
Social Media

Instagram Check Account

Check if a username/email/phone is linked to an Instagram account. Returns existence + recovery channels.

python
● live
Social Media

Instagram Check Account Health

Check if Instagram account is active/suspended. Returns follower, post counts, and verification status.

python
● live
Social Media

Instagram Discover Location Posts

Get 50-95 post shortcodes from a location page. No auth needed. Use with get-post-commenters for massive lead discovery.

python
● live
Social Media

Instagram Get Post Commenters

Extract commenters, comment text, and sibling posts from a post page. One call = ~24 lead-gen entities. No auth needed.

python
● live
Social Media

Instagram Get Post Info

Get post metadata (caption, owner, media, comment count) via embed page. No auth needed, not rate-limited.

python
● live
Social Media

Instagram Get User By Id

Resolve an Instagram profile from a numeric user id, no login. Anonymous returns identity (username, profile picture) — see detailLevel.

python
● live
Social Media

Instagram Get User Posts

Get a user's recent posts with engagement metrics. Rate-limited — use proxy rotation for bulk. No auth needed.

python
● live
Social Media

Instagram Get User Profile

Get full Instagram user profile (bio, stats, verified, business status). Works for public profiles without auth.

python
● live
Social Media

LinkedIn Check Account Health

Check whether a LinkedIn session (cookies) is still authenticated via the Voyager me endpoint. Returns isValid plus the logged-in profile name/URL.

python
● live
Social Media

LinkedIn Get Profile

Fetch a LinkedIn profile (name, headline, location, vanity) by vanity name via the Voyager dash API. Cookie-authenticated.

python
● live
Social Media

Reddit - post a comment as a registered app

Posts a comment through Reddit's documented OAuth2 API using a refresh token, with the caller's own User-Agent. Verifies the token's account against expectedUsername before creating anything, and turns Reddit's HTTP-200 `json.errors` refusals (locked thread, subreddit ban, rate limit) into classified failures. No browser, no captcha, no cookies.

python
● live
Social Media

Reddit - who does this OAuth app speak as?

Exchanges a Reddit OAuth2 refresh token and reads the account it belongs to over Reddit's documented API: username, suspension state, verified email, karma, account age and the token's scopes. Reads only -- it creates nothing. The access token and the supplied secrets are never returned or logged.

python
● live
Social Media

Scrape Reddit Post & Comments

Fetch a Reddit post with its comment tree: post metadata, selftext, and nested comments with scores and authorship. Requires a Reddit session cookie in sessionCookies (obtain it from reddit-login.post, or copy reddit_session out of a signed-in browser) — Reddit has blocked every anonymous read surface since 2026-07-30.

python
● live
Social Media

Search Contra Freelancers

Search contra.com's public directory of independent professionals by role or free text. Returns each profile's name, headline, roles, location, review average and count, follower and hire counts, availability and minimum hourly rate. Reads Contra's public page — no Contra account is required.

python
● live
Social Media

Search LinkedIn Jobs

Search LinkedIn job postings by keyword and location. Returns title, company, location, posting date, salary hint and the job id you pass to linkedin-jobs-detail. Reads LinkedIn's public guest surface — no LinkedIn account or cookie is required.

python
● live
Social Media

Search Reddit Posts

Search Reddit posts by keyword with subreddit filtering, sort and time range. Returns structured post data including scores, comment count and metadata. Requires a Reddit session cookie in sessionCookies (obtain it from reddit-login.post, or copy reddit_session out of a signed-in browser) — Reddit has blocked every anonymous read surface since 2026-07-30.

python
● live
Social Media

Search Upwork Jobs

Search Upwork job postings by keyword. Returns title, description, contract type, budget, publish time and the job reference you pass to upwork-jobs-detail. Reads Upwork's public visitor surface — no Upwork account or cookie is required.

python
● live
Social Media

TikTok Check Account Health

Check if TikTok account is active/suspended. Returns follower, video, and like counts.

python
● live
Social Media

TikTok Discover Users from Comments

Mine unique commenters from a video for lead discovery. No auth needed. Returns user profiles from comment threads.

python
● live
Social Media

TikTok Get Comment Replies

Get the replies under a single TikTok comment, with each replier's handle and profile info. No auth needed. Paginated by cursor.

python
● live
Social Media

TikTok Get Comments

Get comments on a video with commenter info. No auth needed. Supports pagination via cursor.

python
● live
Social Media

TikTok Get User Profile

Get full user profile (bio, stats, verified status) via SSR scraping. No auth needed.

python
● live
Social Media

TikTok Get Video By Id

Full video metadata (description, hashtags, play/like/comment counts, author and author follower stats) from a video id alone — no author handle needed, no auth.

python
● live
Social Media

TikTok Get Video Detail

Get full video metadata (description, stats, author, music) via SSR scraping. No auth needed.

python
● live
Social Media

TikTok oEmbed Lookup

Resolve any TikTok profile or video URL to its title, author and thumbnail via TikTok's public oEmbed endpoint. No auth, no signing.

python
● live
Social Media

Wellfound Application Modal

Read a Wellfound listing's application modal: its screening questions with option ids, whether this account has already applied, and the qualification report. Read-only, and the intended step immediately before wellfound-apply. Requires an authenticated session blob from wellfound-login.

python
● live
Social Media

Wellfound Browse Jobs

Browse public Wellfound job listings through the anonymous SEO GraphQL search: job id, slug, title, compensation, equity, locations, full description and the hiring company, with deep pagination. No login. Takes a blob from wellfound-public-session and must run on the exit that minted it. Company funding fields are empty on anonymous results; use wellfound-company-overview for those.

python
● live
Social Media

Wellfound Company Overview

Fetch a Wellfound company overview: product description, headcount band, total raised, market and location tags, and the website, LinkedIn, X and blog links. Read-only, and works with an anonymous session from wellfound-public-session.

python
● live
Social Media

Wellfound Conversation Detail

Fetch one Wellfound recruiter conversation with its full message history. Takes the bare conversation modelId from wellfound-list-conversations. Read-only. Requires an authenticated session blob from wellfound-login.

python
● live
Social Media

Wellfound Job Detail

Fetch one Wellfound job listing in full (description, skills, compensation, equity, remote configuration, locations) together with the hiring company, including funding stage and total raised. Read-only, and works with an anonymous session from wellfound-public-session. An expired or removed listing is reported as such rather than returned as an empty job.

python
● live
Social Media

Wellfound List Applications

List one page of the signed-in candidate's Wellfound job applications, each with its status, the listing and the company. The response carries no page info, so a page with no new applications means the end. Read-only. Requires an authenticated session blob from wellfound-login.

python
● live
Social Media

Wellfound List Conversations

List the signed-in candidate's Wellfound recruiter conversations with the company, the unread flag and the latest message in each thread. Read-only. Requires an authenticated session blob from wellfound-login.

python
● live
Social Media

Wellfound Pipeline Stats

Fetch the signed-in candidate's Wellfound pipeline counts: interested, matched, messages and saved listings. Read-only. Requires an authenticated session blob from wellfound-login and the viewer id from wellfound-viewer.

python
● live
Social Media

Wellfound Public Session

Mint an anonymous Wellfound browsing session (DataDome cookie, Apollo signature and persisted-query map) with no credentials and no account. Returns an opaque blob for the Wellfound read operations. The blob is bound to the exit IP that minted it: pass the same proxyUrl to every call in a chain, or omit it on all of them.

python
● live
Social Media

Wellfound Refresh Operations

Re-scan Wellfound's public JS bundle for the current Apollo signature and persisted-query op-id map after a frontend deploy, and return the session blob with that material refreshed. No login and no credentials. A Wellfound deploy invalidates every persisted-query hash at once and looks identical to an expired session, so run this before concluding a session died.

python
● live
Social Media

Wellfound Search Jobs

Search Wellfound job listings as a signed-in candidate, with role, skill, job-type, remote-preference and location filters, and an already-applied flag per listing. Read-only. Requires an authenticated session blob from wellfound-login; for public browsing with no account use wellfound-browse-jobs.

python
● live
Social Media

Wellfound Viewer

Fetch the signed-in Wellfound viewer: user id, whether the account may still apply to jobs, candidate state and analytics traits. The cheapest way to check that a session is alive and the account is unrestricted. Read-only. Requires an authenticated session blob from wellfound-login.

python
● live

Calling a social media API

Every operation on this page is one POST away. Swap the slug, keep the key.

bash
curl -X POST https://api.upapi.io/chatous-check-session.get \
  -H "X-Api-Key: $UPAPI_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'

Read the full API documentation →

Other categories

Social Media APIs — 50 ready-to-use endpoints · upAPI