Chocodata

Docs

ChatGPT Claude

Endpoint reference

How 470 endpoints share one request and response shape. The resource-type model, the shared envelope, and how to find the exact endpoint for any site in the directory or the playground.

Endpoint reference

Chocodata exposes 470 endpoints across 237 sites and 17 categories. They are not 470 different APIs. They are one API, parameterized by {site} and {resource}, so this page documents the shared shape once and points you to the browsable directory for the specifics of any single endpoint.

If you have read Core concepts, you already know the request shape. This page is the map: what the resource types are, what the shared request and response look like, and where to look up an exact endpoint.

The shared request shape

Every dedicated endpoint is the same GET:

GET https://api.chocodata.com/api/v1/{site}/{resource}?api_key=YOUR_KEY&query=...
PartMeaningExamples
{site}The target sitewalmart, ebay, indeed, zillow, github, youtube
{resource}The page type on that siteproduct, search, job, property, profile, video
queryThe identifier, URL, or keyworda product ID, a job URL, "running shoes"

Common optional parameters that many endpoints accept:

ParamTypeDescription
domainenumRegional storefront / locale where the site has one (com, co.uk, de). Supported values vary by site. See Country, region & language.
languagestringContent language as xx_YY (en_US, de_DE).
pagesintFor search resources, number of consecutive result pages to fetch (each page counts as a request).
add_htmlbooleanAttach the raw page HTML under html in the response.

Resource types

Rather than memorize 470 endpoints, learn the resource types. A small set of resources covers the vast majority of endpoints, and each behaves consistently wherever it appears.

ResourceReturnsTypical sites
searchRanked results for a keyword query (web results or commerce cards, depending on the site)search engines, marketplaces, job boards, app stores
productA single product / item page with price, variants, ratings, imagese-commerce sites
articleA single news or blog article with body, author, datesnews and media sites
jobA single job posting with title, company, location, descriptionjob boards
propertyA single real-estate listingreal-estate portals
profileA public profile pagesocial, developer, and directory sites
quoteA finance quote / instrument pagefinance and crypto sites
videoA single video page with metadatavideo platforms
postA single social or forum postsocial and community sites
packageA single package / library pagedeveloper registries
listingA single classifieds or directory listingclassifieds and local directories

Categories you will see in the directory include: AI, Automotive, B2B & Companies, Developer, E-commerce, Finance & Crypto, Food, Jobs, Knowledge & Academic, Local & Directories, News & Media, Real Estate, Reviews, Search Engines, Social, and Travel.

search is the most widely available resource, and its response adapts to the site:

  • On a search engine (google, bing, …), each result carries web fields: title, url, snippet, position.
  • On a marketplace or board (walmart, ebay, indeed, …), each card carries domain fields: price, rating, sponsored flags, or job metadata.

Both share the same request shape. See the Search endpoint for the full request and both response shapes.

The shared response shape

Dedicated endpoints return a flat JSON object of named fields for the requested resource. The exact field set depends on the resource (a product has price and variations; an article has articleBody and author), but the conventions are constant:

  • Field names are stable and typed. Numbers are numbers, not strings.
  • A field is null when the site did not publish it, not when extraction failed. You still get a valid object.
  • Search-style resources return an array (products or results) plus pagination metadata.

Every successful response also carries informational headers (Asa-Cost, Asa-Resolved-Url, Asa-Source-Status, Asa-Attempts, Asa-Extractor-Version). Errors share one body shape with a machine-readable error code. See Error codes.

We document two resources in depth as the canonical pattern:

  • Product endpoint - the specific-item pattern (one identifier in, one rich object out).
  • Search endpoint - the list pattern (a keyword in, ranked results out).

Read those two and you can read any endpoint, because every other dedicated endpoint is a variation on one of them.

App Stores

Dedicated endpoints for the Apple App Store (appstore) and Google Play (googleplay). Search a storefront, pull a single app’s full listing, or page through user reviews. Every call is the same GET https://api.chocodata.com/api/v1/{target}/{resource}?api_key=YOUR_KEY&... shape. For a guided tour see Scraping Social Media & App Stores.

appstore.search

Search the Apple App Store by keyword and get ranked app cards.

