AllJobs Israel Job Listings Scraper avatar

AllJobs Israel Job Listings Scraper

Pricing

from $0.87 / 1,000 item extracteds

Go to Apify Store
AllJobs Israel Job Listings Scraper

AllJobs Israel Job Listings Scraper

Search and export public AllJobs.co.il vacancies with job IDs, employers, locations, posting context, descriptions, requirements, categories, and canonical URLs.

Pricing

from $0.87 / 1,000 item extracteds

Rating

0.0

(0)

Developer

Stas Persiianenko

Stas Persiianenko

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Categories

Share

Search and export AllJobs Israel jobs as structured vacancy records for recruiting, sourcing, and labor-market analysis.

The Actor reads public AllJobs.co.il search and job pages and returns stable job IDs, titles, employers, locations, work arrangements, posting context, descriptions, requirements, categories when exposed, and canonical URLs.

No AllJobs account is required.

What can you do with this AllJobs scraper?

  • Build a current feed of public Israeli vacancies.
  • Search recent listings by text found in titles, employers, descriptions, or requirements.
  • Export jobs for one AllJobs city, region, position, or job type.
  • Fetch one known public job URL.
  • Schedule repeat runs and compare records by jobId.
  • Send results to Google Sheets, a database, an ATS staging table, or a BI pipeline.

This Actor extracts public vacancy data. It does not apply for jobs, contact employers, or access candidate information.

Who is it for?

Recruiters and sourcers can refresh role-specific vacancy feeds and identify active employers.

Talent intelligence teams can monitor hiring activity by city or AllJobs category.

Labor-market analysts can collect normalized snapshots for aggregate research.

Data engineers can consume stable JSON records through datasets, webhooks, and the Apify API.

Job-search product teams can prototype lawful discovery workflows using public listing metadata.

Data extracted from every vacancy

FieldMeaning
jobIdStable AllJobs vacancy ID
titleDisplayed job title
employerPublic employer name, when displayed
employerIdAllJobs employer ID, when exposed
employerUrlPublic employer page
locationsAll displayed job locations
locationJoined location summary
employmentTypesWork arrangements and audience tags
benefitsAdditional conditions shown on the card
postingContextSource-relative age such as “2 hours ago”
descriptionPublic role description
requirementsSeparately extracted requirements section
categoriesCategory labels exposed by a job-detail page
categoryIdsPosition/category IDs exposed in source links
sourcePageSearch-results page number
urlCanonical AllJobs job URL
scrapedAtUTC extraction timestamp

Nullable fields are returned as null or an empty array when AllJobs does not expose them.

Why use this Actor?

AllJobs pages are Hebrew-first and contain useful vacancy details inside server-rendered job cards.

The Actor parses those cards directly, so a normal search page can yield descriptions and requirements without opening every job in a browser.

That provides:

  • low runtime overhead;
  • stable source IDs for deduplication;
  • explicit bounds through maxItems and maxPages;
  • consistent text filters for search URLs and detail URLs;
  • typed output ready for JSON, CSV, Excel, XML, or RSS export.

Getting started

  1. Open the Actor in Apify Console.
  2. Keep the prefilled Tel Aviv URL or remove it to scan the newest national vacancies.
  3. Optionally add query, location, or numeric AllJobs filter IDs.
  4. Set maxItems to the number of matching jobs you need.
  5. Click Start.
  6. Open the Dataset tab to preview or download records.
  7. Save the input as a Task if you want to schedule the same feed.

A useful broad run is:

{
"query": "מכירות",
"maxItems": 10,
"maxPages": 3
}

Input parameters

InputTypeDefaultDescription
startUrlsarrayTel Aviv search URL in prefillPublic AllJobs search-results or job-detail URLs
querystringText required in title, employer, description, or requirements
locationstringText required in one displayed location
positionIdintegerPositive AllJobs position/category ID
cityIdintegerPositive AllJobs city ID
regionIdintegerPositive AllJobs region ID
jobTypeIdintegerPositive AllJobs job-type ID
maxItemsinteger20Maximum unique matching jobs, up to 1,000
maxPagesinteger10Maximum pages per search seed, up to 100
maxRequestRetriesinteger2Retries for transient request failures, from 0 to 5

