Bio-Link Scraper — Linktree, Beacons, Komi, link.me & More avatar

Bio-Link Scraper — Linktree, Beacons, Komi, link.me & More

Pricing

from $3.00 / 1,000 profile scrapeds

Go to Apify Store
Bio-Link Scraper — Linktree, Beacons, Komi, link.me & More

Bio-Link Scraper — Linktree, Beacons, Komi, link.me & More

Scrape link-in-bio profiles from Linktree, Beacons, Komi, link.me, Pillar, Tap.bio & bio.link — one actor, one schema. Name, bio, avatar, verified status, every outbound link, all social handles resolved, on-page contact email. 7 dedicated extractors. Pure HTTP, no browser. JSON or CSV out.

Pricing

from $3.00 / 1,000 profile scrapeds

Rating

0.0

(0)

Developer

Muhamed Didovic

Muhamed Didovic

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Share

Turn any link-in-bio page into a clean, structured row. Point the actor at profile URLs from Linktree, Beacons, Komi, link.me, Pillar, Tap.bio, or bio.link — mix platforms freely in one run — and get back the creator's name, bio, avatar, every outbound link, every social handle, and the on-page contact email, all normalized to one schema.

How it works

Seven dedicated extractors under one actor, plus a generic fallback for any other bio-link host — so a single dataset can hold a creator's whole cross-platform footprint. Pure HTTP, no browser.

Why Use This Scraper?

  • ✅ Seven platforms, one actor — Linktree, Beacons, Komi, link.me, Pillar, Tap.bio, and bio.link, no separate scraper per site
  • ✅ One normalized schema — every platform maps onto the same UnifiedProfile row, so you never write per-site parsing
  • ✅ Every outbound link captured — each link with its title, URL, type, and (for socials) the resolved network + handle
  • ✅ On-page contact email — captured natively where the page exposes it, ready for lead-gen (no third-party enrichment)
  • ✅ All social handles resolved — Instagram, TikTok, YouTube, Spotify, X, Facebook and more, each with the clean handle
  • ✅ Mix platforms in one run — paste any combination of profile URLs; each is routed to the right extractor by its host
  • ✅ Bulk-by-username mode — feed bare handles + a platform and let the actor build the URLs
  • ✅ JSON, CSV, or Excel output, ready for spreadsheets, CRMs, and BI tools

Overview

The Bio-Link Scraper is built for creator marketers, talent agencies, lead-gen teams, and researchers who need link-in-bio data in a spreadsheet instead of a browser tab.

You give it profile URLs (or bare usernames + a platform). Each URL is routed by hostname to a dedicated extractor that reads the platform's real data source — embedded page JSON, a public GraphQL API, or the rendered DOM — and returns a clean, flat row. Because every platform normalizes onto the same schema, a Linktree profile and a Komi profile come back as the same shape, side by side.

The actor is pure HTTP — no login, no browser, no API key required from you. Cloudflare-walled hosts (bio.link, Beacons) are unblocked automatically. Output is one row per profile, exportable straight to CSV or Excel.

Supported Inputs

Platforms

Each profile URL is routed to its platform extractor by hostname:

PlatformExample profile URLCoverage
link.mehttps://link.me/danucdFull — identity, all links, socials, on-page email
Linktreehttps://linktr.ee/shopifyFull — identity, all links, socials
Tap.biohttps://tap.bio/@nasaFull — identity, card links, socials
Komihttps://kennyg.komi.ioFull — identity, all module links, socials, theme
Pillarhttps://pillar.io/ninjaFull — identity, links, socials
bio.linkhttps://bio.link/artFull — identity, links, socials, on-page email
Beaconshttps://beacons.ai/defleppardIdentity + full social list + featured link (see FAQ)
Any other bio-link hosthttps://example.bio/nameGeneric fallback — identity, socials, visible links

Input formats

  • Profile URLs — one or more full URLs, any mix of platforms:
    • https://link.me/danucd
    • https://linktr.ee/shopify
    • https://kennyg.komi.io
  • Usernames + platform — bare handles resolved against one selected platform (bulk mode):
    • usernames: ["danucd", "another"], platform: link.me

Copy-pasteable input

{
"profileUrls": [
"https://link.me/danucd",
"https://linktr.ee/shopify",
"https://tap.bio/@nasa",
"https://kennyg.komi.io",
"https://pillar.io/ninja",
"https://bio.link/art",
"https://beacons.ai/defleppard"
],
"maxItems": 100
}

Unsupported inputs

  • Search/discovery by keyword — the actor scrapes profiles you supply; it does not find creators for you
  • Private, deleted, or password-locked profiles — nothing to return
  • Analytics/click counts per link — bio-link platforms don't expose these publicly
  • Non-bio-link URLs — feeding a random website returns only whatever generic identity markup it exposes