GET https://api.chocodata.com/api/v1/appstore/search?api_key=YOUR_KEY&term=whatsapp&country=us&limit=5
ParamTypeRequiredDefaultDescription
termstring✅ yes-Search keywords
countryenum-usTwo-letter App Store storefront (us, gb, de, jp, …)
limitint-10Number of result cards to return
{
  "query": "whatsapp",
  "page": 1,
  "total_results": 5,
  "results": [
    {
      "position": 1,
      "id": "310633997",
      "track_id": "310633997",
      "bundle_id": "net.whatsapp.WhatsApp",
      "title": "WhatsApp Messenger",
      "seller_name": "WhatsApp Inc.",
      "primary_genre": "Social Networking",
      "genres": ["Social Networking", "Utilities"],
      "price": 0,
      "formatted_price": "Free",
      "currency": "USD",
      "rating": 4.68698,
      "reviews_count": 18082844,
      "content_advisory_rating": "12+",
      "version": "26.22.76",
      "release_date": "2009-05-04T02:43:49Z",
      "minimum_os_version": "15.1",
      "url": "https://apps.apple.com/us/app/whatsapp-messenger/id310633997"
    }
    /* 4 more cards */
  ]
}

appstore.product

Full listing for a single Apple App Store app by numeric ID.

GET https://api.chocodata.com/api/v1/appstore/product?api_key=YOUR_KEY&id=310633997&country=us
ParamTypeRequiredDefaultDescription
idstring✅ yes-The numeric App Store track ID
countryenum-usTwo-letter App Store storefront
{
  "id": "310633997",
  "track_id": "310633997",
  "bundle_id": "net.whatsapp.WhatsApp",
  "title": "WhatsApp Messenger",
  "seller_name": "WhatsApp Inc.",
  "primary_genre": "Social Networking",
  "genres": ["Social Networking", "Utilities"],
  "price": 0,
  "formatted_price": "Free",
  "currency": "USD",
  "rating": 4.68698,
  "rating_current_version": 4.68698,
  "reviews_count": 18082844,
  "content_advisory_rating": "12+",
  "version": "26.22.76",
  "current_version_release_date": "2026-06-07T16:47:53Z",
  "release_date": "2009-05-04T02:43:49Z",
  "release_notes": "We update the app regularly to fix bugs…",
  "file_size_bytes": 370200576,
  "minimum_os_version": "15.1",
  "description": "WhatsApp from Meta is a free messaging and calling app…",
  "artwork_url": "https://is1-ssl.mzstatic.com/image/thumb/…",
  "screenshot_urls": [],
  "supported_devices": ["iPhone5s-iPhone5s", "iPadAir-iPadAir"],
  "languages": ["AR", "BN", "EN"],
  "advisories": ["Infrequent/Mild Profanity or Crude Humor"],
  "kind": "software",
  "url": "https://apps.apple.com/us/app/whatsapp-messenger/id310633997?uo=4",
  "seller_url": "http://www.whatsapp.com/",
  "artist_view_url": "https://apps.apple.com/us/developer/whatsapp-inc/id310634000?uo=4"
}

appstore.reviews

A page of user reviews for a single Apple App Store app.

GET https://api.chocodata.com/api/v1/appstore/reviews?api_key=YOUR_KEY&id=310633997&country=us&page=1&sort=mostRecent
ParamTypeRequiredDefaultDescription
idstring✅ yes-The numeric App Store track ID
countryenum-usTwo-letter App Store storefront
pageint-1Review page to fetch
sortenum-mostRecentmostRecent · mostHelpful
{
  "id": "310633997",
  "country": "us",
  "page": 1,
  "sort": "mostRecent",
  "total_results": 50,
  "reviews": [
    {
      "id": "14181597952",
      "author": "Arale soto aguilar",
      "author_url": "https://itunes.apple.com/us/reviews/id1642272657",
      "rating": 3,
      "title": "The new glitch",
      "body": "It is happening to me when I try to text the screen turns black…",
      "version": "26.22.76",
      "date": "2026-06-14T05:37:59-07:00",
      "vote_sum": 0,
      "vote_count": 0
    }
    /* 49 more reviews */
  ]
}

googleplay.product

Full listing for a single Google Play app by package ID.

