API Documentation

Inspecting API Schema

http://api.charitynavigator.org/api/v1/?format=xml

This lists all available API resources. Every resource has list_endpoint and schema. We can retrieve resource schema, for example “categories”:

http://api.charitynavigator.org/api/v1/categories/schema/?format=xml

This lists out the default_format this resource responds with, the fields on the resource & the filtering options available. This information can be used to prepare the other aspects of the code for the data it can obtain & ways to filter the resources.

The format=json or format=xml is an override required to make things look decent in the browser (accept headers vary between browsers). API properly handles the Accept header so the following will work properly:

``curl -H “Accept: application/json” http://api.charitynavigator.org/api/v1/categories/schema/

But if you’re sure you want something else (or want to test in a browser), API lets you specify ?format=... when you really want to force a certain type.

API methods

After registration you will receive your own unique APP_ID and APP_KEY. These keys are required for every API call.

*Requires Premium Subscription

Organization Detail (Premium Subscription Required)

Fields returned:

  • orgid
  • ein
  • charity_name
  • categoryid
  • causeid
  • category
  • cause
  • tag_line
  • fundraising_efficiency
  • fundraising_expenses_ratio
  • program_expenses_ratio
  • administration_expenses_ratio
  • primary_revenue_growth
  • program_expenses_growth
  • working_capital_ratio
  • mission
  • street_address_1
  • street_address_2
  • city
  • state
  • zip
  • cob_name
  • cob_title
  • current_ceo_name
  • current_ceo_title
  • financial_score
  • financial_rating
  • accountability_score
  • accountability_rating
  • overall_score
  • overall_rating
  • fundraising_expenses
  • administration_expenses
  • program_expenses
  • total_expenses
  • total_revenue
  • total_net_assets
  • boardlist_status
  • stafflist_status
  • auditedfinancial_status
  • form990_status
  • privacy_status
  • loanstoorfromofficers
  • loanstoofficers
  • materialdiversionofassets
  • boardmeetingminutes
  • distributes990toboard
  • conflictofinterestpolicy
  • whistleblowerpolicy
  • recordsretentionpolicy
  • reportsceoandsalary
  • ceocompensationprocedure
  • compensatesboard
  • independentaudit
  • boardcomposition
  • phone_number
  • general_email
  • subsection
  • deductibility
  • foundation status

Get organizations by id - for example 4500:

Get organizations by ein - for example 411867244:

Categories

Causes (sub-categories)

Fields returned:

  • causeid
  • cause
  • category
  • categoryid
  • description

List of all causes:

Get causes by id - for example 4:

It has Category Resource url in results.

Celebrities

Fields returned:

  • celebrityid
  • fname
  • mname
  • lname
  • typeid
  • type
  • charity_count

List of all celebrities:

Get celebrities by id - for example 4:

Celebrity Organizations

Fields returned:

  • fname
  • mname
  • lname
  • celebrityid
  • orgid
  • typeid
  • relationshipid
  • charity_name
  • relationship
  • type

List of all connections between organizations and celebrities:

It has Celebrity Resource in results.

It has Organization Resource url in results.

It has Celebrity Relation Resource in results.

Celebrity Relationships

Countries

Fields returned:

  • countryid
  • country
  • regionid
  • charity_count

List of all countries:

Get countries by id - for example 4:

It has Region Resource in results.

Country Organizations

Fields returned:

  • countryid
  • orgid
  • regionid
  • country
  • region
  • charity_name

List of all organization in countries:

It has Country Resource in results.

It has Organization Resource in results.

Country Regions

Lists

Fields returned:

  • listid
  • listname
  • description
  • typeid
  • list_type

List of all Lists:

List Organizations

Fields returned:

  • listid
  • listname
  • typeid
  • list_type
  • rank
  • orgid
  • charity_name

Display all organizations from given List (using listid):