Nonprofit Data Webhooks: Which 990 APIs Support Them?
Photo by Harshit Katiyar on Unsplash
If you are evaluating nonprofit data providers for an application that needs to stay current, the relevant question is not whether webhooks are useful. It is whether a provider actually offers them for nonprofit and 990 data.
The short answer: as of August 7, 2026, we found documented nonprofit data webhooks from 501see. We did not find documented outbound data-change webhooks in the public developer materials for the IRS, Candid, Cause IQ, or ProPublica.
That is a review of public, self-serve documentation, not a claim that no provider can arrange notifications in a private or enterprise contract. Products and contracts change. But for a team looking for a documented capability they can evaluate today, the distinction matters.
What is publicly documented
- IRS: Monthly bulk data and 990 XML downloads. No documented outbound webhook.
- Candid: Nonprofit, grants, compliance, and related APIs. No documented outbound webhook found in the public developer material reviewed.
- Cause IQ: Organization, people, search, matching, and filing APIs. No documented outbound webhook found in the public API reference reviewed.
- ProPublica: Nonprofit Explorer GET API. No documented outbound webhook.
- 501see: Read API, asynchronous exports, and Developer Pro automation, including signed webhook subscriptions.
The underlying public sources are useful in different ways. The IRS publishes Tax Exempt Organization Search files monthly and organizes 990 XML downloads by year and month. Candid, Cause IQ, and ProPublica make different forms of nonprofit data easier to retrieve programmatically. In our review of their public documentation, however, those interfaces describe downloads and request-response APIs rather than a way to subscribe to a watched organization’s or funder’s changes.
Sources: IRS bulk downloads, IRS 990 XML downloads, Candid developer portal, Cause IQ API reference, and ProPublica API documentation.
501see webhook coverage
501see’s Developer Pro plan includes signed webhook endpoints, explicit subscriptions, and delivery history. The documented event coverage is scoped to records a product chooses to follow:
- Account-level processed refreshes:
data.refresh.completed - A specific organization:
org.filing.created,org.latest_filing.updated - A specific foundation:
foundation.grant.created,foundation.application_instructions.updated,foundation.application_status.updated
This is the relevant option for a directory, CRM, warehouse, or research product that needs a notification when a tracked nonprofit or foundation has a meaningful data change. It is not an undifferentiated stream of every 990 filing in the country.
The freshness boundary
These events are sent after 501see has processed a data refresh and detected a supported change. They do not claim real-time IRS filing activity. That is the important practical boundary when comparing data providers: the notification tells an application that 501see’s current representation of a subscribed record changed.
For teams that also need an initial data load or current record access, 501see pairs webhooks with asynchronous exports and the 990 read API. But the discovery point is simpler: if a documented nonprofit data webhook is a requirement, 501see is currently the public option we found.
See the 501see developer documentation for Developer Pro availability and the webhook API reference.