GET https://api.chocodata.com/api/v1/googleplay/product?api_key=YOUR_KEY&id=com.whatsapp
ParamTypeRequiredDefaultDescription
idstring✅ yes-The Android package ID (e.g. com.whatsapp)
countryenum-usTwo-letter Play storefront
languagestring-region defaultContent language as xx_YY
{
  "id": "com.whatsapp",
  "package_id": "com.whatsapp",
  "title": "WhatsApp Messenger",
  "developer": "WhatsApp LLC",
  "developer_url": "http://www.whatsapp.com/",
  "description": "Simple. Reliable. Private.",
  "category": "COMMUNICATION",
  "operating_system": "ANDROID",
  "content_rating": "Everyone",
  "price": 0,
  "currency": "USD",
  "is_free": true,
  "rating": 4.661951065063477,
  "reviews_count": 236991524,
  "icon": "https://play-lh.googleusercontent.com/Gqxk4T0uZsDwFp07DE-508hkyvcNmgF…",
  "screenshots": [
    "https://play-lh.googleusercontent.com/OBVqgRK7eerY0GPfK8AOzitu5oE9ecC6kG4kURTCb1K41gpqVsN0WjmJwJh-wX8…",
    "https://play-lh.googleusercontent.com/GQF4h3VL-kklOrVS_f1QRAJJZa2zQyVNcFbKdOIkvI_Pcu1op0Sy3uiry…"
  ],
  "url": "https://play.google.com/store/apps/details?id=com.whatsapp"
}

googleplay.search

Search Google Play by keyword and get ranked app cards.

GET https://api.chocodata.com/api/v1/googleplay/search?api_key=YOUR_KEY&q=whatsapp
ParamTypeRequiredDefaultDescription
qstring✅ yes-Search keywords
countryenum-usTwo-letter Play storefront
languagestring-region defaultContent language as xx_YY
{
  "query": "whatsapp",
  "page": 1,
  "total_results": 20,
  "results": [
    {
      "position": 1,
      "id": "com.whatsapp",
      "package_id": "com.whatsapp",
      "title": "WhatsApp Messenger",
      "currency": "USD",
      "url": "https://play.google.com/store/apps/details?id=com.whatsapp"
    }
    /* 19 more cards */
  ]
}

Social Media

Dedicated endpoints across Reddit, YouTube, TikTok, X (Twitter), Instagram, Facebook, and LinkedIn. Pull posts and their scores, video metadata, transcripts, comments, profiles, company pages, and job postings. Every call is the same GET https://api.chocodata.com/api/v1/{target}/{resource}?api_key=YOUR_KEY&... shape. See the Scraping Social Media & App Stores guide for an overview.

reddit.subreddit

A page of posts from a subreddit, in a chosen sort order.

GET https://api.chocodata.com/api/v1/reddit/subreddit?api_key=YOUR_KEY&subreddit=news&sort=hot&limit=5
ParamTypeRequiredDefaultDescription
subredditstring✅ yes-Subreddit name without the r/ prefix
sortenum-hothot · new · top · rising
tenum-site defaultTime window for top (hour · day · week · month · year · all)
limitint-25Number of posts to return
{
  "subreddit": "news",
  "sort": "hot",
  "total_results": 5,
  "posts": [
    {
      "id": "t3_1u6hmvz",
      "title": "Jeffco Public Schools says 61 boys found on girls' sports rosters were mascots, managers",
      "score": 13360,
      "num_comments": 352,
      "upvote_ratio": 0.9787,
      "awards": 0,
      "author": "HazyDavey68",
      "author_id": "t2_ayj7l5o9",
      "subreddit": "news",
      "permalink": "https://www.reddit.com/r/news/comments/1u6hmvz/…",
      "external_url": "https://www.denverpost.com/2026/06/13/…",
      "domain": "denverpost.com",
      "created": "2026-06-15T14:06:56.173000+0000"
    }
    /* 4 more posts */
  ]
}

reddit.post

A single Reddit post plus its comment tree, with scores.

