Linkedin Email Phone Apify

v1.0.0

Enrich LinkedIn profile URLs with mobile phone numbers and work/personal emails using Apify actors, merging results into unified output records.

0· 241·0 current·0 all-time
MIT-0
Download zip
LicenseMIT-0 · Free to use, modify, and redistribute. No attribution required.
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Benign
high confidence
Purpose & Capability
The name/description (LinkedIn enrichment via Apify) match the implementation: the script calls Apify actor endpoints using two hardcoded actor IDs and merges results. However, registry metadata provided at the top of the submission claims no required env vars/credentials while SKILL.md and the script clearly require an APIFY_TOKEN — this mismatch should be resolved.
Instruction Scope
SKILL.md and the included Python script limit actions to: accepting LinkedIn URLs, normalizing them, calling Apify run-sync endpoints for two actor IDs, merging responses, and returning JSON. The instructions do not ask the agent to read unrelated system files, call obscure endpoints, or exfiltrate secrets beyond using the declared APIFY_TOKEN.
Install Mechanism
No install spec — instruction-only skill with a bundled Python script. There are no downloads or archive extraction steps. Risk from installation is low; the script runs in the user's environment and relies on standard library modules only.
Credentials
The script requires a single credential (APIFY_TOKEN), which is appropriate for running Apify actors. The inconsistency: registry metadata earlier listed 'Required env vars: none' and 'Primary credential: none' while SKILL.md and the script declare APIFY_TOKEN as required/primary. Confirm the registry metadata or SKILL.md to avoid surprises.
Persistence & Privilege
The skill does not request permanent 'always' inclusion and does not modify other skills or system-wide agent settings. It runs only when invoked and accepts the token via env var or CLI argument.
Assessment
This skill is internally consistent with its purpose: it needs an Apify API token to run two actors and merge results. Before installing, verify the following: 1) The APIFY_TOKEN is legitimate and scoped appropriately (avoid using a highly privileged token in shared environments); 2) Confirm the two hardcoded actor IDs on your Apify account/console to ensure you trust those actors and their provider; 3) The registry metadata mismatch (claims no env vars vs SKILL.md requiring APIFY_TOKEN) should be corrected — assume the skill needs APIFY_TOKEN; 4) Test with a very small set of LinkedIn URLs first and avoid supplying secrets or unrelated files; 5) Consider legal/ToS implications of scraping LinkedIn data and ensure your use complies with applicable rules; 6) If you deploy in automation, monitor runs and be prepared to rotate/revoke the APIFY_TOKEN if anything unexpected occurs.

Like a lobster shell, security has layers — review code before you run it.

apifyvk977n9rkghqz9n9njp7gxfk2s18215t3latestvk977n9rkghqz9n9njp7gxfk2s18215t3lead-enrichmentvk977n9rkghqz9n9njp7gxfk2s18215t3linkedin-email-findervk977n9rkghqz9n9njp7gxfk2s18215t3linkedin-phone-findervk977n9rkghqz9n9njp7gxfk2s18215t3linkedin-scrapervk977n9rkghqz9n9njp7gxfk2s18215t3openclawvk977n9rkghqz9n9njp7gxfk2s18215t3

License

MIT-0
Free to use, modify, and redistribute. No attribution required.

SKILL.md

LinkedIn Email + Phone Enrichment (Apify)

Overview

This skill runs two Apify actors in one pipeline and merges results by LinkedIn profile URL:

  • Phone actor: X95BXRaFOqZ7rzjxM
  • Email actor: q3wko0Sbx6ZAAB2xf

Use this when the user wants one command to enrich a LinkedIn URL list with:

  • mobile phones
  • work emails
  • personal emails
  • unified rows for n8n/Sheets/CRM

Step-by-step workflow

  1. Accept LinkedIn URLs (linkedinUrls) from user.
  2. Validate and normalize URLs.
  3. Decide branches:
  • run phone actor if includePhones=true
  • run email actor if includeEmails=true
  1. Run selected actors on the same URL list.
  2. Merge results by normalized LinkedIn URL.
  3. Return summary + merged rows.

Authentication

export APIFY_TOKEN='apify_api_xxx'

or

python3 scripts/linkedin_email_phone_pipeline.py run \
  --apify-token 'apify_api_xxx' \
  --input-file references/sample_input.json

Quick start

APIFY_TOKEN='apify_api_xxx' \
python3 scripts/linkedin_email_phone_pipeline.py run \
  --input-file references/sample_input.json

Toggle branches

Emails only:

APIFY_TOKEN='apify_api_xxx' \
python3 scripts/linkedin_email_phone_pipeline.py run \
  --input-json '{
    "linkedinUrls": ["https://www.linkedin.com/in/williamhgates"],
    "includeEmails": true,
    "includePhones": false,
    "includeWorkEmails": true,
    "includePersonalEmails": true,
    "onlyWithEmails": true
  }'

Phones only:

APIFY_TOKEN='apify_api_xxx' \
python3 scripts/linkedin_email_phone_pipeline.py run \
  --input-json '{
    "linkedinUrls": ["https://www.linkedin.com/in/williamhgates"],
    "includeEmails": false,
    "includePhones": true,
    "onlyWithPhones": true
  }'

Notes

  • Actor IDs are hardcoded to your provided IDs.
  • linkedinUrls is required.
  • At least one branch must be enabled (includeEmails or includePhones).
  • Output rows contain available email/phone fields in one record.

References

  • references/input-contract.md
  • references/troubleshooting.md

Files

8 total
Select a file
Select a file to preview.

Comments

Loading comments…