You can copy numeric filter values from a public AllJobs search URL.

For example, city=779 represents the source's Tel Aviv city selection.

Search URL and explicit job URL modes

A search URL has this shape:

https://www.alljobs.co.il/SearchResultsGuest.aspx?page=1&position=&type=&city=779&region=

The Actor preserves its source filters and changes only the page number while paginating.

A detail URL has this shape:

https://www.alljobs.co.il/Search/UploadSingle.aspx?JobID=8123456

Detail mode returns only the requested current job, even when the page includes related vacancies.

If query or location is also supplied, that same filter is applied before the explicit job is saved.

Example output

{
"jobId": "8123456",
"title": "מפתח/ת תוכנה",
"employer": "חברה לדוגמה",
"employerId": "123456",
"employerUrl": "https://www.alljobs.co.il/Employer/HP/Default.aspx?cid=123456",
"locations": ["תל אביב יפו"],
"location": "תל אביב יפו",
"employmentTypes": ["משרה מלאה"],
"benefits": [],
"postingContext": "לפני 2 שעות",
"description": "תיאור תפקיד לדוגמה.",
"requirements": "ניסיון קודם בתחום.",
"categories": ["תוכנה"],
"categoryIds": ["123"],
"sourcePage": 1,
"url": "https://www.alljobs.co.il/Search/UploadSingle.aspx?JobID=8123456",
"scrapedAt": "2026-01-15T12:00:00.000Z"
}

The README example is anonymized. Live output contains the public source text available at run time.

How pagination and limits work

Search pages are processed sequentially.

The Actor deduplicates records by jobId, applies text filters, and stops as soon as maxItems accepted records have been saved.

A selective text query may require a larger maxPages because filtering happens against the full normalized vacancy text.

The run also stops when the source returns no job cards or a short final page.

How much does it cost to extract AllJobs Israel jobs?

The Actor uses pay-per-event pricing:

  • $0.00005 once per run;
  • $0.001448 per saved job on the Bronze plan;
  • lower item prices on higher plans, down to $0.0008688 per job on Gold, Platinum, and Diamond.

Example Bronze Actor charges:

Saved jobsEstimated Actor charge
10$0.01453
100$0.14485
1,000$1.44805

Only unique records written to the default dataset incur the item charge.

Rejected text matches, duplicate job IDs, empty pages, and failed records are not charged as items.

Apify plan and platform-usage terms may also apply; check Console for the active price before a large run.

Recurring recruiting feed workflow

  1. Choose a source category, city, or search URL.
  2. Run once and retain jobId, postingContext, and scrapedAt.
  3. Save the input as an Apify Task.
  4. Add a daily or weekly schedule.
  5. Send the dataset to your destination through an integration or webhook.
  6. Compare current jobId values with the previous snapshot.
  7. Treat missing IDs as candidates for manual status verification, not guaranteed deletions.

The Actor does not maintain historical state or classify changes itself.

Export to Google Sheets or another pipeline

After a run, open the dataset and select JSON, CSV, Excel, XML, or RSS.

For a recurring pipeline, connect the Task to:

  • Google Sheets;
  • Make;
  • Zapier;
  • a webhook;
  • an Apify integration;
  • your own dataset API consumer.

Use jobId as the source identity and scrapedAt as the observation time.

Run through the Apify API with cURL

curl -X POST \
"https://api.apify.com/v2/acts/automation-lab~alljobs-israel-job-listings-scraper/runs?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"positionId":366,"maxItems":20,"maxPages":2}'

To wait for results directly:

curl -X POST \
"https://api.apify.com/v2/acts/automation-lab~alljobs-israel-job-listings-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"query":"מכירות","maxItems":10,"maxPages":3}'