GET https://api.chocodata.com/api/v1/reddit/post?api_key=YOUR_KEY&subreddit=news&post_id=1u6hmvz
ParamTypeRequiredDefaultDescription
subredditstring✅ yes-Subreddit name without the r/ prefix
post_idstring✅ yes-The post’s base-36 ID (with or without the t3_ prefix)
sortenum-topComment sort: top · new · best · controversial · old
{
  "post": {
    "id": "t3_1u6hmvz",
    "title": "Jeffco Public Schools says 61 boys found on girls' sports rosters were mascots, managers",
    "score": 13367,
    "num_comments": 353,
    "upvote_ratio": 0.9787,
    "author": "HazyDavey68",
    "subreddit": "news",
    "permalink": "https://www.reddit.com/r/news/comments/1u6hmvz/…",
    "external_url": "https://www.denverpost.com/2026/06/13/…",
    "domain": "denverpost.com",
    "body": null,
    "created": "2026-06-15T14:06:56.173000+0000"
  },
  "comments_count": 13,
  "sort": "top",
  "comments": [
    {
      "id": "t1_orsif6b",
      "parent_id": null,
      "depth": 0,
      "score": 4561,
      "author": "ByRWBadger",
      "body": "…",
      "created": "2026-06-15T14:12:53.614000+0000",
      "permalink": "https://www.reddit.com/r/news/comments/1u6hmvz/comment/orsif6b/"
    }
    /* 12 more comments */
  ]
}

reddit.user

A user’s public profile plus their recent posts and comments.

GET https://api.chocodata.com/api/v1/reddit/user?api_key=YOUR_KEY&username=spez
ParamTypeRequiredDefaultDescription
usernamestring✅ yes-Reddit username without the u/ prefix
{
  "profile": {
    "username": "spez",
    "profile_url": "https://www.reddit.com/user/spez",
    "bio": "Reddit CEO",
    "icon": "https://www.redditstatic.com/icon.png/",
    "title": "overview for spez"
  },
  "total_results": 25,
  "items": [
    {
      "type": "comment",
      "id": "t1_optfyql",
      "short_id": "optfyql",
      "title": "/u/spez on Steve, Jen, and Drew here - Ask Us Anything!",
      "subreddit": "RDDT",
      "body": "…",
      "permalink": "https://www.reddit.com/r/RDDT/comments/1tvs5jj/…/optfyql/",
      "created": "2026-06-05T00:51:55+00:00"
    }
    /* 24 more items */
  ]
}

reddit.search

Keyword search across Reddit. Results may be posts, comments, or subreddits.

GET https://api.chocodata.com/api/v1/reddit/search?api_key=YOUR_KEY&q=climate
ParamTypeRequiredDefaultDescription
qstring✅ yes-Search keywords
subredditstring--Restrict the search to one subreddit
sortenum-relevancerelevance · hot · top · new · comments
tenum-site defaultTime window (hour · day · week · month · year · all)
{
  "query": "climate",
  "subreddit": null,
  "sort": "relevance",
  "total_results": 25,
  "results": [
    {
      "position": 1,
      "id": "t5_2qhx3",
      "short_id": "2qhx3",
      "result_type": "subreddit",
      "title": "Information about the world's climate",
      "permalink": "https://www.reddit.com/r/climate/"
    }
    /* 24 more results */
  ]
}

youtube.video

Metadata for a single YouTube video: title, description, view and like counts, channel, and related videos.

GET https://api.chocodata.com/api/v1/youtube/video?api_key=YOUR_KEY&video_id=dQw4w9WgXcQ
ParamTypeRequiredDefaultDescription
video_idstring✅ yes-The 11-character YouTube video ID
{
  "video_id": "dQw4w9WgXcQ",
  "url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ",
  "type": "video",
  "title": "Rick Astley - Never Gonna Give You Up (Official Video) (4K Remaster)",
  "description": "The official video for “Never Gonna Give You Up”…",
  "view_count": 1783154138,
  "like_count": 19157745,
  "duration_seconds": 213,
  "keywords": ["rick astley", "never gonna give you up"],
  "category": "Music",
  "is_live": false,
  "is_family_safe": true,
  "publish_date": "2009-10-24T23:57:33-07:00",
  "channel_id": "UCuAXFkgsw1L7xaCfnd5JJOw",
  "channel_name": "Rick Astley",
  "channel_handle": "http://www.youtube.com/@RickAstleyYT",
  "channel_url": "https://www.youtube.com/channel/UCuAXFkgsw1L7xaCfnd5JJOw",
  "thumbnail": "https://i.ytimg.com/vi/dQw4w9WgXcQ/hq720.jpg",
  "related_count": 12
}