Use Cases

AudienceWhat they get
Creator marketing / influencer outreachEvery social handle + on-page email per creator, in one row — an instant lead list
Talent agenciesBuild and refresh a roster's cross-platform link + contact database
Market & competitor researchCompare what links/products creators feature across platforms
Social-graph enrichmentResolve a bio-link URL into all the creator's downstream social accounts
Data / growth teamsFeed normalized creator profiles into a CRM, warehouse, or BI tool
MonitoringTrack how a creator's featured links change over time

How It Works

How It Works

  1. Input — supply profile URLs (mix platforms freely) or bare usernames + a platform
  2. Route by host — each URL is matched to its dedicated extractor by hostname; unknown hosts fall to the generic extractor
  3. Fetch the real data source — embedded page JSON, a public GraphQL API, or the rendered DOM (Cloudflare-walled hosts are unblocked automatically), all over HTTP
  4. Normalize — every platform's data is mapped onto one UnifiedProfile schema: identity, socials, links, email
  5. Output — one flat row per profile as JSON, CSV, or Excel, stopping once maxItems is reached

Input Configuration

FieldTypeRequiredNotes
profileUrlsarray<string>one of these twoBio-link profile URLs. Mix platforms freely — each is routed by host.
usernamesarray<string>one of these twoBare handles, resolved against platform below (bulk-by-username mode).
platformstringwith usernamesWhich platform the bare handles belong to. One of linkme, linktree, tapbio, beacons, biolink, komi, pillar. Default linkme. Ignored for full profileUrls.
includeRawDatabooleannoAttach the raw upstream payload (page JSON / GraphQL / JSON-LD) to each row for debugging or extra fields. Default false.
maxItemsintegernoHard cap on total dataset rows. Default 100. Free-tier runs are capped.
maxConcurrencyintegernoMaximum profiles fetched in parallel. Range 1–20. Default 10.
proxyobjectnoPaying users are auto-routed through premium residential proxies (no setup). Free users can enable Apify Proxy here. Walled hosts are unblocked automatically.

Common scenarios

Mixed platforms in one run

{
"profileUrls": [
"https://link.me/danucd",
"https://linktr.ee/shopify",
"https://kennyg.komi.io",
"https://bio.link/art"
]
}

Bulk by username (one platform)

{
"usernames": ["danucd", "someone", "another"],
"platform": "linkme"
}

Include the raw upstream payload

{
"profileUrls": ["https://linktr.ee/shopify"],
"includeRawData": true
}

Output Overview

One row per profile. Every row is the same UnifiedProfile shape regardless of source platform:

  • Identityplatform, username, displayName, bio, avatar, cover, verified, isAdult
  • ReachvisitCount, followerCount (where the platform exposes them)
  • Contactemail, phone, location, websites[]
  • LinkssocialLinks[] (resolved social accounts) and links[] (all outbound links), each with title, url, type, network, handle, thumbnail, position; plus totalLinks
  • Metatheme, createdAt, updatedAt, scrapedAt, and note (present only on partial/generic extractions)

Fields the source doesn't expose come back null or empty rather than missing.

Output Samples

{
"platform": "linkme",
"profileUrl": "https://link.me/danucd",
"username": "danucd",
"displayName": "Dana",
"bio": "ALL MY LINKS👇",
"avatar": "https://media.link.me/_resize/image/quality=90,format=webp/images/webp-images/user-profile/1169288/tmp-2541-1763300314455.webp",
"cover": null,
"verified": false,
"isAdult": false,
"visitCount": "48.5k",
"followerCount": null,
"email": "dana.danucd@gmail.com",
"phone": null,
"location": null,
"websites": [],
"socialLinks": [
{
"title": "Instagram",
"url": "https://www.instagram.com/danucd/",
"type": "social",
"network": "instagram",
"handle": "danucd",
"thumbnail": "https://media.link.me/style/icons/v5.0/Instagram-1.png",
"position": 4
},
{
"title": "Spotify",
"url": "https://open.spotify.com/artist/0A8XmfCL2yangEtvot3peD",
"type": "social",
"network": "spotify",
"handle": "0A8XmfCL2yangEtvot3peD",
"thumbnail": "https://media.link.me/style/icons/v5.0/Spotify-1.png",
"position": 10
}
],
"links": [
{
"title": "Instagram",
"url": "https://www.instagram.com/danucd/",
"type": "social",
"network": "instagram",
"handle": "danucd",
"position": 4
}
],
"totalLinks": 13,
"theme": { "backgroundColor": "", "mainTextColor": "" },
"createdAt": "2024-11-01 12:37:51",
"updatedAt": "2025-11-16 13:43:17",
"scrapedAt": "2026-06-30T22:41:08.912Z"
}
{
"platform": "beacons",
"username": "defleppard",
"displayName": "defleppard",
"avatar": "https://cdn.beacons.ai/user_content/.../profile_defleppard.png",
"socialLinks": [
{ "url": "https://tiktok.com/@defleppard", "type": "social", "network": "tiktok", "handle": "defleppard" },
{ "url": "https://instagram.com/defleppard", "type": "social", "network": "instagram", "handle": "defleppard" }
],
"links": [ { "title": "Featured", "url": "https://DefLeppard.com", "type": "link" } ],
"totalLinks": 6,
"note": "Beacons exposes identity + full social list + one featured link via JSON-LD; its multi-link button list loads from a private API and is not available HTTP-only."
}

