Linkbio
GET /v1/linkbio/page

Linkbio Page API

lnk.bio → id, socials{}, titled links[], website/email/whatsapp, other[]. Flat 1 credit.

1 credit per request
TL;DR
lnk.bio → id, socials{}, titled links[], website/email/whatsapp, other[]. Flat 1 credit. The Linkbio Page API (Linkbio) is a single authenticated GET request to /v1/linkbio/page that responds with clean JSON and costs 1 credit. Pass cache=true for a free 24h cache hit; default is always fresh. Start with 100 free credits — no credit card.

What is the Linkbio Page API?

Paste an lnk.bio URL and get the public page as clean JSON. Identity: id (lnk.bio numeric string, e.g. "-1344625"), handle/username, url, avatar. displayName/name are emitted only when lnk.bio publishes a real display name — @handle OG titles are not synthesised (null/omitted). socials{} is derived from data-network icon rows and username CTAs (facebook/twitter/instagram/tiktok/youtube/snapchat/triller/website/whatsapp/…) other[] holds typed social networks we could not map to a known key so nothing disappears. Top-level website / email / whatsapp when published. links[] includes content buttons (pb-linkbox) plus primary social icons with titles from icon labels (Facebook, Instagram, Triller, …) — not null. lnk.bio does not expose follower counts or a verified badge. Flat 1 credit. Pass cache=true or cacheMaxAge (1d/3d/7d/14d/30d).

What you get

  • lnk.bio id + avatar + handle (no fabricated displayName)
  • socials{} filled from icon rows
  • links[] with titles on social rows + content buttons
  • website / email / whatsapp + other[] for unmapped networks

Try it

Open in Playground

Fill in the parameters below and copy a ready-to-run request, or open the live Playground to run it against your account (no API key paste).

Parameters

Sign in to run live
curl "https://api.captapi.com/v1/linkbio/page?url=https%3A%2F%2Flnk.bio%2Fcharlidamelio" \
  -H "Authorization: Bearer capt_live_..."
# or: -H "x-api-key: capt_live_..."

Edit the parameters and the code updates instantly. Switch languages and hit copy.

Example response

{
  "success": true,
  "data": {
    "platform": "linkbio",
    "id": "-1344625",
    "url": "https://lnk.bio/charlidamelio",
    "username": "charlidamelio",
    "handle": "charlidamelio",
    "avatar": "https://s3.us-west-2.amazonaws.com/cdn.lnk.bio/profilepics/-1344625_20220123667.jpg",
    "website": "https://www.charlidamelio.com",
    "linkCount": 15,
    "socials": {
      "facebook": "https://facebook.com/thecharlidamelio",
      "twitter": "https://twitter.com/charlidamelio",
      "instagram": "https://instagram.com/charlidamelio",
      "triller": "https://triller.co/m/@charlidamelio",
      "tiktok": "https://tiktok.com/@charlidamelio",
      "youtube": "https://youtube.com/c/charlidamelio",
      "snapchat": "https://www.snapchat.com/add/damelioc",
      "website": "https://www.charlidamelio.com"
    },
    "links": [
      {
        "url": "https://www.charlidamelio.com",
        "title": "official website of charli d'amelio",
        "id": "61ec9244a0fa03.74794466",
        "type": "TYPE_BUTTON"
      },
      {
        "url": "https://www.hollisterco.com/shop/us/social-tourist/shop-all?%20cmp=SOC:SPR21:ST:D:US:Brand:X:BioINF:PInf:X:X:CD:STHP-ST:x:Charli%20IG",
        "title": "shop social tourist january 2022 drop",
        "id": "2733218",
        "type": "TYPE_BIOLINK"
      }
    ],
    "other": []
  }
}

Billing metadata is returned in response headers: X-Captapi-Credits (credits charged), X-Captapi-Cache (hit or miss), and X-Captapi-Source. Failed requests (4xx/5xx) are never charged. See the full list of error codes in the error reference.

Response structure