youtube.channel

A channel’s profile and a page of its recent uploads.

GET https://api.chocodata.com/api/v1/youtube/channel?api_key=YOUR_KEY&channel=@MrBeast
ParamTypeRequiredDefaultDescription
channelstring✅ yes-A channel handle (@MrBeast), channel ID (UC…), or channel URL
{
  "channel": "MrBeast",
  "channel_id": "UCX6OQ3DkcsbYNE6H8uQQuVA",
  "channel_name": "MrBeast",
  "handle": "@MrBeast",
  "vanity_url": "http://www.youtube.com/@MrBeast",
  "url": "https://www.youtube.com/channel/UCX6OQ3DkcsbYNE6H8uQQuVA",
  "avatar": "https://yt3.googleusercontent.com/nxYrc_1_2f77DoBadyxMTmv7ZpRZapHR5jbuYe7…",
  "is_family_safe": true,
  "subscriber_count": 501000000,
  "subscriber_count_text": "501M subscribers",
  "video_count": 987,
  "videos": [
    {
      "position": 1,
      "id": "__fmDj0ZJ1Q",
      "title": "50 YouTube Legends Fight For $1,000,000",
      "url": "https://www.youtube.com/watch?v=__fmDj0ZJ1Q",
      "thumbnail": "https://i.ytimg.com/vi/__fmDj0ZJ1Q/hq720.jpg",
      "channel": "MrBeast",
      "views": "40,376,569 views",
      "published": "2d ago"
    }
    /* more videos */
  ]
}

youtube.comments

A page of comments on a YouTube video, with author, like count, and reply count.

GET https://api.chocodata.com/api/v1/youtube/comments?api_key=YOUR_KEY&video_id=dQw4w9WgXcQ
ParamTypeRequiredDefaultDescription
video_idstring✅ yes-The 11-character YouTube video ID
sortenum-toptop · newest
{
  "video_id": "dQw4w9WgXcQ",
  "url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ",
  "sort_applied": "top",
  "results_count": 20,
  "comments": [
    {
      "id": "EhpVZ3pnZTM0MGRCZ0I3NWhXQm01NEFhQUJBZyAoKAE%3D",
      "text": "can confirm: he never gave us up",
      "author": "@YouTube",
      "author_channel_id": "UCBR8-60-B28hp2BmDPdntcQ",
      "author_is_verified": true,
      "published": "1 year ago",
      "like_count": "255K",
      "reply_count": "960"
    }
    /* 19 more comments */
  ],
  "continuation": "Eg0SC2RRdzR3OVdnWGNRGAYygAMK…"
}

youtube.transcript

The timed transcript of a YouTube video, returned as timestamped segments and as one joined string.

GET https://api.chocodata.com/api/v1/youtube/transcript?api_key=YOUR_KEY&video_id=dQw4w9WgXcQ
ParamTypeRequiredDefaultDescription
video_idstring✅ yes-The 11-character YouTube video ID
languagestring-default trackPreferred caption language code (e.g. en, de-DE); one of the available_languages
{
  "video_id": "dQw4w9WgXcQ",
  "url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ",
  "language": "en",
  "language_name": "English",
  "is_generated": false,
  "segment_count": 61,
  "available_languages": ["en", "de-DE", "ja", "pt-BR", "es-419"],
  "segments": [
    { "text": "[♪♪♪]", "start": 1360, "duration": 1680 },
    { "text": "♪ We're no strangers to love ♪", "start": 18640, "duration": 3240 }
    /* 59 more segments */
  ],
  "text": "[♪♪♪] ♪ We're no strangers to love ♪ ♪ You know the rules and so do I ♪…"
}

tiktok.video

Metadata and engagement stats for a single TikTok video.

