Authentic Jobs Scraper: Design, Dev, Creative Jobs
Pricing
from $1.62 / 1,000 listing returneds
Authentic Jobs Scraper: Design, Dev, Creative Jobs
Scrape design, developer and creative tech job listings from Authentic Jobs (authenticjobs.com) by keyword, location, category and job type. One row per listing: title, company, location, job type, salary when stated, posting date and link. No login.
Pricing
from $1.62 / 1,000 listing returneds
Rating
0.0
(0)
Developer
Pradio Actors
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
5 hours ago
Last modified
Categories
Share
What does Authentic Jobs Scraper do?
Authentic Jobs Scraper returns the live design, development and creative-tech job listings on authenticjobs.com, one row per listing, with the salary the employer states. Type a search term, press Start, and each row carries the title, company, location, job type, posting date, category, salary range when the posting names one, and the link. A search for designer returned 12 listings, 7 of them with a stated salary. The board's search matches more than titles, so those 12 include engineering roles such as Software Engineer. The board also lists marketing, sales, customer support, operations, product management and copywriting roles, and 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
- Search the way the board does.
keywordandlocationgo to the board's own search, newest listings first. - Stated salary as numbers. When a posting names a range, such as $148,000 to $166,500, the row carries the minimum, the maximum and the currency.
- A category on every row the board tags. The board's category for the role, such as Design or Front-end Engineering.
- The board's own filters.
categoryandjobTypetake the same choices as the board's Category menu and job type boxes. - Remote, hybrid or in the office.
is_remoteis read from the listing's location and from the posting itself, so a role the posting calls "Remote Eligible" or "3 days in the office per week" says so. - 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","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 | The location line the employer wrote. |
is_remote | true when the location or the posting says the role is remote; false when either says hybrid or in the office; empty when neither says. |
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 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 dollars, pounds or euros. |
salary_currency | USD, GBP or EUR, read from the currency sign. A range in any other currency, such as zloty, is not read, and all three salary fields stay empty. |
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; NO_MATCHING_LISTINGS or STOPPED_EARLY on a status row. |
reason | On a status row: why the run returned no listings, or why it stopped early. |
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, 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 search usually returns far fewer, because the whole board holds a few hundred listings.
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.
- Optionally set location, matched against each listing's location line.
- Optionally pick a category or a job type; 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 | Required. The search term, sent to the board's own search. |
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. |
A category or job type the board does not have stops the run before any request and names the entry, so a typo never turns into a wider search.
Filtering by category and job type
The two filters go to the board's own search, the same way its Category menu and job type boxes do. 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 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 roles. Keep the rows where is_remote is true and salary_minimum is filled.
{"keyword": "engineer","location": "remote","maxItems": 50}
Use it to watch the board for part-time and freelance work only.
{"keyword": "lead","jobType": ["Part-time", "Freelance"]}
Use it to find AI roles at a named company, with the company name as the keyword.
{"keyword": "Webflow","category": ["Artificial Intelligence (AI)"]}
Output
Rows land in the run's dataset as they are read. Status rows (NO_MATCHING_LISTINGS, STOPPED_EARLY) are never charged. Each run also writes a RUN_SUMMARY entry to its key-value store with the counts.
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, so 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.
- Remote only when stated. A listing and posting that never say where the work is done leave
is_remoteempty. - 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. The whole board holds a few hundred 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.
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, and its robots.txt allows the listing and job pages at three seconds apart, which every request here honours. The employers' descriptions are not copied. Check what your own use of the data requires.
Release notes
- 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; 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, and 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? ATS Jobs Scraper reads the public boards of Greenhouse, Lever, Ashby, Workable and SmartRecruiters for 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.
Not affiliated
This Actor is not affiliated with Authentic Jobs. It reads pages the board publishes to everyone.