Key Output Fields

Identity

FieldDescription
platformWhich extractor produced the row (linkme, linktree, tapbio, komi, pillar, biolink, beacons, or generic)
usernameHandle / slug
displayNameHuman display name
bioBio / description text
avatar / coverAbsolute image URLs
verified / isAdultVerified badge / age-gated flags

Reach & contact

FieldDescription
visitCount / followerCountWhere the platform exposes them
email / phoneOn-page contact captured natively (no enrichment)
location / websites[]Free-text location and featured websites
FieldDescription
socialLinks[]Resolved social accounts, each with network + handle
links[]All outbound links, each with title, url, type, network, handle, thumbnail, position
totalLinksCount of links[]

Meta

FieldDescription
themeBrand colours / theme hints where exposed
createdAt / updatedAtPlatform timestamps where exposed
scrapedAtISO timestamp of the scrape
notePresent only when extraction was partial (Beacons) or via the generic fallback

FAQ

Which platforms are supported?

link.me, Linktree, Tap.bio, Komi, Pillar, bio.link, and Beacons each have a dedicated extractor. Any other link-in-bio host falls to a generic extractor that returns identity, socials, and visible links.

Do I need to log in or supply an API key?

No. The actor reads public profile pages over HTTP. No login, no cookies, no API key from you.

Can I mix platforms in one run?

Yes — that's the point. Put any combination of profile URLs in profileUrls; each is routed to the right extractor by its host.

Is the on-page email always present?

No. email is only populated when the creator has published a contact email on the page (common on link.me and bio.link). It is captured natively — the actor does not perform third-party email enrichment or guessing.

Why is Beacons partial?

Beacons' full outbound-button list is loaded by its app from a private, header-gated API that isn't reachable with a public HTTP request. The actor still returns Beacons identity, the full social list, and the featured link from the page's public data, and flags the limitation in the row's note field. All other platforms return the complete link list.

Is this the official API of any of these platforms?

No. This actor is not affiliated with or endorsed by any of the platforms. It reads publicly available profile pages.

What does the actor NOT scrape?

Per-link click analytics, private/locked profiles, and creator discovery (it scrapes profiles you supply — it doesn't find them for you).

Can I export to JSON, CSV, or Excel?

Yes. Results land in the dataset and export to JSON, CSV, Excel, or the API like any Apify actor.

Support

We actively maintain this actor; if a platform changes its page structure, report it and we'll patch quickly.

Additional Services

Need a custom bio-link platform added, a tailored export shape, a scheduled feed into your warehouse, or on-page email enrichment wired to a specific workflow? Contact muhamed.didovic@gmail.com — custom scraping and integration work is available.

Explore More Scrapers

Found the creator's links? Go deeper on each account — these pair naturally with bio-link lead-gen:

Full portfolio: apify.com/memo23 — social, app-store, marketplace, real-estate, and jobs scrapers.

⚠️ Disclaimer

This actor is an independent tool and is not affiliated with, endorsed by, or sponsored by link.me, Linktree, Tap.bio, Komi, Pillar, bio.link, Beacons, or any of their operators. "Linktree", "Beacons", "Komi", "Pillar", "Tap.bio", "link.me", "bio.link" and all related names, logos, and trademarks are the property of their respective owners and are used here for descriptive and identification purposes only.

The actor scrapes only publicly accessible profile data — the same information any visitor sees without logging in. It does not bypass authentication, access private or restricted content, or collect data behind a login.

You are responsible for how you use the data. Ensure your use complies with each platform's Terms of Service and with applicable laws and regulations, including data-protection rules such as GDPR and CCPA, especially when collecting or processing information relating to identifiable individuals. Collect and use only what you have a lawful basis to use.

SEO Keywords

bio link scraper, link in bio scraper, Linktree scraper, Beacons scraper, Komi scraper, link.me scraper, Pillar scraper, Tap.bio scraper, bio.link scraper, link-in-bio data extractor, creator profile scraper, influencer lead generation, social handle extractor, creator contact email scraper, social media links scraper, creator database builder, link in bio API, bio link data export, multi-platform creator scraper, influencer marketing data, creator outreach list, social profile enrichment