GET https://api.chocodata.com/api/v1/tiktok/video?api_key=YOUR_KEY&url=https://www.tiktok.com/@tiktok/video/7106594312292453675
ParamTypeRequiredDefaultDescription
urlstring✅ yes-Full TikTok video URL (a bare numeric video ID is also accepted)
{
  "id": "7106594312292453675",
  "url": "https://www.tiktok.com/@tiktok/video/7106594312292453675",
  "socialPlatform": "tiktok",
  "title": "how many frogs did you find? 🐸 check out tiktok's #Minecraft community today! @Gorillo",
  "description": "how many frogs did you find? 🐸 check out tiktok's #Minecraft community today! @Gorillo",
  "create_time": 1654632929,
  "created_at": "2022-06-07T20:15:29.000Z",
  "author": {
    "id": "107955",
    "uniqueId": "tiktok",
    "nickname": "TikTok",
    "verified": true,
    "signature": "One TikTok can make a big impact",
    "url": "https://www.tiktok.com/@tiktok"
  },
  "stats": {
    "plays": 563500,
    "likes": 98700,
    "comments": 1339,
    "shares": 127,
    "saves": 58626
  },
  "hashtags": ["Minecraft"],
  "thumbnail": "https://p16-common-sign.tiktokcdn-us.com/…",
  "music": { "title": "original sound", "author_name": "TikTok" }
}

tiktok.profile

A TikTok creator’s public profile and aggregate stats.

GET https://api.chocodata.com/api/v1/tiktok/profile?api_key=YOUR_KEY&username=tiktok
ParamTypeRequiredDefaultDescription
usernamestring✅ yes-TikTok handle without the @ prefix
{
  "uniqueId": "tiktok",
  "nickname": "TikTok",
  "signature": "One TikTok can make a big impact",
  "verified": true,
  "secUid": "MS4wLjABAAAAv7iSuuXDJGDvJkmH_vz1qkDZYo1apxgzaxdBSeIuPiM",
  "id": "107955",
  "create_time": 1425144149,
  "created_at": "2015-02-28T17:22:29.000Z",
  "avatar": "https://p16-common-sign.tiktokcdn-us.com/…",
  "url": "https://www.tiktok.com/@tiktok",
  "socialPlatform": "tiktok",
  "stats": {
    "followerCount": 94400000,
    "followingCount": 3,
    "heartCount": 459900000,
    "videoCount": 1452
  }
}

tiktok.oembed

The lightweight oEmbed record for a TikTok video: title, author, thumbnail, and ready-to-paste embed HTML.

GET https://api.chocodata.com/api/v1/tiktok/oembed?api_key=YOUR_KEY&url=https://www.tiktok.com/@tiktok/video/7106594312292453675
ParamTypeRequiredDefaultDescription
urlstring✅ yes-Full TikTok video URL
{
  "id": "7106594312292453675",
  "url": "https://www.tiktok.com/@tiktok/video/7106594312292453675",
  "socialPlatform": "tiktok",
  "type": "video",
  "version": "1.0",
  "title": "how many frogs did you find? 🐸 check out tiktok's #Minecraft community today! @Gorillo",
  "author_name": "TikTok",
  "author_unique_id": "tiktok",
  "author_url": "https://www.tiktok.com/@tiktok",
  "provider_name": "TikTok",
  "provider_url": "https://www.tiktok.com",
  "thumbnail_url": "https://p16-common-sign.tiktokcdn.com/…",
  "thumbnail_width": 576,
  "thumbnail_height": 1024,
  "embed_type": "video",
  "html": "<blockquote class=\"tiktok-embed\" cite=\"https://www.tiktok.com/@tiktok/video/7106594312292453675\">…</blockquote>"
}

xtwitter.tweet

A single tweet (post) from X with text, engagement counts, and author.

GET https://api.chocodata.com/api/v1/xtwitter/tweet?api_key=YOUR_KEY&id=20
ParamTypeRequiredDefaultDescription
idstring✅ yes-The numeric tweet (post) ID
{
  "id": "20",
  "id_str": "20",
  "url": "https://x.com/jack/status/20",
  "socialPlatform": "twitter",
  "text": "just setting up my twttr",
  "full_text": "just setting up my twttr",
  "lang": "en",
  "created_at": "2006-03-21T20:50:14.000Z",
  "favorite_count": 311977,
  "reply_count": 17945,
  "conversation_count": 17945,
  "is_edited": false,
  "user": {
    "screen_name": "jack",
    "name": "jack",
    "id_str": "12",
    "is_blue_verified": true,
    "profile_image_url_https": "https://pbs.twimg.com/profile_images/…/azNjKOSH_normal.jpg",
    "url": "https://x.com/jack"
  },
  "entities": { "urls": [], "user_mentions": [], "hashtags": [], "symbols": [] },
  "media": []
}

