GrantExec
Back to News
Quickstart Guide: GrantExec Grants & Foundations API

Quickstart Guide: GrantExec Grants & Foundations API

Welcome to your GrantExec Grants and Foundations API, powered by Algolia! This guide walks you through getting access, setting up your own API key, and making your first queries against the the dataset.

๐Ÿ“ย Notes for customers testing with our Sandbox environment:

  • The sandbox environment contains a sample of 200 grant and 200 foundation records from our full databases.

  • GrantExec may update or change records, settings, permissions or access at any time.

๐Ÿ“ฉ Accept Your Algolia Invitation

After meeting with us, you will receive an email invitation from Algolia to join the GrantExec instance.

  1. Click the invitation link.

  2. Create or log into your Algolia account.

  3. Youโ€™ll be added to the application environment that hosts your licensed dataset.

๐Ÿ” Find your API Key

Once inside the Algolia dashboard:

  1. Select API Keysย from the Overview view.

  1. Under Your API Keys you will find your Application ID and Search API Key

โœ…ย Copy and securely storeย your API key. This will be used in all subsequent API calls.

API Documentation

View these docs to learn how to leverage and configure your Algolia API instance.

GrantExec Schemas

Grants Database

Attribute

Description

Type

funding_opportunity_title

The official name or title of the grant or funding opportunity.

STRING

url

The web link directing users to the official page of the funding opportunity

STRING

description

A summary of the funding opportunity, outlining the purpose, dates, eligibility, funding, and contact information for the grant.

STRING

funding_source_type

Identifies whether the funding comes from a government entity (Federal, State, or Local) or a private corporation or foundation (Private).

STRING

funding_source

The name of the organization or entity providing the funding for the opportunity.

STRING

parent_grant_program

If the funding opportunity is part of a larger or ongoing program, this field notes the overarching grant program.

STRING

nationwide

A boolean field (TRUE or FALSE) indicating whether the grant is available nationwide or is geographically restricted.

BOOLEAN

states

Specifies the individual U.S. states and territories where the funding opportunity is available.

STRING

eligible_geographies

Describes the geographic regions aside from states where applicants are eligible for the funding. Eligible geographies may include counties, cities, regional designations, area designations within states, and occasionally countries outside the US when applicable.

STRING

opportunity_status

Indicates whether the funding opportunity is currently Active, Forecasted, or Closed. Active: Can submit an application today Forecasted: Can submit an application in the future Closed: Can no longer submit applications

STRING

opportunity_stage

Gives additional context to

opportunity_status

ย  - Active grants will be "Accepting Applications" - Forecasted grants will be either "Early Engagement" (an opening date has been set for the next round) or "Anticipating Next Round" (it will open for another round but no date has been set yet.) - Closed grants will be "No longer accepting applications."

STRING

next_deadline_date

This refers to a requirement that is due before the deadline for the full application. Common examples are; Concept Papers, Letters of Intent (LOI), Phase 1, etc.

TIMESTAMP

next_deadline_type

This describes what is due by the

next_deadline_date

ย 

STRING

application_open_date

The first date when full applications will be accepted

TIMESTAMP

application_close_date

The last date that complete, final applications will be accepted and considered by the funder.

TIMESTAMP

rolling

A rolling grant has no defined deadline.

BOOLEAN

recurring

Opportunities identified as cyclical, meaning it re-opens or will be scheduled to re-open on a pre-determined schedule.

BOOLEAN

next_cycle

If a grant is recurring, next_cycle is when the next grant cycle is expected to open.

STRING

internal_next_check_date

An internal tool that allows our team to re-visit grants on a particular day in the future.

TIMESTAMP

primary_funding_category

The main area of focus or mission that the grant supports. List of categories: Agriculture, Animal Welfare, Arts, Business and Commerce, Capacity Building, Community Development, Consumer Protection, Disaster Prevention and Relief, Diversity Equity and Inclusion, Education, Employment Labor and Training, Energy, Environment, Food and Nutrition, Health, Housing, Humanities, Infrastructure, Income Security and Social Services, Information and Statistics, International Development, Law Justice and Legal Services, Natural Resources, Opportunity Zone Benefits, Recreation, Safety, Science and Technology, Social Advocacy, Transportation, Women & Girl Services, Workforce Development, Youth.

STRING

funding_category_[2-10]

Additional categories that reflect secondary areas the grant may support.

STRING

award_ceiling

The maximum amount of funding that can be awarded to a single recipient for this opportunity.

INTEGER

award_floor

The minimum amount of funding that can be awarded to a single recipient for this opportunity.

INTEGER

total_program_funding