JavaScript API example

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('automation-lab/alljobs-israel-job-listings-scraper').call({
cityId: 779,
maxItems: 25,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items.map(({ jobId, title, employer }) => ({ jobId, title, employer })));

Python API example

import os
from apify_client import ApifyClient
client = ApifyClient(os.environ['APIFY_TOKEN'])
run = client.actor('automation-lab/alljobs-israel-job-listings-scraper').call(
run_input={'location': 'תל אביב', 'maxItems': 25, 'maxPages': 5}
)
items = client.dataset(run['defaultDatasetId']).list_items().items
for item in items:
print(item['jobId'], item['title'], item.get('employer'))

Use with Apify MCP

Add the Actor to Claude Code:

claude mcp add --transport http apify \
"https://mcp.apify.com?tools=automation-lab/alljobs-israel-job-listings-scraper"

Claude Desktop

Add this server entry to Claude Desktop's MCP configuration:

{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com?tools=automation-lab/alljobs-israel-job-listings-scraper"
}
}
}

Cursor

Add the same apify server URL in Cursor Settings → MCP and enable it for the workspace.

VS Code

Add the same apify server URL through your VS Code MCP extension or workspace MCP configuration.

Example prompts:

  • “Find up to 20 current AllJobs insurance jobs and summarize employers by location.”
  • “Run the Tel Aviv AllJobs feed and return job ID, title, employer, and requirements.”
  • “Export current AllJobs sales vacancies as a CSV-ready table.”

Reliability and retry behavior

The Actor validates the hostname and URL path before making a request.

Transient network errors, rate limits, and temporary server errors receive bounded exponential-backoff retries.

A missing job, unsupported URL, challenge page, or unrecognized source shape fails explicitly instead of silently returning a successful empty scrape.

No automatic residential proxy or browser fallback is enabled, which keeps runs predictable and inexpensive.

Limits and source behavior

  • AllJobs content is primarily Hebrew.
  • postingContext is source-relative text, not a fabricated timestamp.
  • Search cards may expose category IDs without category names.
  • Detail pages usually expose richer category labels.
  • Employers can be anonymous, so employer fields may be null.
  • A job can expire between discovery and extraction.
  • Source markup and public availability can change without notice.
  • Text filtering is literal, case-insensitive matching; it is not semantic search.
  • The Actor does not translate, rank, enrich, or apply to jobs.

Responsible use and legality

Use the Actor only for legitimate purposes and public information you are permitted to process.

Follow AllJobs.co.il terms, robots guidance, applicable database rights, copyright rules, privacy law, and employment regulations.

Avoid republishing full descriptions without a lawful basis.

Do not use job data for unlawful discrimination, spam, deceptive recruitment, or decisions that require human review.

You are responsible for your input, retention policy, downstream processing, and compliance obligations.

Troubleshooting

Why did my keyword search return fewer jobs than maxItems?

The keyword is matched against jobs found within maxPages. Increase maxPages, simplify the query, or use a source position/city URL.

Why is an employer null?

Some vacancies do not display an employer name. The Actor preserves that absence rather than inventing a value.

Why did a detail URL fail?

The job may have expired, the JobID may be missing, or the URL may not be a supported public AllJobs path.

Why are category names empty?

Search cards often expose only position IDs. Use a detail URL when named categories are required for one vacancy.

FAQ

Does this Actor require an AllJobs login?

No. It extracts public guest search and job pages.

Can I search in Hebrew?

Yes. Hebrew text is the normal choice for query and location.

Can I scrape every AllJobs job?

The Actor supports up to 1,000 accepted jobs and 100 pages per search seed. Choose a bounded scope that is necessary for your use case.

Are results translated to English?

No. Source text is preserved.

Can I schedule monitoring?

Yes. Save an input as a Task and schedule it. Compare jobId values downstream; the Actor itself does not send alerts or store prior snapshots.

Is the output available as CSV or Excel?

Yes. Apify datasets can be downloaded in both formats, along with JSON, XML, and RSS.

For wider geographic recruiting research, explore other job-listing Actors from the automation-lab Apify portfolio.

Choose a source-specific Actor when you need that board's native fields, and normalize records downstream using stable source IDs and canonical URLs.

Support

If a run fails, include the public input shape, run ID, expected scope, and whether the affected URL is a search or detail page.

Do not include credentials, candidate data, or other private information in a support report.