instagram.profile

An Instagram account’s public profile and counts.

GET https://api.chocodata.com/api/v1/instagram/profile?api_key=YOUR_KEY&username=nasa
ParamTypeRequiredDefaultDescription
usernamestring✅ yes-Instagram handle without the @ prefix
{
  "id": "528817151",
  "username": "nasa",
  "full_name": "NASA",
  "url": "https://www.instagram.com/nasa/",
  "biography": "Making the seemingly impossible, possible. ✨",
  "profile_pic_url": "https://scontent.cdninstagram.com/v/t51.2885-19/…",
  "is_verified": true,
  "is_private": false,
  "follower_count": 104408885,
  "following_count": 91,
  "posts_count": 4818,
  "og_description": "104M Followers, 95 Following, 4,818 Posts - See Instagram photos and videos from NASA"
}

instagram.post

A single Instagram post by its shortcode: caption, media, author, and engagement.

GET https://api.chocodata.com/api/v1/instagram/post?api_key=YOUR_KEY&shortcode=DWm8OQKlKvC
ParamTypeRequiredDefaultDescription
shortcodestring✅ yes-The post shortcode (the segment after /p/ in the URL)
{
  "id": "DWm8OQKlKvC",
  "shortcode": "DWm8OQKlKvC",
  "media_id": "3866042192364874690",
  "url": "https://www.instagram.com/p/DWm8OQKlKvC/",
  "media_type": "carousel",
  "is_video": false,
  "title": "NASA launches Artemis II to the moon!",
  "author": "agpfoto",
  "author_id": "19918380",
  "author_url": "https://www.instagram.com/agpfoto/",
  "images": [
    "https://scontent.cdninstagram.com/v/t51.82787-15/…"
  ],
  "thumbnail": "https://scontent.cdninstagram.com/v/t51.82787-15/…",
  "dimensions": { "width": 1080, "height": 1440 },
  "caption": "NASA launches Artemis II to the moon!",
  "hashtags": [],
  "comments": 1079,
  "taken_at": "2026-04-02T00:02:44.000Z",
  "location": {
    "id": "254918491",
    "name": "Launch Complex 39 Press Site",
    "slug": "launch-complex-39-press-site"
  }
}

facebook.page

Search Facebook for pages by name and get matching page cards with like and follower counts.

GET https://api.chocodata.com/api/v1/facebook/page?api_key=YOUR_KEY&page=NASA
ParamTypeRequiredDefaultDescription
pagestring✅ yes-A page name or query
{
  "query": "NASA",
  "page": 1,
  "results_count": 8,
  "total_results": 8,
  "results": [
    {
      "position": 1,
      "id": "100044561550831",
      "title": "NASA - National Aeronautics and Space Administration",
      "url": "https://www.facebook.com/NASA/",
      "currency": "USD",
      "thumbnail": "https://scontent.xx.fbcdn.net/v/t39.30808-1/…",
      "type": "page",
      "page": "NASA",
      "page_id": "100044561550831",
      "name": "NASA - National Aeronautics and Space Administration",
      "tagline": "Explore the universe and discover our home planet.",
      "image": "https://scontent.xx.fbcdn.net/v/t39.30808-1/…",
      "likes": 28622651,
      "followers": 28622651,
      "talking_about_count": 141519
    }
    /* 7 more page cards */
  ]
}

facebook.post

A single Facebook post by URL: author, caption, media, and engagement counts.

GET https://api.chocodata.com/api/v1/facebook/post?api_key=YOUR_KEY&url=https://www.facebook.com/{page}/posts/{post_id}
ParamTypeRequiredDefaultDescription
urlstring✅ yes-Full Facebook post URL
{
  "id": "1148...",
  "page": "NASA",
  "page_id": "100044561550831",
  "post_id": "1148...",
  "url": "https://www.facebook.com/NASA/posts/1148…",
  "author": "NASA - National Aeronautics and Space Administration",
  "caption": "Explore the universe and discover our home planet.",
  "title": "Explore the universe and discover our home planet.",
  "image": "https://scontent.xx.fbcdn.net/v/t39.30808-1/…",
  "reactions_count": 12840,
  "comments_count": 321,
  "shares_count": 188
}

linkedin.jobsearch

Search LinkedIn job postings by keywords and location.

