Jobgether Remote Jobs Scraper
Pricing
Pay per event
Jobgether Remote Jobs Scraper
Find and export public Jobgether remote jobs with company, location, posting date, employment type, full description, requirements, responsibilities, skills, and source links.
Pricing
Pay per event
Rating
0.0
(0)
Developer
Stas Persiianenko
Maintained by CommunityActor stats
0
Bookmarked
3
Total users
1
Monthly active users
15 days ago
Last modified
Categories
Share
Export public remote job listings from Jobgether into a clean, analysis-ready dataset. Search by keyword, use a Jobgether category or location URL, or extract one exact offer. Get job titles, companies, posting dates, remote locations, employment types, descriptions, qualifications, responsibilities, skills, and canonical links.
The Actor uses lightweight HTTP extraction rather than a browser. No Jobgether login or private API key is required. Results can be downloaded as JSON, CSV, Excel, XML, or RSS and connected to the Apify API, webhooks, schedules, and MCP.
What does Jobgether Remote Jobs Scraper do?
Jobgether Remote Jobs Scraper turns Jobgether's public remote-job pages into structured records. It supports both discovery and exact-URL workflows:
- π Search Jobgether jobs by keyword.
- π Scrape Jobgether search, category, location, or offer URLs.
- π Filter by remote country or region.
- πΌ Filter by employment type or role text.
- ποΈ Keep only jobs posted within a selected number of days.
- π Fetch complete public job descriptions and enriched role facts.
- π§ Extract qualifications, responsibilities, hard skills, and other skills.
- β‘ Skip detail pages when only a fast listing feed is needed.
Each successful item represents one Jobgether offer. Canonical URLs and offer IDs make repeated-run deduplication straightforward.
Who is it for?
Job aggregators and niche job boards
Refresh remote inventory daily, normalize records, and deduplicate them by offerId or canonicalUrl.
Use detail mode when your product needs complete descriptions and skills.
Recruiters and talent sourcers
Find companies hiring for a role, country, or skill. Send new records to a CRM, spreadsheet, ATS, or sourcing queue.
Job-alert product teams
Schedule narrow keyword searches and notify users only about newly seen offer IDs.
The postedAt field supports freshness rules.
Labor-market analysts
Track remote hiring volume, geography, employment types, role tags, and skill demand over time. Store daily datasets in a warehouse for longitudinal analysis.
Developers and AI-agent builders
Call the Actor through REST, JavaScript, Python, cURL, or MCP. Return structured evidence to an application instead of asking an agent to browse pages manually.
Why use this remote jobs extractor?
- β Source-specific data β fields are designed around Jobgether offers, not generic page text.
- β Useful detail records β descriptions, qualifications, responsibilities, and skills are available when exposed publicly.
- β Low compute β direct HTML and Schema.org data keep runs lightweight.
- β Strict scope β non-Jobgether start URLs are rejected instead of silently scraping unrelated pages.
- β Fail-closed filters β records without the requested date or filter evidence are excluded.
- β Automation-ready IDs β stable offer IDs simplify alerts and database upserts.
- β Standard exports β use JSON, CSV, Excel, XML, RSS, or the dataset API.
What Jobgether data can you extract?
| Field | Type | Meaning |
|---|---|---|
offerId | string | Stable ID parsed from the Jobgether offer URL |
title | string | Public job title |
company | string | Hiring organization |
companyUrl | string | Public company website when supplied |
companyLogoUrl | string | Public company logo URL |
postedAt | string | ISO 8601 posting timestamp |
locations | array | Applicant countries or remote regions |
remoteScope | string | Remote-work classification |
employmentTypes | array | Full-time, contract, part-time, or other source values |
roleTags | array | Jobgether role/category labels |
language | string | Role language when displayed |
qualifications | array | Structured qualification bullets |
responsibilities | array | Structured responsibility bullets |
hardSkills | array | Jobgether hard-skill tags |
softSkills | array | Other skill labels |
description | string | Clean full public description |
canonicalUrl | string | Canonical Jobgether offer URL |
applyUrl | string | Public apply link when exposed without login |
scrapedAt | string | ISO 8601 extraction time |
Optional fields are omitted when the source does not expose them. Array fields stay arrays in JSON exports.
How to scrape Jobgether remote jobs
- Open the Actor input page.
- Enter a keyword such as
software engineer, or add Jobgether URLs. - Optionally set category, location, employment type, or recency filters.
- Keep Include full job details enabled for rich records.
- Choose a small
maxItemsfor a first run. - Click Start.
- Review the Dataset tab and export or integrate the records.
For recurring monitoring, save the task and attach an Apify schedule.
Compare offerId values with the previous run before sending alerts.
Input parameters
| Input | Type | Default | Description |
|---|---|---|---|
keyword | string | software engineer prefill | Search title, company, and role labels |
startUrls | array | empty | Jobgether search, category, location, or offer URLs |
category | string | empty | Required text in role title or tags |
location | string | empty | Required text in remote location |
employmentType | string | empty | Required employment-type text |
recencyDays | integer | empty | Maximum age in days |
includeDetails | boolean | true | Fetch every selected offer page |
maxItems | integer | 10 | Maximum saved jobs, up to 1,000 |
proxyConfiguration | object | direct | Optional Apify/custom proxy settings |
When startUrls is supplied, it overrides generated keyword discovery.
A keyword still acts as a strict local filter if both are supplied.
Input examples
Keyword search with full details
{"keyword": "data engineer","includeDetails": true,"maxItems": 20}
Country page with freshness filter
{"startUrls": [{ "url": "https://jobgether.com/remote-jobs/united-states" }],"recencyDays": 7,"includeDetails": true,"maxItems": 25}
Fast listing-only feed
{"keyword": "sales","includeDetails": false,"maxItems": 50}
Output example
{"offerId": "6a4e26bcac00a71a5a8101cb","title": "Channel Development Manager, Lenovo","company": "Absolute Software","postedAt": "2026-07-08T10:30:20.000Z","locations": ["US"],"remoteScope": "Remote","employmentTypes": ["FULL_TIME"],"roleTags": ["Channel Development Manager"],"hardSkills": ["Customer Engagement", "Sales Planning", "Project Management"],"softSkills": ["Communication", "Decision Making", "Teamwork"],"canonicalUrl": "https://jobgether.com/offer/6a4e26bcac00a71a5a8101cb-channel-development-manager-lenovo","scrapedAt": "2026-07-16T03:00:00.000Z"}
The exact public inventory changes frequently. Example values illustrate the schema rather than guaranteeing that an offer remains active.
How much does it cost to scrape Jobgether jobs?
This Actor uses pay-per-event pricing:
- A small one-time Actor start charge covers run setup.
- A job-extracted event is charged only for records saved to the dataset.
- Account tiers receive the prices displayed in the Apify Console before a run starts.
The current source package starts at $0.005 per run plus $0.000072217 per job on the BRONZE tier. Other account tiers use the prices displayed by Apify before the run starts. Final account-specific pricing is always shown by Apify. A five-job smoke test is intentionally inexpensive. Detail mode makes more requests but does not create shell or error items.
Listing mode versus detail mode
Set includeDetails to false for a fast feed containing card-level fields such as title, company, location, employment type, role tags, logo, and URL.
Keep includeDetails at true to add:
- π Posting timestamps
- π’ Company links
- π Full descriptions
- π Qualifications
- π§ Responsibilities
- π οΈ Hard skills
- π€ Other skills
A recencyDays filter requires posting dates, so the Actor reads detail pages even if detail mode is disabled.
Filtering behavior
Filters are case-insensitive text matches. They are intentionally strict:
- A location filter excludes jobs without a matching location.
- An employment filter excludes jobs without a matching source value.
- A category filter checks role tags and titles.
- A recency filter excludes jobs without a parseable posting timestamp.
- A total extraction failure makes the run fail rather than return a misleading empty success.
If a narrow combination returns no jobs, remove one filter and try again.
Scheduling a remote job monitor
- Save a task with a focused keyword and
recencyDays. - Add a daily or hourly schedule in Apify Console.
- Send the completed dataset to a webhook or automation platform.
- Upsert records using
offerIdas the key. - Notify only when an ID has not appeared before.
For market analysis, retain dated datasets instead of deduplicating them. That produces a historical snapshot series.
Integrations
Google Sheets and Excel
Export CSV/XLSX manually or use Make to append newly discovered offers to a hiring tracker.
Slack and email alerts
Attach a run-success webhook, compare IDs in your automation, and send only unseen matching jobs.
Airtable, Notion, and databases
Map offerId to a unique key and update changing descriptions or dates without creating duplicates.
Data warehouses
Load JSON records into BigQuery, Snowflake, or PostgreSQL for geography and skill-trend analysis.
AI recruiting agents
Provide structured qualifications and responsibilities to a ranking workflow. Keep human review in the loop for employment decisions.
API usage
Run the Actor programmatically with your Apify API token, then read records from its default dataset. The examples below cover JavaScript, Python, and cURL.
JavaScript API example
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: process.env.APIFY_TOKEN });const run = await client.actor('automation-lab/jobgether-remote-jobs-scraper').call({keyword: 'cybersecurity',includeDetails: true,maxItems: 20,});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
Python API example
from apify_client import ApifyClientimport osclient = ApifyClient(os.environ['APIFY_TOKEN'])run = client.actor('automation-lab/jobgether-remote-jobs-scraper').call(run_input={'keyword': 'product manager','includeDetails': True,'maxItems': 20,})items = client.dataset(run['defaultDatasetId']).list_items().itemsprint(items)
cURL API example
curl -X POST \"https://api.apify.com/v2/acts/automation-lab~jobgether-remote-jobs-scraper/runs?token=$APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"keyword":"python","includeDetails":true,"maxItems":10}'
Fetch the dataset using the defaultDatasetId from the completed run.
Do not place long-lived tokens in source control.
Use Jobgether Remote Jobs Scraper with MCP
Connect Claude Code:
$claude mcp add --transport http apify "https://mcp.apify.com?tools=automation-lab/jobgether-remote-jobs-scraper"
Claude Desktop, Cursor, and VS Code can use this JSON configuration:
{"mcpServers": {"apify": {"url": "https://mcp.apify.com?tools=automation-lab/jobgether-remote-jobs-scraper"}}}
Example prompts:
- βFind ten recent remote data engineering jobs on Jobgether and summarize required skills.β
- βExtract this Jobgether offer and compare its responsibilities with my role rubric.β
- βCreate a table of remote cybersecurity roles by company and location.β
Performance and reliability tips
- π Use listing mode for broad discovery and detail mode only when rich fields matter.
- π― Start with one filter, then narrow it after confirming source terminology.
- π’ Keep scheduled runs bounded with
maxItems. - π Leave proxy settings empty unless direct access is restricted in your environment.
- π§© Store
offerIdrather than title alone for deduplication. - π Use
recencyDaysfor alerts, not for long-term historical backfills.
The Actor batches detail requests conservatively to reduce pressure on the source. Transient failure of an optional detail page preserves its listing fields unless a requested filter depends on detail data.
Limitations
- Jobgether can change HTML structure, labels, inventory, or public access.
- Search pages expose a bounded current result set; the Actor does not claim to mirror all advertised jobs in one run.
- Match scores and features requiring a Jobgether account are excluded.
- An external apply URL is returned only when it is public in the fetched page.
- Some offers omit language, company website, or structured skill sections.
- Source labels can differ across employers.
Is scraping Jobgether legal?
This Actor extracts publicly accessible job information. Scraping legality depends on jurisdiction, purpose, contractual terms, and how results are used.
Use the Actor responsibly:
- Review Jobgether's current terms and robots guidance.
- Avoid excessive request rates.
- Do not collect restricted account-only data.
- Respect privacy, employment, anti-discrimination, and database-rights rules.
- Keep a lawful basis for storing or redistributing records.
- Do not use scraped attributes to make unlawful automated employment decisions.
This section is general information, not legal advice.
FAQ
Does this Jobgether scraper require login?
No. Version 0.1 targets public search, category, location, and offer pages. Login-only match scoring is not included.
Can I scrape one exact Jobgether offer?
Yes. Put its /offer/... URL in startUrls.
The Actor validates that it belongs to Jobgether.
Why did my filtered run return no records?
The filter combination may be narrower than the current source inventory or may use different terminology. Try removing location, category, or employment type one at a time.
Why is a field missing?
Optional values are omitted when Jobgether does not expose them publicly for that offer. Enable detail mode for the richest record.
Can I run it every day?
Yes. Use an Apify task and schedule, then deduplicate by offerId.
Small focused runs are best for alerts.
Does it support proxies?
Yes. Configure Apify Proxy or custom proxies through proxyConfiguration.
Direct access is the default because it avoids unnecessary proxy cost.
What happens if Jobgether returns an error page?
The Actor fails on invalid responses or total extraction failure rather than reporting an empty successful run. Check the run log and retry after confirming the source is available.
Related job scrapers
Combine this source with other automation-lab job datasets when your workflow needs broader coverage:
Use source-specific IDs separately; IDs from different job boards are not interchangeable.
Support
If a Jobgether page no longer parses, open an issue from the Actor page. Include the run URL, sanitized input, expected record, and observed output. Do not include API tokens, personal credentials, or confidential candidate data.