Linkedin Easy Apply
by giovannibiancia
Automatically fills out and submits LinkedIn Easy Apply job applications by reading the resume and intelligently selecting the correct answers.
Opens on Apify.com
About Linkedin Easy Apply
Automatically fills out and submits LinkedIn Easy Apply job applications by reading the resume and intelligently selecting the correct answers.
What does this actor do?
Linkedin Easy Apply is a web scraping and automation tool available on the Apify platform. It's designed to help you extract data and automate tasks efficiently in the cloud.
Key Features
- Cloud-based execution - no local setup required
- Scalable infrastructure for large-scale operations
- API access for integration with your applications
- Built-in proxy rotation and anti-blocking measures
- Scheduled runs and webhooks for automation
How to Use
- Click "Try This Actor" to open it on Apify
- Create a free Apify account if you don't have one
- Configure the input parameters as needed
- Run the actor and download your results
Documentation
🚀 LinkedIn Easy Apply Automation Automatically apply to LinkedIn jobs using AI-powered form filling ## 🎯 What It Does This tool automatically navigates through LinkedIn Easy Apply job postings, intelligently fills out application forms using AI (Google Gemini), and submits your applications across multiple job listings and pages. ## 💼 What It's For - Job Search Automation: Apply to multiple positions quickly - Career Transition: Maximize your job search efficiency - Market Testing: Test interest in your profile across different roles - Time Saving: Reduce hours of manual form filling to minutes --- ## 🔒 Privacy & Data Protection ### What Data Is Processed This tool processes: - Your LinkedIn authentication cookies (stored temporarily) - Your resume/CV text - Your responses to application questions - Job posting information (title, company, location) ### Data Security - No Data Storage: Your personal data is NOT permanently stored - Temporary Processing: Cookies and resume data are used only during execution - AI Processing: Form questions are sent to Google Gemini API for intelligent responses - Apify Platform: Data is processed within Apify's secure infrastructure ### Your Privacy Obligations - Do not share this tool with credentials from other users - Review all submitted applications in your LinkedIn account - Monitor the dataset output for accuracy - Delete actor runs containing sensitive data after review --- ## 🛠️ Simplified Setup ### ⚠️ CRITICAL: Use Google Chrome or Brave For the Actor to work correctly, you MUST use Google Chrome or Brave Browser to extract both cookies and User Agent from LinkedIn. ### Step 1: Access LinkedIn with Chrome/Brave 1. Open Google Chrome or Brave Browser 2. Go to LinkedIn.com and log in 3. Make sure you're fully logged in and can access your feed ### Step 2: Extract Cookies from Chrome/Brave #### Easy Method (Recommended): 1. Install the "Cookie Editor" extension on Chrome/Brave - Chrome: Cookie Editor on Chrome Web Store - Brave: Same extension works 2. While on LinkedIn.com, click the Cookie Editor extension icon 3. Click "Export" → "Export as JSON" 4. Copy the entire JSON and paste it into the Actor's "LinkedIn Cookies" field #### Manual Method: 1. On LinkedIn.com, press F12 to open DevTools 2. Go to: Application → Cookies → https://www.linkedin.com 3. Look for these critical cookies (especially): - li_at (most important - your session token) - JSESSIONID - liap - All other cookies visible 4. Export all cookies as JSON format and paste into the Actor ### Step 3: Get User Agent from Chrome/Brave 1. Still using Chrome/Brave, visit: https://www.whatismybrowser.com/detect/what-is-my-user-agent 2. Copy the "User Agent" string that appears (looks like: Mozilla/5.0 (Windows NT 10.0; Win64; x64)...) 3. Paste it into the Actor's "User Agent" field ### Step 4: Prepare Your Resume/CV 1. Convert your CV to plain text format 2. Include all relevant information: - Work experience - Education - Skills - Certifications - Languages 3. Paste it into the "Curriculum" field ### Step 5: Find LinkedIn Easy Apply URL 1. Go to LinkedIn Jobs: https://www.linkedin.com/jobs/ 2. Search for your desired position 3. Use filters to show only "Easy Apply" jobs 4. Open a job listing that shows the "Easy Apply" button 5. Copy the URL from your browser (must contain /jobs/easy-apply/) - ✅ Good: https://www.linkedin.com/jobs/search/?f_AL=true&keywords=software%20engineer - ✅ Good: https://www.linkedin.com/jobs/collections/easy-apply/ - ❌ Bad: Regular job listing without Easy Apply ### Step 6: Configure Advanced Options (NEW! 🎉) #### 🚫 Company Blacklist (Optional) Want to skip certain companies? Add them to the blacklist: - Enter one company name per line - Case-insensitive matching (e.g., "Google" matches "google" and "GOOGLE") - Applications to blacklisted companies are skipped entirely (modal won't even open) - Useful for avoiding companies you've already applied to or don't want to work for Example: Meta Amazon Previous Company Inc Competitor Corp #### 📊 Maximum Applications Limit (Optional) Control how many applications to submit: - Set a number (e.g., 10) to stop after that many successful applications - Set to 0 or leave empty to process all available jobs - Counts only successfully submitted applications (confirmed by success modal) - Useful for testing, budget control, or phased job searching Example Use Cases: - Test run: Set to 5 to test the system - Daily limit: Set to 20 to apply to 20 jobs per day - Unlimited: Set to 0 for full automation across all pages ### Step 7: Configure Proxy (Recommended) - Enable "Use Apify Proxy" for best results - Select proxy country matching your LinkedIn account location - Helps avoid detection and rate limiting --- ## 🎬 How It Works 1. Initialization: Loads your configuration and validates inputs 2. Browser Launch: Opens a Chrome browser with your cookies and User Agent 3. Authentication: Verifies LinkedIn login using your cookies 4. Job Discovery: Finds all Easy Apply job cards across multiple pages 5. Filtering: - Skips blacklisted companies (if configured) - Checks application limit (if configured) 6. AI Processing: For each job: - Clicks the job card - Extracts company name, job title, location - Checks against blacklist - Opens application modal - Reads form questions - Uses Google Gemini AI to generate intelligent responses - Fills out multi-step forms - Submits application 7. Verification: Confirms successful submission via success modal 8. Reporting: Saves all results to dataset with detailed statistics --- ## 📊 What You Get The Actor outputs a dataset with detailed information for each job processed: json { "timestamp": "2025-01-15 14:30:22", "page_number": 1, "position_on_page": 3, "job_title": "Senior Software Engineer", "company": "TechCorp Inc", "location": "San Francisco, CA", "applicants_count": "50 applicants", "posted_time": "2 days ago", "job_url": "https://www.linkedin.com/jobs/view/1234567890", "application_status": "SUCCESS", "status_message": "Application submitted successfully", "success_modal_shown": true, "form_stats": { "total_steps": 3, "fields_filled": 12, "errors": 0 } } ### Status Values: - SUCCESS: Application was submitted and success modal confirmed - FAILED: Application failed (see status_message for reason) ### Common Failure Reasons: - "Company in blacklist - skipped": Company was in your blacklist - "Modal did not open": Easy Apply modal failed to appear - "Form processing failed with X errors": Errors during form filling --- ## 🎛️ Input Configuration | Field | Type | Required | Description | | -------------------- | ------- | -------- | ---------------------------------------------- | | job_posting_url | String | ✅ Yes | LinkedIn Easy Apply search URL or collection | | cookies | Array | ✅ Yes | LinkedIn authentication cookies (JSON format) | | userAgent | String | ✅ Yes | Browser User Agent (must be Chrome/Brave) | | resume_text | String | ✅ Yes | Your CV/resume in plain text format | | proxy | Object | ✅ Yes | Proxy configuration (Apify Proxy recommended) | | headless | Boolean | No | Run browser without GUI (default: true) | | companyBlacklist | Array | No | List of company names to skip | | maxApplications | Integer | No | Maximum applications to submit (0 = unlimited) | --- --- ## ⚙️ Advanced Features ### Multi-Page Processing - Automatically navigates through pagination - Processes all Easy Apply jobs across all pages - Stops when reaching maximum applications limit ### Intelligent Form Filling - AI-powered responses using Google Gemini - Handles text fields, dropdowns, radio buttons, checkboxes - Adapts responses based on your resume - Supports multi-step forms ### Robust Error Handling - Retries on failed clicks - Handles stale elements - Detects and reports modal issues - Continues processing after individual failures ### Success Verification - Confirms submission via LinkedIn's success modal - Only counts verified successful applications - Detailed error reporting for failures --- ## 🚨 Troubleshooting ### Problem: Login Issues / "Authentication Failed" Solutions: 1. ✅ Re-extract cookies from a fresh LinkedIn session 2. ✅ Make sure you used Chrome or Brave for cookie extraction 3. ✅ Verify the User Agent matches the same browser you used for login 4. ✅ Check that li_at cookie is present and not expired 5. ✅ Try logging out of LinkedIn, clearing cookies, logging back in, and re-extracting ### Problem: "No Easy Apply page" Error Solutions: 1. ✅ Make sure the URL contains /jobs/ and Easy Apply jobs 2. ✅ Use the "Easy Apply" filter on LinkedIn Jobs search 3. ✅ Use a jobs search or collection URL, not a single job posting ### Problem: Applications Not Submitting Solutions: 1. ✅ Check actor logs for specific errors 2. ✅ Verify your resume text is comprehensive and well-formatted 3. ✅ Check if forms require manual intervention (some questions may be too complex) 4. ✅ Review application_status: "FAILED" entries in the dataset ### Problem: Actor Stops After Few Applications Solutions: 1. ✅ Check if you set a maxApplications limit 2. ✅ Review cost protection settings in logs 3. ✅ Verify Gemini API key is valid and has available quota 4. ✅ Check for LinkedIn rate limiting (pause and retry later) ### Problem: Blacklist Not Working Solutions: 1. ✅ Verify company names match exactly (case-insensitive, but spelling must match) 2. ✅ Check logs for "Company in blacklist" messages 3. ✅ Review dataset for "Company in blacklist - skipped" status messages ### Problem: High Costs Solutions: 1. ✅ Set a reasonable maxApplications limit (e.g., 10-20 for testing) 2. ✅ Monitor Gemini API usage in Google Cloud Console 3. ✅ Use blacklist to avoid unnecessary applications 4. ✅ Check cost protection logs for detailed breakdown --- ## 📝 Best Practices ### ✅ DO: - Start with maxApplications: 5-10 for initial testing - Review the first few applications manually on LinkedIn - Use a comprehensive, well-formatted resume - Set up company blacklist for companies you're not interested in - Monitor the dataset output regularly - Use Apify Proxy to reduce detection risk - Keep your cookies fresh (re-extract if having issues) ### ❌ DON'T: - Run unlimited applications without monitoring - Use outdated or incorrect resume information - Share your cookies or credentials - Run multiple concurrent instances on the same account - Ignore failed applications (review and understand failures) - Apply to jobs you're not qualified for - Violate LinkedIn's Terms of Service knowingly --- ## 🔧 Technical Details ### Browser Configuration - Engine: Selenium WebDriver (Chrome/Brave) - Mode: Headless (configurable) - Timeout: 10s for card clicks, 5s for buttons - Retry Logic: 3 attempts for failed clicks ### AI Integration - Provider: Google Gemini API (gemini-1.5-flash) - Context: Resume + job details + form questions - Response Time: ~2-5 seconds per form field - Cost Tracking: Built-in monitoring per API call ### Data Flow 1. Input validation 2. Browser initialization with cookies 3. Page navigation and job discovery 4. Company filtering (blacklist check) 5. Form parsing and AI processing 6. Application submission 7. Success verification 8. Dataset push with full details --- ## 🆘 Support & Issues ### Getting Help - Actor Issues: Check the actor logs for detailed error messages - Apify Platform: Contact Apify support via the platform - LinkedIn Issues: This is an unofficial tool - LinkedIn support won't help with automation issues ### Reporting Bugs If you encounter bugs or issues: 1. Check the actor logs for error details 2. Review this README thoroughly 3. Verify your input configuration 4. Report issues with: - Full error messages from logs - Your input configuration (without sensitive data) - Expected vs. actual behavior --- ## 📜 Version History ### v1.1.0 (Current) - ➕ Added company blacklist feature - ➕ Added maximum applications limit - ➕ Enhanced logging for filtering operations - ➕ Improved success tracking and counting - 🔧 Fixed application counting accuracy ### v1.0.0 - 🎉 Initial release - ✅ Multi-page job processing - ✅ AI-powered form filling - ✅ Success verification - ✅ Cost protection - ✅ Detailed reporting --- ## ⚖️ Legal & Ethical Considerations ### Compliance - This tool is intended for personal use only - Commercial use may require additional compliance measures - Always respect LinkedIn's robots.txt and Terms of Service - Be aware of local employment and anti-spam laws ### Ethical Use - Only apply to jobs you're genuinely interested in - Provide accurate information in your resume - Don't spam employers with inappropriate applications - Respect company preferences and requirements - Consider the impact on recruiters and hiring managers ### Data Protection - GDPR: Ensure you have the right to process your own data - CCPA: Be aware of California privacy laws if applicable - Data Retention: Delete actor runs with sensitive data after review - Third-party Processing: Google Gemini API processes your data --- ## 🌟 Remember This tool is powerful but comes with responsibility. - Use it ethically and legally - Monitor your applications closely - Respect LinkedIn's platform and policies - Protect your professional reputation - Start small and scale gradually ## ⚠️ USER RESPONSIBILITIES & LEGAL DISCLAIMER ### 🔴 IMPORTANT - READ CAREFULLY By using this tool, you acknowledge and agree that: 1. Terms of Service Compliance: You are responsible for ensuring your use complies with LinkedIn's Terms of Service. Automated tools may violate these terms. 2. Account Risk: Using automation tools may result in: - Account warnings or restrictions - Temporary or permanent account suspension - Loss of access to LinkedIn services 3. Accuracy of Applications: You are solely responsible for: - The accuracy of information submitted - The quality and appropriateness of applications - Any consequences of applications sent on your behalf 4. Rate Limiting: Use reasonable limits to avoid detection and account issues. Use the maxApplications setting responsibly. 5. Professional Reputation: Applications submitted through this tool represent you professionally. Review logs carefully. 6. Legal Compliance: Ensure your use complies with: - Local employment laws - Data protection regulations (GDPR, CCPA, etc.) - Anti-spam legislation - LinkedIn's Terms of Service and Professional Community Policies ⚠️ THE AUTHORS AND MAINTAINERS OF THIS TOOL ASSUME NO LIABILITY FOR: - Account suspensions or bans - Incorrect or inappropriate applications - Missed job opportunities - Professional reputation damage - Legal consequences - Any other damages resulting from the use of this tool USE AT YOUR OWN RISK. This tool is provided "AS IS" without warranties of any kind. Good luck with your job search! 🚀💼 --- This is an unofficial tool and is not affiliated with, endorsed by, or connected to LinkedIn Corporation.
Categories
Common Use Cases
Market Research
Gather competitive intelligence and market data
Lead Generation
Extract contact information for sales outreach
Price Monitoring
Track competitor pricing and product changes
Content Aggregation
Collect and organize content from multiple sources
Ready to Get Started?
Try Linkedin Easy Apply now on Apify. Free tier available with no credit card required.
Start Free TrialActor Information
- Developer
- giovannibiancia
- Pricing
- Paid
- Total Runs
- 51
- Active Users
- 4
Related Actors
Video Transcript Scraper: Youtube, X, Facebook, Tiktok, etc.
by invideoiq
Linkedin Profile Details Scraper + EMAIL (No Cookies Required)
by apimaestro
Twitter (X.com) Scraper Unlimited: No Limits
by apidojo
Content Checker
by jakubbalada
Apify provides a cloud platform for web scraping, data extraction, and automation. Build and run web scrapers in the cloud.
Learn more about ApifyNeed Professional Help?
Couldn't solve your problem? Hire a verified specialist on Fiverr to get it done quickly and professionally.
Trusted by millions | Money-back guarantee | 24/7 Support