Linkedin Easy Apply
Pricing
Pay per event
Linkedin Easy Apply
Automatically fills out and submits LinkedIn Easy Apply job applications by reading the resume and intelligently selecting the correct answers.
Pricing
Pay per event
Rating
0.0
(0)
Developer

Giovanni Bianciardi
Actor stats
1
Bookmarked
1
Total users
0
Monthly active users
5 days ago
Last modified
Categories
Share
๐ 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
- Open Google Chrome or Brave Browser
- Go to LinkedIn.com and log in
- Make sure you're fully logged in and can access your feed
Step 2: Extract Cookies from Chrome/Brave
Easy Method (Recommended):
- Install the "Cookie Editor" extension on Chrome/Brave
- Chrome: Cookie Editor on Chrome Web Store
- Brave: Same extension works
- While on LinkedIn.com, click the Cookie Editor extension icon
- Click "Export" โ "Export as JSON"
- Copy the entire JSON and paste it into the Actor's "LinkedIn Cookies" field
Manual Method:
- On LinkedIn.com, press F12 to open DevTools
- Go to: Application โ Cookies โ https://www.linkedin.com
- Look for these critical cookies (especially):
li_at(most important - your session token)JSESSIONIDliap- All other cookies visible
- Export all cookies as JSON format and paste into the Actor
Step 3: Get User Agent from Chrome/Brave
- Still using Chrome/Brave, visit: https://www.whatismybrowser.com/detect/what-is-my-user-agent
- Copy the "User Agent" string that appears (looks like:
Mozilla/5.0 (Windows NT 10.0; Win64; x64)...) - Paste it into the Actor's "User Agent" field
Step 4: Prepare Your Resume/CV
- Convert your CV to plain text format
- Include all relevant information:
- Work experience
- Education
- Skills
- Certifications
- Languages
- Paste it into the "Curriculum" field
Step 5: Find LinkedIn Easy Apply URL
- Go to LinkedIn Jobs: https://www.linkedin.com/jobs/
- Search for your desired position
- Use filters to show only "Easy Apply" jobs
- Open a job listing that shows the "Easy Apply" button
- 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
- โ
Good:
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:
MetaAmazonPrevious Company IncCompetitor 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
0or 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
5to test the system - Daily limit: Set to
20to apply to 20 jobs per day - Unlimited: Set to
0for 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
- Initialization: Loads your configuration and validates inputs
- Browser Launch: Opens a Chrome browser with your cookies and User Agent
- Authentication: Verifies LinkedIn login using your cookies
- Job Discovery: Finds all Easy Apply job cards across multiple pages
- Filtering:
- Skips blacklisted companies (if configured)
- Checks application limit (if configured)
- 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
- Verification: Confirms successful submission via success modal
- Reporting: Saves all results to dataset with detailed statistics
๐ What You Get
The Actor outputs a dataset with detailed information for each job processed:
{"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_messagefor 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:
- โ Re-extract cookies from a fresh LinkedIn session
- โ Make sure you used Chrome or Brave for cookie extraction
- โ Verify the User Agent matches the same browser you used for login
- โ
Check that
li_atcookie is present and not expired - โ Try logging out of LinkedIn, clearing cookies, logging back in, and re-extracting
Problem: "No Easy Apply page" Error
Solutions:
- โ
Make sure the URL contains
/jobs/and Easy Apply jobs - โ Use the "Easy Apply" filter on LinkedIn Jobs search
- โ Use a jobs search or collection URL, not a single job posting
Problem: Applications Not Submitting
Solutions:
- โ Check actor logs for specific errors
- โ Verify your resume text is comprehensive and well-formatted
- โ Check if forms require manual intervention (some questions may be too complex)
- โ
Review
application_status: "FAILED"entries in the dataset
Problem: Actor Stops After Few Applications
Solutions:
- โ
Check if you set a
maxApplicationslimit - โ Review cost protection settings in logs
- โ Verify Gemini API key is valid and has available quota
- โ Check for LinkedIn rate limiting (pause and retry later)
Problem: Blacklist Not Working
Solutions:
- โ Verify company names match exactly (case-insensitive, but spelling must match)
- โ
Check logs for
"Company in blacklist"messages - โ
Review dataset for
"Company in blacklist - skipped"status messages
Problem: High Costs
Solutions:
- โ
Set a reasonable
maxApplicationslimit (e.g., 10-20 for testing) - โ Monitor Gemini API usage in Google Cloud Console
- โ Use blacklist to avoid unnecessary applications
- โ Check cost protection logs for detailed breakdown
๐ Best Practices
โ DO:
- Start with
maxApplications: 5-10for 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
- Input validation
- Browser initialization with cookies
- Page navigation and job discovery
- Company filtering (blacklist check)
- Form parsing and AI processing
- Application submission
- Success verification
- 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:
- Check the actor logs for error details
- Review this README thoroughly
- Verify your input configuration
- 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:
-
Terms of Service Compliance: You are responsible for ensuring your use complies with LinkedIn's Terms of Service. Automated tools may violate these terms.
-
Account Risk: Using automation tools may result in:
- Account warnings or restrictions
- Temporary or permanent account suspension
- Loss of access to LinkedIn services
-
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
-
Rate Limiting: Use reasonable limits to avoid detection and account issues. Use the
maxApplicationssetting responsibly. -
Professional Reputation: Applications submitted through this tool represent you professionally. Review logs carefully.
-
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.