360Giving Datastore and API
For most users, the best places to access and use 360Giving data are GrantNav and 360Insights. These include the ability to download data as spreadsheets or JSON files suitable for most needs. However, technical users can access the data in a direct and programmatic way via the 360Giving API or from the Datastore.
The 360Giving Datastore and API are convenient and streamlined ways for technical users such as developers, researchers, technical partners of funders and others to access grant data published using the 360Giving Data Standard.
Data included in the Datastore and API
Data listed on the 360Giving Data Registry is included in the Datastore and exposed via the API. A number of checks are performed on the data before it is imported into the Datastore. These checks ensure that the data is:
- Openly licensed;
- Valid according to the schema used for the 360Giving Data Standard.
If a dataset linked from the 360Giving Data Registry becomes invalid according to the 360Giving Data Standard schema or temporarily unavailable, for example because the location of the dataset has changed, the Datastore will use the last valid downloaded version of the dataset. The Datastore keeps a backup version of each dataset for 90 days. If a dataset remains invalid or unavailable the data will disappear from the Datastore after 91 days. If a takedown request is received and acted upon, data may be removed before this date.
Additional data
As part of the process of importing data to the Datastore, some additional data is added to enrich the published data. These additional fields include:
- For charities registered in England and Wales, the charity number is used to look up the registered name of the organisation with the Charity Commission.
- For records with a grant recipient postcode, details of the region, local authority and ward where the recipient is located are added.
Using the API
What is the 360Giving API
The 360Giving API makes it easier for developers, researchers and data scientists to build scripts and applications that analyse, visualise or extend 360Giving data. By using the API you can use the data in your software, create platforms and tools displaying the data, incorporate the data into your own database, and more.
For example, as a charity you could build a dashboard to display the grants your or other charities have received; as a researcher, you could summarise and compare statistics about grants given by funders; or as a funder, you could create an automatically updating map of the locations of your grant recipients.
The API is an HTTP/JSON API, with endpoints to access grant data and summary data about an organisation.
Why use the 360Giving API
Key features of the 360Giving API include:
- Ability to access data about grants made by or received by an organisation
- Ability to find organisations that give or receive grants, and access summary information about the grants they have given or received
Benefits of the API include:
- Automate data access
- Can be easier to use than Colab/direct Datastore access or the daily data packages
- Download only the data relevant to your application
Some examples of how you might use the API could be:
- Displaying 360Giving grants data about organisations in your grantmaking system
- Helping with due diligence checks for grant applicants
- Using 360Giving data to build an application that provides information on charities or funders
- Showing grants received by your organisation
How to get started using the API?
Please complete our API registration form to ensure you receive important updates, such as backwards incompatible changes to the API or Take Down requests.
You can then access the API any time and for free. Read our documentation to find out more.
In using the API you are acknowledging acceptance of the terms and conditions.
Questions or suggestions for the API?
With this API, 360Giving aims to make it easier for people to build applications that consume 360Giving data. If you have any questions or suggestions about what the API can provide or do for you that aren’t answered by this document, please contact our free and friendly support helpdesk at labs@threesixtygiving.org, or post in our community forum under the API category.
Using the Datastore
For users with complex data needs, it is possible to directly access the Datastore and run queries on it. Potential uses of the Datastore include:
- Creating a filtered dataset as raw data for a research project.
- Producing a bespoke dataset that can be regularly imported into a database powering a web app.
The Datastore is designed to facilitate one-off or repeating data transfers covering a large part of the 360Giving data corpus. It does not include a general purpose API, and doesn’t support API-style individual access to the data.
Fill in this form if you are interested in direct Datastore access. Access is usually through a Google Colab python notebook, where we can supply database credentials that can run SQL queries against the Postgres database that holds the data.
Datastore and API Code of Conduct
The Datastore and API are services from 360Giving and are offered as a resource to help users make the most of the data published by grantmakers. To make sure that the data is useful and available we ask that Datastore and API users follow the points set out below. If the code of conduct is not followed then it may be necessary to revoke access.
API users
Make appropriate requests
The API is designed for requesting specific parts of the dataset, not bulk data requests. Users may make up to 2 requests per user per second.
Rate limiting is applied to the 360Giving API to ensure a stable and reliable service for all users.
If you are anticipating requiring a significantly larger volume of queries, please contact labs@theesixtygiving.org to discuss how we might be able to meet your needs.
Datastore users
Make appropriate requests
The Datastore is designed for one-off or repeating bulk data requests from researchers and other technical users. Users should design their queries to be efficient with the resources, and to not make large numbers of requests for bulk data in a short space of time, or perform complex queries repeatedly. Talk to us about your plans for the data, and we’ll help you design an access pattern that meets your needs and is appropriate for the service.
Data is fetched every day but most 360Giving publishers publish new data less frequently than that. For most purposes checking for new data once a week would be sufficient.
The Datastore is not designed as a general purpose API, and so large numbers of small requests (for example for one grant or based on one recipient organisation) are not an appropriate use of the service. The API is designed to facilitate this instead.
Be mindful of security
The database credentials you will use will be specific to you, and should be kept private. The credentials will only give read-only access to the database. The credentials supplied are not permanent, and may be removed or replaced after a while (360Giving will contact you when this happens).
Respect licence conditions
360Giving publishers include an open licence for their data. This licence will allow a range of different uses of their data, but there may be conditions attached. Most commonly, users of the data will need to attribute and link to the data source (the publisher themselves).
Information about the licence under which each data item has been published and the source of the data is available in the Datastore itself and via the API and should be used to adhere to any licencing conditions, such as source attribution.
Attributing 360Giving
In addition to attributing the original data, you may wish to attribute the 360Giving Datastore or API as appropriate. However, the 360Giving logo should not be used without permission when referring to or using the 360Giving data.
Work with data publishers
The 360Giving Datastore and API are not the original source of the data, and should not be treated as such. For queries about individual published grants or the content of the data it is generally most appropriate to contact the publisher of the original data. Information about the publisher of each item is included in a table in the database itself.
Respect take down requests
360Giving has a take down policy for managing requests from publishers or others that data or a portion of it, is removed from the 360Giving Data Register and 360Giving online platforms.
The take down policy sets out how 360Giving will deal with these requests. Users of the Datastore and API should also consider how they would respond to take down requests. Registered Datastore users and API users will be informed by 360Giving if a take down request is received.
Privacy Information
360Giving will collect certain data about you and your usage of the Datastore and API. This will include:
- Your name and email address collected at registration
- Usage statistics on how you use the Datastore
- The number / frequency of requests you make via the API
We collect your personal data for the following purposes:
- Administering your account such as sending service updates to notify you of system maintenance or updates to the APIs
- To notify you of take-down requests
- Usage statistics for analytics and to monitor the performance of the developer hub and API to ensure a reliable and stable service for all users
Keep in touch
The Datastore and API exist to help people use 360Giving data, so please keep us informed of how you’re using it. We’d love to help you explore new ideas about what you can do with the data, and promote exciting and innovative projects that use the data. We also want feedback to make the Datastore, API and our other services better.
You can email us at labs@threesixtygiving.org or tell us on X/twitter @360Giving.
360Giving releases all the code we create under an open source licence to help others. The code for the Datastore and API can be found on Github.