Idealist.org Jobs, Volunteering & Nonprofit Scraper avatar

Idealist.org Jobs, Volunteering & Nonprofit Scraper

Pricing

from $5.00 / 1,000 results

Go to Apify Store
Idealist.org Jobs, Volunteering & Nonprofit Scraper

Idealist.org Jobs, Volunteering & Nonprofit Scraper

Scrape Idealist.org nonprofit-sector jobs, volunteer opportunities, and the organization directory, with built-in delta mode. No login required.

Pricing

from $5.00 / 1,000 results

Rating

0.0

(0)

Developer

Artsiom Kunitsyn

Artsiom Kunitsyn

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

idealist-scraper

Scrapes Idealist.org, the leading nonprofit/social-impact jobs and volunteering platform โ€” paid jobs, volunteer opportunities, and the organization/nonprofit directory, all from the site's own public search index. No login, no API key.

Contents

๐Ÿ”‘ Key features

  • Three entity types, one actor. jobs covers paid nonprofit-sector postings, volunteerOpportunities covers Idealist's (much larger) volunteering board, and organizations covers the nonprofit/org directory itself โ€” mission, focus areas, location, whether it's currently hiring or seeking volunteers.
  • No login, no private endpoint. Idealist's own search runs through a public, read-only search index; this actor queries that directly instead of scraping rendered HTML pages.
  • Delta mode built in. Every run classifies each result as new, changed, unchanged, or delisted against a persisted baseline, so a scheduled re-run only bills for what actually changed.

๐Ÿ“‹ Output

One dataset item per job, volunteer opportunity, or organization (see .actor/dataset_schema.json for the full field list) plus a change_type field.

Example โ€” job:

{
"source": "idealist",
"external_id": "0584eb9326e540349dab0c670ca1ce17",
"entity_type": "jobs",
"url": "https://www.idealist.org/en/job/...",
"name": "Program Manager",
"org_name": "Smith Community Health",
"org_type": "NONPROFIT",
"city": "Georgetown",
"state": "TX",
"country": "US",
"location_type": "ONSITE",
"remote_ok": false,
"areas_of_focus": ["HEALTH_MEDICINE"],
"job_type": ["FULL_TIME"],
"has_salary": true,
"salary_minimum": 48000.0,
"salary_maximum": 55000.0,
"salary_period": "YEAR",
"salary_currency": "USD",
"published_at": "2026-09-01T00:00:00+00:00",
"change_type": "new"
}

Example โ€” organization:

{
"source": "idealist",
"external_id": "org-4821",
"entity_type": "organizations",
"name": "Smith Community Health",
"org_type": "NONPROFIT",
"mission": "Providing free clinical care to underserved families.",
"city": "Georgetown",
"state": "TX",
"country": "US",
"areas_of_focus": ["HEALTH_MEDICINE"],
"hiring": true,
"seeking_volunteers": true,
"change_type": "new"
}

Known gaps:

  • Not every job posting has salary data โ€” has_salary: false when Idealist itself doesn't have it, rather than guessing.
  • latitude/longitude are only present when the listing has a specific physical location; a fully remote posting leaves them null.

โš™๏ธ Input

See .actor/input_schema.json for the full schema. Key parameters:

ParameterTypeDefaultDescription
entityTypeStringjobsjobs, volunteerOpportunities, or organizations.
queryString(empty)Optional free-text keyword search (e.g. "nurse", "climate"). Empty returns the full scope.
maxItemsInteger50Stop after pushing this many items. Clear it (null) for a full run.
maxPagesInteger(unlimited)Cap on result pages walked, if you want a partial sample.
modeStringautoauto/full/incremental โ€” see Incremental mode.
impersonateStringchromecurl_cffi TLS-impersonation target.
proxyConfigurationObjectoffApify Proxy config. Off by default โ€” clean without one in testing.

๐Ÿงช Input examples

Quick preview โ€” default 50-item cap on job postings:

{
"entityType": "jobs"
}

Full volunteer-opportunity scan, filtered by keyword:

{
"entityType": "volunteerOpportunities",
"query": "climate",
"maxItems": null
}

Organization directory, scheduled tracking run:

{
"entityType": "organizations",
"mode": "incremental",
"maxItems": null
}

๐Ÿ”„ Incremental (delta) mode

Every run classifies each result as new, changed, unchanged, or delisted, against a baseline persisted per entityType.

  • mode: auto (default) โ€” first run pushes everything (full); later runs push only new/changed/delisted.
  • A query-filtered or page-capped run doesn't cover the full scope, so it never updates the baseline or reports delistings โ€” same rule as every other actor in this collection.

๐Ÿš€ How to scrape Idealist.org

  1. Open the actor in Apify Console and go to the Input tab.
  2. Pick an entityType โ€” jobs, volunteerOpportunities, or organizations.
  3. maxItems defaults to 50 (a quick preview) โ€” clear it for a full run.
  4. Click Start.
  5. Browse results in the Output tab, or download as JSON/CSV/Excel, or pull them via the API.

โ“ FAQ

Is it legal to scrape Idealist.org? It's legal to collect publicly available job, volunteering, and organization listing data. Results may contain limited personal/organizational contact information; scrape it only with a legitimate purpose under GDPR.

What's the difference between jobs and volunteerOpportunities? Idealist's own platform distinguishes paid positions from volunteer roles โ€” this actor keeps that distinction rather than merging them into one undifferentiated feed.

Does this need a login or API key? No โ€” Idealist's own search index is publicly reachable.

Search keywords

idealist scraper, idealist.org scraper, nonprofit jobs scraper, social impact jobs, volunteer opportunities scraper, nonprofit organization directory, nonprofit job board data, NGO jobs feed, social impact hiring data, nonprofit lead generation