nametoprofile.com

Browser Extension Support

Email & Phone Extractor โ€” Support

Use this page for setup guidance, scope rules, extraction workflow, confidence scoring, capture sessions, premium features (Crawl + Bulk), troubleshooting, and contact information for the Email & Phone Extractor (ContactHarvest) browser extension. The same content applies whether you installed it from the Chrome Web Store, Firefox Add-ons, Microsoft Edge Add-ons, or any other browser store we publish to.

Website: nametoprofile.com Register: Get API Key Email: info@nametoprofile.com Privacy: Privacy Policy Terms: Terms

Quick Start

  1. Register and create an API key from nametoprofile.com/register.
  2. Install the Email & Phone Extractor from your browser's extension store โ€” Chrome Web Store, Firefox Add-ons, Microsoft Edge Add-ons, or whichever store applies to your browser.
  3. Open the extension popup and paste your API key. The popup unlocks once it validates.
  4. Browse to any page with contact information. The popup automatically scans and lists what it finds.
  5. Click any row to copy. Use the footer's Copy Emails / Copy Phones / Export buttons for batch operations.
Scope: The extension runs on any web page (<all_urls> host permission). It does not run on browser system / internal pages (chrome://, chrome-extension://, edge://, about:, moz-extension://) โ€” those are off-limits to all extensions on every browser.

How the workflow behaves

  • Opening the popup automatically scans the current page for emails and phones with confidence scoring (High / Medium / Low).
  • Each row shows the value, a confidence dot, the source it came from (mailto, tel_link, schema, text, etc.), and a copy button.
  • Use the Filter dropdown to narrow by confidence. Use Highlight Page to overlay matches on the live page.
  • The ๐Ÿ”„ Re-scan button forces a fresh DOM pass โ€” useful on pages that load content asynchronously after a few seconds.

Confidence scoring

Each contact gets a High / Medium / Low confidence tag based on where it was found:

  • Emails โ€” High: mailto: links, <link rel="me"> tags, schema microdata, JSON-LD email fields.
  • Emails โ€” Medium: decoded obfuscation (e.g. info AT example DOT com) or contact-block context.
  • Emails โ€” Low: plain page-text matches without strong source signals.
  • Phones โ€” High: tel: / sms: / wa.me/ links, [itemprop="telephone"] microdata.
  • Phones โ€” Medium: libphonenumber-validated values or JSON-LD phone fields.
  • Phones โ€” Low: page-text matches without strong source, short codes outside tel: links, NANP non-geographic prefixes (500 / 700 / 900), unparseable country, or length too long for any region.

Stored locally

The extension stores extracted contacts, capture sessions, settings, and your API key in your browser's extension local storage (chrome.storage.local in Chromium-based browsers, browser.storage.local in Firefox), so your data and in-progress work survive popup closes and service-worker / background-script restarts. A 30-day default time-based prune (configurable to 7 / 30 / 90 days, or Never) plus a 4.5 MB LRU eviction (oldest contacts dropped first) keep local storage healthy. Nothing is uploaded to any third party beyond the two free NameToProfile API calls described next.

API key usage

The extension uses your NameToProfile API key only to validate that your account is active and to read your remaining credit balance. It calls these endpoints only:

  • GET /v1/auth/validate โ€” on key save and on optional 5-minute background re-validation
  • GET /v1/usage โ€” on Refresh balance clicks and the same 5-minute cadence

Both endpoints are free and do not consume credits. Premium features (Capture, Crawl, Bulk, Site blacklist, Email filters, Phone filters) require a balance of 250+ credits, but the threshold is read-only โ€” credits are inspected, never deducted. The extension never calls POST /v1/usage/consume.

Export formats

CSV โ€” UTF-8 with BOM, 13 columns including Country and Session ID.
XLSX โ€” full Excel workbook (SheetJS-based).
JSON โ€” full records plus session metadata.
TXT โ€” grouped by domain.
Copy Emails / Copy Phones โ€” newline-separated string copied to clipboard.
Copy CSV Row / Copy Pairs (TSV) โ€” single-row variants, ready to paste into a spreadsheet.

Filename pattern: contactharvest-YYYY-MM-DD-Ncontacts.{ext}.

Capture mode (premium, requires 250+ credits)

  • Click Start Capturing in the popup's capture bar. A red dot appears on the toolbar icon.
  • Browse normally. Every page you visit adds its contacts to the active session, deduplicated by canonical value across domains.
  • Click Stop to end the session. The session lands in the Sessions tab with date, duration, page count, contact count, and the domain list.
  • Each session can be viewed, exported as CSV, or deleted.

Crawl mode (premium)

Same-domain crawler with depth and page limits, per-page delay, optional robots.txt Safe Mode, and pause / resume / stop controls. Job state survives popup close.

Bulk mode (premium)

Paste a list of URLs, validate, then sequentially open / extract / close each one. Pause / resume / stop controls. A resume banner appears when you reopen the popup mid-job. The last 5 completed jobs are kept in history.

Privacy mode and the 24-hour request counter

  • Settings โ†’ Privacy โ†’ Privacy mode suppresses the 5-minute background re-validation; the extension only contacts the API on your explicit click after that.
  • The popup brand strip shows a ๐Ÿ”’ Privacy ยท N calls (24h) chip with a rolling 24-hour counter so you can audit outbound activity at a glance.

Toolbar icon states

  • Normal โ€” standard ContactHarvest icon (signed in, not capturing).
  • Locked โ€” grey-tinted icon with an amber padlock badge (no API key validated).
  • Capturing โ€” red dot in the corner (active capture session, takes precedence over the Locked state).

Useful Links

Data handling notes

All extracted email and phone data is processed inside your browser. The extension reads the currently open page via standard browser extension APIs (the same WebExtensions surface implemented by Chrome, Firefox, Edge, and other modern browsers), scores candidates locally, and stores results in the browser's extension local storage. Extracted contacts are never sent to NameToProfile or any third party. See the Privacy Policy for full details.

Clear data behavior

Options โ†’ About โ†’ Clear all stored data removes contacts, capture sessions, crawl / bulk job state, and the 24-hour request log; settings and the API key are kept. Use Options โ†’ Privacy โ†’ Sign out to remove the API key and cached auth state. Options โ†’ About โ†’ Reset settings to defaults restores every option. Uninstalling the extension removes everything.

Premium features and credits

The premium features (Capture, Crawl, Bulk, Site blacklist, Email filters, Phone filters) are gated by a credit-balance read: your account must have at least 250 credits available. The extension reads your balance via GET /v1/usage and unlocks premium UI when the balance is sufficient. Credits are never deducted โ€” the threshold is advisory only.

Troubleshooting

API key invalid mid-session

  • Your key was deactivated or rotated.
  • Open the Options page, sign out, and paste a new key.
  • The mid-session 401 banner gives you a one-click jump to Options.

Backend unreachable

  • Check your internet connectivity.
  • The extension keeps using the cached auth state until it can re-validate; you may see stale credit numbers until it succeeds.
  • Hit the Retry button on the popup banner once you're back online.

Restricted page

  • The extension can't run on browser internal pages โ€” chrome://, chrome-extension://, edge://, about:, and moz-extension:// are all off-limits to extensions across browsers.
  • Browse to a regular site and try again.

Empty list on a page that clearly has contacts

  • Hit the ๐Ÿ”„ Re-scan button โ€” some pages render contacts via JavaScript a few seconds after loading.
  • Pages with cross-origin iframes are partially invisible to extensions (browser security boundary).
  • If the contact uses an unusual encoding, please email support with the page URL.

Premium tabs locked even though I have credits

  • Premium needs 250+ credits.
  • Click the credit chip in the popup header to refresh the cached balance.
  • Or hit Refresh balance in Options โ†’ Account.

Contacts disappearing

  • The 4.5 MB LRU eviction drops oldest contacts first.
  • The 30-day retention prune (default) is also active.
  • Export anything you want to keep, or change the retention window to 90 days / Never under Settings โ†’ Privacy.

Phone shown as "Low" even though it looks correct

  • Common reasons: a short code from a non-tel: source; libphonenumber said "possible" but couldn't pick a country; length is too long for any region; or it's a NANP non-geographic special prefix (500 / 700 / 900).
  • The Low tag is intentionally cautious โ€” the contact is still in the list and exportable.

Popup is cut off or scrolling weirdly

  • The popup is fixed-width (380 px).
  • On very high-DPI screens at zoom > 200%, content can overflow.
  • Use a normal zoom level and reopen the popup.

FAQ

Which pages are supported?

Any page you actively load. The extension is not domain-restricted. It does not run on browser internal pages (chrome://, chrome-extension://, edge://, about:, moz-extension://) โ€” those are off-limits to extensions on every browser.

Does the extension send my extracted contacts anywhere?

No. All extraction, scoring, capture, crawling, and export run inside your browser. The only API calls are /v1/auth/validate and /v1/usage โ€” neither carries contacts or page content.

Are credits deducted when I extract contacts?

No. The 250-credit threshold is a read-only premium gate. The extension never calls /v1/usage/consume.

Why does my browser warn that the extension can read all your data on websites?

Every browser (Chrome, Firefox, Edge, and others) shows a permission warning at install time for the <all_urls> host permission, because the extraction logic must run on whatever page you ask it to. The extension never sends page data anywhere โ€” see Privacy Policy section 5 for how to verify this.

How do I export my contacts?

Popup footer โ†’ Export โ†’ CSV / XLSX / JSON / TXT. The filename includes the date and contact count (e.g. contactharvest-2026-04-29-237contacts.csv).

Can I disable the extension on internal or banking pages?

Yes. Options โ†’ Site blacklist (premium) lets you list hostnames to skip. You can also sign out, which fully suspends the extension.

Where is my API key stored?

In your browser's extension local storage (chrome.storage.local in Chromium-based browsers, browser.storage.local in Firefox), protected by your browser's profile-level encryption at rest. Sign out from Options to wipe it, or uninstall the extension to wipe everything.

I'm a security researcher / regulator. How do I verify the no-telemetry claims?

The extension ships as un-minified JavaScript. Privacy Policy section 11 explains how to inspect the source. The only outbound endpoints are /v1/auth/validate and /v1/usage; grep the codebase for consume to confirm /v1/usage/consume is never called.

Contact Support

For setup help, extraction issues, premium-features questions, or API-key issues for the Email & Phone Extractor.

Email: info@nametoprofile.com

Need direct help?

Send your account email, the page URL where the issue occurred, a screenshot of the popup, and the exact error if available.

Email Support