The total available funds for the entire program or funding cycle.

INTEGER

funding_details

Specific funding details including special requirements, restrictions, and any other relevant information about the funding including for how funding is used.

STRING

number_of_awards

The number of awards that will be distributed. Blank if not specified.

INTEGER

matching_requirement

A boolean field (TRUE or FALSE) indicating whether the grant program requires applicants commit additional funding in order to be awarded the grant.

BOOLEAN

matching_requirement_amount

If matching is required, the percentage or dollar amount that must be provided by the applicant.

STRING

primary_eligibility_category

The main type of organization or individual eligible to apply. Eligibility Categories: City or township governments, County governments, Exclusive - see details, For profit organizations other than small businesses, Independent school districts, Individuals, Large-Scale Enterprises, Native American tribal organizations, Other, Nonprofits, Private institutions of higher education, Public and State controlled institutions of higher education, Public housing authorities, Small businesses, Special district governments, State governments, Unrestricted. See 'Categories' tab for more information.

STRING

eligibility_category_[2-10]

Additional eligibility categories that may apply.

STRING

eligibility_explanation

Detailed eligibility criteria, including any unique or exclusive conditions.

STRING

grantor_name

The name of the individual responsible for overseeing the funding opportunity.

STRING

grantor_email

Contact email for the individual responsible for overseeing the funding opportunity.

STRING

grantor_phone

Contact phone for the individual responsible for overseeing the funding opportunity.

STRING

pdf_link

A link to any downloadable PDF documents that outline details of the opportunity.

STRING

application_question_list

If available, a list of questions applicants must answer in their grant application.

STRING

application_time_estimate

An estimate of how much time it will take to complete the application.

STRING

expert_tips

Notes or recommendations on how to maximize the chance of a successful application.

STRING

previous_recipients

Past awardees or organizations that have received funding through this program.

STRING

date_added

The date this opportunity was first added to the GrantExec database.

TIMESTAMP

checked_date

The most recent date the opportunity was checked or updated by the team.

TIMESTAMP

Foundations Database

Attribute

Description

Type

ein

Employer Identification Number

STRING

return_type

Type of tax return filed

STRING

organization_name

Name of the organization

STRING

source_url

URL source of the data

STRING

website

Organization's website

STRING

address

Organization's address

STRING

in_state_only

Whether grants are limited to in-state only

STRING

state

State where organization is located

STRING

accepts_unsolicited_applications

Whether organization accepts unsolicited grant applications

STRING

most_recent_year

Most recent year of available data

INTEGER

most_recent_year_assets

Assets for the most recent year

INTEGER

most_recent_year_expenses

Expenses for the most recent year

INTEGER

most_recent_year_number_of_grants

Number of grants awarded in the most recent year

INTEGER

most_recent_year_total_giving

Total giving amount for the most recent year

INTEGER

most_recent_year_funding_received

Funding received in the most recent year

INTEGER

most_recent_year_median_grant_amount

Median grant amount for the most recent year

INTEGER

most_recent_year_min_grant_amount

Minimum grant amount for the most recent year

INTEGER

most_recent_year_max_grant_amount

Maximum grant amount for the most recent year

INTEGER

records

Array of historical financial records

RECORD

records.year

Year of the record

INTEGER

records.assets

Assets for the year

INTEGER

records.expenses

Expenses for the year

INTEGER

records.number_of_grants

Number of grants awarded in the year

INTEGER

records.total_giving

Total giving amount for the year

INTEGER

records.funding_received

Funding received in the year

INTEGER

records.median_grant_amount

Median grant amount for the year

INTEGER

records.min_grant_amount

Minimum grant amount for the year

INTEGER

records.max_grant_amount

Maximum grant amount for the year

INTEGER

records.recipients

Array of grant recipients for the year

RECORD

records.recipients.award

Grant award amount

INTEGER

records.recipients.address

Recipient's address

STRING

records.recipients.purpose

Purpose of the grant

STRING

records.recipients.state

State of the recipient

STRING

records.recipients.title

Grant title or recipient organization name

STRING

records.recipients.year

Year the grant was awarded

STRING

contacts

Array of organization contacts

RECORD

contacts.name

Contact person's name

STRING

contacts.phone

Contact phone number

STRING

contacts.title

Contact person's title

STRING

index_id

Unique identifier for the record

INTEGER

Overview

Full Algolia API Reference Guide

API Parameters

Search API

Configure

Sorting

Faceting

Filtering

Example Searches

