# Changelog of Contact Details Scraper (`vdrmota/contact-info-scraper`) Actor

- **URL**: https://apify.com/vdrmota/contact-info-scraper/changelog.md
- **Full Actor documentation**: https://apify.com/vdrmota/contact-info-scraper.md

#### 2026-08-11

*Fixes*

- Emails containing URL-encoded whitespace (e.g. `%20estimate@example.com`) are now cleaned up, so they no longer appear as duplicates of the real address.
- Strings that only look like emails are no longer extracted, namely fragments of Google Maps URLs such as `+Inc./@27.4280287`, where the `@` prefixes place coordinates instead of a domain.

#### 2026-08-10

*Features*

- Added support for [Linktree](https://linktr.ee) link-in-bio pages.
- Works both for `linktr.ee` start URLs, and for `linktr.ee` URLs discovered while crawling another site.
  - Linked sites are followed even with "Same domain" enabled.
  - `linktr.ee` start URL now scrapes the linked pages, each billed as a scraped page.

*Fixes*

- Fixed the first link on every page being silently skipped when collecting links to crawl.

#### 2026-04-16

*Features*

- Added "Email verification" option to Contact Details Scraper — verifies discovered emails and charges a PPE event per verified email.

#### 2025-10-30

*Features*

- **Social Media Profile Enrichment**: Added ability to enrich discovered social media URLs with detailed profile information
  - New input toggles for Facebook, Instagram, YouTube, TikTok, and Twitter profile scraping
  - Each platform can be enabled individually
  - Automatically enables "Merge contacts" mode when any social media enrichment is turned on
  - Enriched profiles include: follower counts, profile descriptions, profile pictures, verification status, and platform-specific data
  - New dedicated dataset view for the social media profiles
  - Each enriched social media profile is a separate billable event (PPE event: `Add-on: social media profile enrichment`)

#### 2025-10-13

*Features*

- Added 'Merge Contacts' option to Contact Details Scraper: A new toggle is now available in the input schema to consolidate results. When enabled, all contact information (emails, social profiles) found across all subpages will be merged into a single output row. This provides a unified view and streamlines data analysis. The list of scraped subpages remains available in the output for reference.

#### 2025-09-19

*Features*

- Added support for new social links:
  - `https://wa.me/<phone_number>`
  - `https://api.whatsapp.com/send?phone=<phone_number>`

#### 2025-09-10

*Features*

- Added support for new social links:
  - `reddit.com/user/username`

#### 2025-09-04

*Features*

- Add Business leads enrichment feature, which allows users to scrape leads for the websites found from queries, including employee names, job titles, emails, phone numbers, LinkedIn profiles, and company data. You can see it under Leads Enrichment output view. To use it set maximumLeadsEnrichmentRecords to a value higher then 0.

#### 2025-08-18

*Changes*

- BREAKING: `proxyConfig` input option is now required

#### 2025-08-01

*Features*

- Added support for new social links:
  - `snapchat.com/add/page`
  - `threads.net/@username`
  - `telegram.me/username`

#### 2024-12-16

*Features*

- Added support for new social links:
  - `x.com/profile`
  - `facebook.com/pages/page`
  - `youtube.com/@channel`
- Added extraction of contact details from HTML scripts with JSON data

#### 2024-06-25 (0.2.45)

*Features*

- Added new input field `waitUntil` to tell the actor when it should consider a page to be loaded:
  - when the HTML is loaded
  - when the HTML is loaded and JS is executed
  - when the HTML is loaded and JS is finished executing
  - when there is no network activity for at least half a second

#### 2023-02-12 (0.2.42)

*Fixes*

- `originalStartUrl` in the output items now respects the original protocol

#### 2023-01-19 (0.2.41)

*Fixes*

- Fixed the bug when the actor would get stuck on some inputs indefinitely fully, so that it doesn't rely on retrying.

#### 2023-01-18 (0.2.39)

*Fixes*

- Automatically recover actor run from a rare case when it got stuck on 1 concurrency but without doing anything.

#### 2023-01-10 (0.2.38)

*Fixes*

- Remove example emails. Names containing `example`, `user`, `name` and domains containing `example` and `domain`.

#### 2023-01-10 (0.2.37)

*Improvements*

- Preferably process pages with the highest likelihood of having contacts, e.g. `/contact`, `/about`, `/press` etc.

#### 2023-12-29 (0.2.35)

*Fixes*

- Fix the scraper getting stuck/frozen in certain rare edge case pages. If you see this behavior again, please report that to the Issues tab.

#### 2023-10-03 (0.2.35)

*Fixes*

- Fixed a rare case where some images fit the regex pattern for an email, where being scraped as emails

#### 2023-09-21 (0.2.34)

*Fixes*

- Fixed very rare case where a specific page would get the scraper stuck forever. If you see this behavior again, please report that to the Issues tab.

#### 2023-09-06 (0.2.32)

*Fixes*

- Fixed that sometimes the out-of-memory handling created extra webhook that made the run unkillable
- Fixed rare crash when trying to close page dialog modal

#### 2023-08-25 (0.2.30)

*Fixes*

- Fixed bug where the actor sometimes crashed with `Requesting main frame too early` error when `considerChildFrames` input was enabled.

#### 2023-07-19 (0.2.25)

*Fixes*

- Resolved most out-of-memory issues. Added 'Actor Fail Manager' actor that is run on every fail of Contact Details Scraper and resurrects it if it fails with an out-of-memory error. It usually happens only once a while. It if happens too frequently, it means there is a problematic website and the run will not be resurrected (if it fails more often than once every 3 minutes).

#### 2023-07-18 (0.2.24)

*Changes*

- Removed extracting emails from raw HTML (last change) because it had a bad performance on some rare websites

#### 2023-07-13 (0.2.22)

*Changes*

- Extract emails also from raw HTML which sometimes contains hidden emails in comments or JSON