A successful call returns success and a data object with the following fields:

Top-level fields

  • platformPlatform identifier for this response (matches the endpoint's platform).
  • idlnk.bio numeric profile id as a string (e.g. "-1344625"). From data-uid / avatar path.
  • urlOn the page: https://lnk.bio/{username}. On a link row: outbound destination.
  • usernameAccount username / handle.
  • handlelnk.bio path slug. Canonical alongside username.
  • avatarAvatar / profile picture URL. Canonical across profile endpoints.
  • websiteOfficial website URL when published (hero TYPE_BUTTON / official-website CTA or SOCIAL_WEB). Null when unset.
  • linkCountContent buttons + primary social icon rows (family deep-link dupes excluded).
  • otherTyped social networks that did not map into socials{} [{url, title?, type?}]. Empty when every icon mapped.

Socials

The socials object contains:

  • facebookFacebook URL.
  • twitterTwitter URL.
  • instagramInstagram URL.
  • trillerTriller URL.
  • tiktokTiktok URL.
  • youtubeYoutube URL.
  • snapchatSnapchat URL.
  • websiteOfficial website URL when published (hero TYPE_BUTTON / official-website CTA or SOCIAL_WEB). Null when unset.

Links

Each item in links contains:

  • urlOn the page: https://lnk.bio/{username}. On a link row: outbound destination.
  • titleTitle of this links item.
  • idId of this links item.
  • typeContent type of the item.

Parameters

NameTypeRequiredDescription
urlstringYesLinkbio (lnk.bio) page URL or username, e.g. https://lnk.bio/charlidamelio. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cachebooleanNoSet true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control.
cacheMaxAgestringNoMax age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL.

Authentication: send your key as Authorization: Bearer capt_live_.... A typical call costs 1 credit. Pass cache=true for a free 24h cache hit; default is always fresh.

Using an AI agent? This endpoint is the MCP tool linkbio_page via @captapi/mcp. Set it up →

How it works

  1. 1. Sign up — get 100 free credits, no card required.
  2. 2. Create a key from your dashboard.
  3. 3. Send one request to /v1/linkbio/page and parse the JSON response.

Use cases

Social graph from icon rows

Read socials.instagram/tiktok/youtube/… from icon rows even when the matching URL also sits in links[].

Titled link inventory

Use links[].title on social rows (Facebook, Triller, …) plus content button labels for UI and dedupe.

Website + contact

Top-level website / email / whatsapp when lnk.bio publishes them — not buried only as an untitled link.

Unmapped networks

Inspect other[] for niche social icons that do not fit the fixed socials{} key list.

Frequently asked questions

What does the Linkbio Page API do?+

The Linkbio Page API lets you fetch profile or page details and audience stats from a public Linkbio profile or page using one GET request to /v1/linkbio/page. It returns clean JSON — no OAuth or infrastructure setup required.

How many credits does the Linkbio Page API cost?+

Each successful call costs 1 credit. Pass cache=true to serve from the 24h cache (0 credits on hit); default is always fresh. Selected profile endpoints also accept cacheMaxAge=1d|3d|7d|14d|30d. Failed or empty results are never charged.

Do I need a Linkbio API key or OAuth?+

No. A single Captapi key works across every platform Captapi supports — YouTube, TikTok, Instagram, Facebook, Twitter/X, Reddit, Threads, Bluesky, Pinterest, LinkedIn, Rumble, Spotify, Kwai, and more. We handle proxies, rate limits, retries, and authentication for you.

Is the Linkbio Page API suitable for production use?+

Yes. It is a stable REST endpoint with predictable JSON and automatic retries. Pass cache=true to serve from the 24h cache (0 credits on hit); default is always fresh. Selected profile endpoints also accept cacheMaxAge=1d|3d|7d|14d|30d. Use it for analytics, monitoring, and content automation.

Ready to use the Linkbio Page API?

Sign up, grab your key, and make your first call in 60 seconds.

Linkbio Page API | Captapi — Captapi