Implementation Notes

  • Authentication: Include your API key in the X-Algolia-API-Keyย header

  • Application ID: Include your application ID in the X-Algolia-Application-Idย header

  • Index Names: Replace with your assigned index names (e.g., grantexec_grants_customer123, grantexec_foundations_customer123)

  • Endpoint: https://{APPLICATION_ID}-dsn.algolia.net/1/indexes/{INDEX_NAME}/search

๐Ÿ“ย Note: Some of these examples require you to configure Facets.

Sample cURL Command:

curl -X POST \\
  "https://YOUR_APP_ID-dsn.algolia.net/1/indexes/YOUR_GRANTS_INDEX/query" \\
  -H "X-Algolia-API-Key: YOUR_API_KEY" \\
  -H "X-Algolia-Application-Id: YOUR_APP_ID" \\
  -H "Content-Type: application/json" \\
  -H "X-Algolia-UserToken: user_$(date +%s)" \\
  -d '{your_search_query_json}'

Grants Index

Example 1: Basic Text Search for Education Opportunities

{
  "query": "education",
  "filters": "",
  "facets": ["opportunity_status", "funding_source_type", "primary_funding_category"],
  "hitsPerPage": 20,
  "attributesToRetrieve": [
    "funding_opportunity_title",
    "funding_source",
    "description",
    "award_ceiling",
    "opportunity_status",
    "states",
    "primary_funding_category",
    "url"
  ],
  "attributesToHighlight": []
}

Example 2: Active and Forecasted Grant Opportunities

{
  "query": "",
  "filters": "opportunity_status:Active OR opportunity_status:Forecasted",
  "facets": ["funding_source_type", "primary_funding_category", "opportunity_stage"],
  "sortFacetValuesBy": "count",
  "hitsPerPage": 25,
  "attributesToRetrieve": [
    "funding_opportunity_title",
    "funding_source",
    "description",
    "opportunity_status",
    "opportunity_stage",
    "next_deadline_date",
    "application_close_date",
    "award_ceiling",
    "primary_funding_category",
    "url"
  ],
  "attributesToHighlight": []
}

Example 3: Explore Eligibility and Geographic Distribution

{
  "query": "",
  "filters": "",
  "facets": ["primary_eligibility_category", "states", "nationwide", "funding_source_type"],
  "sortFacetValuesBy": "count",
  "getRankingInfo": true,
  "hitsPerPage": 50,
  "attributesToRetrieve": [
    "funding_opportunity_title",
    "funding_source",
    "primary_eligibility_category",
    "states",
    "nationwide",
    "award_ceiling",
    "award_floor",
    "recurring",
    "matching_requirement",
    "url"
  ],
  "attributesToHighlight": []
}

Foundations Database Examples

Example 1: Foundations Accepting Unsolicited Applications

{
  "query": "",
  "filters": "accepts_unsolicited_applications:'Yes'",
  "facets": ["state", "in_state_only", "accepts_unsolicited_applications"],
  "sort": ["most_recent_year_total_giving:desc"],
  "hitsPerPage": 30,
  "attributesToRetrieve": [
    "organization_name",
    "website",
    "state",
    "address",
    "most_recent_year_assets",
    "most_recent_year_total_giving",
    "most_recent_year_number_of_grants",
    "most_recent_year_median_grant_amount",
    "in_state_only",
    "contacts"
  ],
  "attributesToHighlight": []
}

Example 2: Explore Foundation Grant History and Recipients

{
  "query": "",
  "filters": "",
  "facets": "",
  "attributesToSearchOn": ["organization_name", "records.recipients.purpose", "records.recipients.title"],
  "hitsPerPage": 20,
  "attributesToRetrieve": [
    "organization_name",
    "website",
    "state",
    "most_recent_year_total_giving",
    "most_recent_year_number_of_grants",
    "most_recent_year_median_grant_amount",
    "most_recent_year_min_grant_amount",
    "most_recent_year_max_grant_amount",
    "accepts_unsolicited_applications",
    "records.recipients.purpose",
    "records.recipients.title",
    "contacts"
  ],
  "attributesToHighlight": []
}

Example 3: Geographic Distribution and Foundation Characteristics

{
  "query": "",
  "filters": "",
  "facets": ["state", "in_state_only", "accepts_unsolicited_applications", "most_recent_year"],
  "sort": ["most_recent_year_assets:desc"],
  "hitsPerPage": 50,
  "attributesToRetrieve": [
    "organization_name",
    "website",
    "state",
    "address",
    "most_recent_year",
    "most_recent_year_assets",
    "most_recent_year_total_giving",
    "most_recent_year_number_of_grants",
    "accepts_unsolicited_applications",
    "in_state_only",
    "contacts"
  ],
  "attributesToHighlight": []
}

Question? Need Support?

Send us an email [email protected].