PowertoFly Jobs Scraper
Pricing
Pay per usage
PowertoFly Jobs Scraper
Efficiently extract job listings with the Powertofly Jobs Scraper. This lightweight actor is designed to gather detailed job data from PowerToFly quickly and reliably. To ensure the best performance and avoid blocking, using residential proxies is highly recommended.
Pricing
Pay per usage
Rating
5.0
(1)
Developer
Shahid Irfan
Maintained by CommunityActor stats
0
Bookmarked
12
Total users
7
Monthly active users
5 days ago
Last modified
Categories
Share
What does PowerToFly Jobs Scraper do?
PowerToFly Jobs Scraper collects job postings from powertofly.com and saves them as structured records. Search by keyword and location, filter by work model, or start from a PowerToFly jobs URL. Each record includes the full job description, salary range when the employer publishes one, skills, company details, and the application link.
The Actor is built for recruiting teams, job board operators, researchers, and anyone who needs a current picture of the roles listed on PowerToFly without opening each posting by hand.
Why use PowerToFly Jobs Scraper?
- Complete job records. A single run returns the title, company, location, work model, salary range, employment type, posting date, skills, and description for every job.
- Filters that match the job board. Use the same keyword, location, and remote, hybrid, or onsite filters that PowerToFly exposes to its own visitors.
- Reliable collection. Temporary source errors are retried, and the Actor tries alternate routes before it reports a failure.
- Batch output. Records are saved to the dataset while the run is still collecting, so partial progress is not lost if a later request fails.
- Scheduling and integrations. Run once, or schedule hourly, daily, or weekly runs and send results to Sheets, Airtable, Slack, or your own systems.
What data can you extract from PowerToFly?
| Field | Description |
|---|---|
title | Job title as published |
company | Hiring company name |
job_location | City, region, and country, or the work model when no address is published |
work_model | Remote, Hybrid, or Onsite |
salary | Salary or hourly range with currency and rate type when available |
employment_type | Full Time, Part Time, Contract, or Per Project |
levels_of_experience | Junior, Mid-Level, Senior, or Lead |
skills | Skill tags attached to the posting |
description_text | Full job description as plain text |
description_html | Full job description with its original formatting |
date_posted | ISO timestamp for when the job was published |
apply_url | Application link, either on PowerToFly or on the employer site |
company_url | PowerToFly company profile |
url | Direct PowerToFly job page |
How to use PowerToFly Jobs Scraper
- Open the Actor in Apify Console.
- Enter a keyword, a location, or a PowerToFly jobs URL. The keyword field is prefilled with
software engineer. - Choose an optional work model filter.
- Set
results_wantedand leavemax_pagesat its default unless you need a hard page limit. - Run the Actor and download the dataset, or connect it to your workflow.
Input Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
startUrl | String | No | - | PowerToFly jobs page or job detail URL. When supplied, its search parameters replace the keyword, location, and filter fields. |
keyword | String | No | software engineer | Job title, skill, or phrase to search for |
location | String | No | - | Location filter such as Remote, New York, or United States |
locationType | Array | No | - | Work model filter: Remote, Hybrid, Onsite |
results_wanted | Integer | No | 20 | Maximum number of job records to save |
max_pages | Integer | No | 20 | Maximum number of result pages, up to 100 jobs per page |
proxyConfiguration | Object | No | {} | Optional proxy settings. Custom proxy URLs work locally and on Apify. Apify Proxy requires a platform run. |
The keyword field has a default because most runs start with a role search. To browse by location or work model alone, clear the keyword field in Console or supply a jobs URL that contains only the location.
Output Data
| Field | Type | Description |
|---|---|---|
job_id | String | PowerToFly job identifier |
url | String | Job detail page |
title | String | Job title |
headline | String | Short headline when the employer supplies one |
company | String | Company name |
company_id | String | Company identifier |
company_url | String | Company profile page |
company_logo | String | Company logo URL |
company_description | String | Company description as plain text |
company_location | String | Company location text when available |
job_location | String | Job location string |
job_location_raw | String | Raw job location string |
city | String | Parsed city |
region | String | Parsed state or region code |
country | String | Parsed country |
secondary_locations | Array | Additional locations for the same role |
work_model | String | Remote, Hybrid, or Onsite |
is_remote | Boolean | Whether the role is remote |
remote_type | String | Remote or Hybrid classification |
salary | String | Salary or hourly range with currency and rate type |
employment_type | String | Employment type |
levels_of_experience | Array | Experience levels attached to the posting |
category | String | Job category when published |
skills | Array | Skill tags |
date_posted | String | ISO publishing timestamp |
date_posted_raw | String | Raw publishing timestamp |
date_posted_relative | String | Relative age such as 3 days ago |
description_html | String | Job description with HTML |
description_text | String | Job description as plain text |
is_sponsorship_available | Boolean | Sponsorship flag when published |
is_relocation_considered | Boolean | Relocation flag when published |
is_featured | Boolean | Featured flag |
is_cover_letter_required | Boolean | Cover letter requirement |
apply_url | String | Apply link |
apply_is_custom_link | Boolean | Whether the employer supplied a custom apply link |
is_external_apply | Boolean | Whether the apply flow leaves PowerToFly |
source | String | Source domain |
scraped_at | String | Collection timestamp |
location | String | Alias of job_location |
job_type | String | Alias of employment_type |
Usage Examples
Collect software engineering jobs
Search with the default keyword and save the first 50 matches.
{"keyword": "software engineer","results_wanted": 50}
Remote roles
Use the work model filter to return remote roles only.
{"keyword": "product manager","locationType": ["Remote"],"results_wanted": 100}
Roles in a named location
Combine a keyword, a location, and a result cap.
{"keyword": "data scientist","location": "New York","results_wanted": 75}
Start from a PowerToFly jobs URL
The URL query string defines the search. Supported parameters include keywords, location, and location_type.
{"startUrl": "https://powertofly.com/jobs/?keywords=data+scientist&location=Remote&location_type=Remote","results_wanted": 50}
Collect one job
A job detail URL returns that single posting.
{"startUrl": "https://powertofly.com/jobs/detail/2644704"}
Sample Output
{"job_id": "2577601","url": "https://powertofly.com/jobs/detail/2577601","title": "Investment Strategist - Parametric","headline": null,"company": "Morgan Stanley","company_id": "3697","company_url": "https://powertofly.com/companies/morgan-stanley","company_logo": "https://assets.powertofly.com/thumbnail/4f22848479e447518bae82ea59e27f4a.jpeg","job_location": "Minneapolis, MN, United States","city": "Minneapolis","region": "MN","country": "United States","secondary_locations": [],"work_model": "Onsite","is_remote": false,"salary": "70,000 - 140,000 USD Yearly","employment_type": "Full Time","levels_of_experience": ["Senior"],"category": "Finance","skills": ["Investment Analysis", "Quantitative Methods", "python", "Sql"],"date_posted": "2026-10-31T01:11:18.678Z","date_posted_relative": "today","is_sponsorship_available": false,"is_relocation_considered": false,"apply_url": "https://ms.wd5.myworkdayjobs.com/en-US/External/job/Minneapolis-Minnesota-United-States-of-America/Investment-Engineer---Parametric_PT-JR038167?source=PowerToFly","apply_is_custom_link": true,"is_external_apply": true,"source": "powertofly.com","scraped_at": "2026-10-31T10:01:28.394Z","location": "Minneapolis, MN, United States","job_type": "Full Time"}
Tips for Best Results
- Start with 20 to 50 results to confirm the filters and inspect the fields before a large run.
- Use specific job titles.
data analystreturns tighter matches thananalyst. - Combine
locationwithlocationTypewhen you want remote roles in a named country or metro. - Requests above 4,000 jobs are collected in smaller batches, which takes longer. Split very large collections by location or work model when speed matters.
- Clear the keyword field when you want a location-only or work-model-only run.
- Schedule the Actor daily for monitoring, or weekly for market reports.
- Missing salary, skills, or company details usually mean the employer did not publish them.
Integrations
- Google Sheets - Send each run to a spreadsheet for review and sharing.
- Airtable - Build a searchable job or recruiting base.
- Slack - Post new matching roles to a channel.
- Webhooks - Send finished run data to your own service.
- Make or Zapier - Start downstream workflows when a run finishes.
- Apify API - Read datasets programmatically from applications and dashboards.
Export Formats
Datasets can be downloaded as JSON, CSV, Excel, XML, and other formats supported by Apify.
Frequently Asked Questions
How many jobs can one run return?
You can request any number with results_wanted, and max_pages adds a page-based cap. A single search query can reach 4,000 jobs directly. Larger requests are split into batches and take longer.
Why is the salary field empty for some jobs?
PowerToFly does not require employers to publish pay. When the posting has no salary, the field is null. The same applies to skills, company descriptions, and secondary locations.
Can I collect remote jobs only?
Yes. Set locationType to ["Remote"], or use location with the value Remote. Both filters are supported by PowerToFly.
Why does the keyword field already contain software engineer?
That is the Actor's default search. It gives a new user a working run without any setup. Clear the field if you want to browse by location or work model alone, or provide a startUrl.
Does the Actor support sorting?
PowerToFly returns the newest matching jobs first. An explicit date sort can push unrelated jobs into keyword results, so the Actor keeps the default order. There is no sort input.
Can I run this Actor on a schedule?
Yes. Create a schedule in Apify Console and choose hourly, daily, weekly, or a custom interval. Each run saves a new dataset.
Can I export the data to CSV or Excel?
Yes. Open the dataset and use the export button, or call the Apify API with the format you need.
What happens when a job is removed during a run?
Removed postings are skipped. The rest of the run continues, and the final log reports how many records were saved.
Some locations show Remote instead of a city. Why?
PowerToFly stores the work model separately from the address. When a posting has no city, state, or country, the Actor uses the work model as the location string and keeps work_model populated.
Is it legal to collect this data?
The Actor reads publicly available job postings. You are responsible for complying with applicable laws, the PowerToFly terms of service, and the way you use or store the data.
Support
For issues, feature requests, or custom Actor work, use the Issues tab on the Actor page or contact the developer through Apify. Include the run input and a link to the failed run when reporting a problem.
Legal Notice
This Actor is provided for legitimate data collection and analysis. You are responsible for using the collected data in line with applicable laws, website terms, and privacy rules. Do not use it to republish copyrighted job descriptions without permission.