Open data, RSS and REST
This page is for the website creator and the communications or data lead. Funders, umbrella organizations, partner networks and researchers sometimes want your publications, events or grant registers in a form a computer can read. Exponential offers three channels: feeds, exports and an API.
Contents
- Which channel for which need
- RSS and Atom feeds
- Exports
- The REST API
- Licensing what you share
- Privacy first
- Checklist
Which channel for which need
| Need | Channel | Effort |
|---|---|---|
| Supporters and networks follow your news and publications | RSS or Atom feed | Low |
| A funder wants a list of your grants or projects once a year | Export to CSV | Low |
| A partner site shows your events automatically | Feed, or the REST API | Medium |
| A researcher wants structured data regularly | Export or the REST API | Medium |
RSS and Atom feeds
RSS exports publish RSS 2.0, Atom, OPML or podcast feeds of your content; link them from the page layout so browsers and feed readers find them (RSS feeds for your site, RSS feeds guide).
Good feeds for a non-profit:
| Feed | Source folder |
|---|---|
| News | The news folder |
| Publications | The accountability folder (new annual publications, policies) |
| Events | The event calendar (Events and calendars) |
| Podcast | A folder of audio files (RSS and podcast feeds) |
Feed for new publications in detail: Feeds for new and changed datasets.
Exports
| Export | What | Source |
|---|---|---|
xrowextract Export tab | Content objects of a class to CSV and other formats | Exporting content as CSV, JSON, XML |
exp:ezcsvexport | The kernel's CSV export command | same page |
| Collected information CSV | Form submissions (personal data; never publish) | Collected information |
A register kept as content, for example "Grants we gave", exported once a year and published as a file, is often all a funder needs (Financial documents).
The REST API
The ezprestapi extension serves REST v1 and v2 (REST API v1 and v2):
- Reads at v1 and v2, writes only at v2; answers are JSON.
- Calls such as
GET /content/node/<id>andGET /content/node/<id>/list/offset/<n>/limit/<n>. - Authentication is required by default (
rest.ini [Authentication] RequireAuthentication=enabled): an OAuth2 token or a personal API key. Every read checks the user'scontent/readpolicy.
Opening it to anonymous readers is a security decision. Before you do, check that Anonymous reads only public sections, write routes stay closed, there is a rate limit in front of it, and record who approved it (The REST API as a data interface).
For most non-profits, a partner gets an API key for their integration instead; nothing is opened to everyone (API keys, REST API for owners).
Licensing what you share
Say under which terms others may re-use what you publish: on the page, in the feed description, and in the file. See Licensing datasets. Choose a license with your board; this help does not recommend one.
Privacy first
- Never put personal data in a feed, export or public API answer: no donor names, no volunteer contacts, no beneficiaries (Privacy checks before publishing data).
- Check what a feed contains after you set it up: open it as a visitor would.
- The audit trail records CSV exports with their row count (The audit trail).
Checklist
- To do: Feeds for news, publications and events, linked from the page layout.
- To do: Each feed opened as a visitor and checked for personal data.
- To do: Registers exported and published as files where funders ask.
- To do: REST API left authenticated; keys issued per partner, if needed.
- To do: Re-use terms stated.
Related pages
- Transparency for non-profits
- Open data in Exponential at a glance
- Remote services and apps
- Free documentation: this page is free to copy, translate and improve under the GNU FDL 1.3.
Become an Exponential Partner
Partners share their information, provide funding, contribute back and develop the products with us, and that is how Exponential grows. A partner website and dashboard are planned for mid-2027: please become a partner today to speed up our growth rate and land new features faster.