UN Jobs Scraper — unjobs.org UN & NGO Vacancies avatar

UN Jobs Scraper — unjobs.org UN & NGO Vacancies

Pricing

from $3.50 / 1,000 job results

Go to Apify Store
UN Jobs Scraper — unjobs.org UN & NGO Vacancies

UN Jobs Scraper — unjobs.org UN & NGO Vacancies

Scrape UN and NGO vacancies from unjobs.org — 143 agencies (UNICEF, WFP, UNDP, UNHCR…) in one run. Get title, organisation, duty station, closing date, full description and apply URL. Delta mode returns only new postings, ideal for job-alert bots. $5/1,000 results, no API key needed.

Pricing

from $3.50 / 1,000 job results

Rating

0.0

(0)

Developer

Nomad.Dev

Nomad.Dev

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

Fetch current vacancies from unjobs.org — the classic UN jobs aggregator covering UN agencies, funds and programmes plus adjacent international organisations, updated continuously throughout the day.

No API key, no login, no proxy setup. $5 per 1,000 results (plus a $0.005 start fee), with volume discounts down to $3.50/1,000.

What unjobs.org data does this scraper extract?

Each result is one flat JSON record per vacancy:

FieldMeaning
idStable source-side identifier (unjobs.org posting id)
titleJob title as listed (unjobs.org appends the duty station: "Role, City, Country")
companyHiring organisation line (e.g. "UNICEF - United Nations Children's Fund")
locationDuty station, when the title carries a real one (see below)
urlDirect link to the vacancy on unjobs.org
updatedAtISO timestamp of when unjobs.org last updated the posting
snippetOrganisation — location, joined as a short summary line
sourceAlways "unjobs"

With Include full details (includeDetails) on, each record also carries the fields the listing page simply does not have:

FieldMeaning
closingDateApplication deadline (ISO 8601)
descriptionFull job description text, up to 5,000 characters
country / cityStructured location as the organisation itself published it
officeHiring office, e.g. "UNICEF in Amman"

This costs one extra event per vacancy enriched, and it also corrects location: unjobs.org publishes no location field on the listing, so it can only be read off the end of the job title — and a title like "Chair, Department of Biological and Biomedical Sciences" has a comma but no location. Listing-only records leave location empty rather than fill it with a fragment of the title; detail mode replaces the guess with the real country and city.

Choosing a feed

Organisation and Duty station override Feed when set.

FeedWhat you getUse it for
latest (default)The 25 newest postings site-wideJob alerts, monitoring — a new vacancy lands here first
closing~300 vacancies whose deadline is nearDeadline-driven search
allOrganizationsEvery one of the ~143 organisation feeds, dedupedA full snapshot of what unjobs.org currently lists
organizationOne organisation, e.g. unicef, wfp, undp (browse)Tracking one agency
dutyStationOne duty station, e.g. gva for Geneva (browse)Tracking one location

Note that latest and closing are disjoint — a posting published today with a deadline two months out is not in the closing-soon feed. If you are watching for new vacancies, use latest (the default) rather than closing.

Add a Keyword filter (keywordFilter) on top of any feed to keep only postings whose title or organisation matches; filtered-out postings are never billed.

Built for job-alert bots: delta mode

Turn on Only new since last run (onlyNewSinceLastRun) and every scheduled run returns only postings it has never delivered before — already-seen jobs are dropped before they're pushed or billed, so a monitoring schedule pays only for genuinely new openings. Seen ids persist in the Actor's key-value store across runs; Reset delta state (resetSeenJobs) starts over. No other UN/NGO-sector scraper on Apify offers an incremental mode.

Pair it with the latest feed and a schedule (hourly keeps up comfortably: unjobs.org posts roughly 10 vacancies an hour) and you have a complete new-vacancy stream that bills you only for jobs you have never seen.

How to scrape unjobs.org with this Actor

  1. Click Try for free / Run — no login to the target site, no cookies, no proxies to configure.
  2. Adjust the input (organisation, duty station, keyword, maxItems) or keep the defaults.
  3. Run it and export the dataset as JSON, CSV or Excel, or read it over the API.

Run it from your own code:

from apify_client import ApifyClient
client = ApifyClient("<YOUR_APIFY_TOKEN>")
run = client.actor("nomad-agent/unjobs-scraper").call(run_input={"organization": "unicef"})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item["title"], item["url"])

Pricing

Pay per event — you are billed for results, not for runtime:

EventPrice
Run start$0.005
Each vacancy returned$0.005 ($5 / 1,000; volume tiers down to $3.50 / 1,000)
Each vacancy enriched with full detailsextra, and only when includeDetails is on

Delta mode and the keyword filter both reduce what you pay — postings dropped by either are never pushed and never billed, and a vacancy page that fails to load is never charged the detail event.

A full allOrganizations snapshot is around 900 vacancies, so it bills roughly $4.50. Every run also carries a maximum total charge (Apify sets a default one from your plan). If a snapshot would exceed it, the Actor delivers everything that fits inside your budget and stops cleanly — it never overruns the cap. Raise the run's max total charge to take the rest.

unjobs.org is one lens on the impact-sector job market. These siblings cover the rest, all with the same flat record shape and delta mode:

This Actor reads only publicly listed vacancy summaries (title, organisation, location, link) — no personal data, no login-protected content. Review the target site's terms and your local regulations before large-scale use.