GET https://api.chocodata.com/api/v1/linkedin/jobsearch?api_key=YOUR_KEY&keywords=software%20engineer&location=United%20States
ParamTypeRequiredDefaultDescription
keywordsstring✅ yes-Job title or keywords
locationstring--Location to scope the search to
startint-0Result offset for paging
{
  "query": "software engineer",
  "keywords": "software engineer",
  "location": "United States",
  "start": 0,
  "page": 1,
  "total_results": 10,
  "jobs": [
    {
      "position": 1,
      "id": "4407498584",
      "job_id": "4407498584",
      "title": "Software Engineer, New Grad (AI)",
      "url": "https://www.linkedin.com/jobs/view/software-engineer-new-grad-ai-at-notion-4407498584",
      "currency": "USD",
      "company": "Notion",
      "company_url": "https://www.linkedin.com/company/notionhq",
      "location": "San Francisco, CA",
      "posted_date": "2026-06-09",
      "posted_label": "6 days ago",
      "company_logo": "https://media.licdn.com/dms/image/v2/…/notionhq_logo"
    }
    /* 9 more jobs */
  ]
}

linkedin.job

The full detail of a single LinkedIn job posting.

GET https://api.chocodata.com/api/v1/linkedin/job?api_key=YOUR_KEY&job_id=4407498584
ParamTypeRequiredDefaultDescription
job_idstring✅ yes-The numeric LinkedIn job ID
{
  "id": "4407498584",
  "job_id": "4407498584",
  "title": "Software Engineer, New Grad (AI)",
  "url": "https://www.linkedin.com/jobs/view/4407498584",
  "company": "Notion",
  "company_url": "https://www.linkedin.com/company/notionhq",
  "location": "San Francisco, CA",
  "applicants": "Over 200 applicants",
  "posted_label": "6 days ago",
  "salary": "$160,000.00 - $250,000.00",
  "seniority": "Entry level",
  "employment_type": "Full-time",
  "job_function": "Engineering and Information Technology",
  "industries": "Software Development",
  "description": "Who We Are Notion is the collaborative AI workspace where teams and agents think together…",
  "company_logo": "https://media.licdn.com/dms/image/v2/…/notionhq_logo"
}

linkedin.company

A LinkedIn company page: industry, size, headquarters, and specialties.

GET https://api.chocodata.com/api/v1/linkedin/company?api_key=YOUR_KEY&company=microsoft
ParamTypeRequiredDefaultDescription
companystring✅ yes-The company’s LinkedIn vanity name or numeric ID
{
  "id": "microsoft",
  "name": "Microsoft",
  "url": "https://www.linkedin.com/company/microsoft",
  "followers": 28379789,
  "employee_count": 232340,
  "industry": "Software Development",
  "company_size": "10,001+ employees",
  "headquarters": "Redmond, Washington",
  "website": "https://news.microsoft.com/",
  "description": "Every company has a mission. What's ours? To empower every person and every organization to achieve more…",
  "specialties": "Business Software, Developer Tools, Cloud Computing, AI, Machine Learning…",
  "logo": "https://media.licdn.com/dms/image/v2/…/microsoft_logo"
}

Find the exact endpoint for any site

There are three ways to look up the precise path, parameters, and response for a specific site.

1. The scraper directory

The full browsable catalogue of all 470 endpoints lives at /scraper-api. Search by brand or category (for example zillow, linkedin, finance), and open any card for that endpoint’s request shape, parameters, and an example. Cards marked JSON return structured data from a dedicated endpoint; cards marked via Universal route through the Universal Web Scraper API.

2. The dashboard playground

The dashboard playground lets you run any endpoint live against your key, see the real response, and copy a ready-made cURL / Node / Python snippet. It is the fastest way to confirm field names and try parameters before you write code.

3. The machine-readable corpus

For coding agents and LLMs, the full docs are available as /docs/llms.txt (manifest) and /docs/llms-full.txt (single-file concatenation). Append .md to any doc URL for raw Markdown.

Anything not in the directory

If a site or page type has no dedicated endpoint yet, you are not blocked: pass its URL to the Universal Web Scraper API and get back HTML, text, or auto-extracted JSON. The Universal endpoint covers the entire web, so the directory is a list of where we have a hand-tuned parser, not a list of what you can scrape.