Authentic Jobs Scraper: Design, Dev, Remote Jobs
Pricing
from $1.62 / 1,000 listing returneds
Authentic Jobs Scraper: Design, Dev, Remote Jobs
Get every listing straight from authenticjobs.com, linked to its page on the board and flagged remote or not, with the salary as numbers, the category and the job type at $3 per 1,000 listings. Filter by keyword, company, salary or date; a daily schedule can return only new listings. No login.
Pricing
from $1.62 / 1,000 listing returneds
Rating
0.0
(0)
Developer
Pradio Actors
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
1
Monthly active users
a month ago
Last modified
Categories
Share
What does Authentic Jobs Scraper do?
Authentic Jobs Scraper returns every listing straight from authenticjobs.com, each linked to its page on the board and flagged remote or not wherever the listing or the posting says. The remote flag is left empty when they say neither, or say both. Each design, development and creative tech job comes back with the salary as numbers, the category and the job type, at $3 per 1,000 listings. Type a search term, or leave it empty for every open listing on the board, and press Start. Each row also carries the title, company, location, posting date and the link to apply. On 2026-09-27 the whole board held 42 open listings, some of them months old, and the Actor returns what the board has posted. A search for designer returned 12 listings, 7 of them with a stated salary. The board's search reads the whole posting, so those 12 include engineering roles such as Software Engineer whose descriptions mention working with designers. Set category to Design for design roles alone. The board also lists marketing, sales, customer support, operations, product management and copywriting roles. A search returns those too.
Who uses Authentic Jobs Scraper
| Who | What they run it for |
|---|---|
| Recruiters and sourcers | Watch the board's design and engineering roles and the pay ranges employers publish. |
| Job aggregators | Add a curated design-and-dev board to a feed, in the same row shape as other boards. |
| Salary researchers | Collect the stated ranges for creative and technical roles at named companies. |
| Agents and pipelines | Ask for one keyword and read rectangular rows instead of parsing the board's pages. |
Features
- Every listing straight from authenticjobs.com, flagged remote or not. Each row links to the listing's own page on the board.
is_remoteis read from the listing's location and from the posting itself: a posting that says "Remote Eligible" istrue, one that says "3 days in the office per week" isfalse, and one that never says is empty. When they say both, such as a listing marked (Remote) whose posting asks for days in the office, it is empty too. - Salary, category and job type on each row, at $3 per 1,000 listings. A range such as $148,000 to $166,500 comes back as numbers. The row carries the minimum, the maximum and the currency. Salaries are the employer's own figures as posted, never converted or rounded, so an exact-looking range is the one the employer wrote.
- Only new listings on a schedule. Turn on
onlyNewand a run returns only listings no earlier run of that search returned. A daily run pays for each listing once. - The whole board, or a search. Leave
keywordempty for every open listing, newest first. Or send a term to the board's own search withkeywordandlocation. - The link to apply.
apply_urlis the employer's own application page the posting points to. - Recent or remote only.
postedWithinDayskeeps listings from the last few days.remoteOnlykeeps the roles that say they are remote. Listings left out are never charged. - Filter by company and salary.
companykeeps listings from the employers you name, and their pages are the only ones read.salaryOnlykeeps listings that state a salary, andminSalarykeeps those whose range reaches your figure at the top.salaryCurrencykeeps one currency, sominSalaryreads in dollars, pounds or euros alone.maxItemsPerCompanystops one employer with many openings from filling the run. Listings left out are never charged. - A category on every row the board tags. Such as Design or Front-end Engineering.
- The board's own filters.
categoryandjobTypetake the choices of the board's Category menu and job type boxes. - Polite by design. The site asks for three seconds between requests, and every request waits for them.
- No login, no browser. Plain requests to pages anyone can open.
What you can count on
- every row is charged only after it is written to your dataset; a row you cannot see is never billed
- a run that finds nothing returns one NO_MATCHING_LISTINGS row that says so, never an empty dataset
- a spending limit stops the run cleanly with a STOPPED_EARLY row saying how many rows were returned and how many were not
- every run writes a RUN_SUMMARY entry with rowsFetched, rowsPushed, rowsCharged and duplicatesDropped, so a short run and a broken one are told apart
What data does Authentic Jobs Scraper return?
A real row from a run with keyword set to designer:
{"platform": "authentic jobs","listing_url": "https://authenticjobs.com/job/36642/pinterest-principal-product-designer-ai-native-core/","title": "Principal Product Designer, AI Native, Core","posted_date": "2026-07-29","location": "San Francisco, California US based applicants only (Remote)","is_remote": true,"job_type": "Full-time","category": "Design","salary_minimum": 210161,"salary_maximum": 432684,"salary_currency": "USD","apply_url": "https://www.pinterestcareers.com/jobs/7638599/principal-product-designer-ai-native-core/?gh_jid=7638599","company_name": "Pinterest","company_logo": "https://authenticjobs.com/wp-content/uploads/job-manager-uploads/company_logo/2026/07/pinterest.png","company_tagline": "Find inspiration for your life.","posted_text": "Posted 2 months ago","source_id": "36642","row_type": "ROW"}
| Field | What it holds |
|---|---|
platform | Always authentic jobs, so rows mixed with other boards say where they came from. |
listing_url | The listing's page on authenticjobs.com. |
title | The job title as posted. |
posted_date | The posting date, as a date. |
location | Where the job is, in the employer's own words: a city, region or country, sometimes with "(Remote)" or a note on who may apply. |
is_remote | true when the location or the posting says the role is remote and neither says hybrid or in the office; false when either says hybrid or in the office and neither says remote; empty when neither says, or when they say both, such as a listing marked (Remote) whose posting asks for days in the office. |
job_type | The listing's job type as the board shows it: Full-time, Part-time, Freelance or Internship. |
category | The board's category tags for the role, comma-separated. |
salary_minimum | The low end of the range the posting states, as a number; empty when it states none, or states it in a currency other than US, Canadian or Australian dollars, pounds or euros. |
salary_maximum | The high end of that range, as a number; empty when the posting states none, or states it in a currency other than US, Canadian or Australian dollars, pounds or euros. |
salary_currency | USD, CAD, AUD, GBP or EUR. A code or a prefix the posting writes (CAD, C$, CA$, AUD, A$, AU$, EUR, GBP) names the currency; otherwise the sign does, and a bare $ is read as USD. A range in any other currency, such as zloty, is not read, and all three salary fields stay empty. |
apply_url | The web address the posting sends applicants to, usually the employer's careers or applicant-tracking page; empty when the posting carries none or takes applications by email, which is not copied. |
company_name | The employer. |
company_logo | The employer's logo image on the board. |
company_tagline | The one-line tagline the employer shows beside its name, as the board shows it on that posting. The board cuts long taglines short, so two postings from one company can differ. |
posted_text | The board's own wording, such as "Posted 2 months ago". |
source_id | The board's numeric id for the listing. |
row_type | ROW on a listing row; ITEM_STATUS, NO_MATCHING_LISTINGS or STOPPED_EARLY on a status row. |
reason | On a status row: why the run returned no listings, why it stopped early, or why a company you named matched no listing. |
status | On an ITEM_STATUS row: company_not_found, when no listing the board returned for your search has a company name containing that entry. |
entry | On an ITEM_STATUS row: the company entry exactly as you typed it. |
rowsFetched | On a status row: how many listings the board handed over, before duplicates were dropped and the cap applied. |
rowsReturned | On a STOPPED_EARLY row: how many listing rows reached your dataset. |
rowsRemaining | On a STOPPED_EARLY row: how many were fetched and not returned because the spending limit was reached. |
The job description itself is not copied: it is the employer's own writing. Every row links to it.
Pricing
- $0.003 per listing returned (
listing-returned), charged after the row is written to your dataset. Higher-volume plans pay less: $0.00252 on Bronze, $0.00204 on Silver, and $0.00162 on Gold, Platinum and Diamond. - $0.00005 per run start (
apify-actor-start), the platform's start charge. It is one per GB of run memory, and at least one per run. At this Actor's 256 MB default that is one per run.
A run capped at the default 100 listings costs at most $0.30 plus the start charge. A run usually returns far fewer: on 2026-09-27 the whole board held 42 open listings. With onlyNew on, a daily run pays only for the listings posted since the last one.
How do I use Authentic Jobs Scraper?
- Open the Actor and press Start.
designeris filled in, so a first run works as it is. - Change keyword to the term you would type into the board's search box, or clear it for every open listing.
- Optionally set location, matched against each listing's location line.
- Optionally pick a category or a job type, or name a company; leave them empty for every listing.
- Optionally change maximum items (default 100).
- Open the Output tab, or export JSON, CSV or Excel from Storage.
{"keyword": "designer","maxItems": 100}
Input
| Field | What it does |
|---|---|
keyword | Optional. The search term, sent to the board's own search, which matches it anywhere in a posting, its description included. Leave it empty for every open listing on the board. |
location | Optional. Matched as text against each listing's location line. |
maxItems | The most listing rows one run returns (default 100). |
category | Optional. Only these categories, from the board's Category menu: Artificial Intelligence (AI), Back-end Engineering, Copywriting, Customer Support, Design, Front-end Engineering, Marketing, Operations, Product Management, Sales. Several means any of them. |
jobType | Optional. Only these job types: Full-time, Part-time, Freelance, Internship. |
remoteOnly | Optional, off by default. Only listings that say the role is remote (is_remote is true). |
postedWithinDays | Optional. Only listings posted in the last this many days, counted from today in UTC. |
company | Optional. Only listings whose company name contains one of these, whatever the case and punctuation: Google keeps Google DeepMind. A name no listing matches comes back as one free ITEM_STATUS row that names it, so a typo is never silent. |
salaryOnly | Optional, off by default. Only listings whose posting states a salary range. |
minSalary | Optional. Only listings whose stated range reaches at least this amount at its top end. The amount is never converted, so 100000 keeps a range topping at 100,000 dollars and one topping at 100,000 pounds alike. Set salaryCurrency to compare in one currency only. |
salaryCurrency | Optional. Only listings whose stated salary is in this currency: USD, GBP or EUR. Set it with minSalary to compare in one currency. |
maxItemsPerCompany | Optional. The most listing rows one run returns for any one employer. |
onlyNew | Optional, off by default. Only listings no earlier run of yours with the same keyword, location, category and job type returned. |
A category or job type the board does not have stops the run before any request. The run names the entry, so a typo never turns into a wider search. A minSalary that is not a whole number, a salaryCurrency other than USD, GBP or EUR, or a company entry with no letters or digits, stops it the same way.
Filters
category and jobType go to the board's own search, the same way its Category menu and job type boxes do. company, remoteOnly, salaryOnly, minSalary, salaryCurrency, postedWithinDays and maxItemsPerCompany are applied to what the board returns, and every listing they leave out is free. Front-end and back-end engineering roles that are full-time:
{"keyword": "engineer","category": ["Front-end Engineering", "Back-end Engineering"],"jobType": ["Full-time"]}
Worked examples
Use it as a daily feed of the whole board. Schedule this input once a day. Each run returns only the listings the earlier runs did not. A day with nothing new returns one uncharged row that says so.
{"onlyNew": true,"maxItems": 100}
Use it to collect the remote roles posted this week.
{"remoteOnly": true,"postedWithinDays": 7}
Use it to get every design role on the board, newest first, narrowed to the Design category.
{"keyword": "design","category": ["Design"],"maxItems": 100}
Use it to build a salary sheet of remote engineering roles. Every row that comes back is stated remote and states a salary.
{"keyword": "engineer","remoteOnly": true,"salaryOnly": true}
Use it to watch the board for part-time and freelance work only.
{"keyword": "lead","jobType": ["Part-time", "Freelance"]}
Use it to watch the roles at the companies you sell to or recruit for. Only their listings are read and returned.
{"company": ["Webflow", "Asana", "Discord"]}
Output
Rows land in the run's dataset as they are read. Status rows (ITEM_STATUS, NO_MATCHING_LISTINGS, STOPPED_EARLY) are never charged. Each run also writes a RUN_SUMMARY entry to its key-value store with the counts. They include how many listings onlyNew, postedWithinDays, remoteOnly, company, maxItemsPerCompany and the salary filters left out. onlyNew keeps the listings each search has returned in a key-value store of your account named authentic-jobs-seen. Delete it to start again.
What can you do with the data?
- Track which companies are hiring designers and engineers on the board, week by week.
- Compare the salary ranges employers state for the same kind of role.
- Feed new listings into a sourcing sheet, a Slack channel or an agent.
Use Authentic Jobs Scraper with AI agents
Call it through the Apify API or the Apify MCP server with one keyword. Each row comes back with the same fields. An agent can filter on salary or location without parsing a page.
Limits
- One board. It reads authenticjobs.com only.
- Salary only when stated. A posting that names no range leaves the three salary fields empty. With
salaryOnlyorminSalaryon, such a listing is left out.minSalarycompares the figure in the posting's own currency, never converted. SetsalaryCurrencyto hold it to one currency. - Remote only when stated. A listing and posting that never say where the work is done leave
is_remoteempty. WithremoteOnlyon, such a listing is left out. - No description text. The employer's description is linked, not copied.
- A posting page that will not load. That row's salary and category stay empty. The listing still comes back.
- Small board. On 2026-09-27 the whole board held 42 open listings, so a narrow search returns a handful.
Troubleshooting
My dataset has one NO_MATCHING_LISTINGS row. The board's search found nothing for that keyword and location. Try a broader term.
Salary is empty on some rows. Those postings state no range.
My scheduled run with onlyNew returned one NO_MATCHING_LISTINGS row. Nothing was posted for that search since the last run. The row's reason says how many listings the board had and that each one was already returned. Nothing is charged.
FAQ
Can I connect it to other tools?
Yes. Apify integrations send each run's rows to Google Sheets, Slack, Zapier, Make, webhooks or your own database without code.
Can I use the Apify API?
Yes. Start runs against Pradio/authentic-jobs with the same input as the Console.
Is it legal to scrape authenticjobs.com?
The board's terms carry no clause against automated reading. Its robots.txt allows the listing and job pages at three seconds apart, and every request here honours that. The employers' descriptions are not copied. It reads authenticjobs.com only; you are responsible for how you use the rows. Check what your own use of the data requires.
Release notes
- 2026-09-28: new
company,salaryOnly,minSalary,salaryCurrencyandmaxItemsPerCompanyfilters.is_remoteis empty when the listing and the posting disagree. Acompanyentry no listing matches comes back as a freeITEM_STATUSrow naming it.salary_currencytakes a code or prefix the posting writes, so a C$ or AUD range is CAD or AUD, where a bare $ stays USD. - 2026-09-27:
keywordis optional, and an empty one returns every open listing. NewonlyNew,postedWithinDaysandremoteOnlyinputs, and a newapply_urlfield. - 2026-09-25: the start charge falls from $0.005 to the platform's default $0.00005.
0.1.10, 2026-09-24:categoryandjobTypefilters, the board's own.is_remoteis also read from the posting, and isfalsefor a hybrid or in-office role.0.1.9, 2026-09-24:official_urlislisting_url, the listing's page on the board.skillsiscategory, and the row-kind column isrow_type.0.1.8, 2026-09-24: salary range and category read from each posting's page. The columns this board never fills are gone. Thedistanceinput, which the board cannot filter by, is removed.0.1.6, 2026-09-05: the start price and the tier ladder stated on the page.0.1.1, 2026-09-02: first public version.
Related
Need the jobs companies post on their own careers pages? Greenhouse Jobs Scraper reads the public boards of Greenhouse, Lever, Ashby, Workable and Recruitee. Give it a list of companies.
Support
Found a listing that came back wrong, or want another field? Open an issue on the Actor's Issues tab and it will be answered there.
If this Actor saved you time, a review on the Store helps other buyers find it. Problems go to the Issues tab.
Not affiliated
This Actor is not affiliated with Authentic Jobs. It reads pages the board publishes to everyone.