# Ford Foundation Grants Database Apify Actor (`tehsnarf/ford-foundation-grants-database`) Actor

Scrapes the Ford Foundation's public awarded-grants database into a normalized export of grants, grantees, amounts, programs, topics, regions, and source URLs for nonprofit prospecting and philanthropy research.

- **URL**: https://apify.com/tehsnarf/ford-foundation-grants-database.md
- **Developed by:** [Chris Hoover](https://apify.com/tehsnarf) (community)
- **Categories:** Lead generation, Marketing, Other
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

Pay per usage

This Actor is paid per platform usage. The Actor is free to use, and you only pay for the Apify platform usage, which gets cheaper the higher subscription plan you have.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-usage

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js/docs.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python/docs.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

### What does Ford Foundation Grants Database Actor do?

This Actor exports the [Ford Foundation's public awarded-grants database](https://www.fordfoundation.org/work/our-grants/awarded-grants/grants-database/) —
over 5,600 grants totaling more than $3.3B awarded since 2006 — into clean, structured records.
It reads grant amount, grantee organization, program area, topic, funding region, dates, and a
direct source URL for every grant, straight from Ford's own public data (not a third-party
aggregator). Run it on Apify with no login, scheduling, or proxy setup required.

### Why use this Actor?

- **Nonprofit prospect research** — find which organizations a specific program area or region
  funds, and at what dollar amounts, to inform your own grant applications or partnership outreach.
- **Philanthropy and market research** — analyze Ford's giving patterns across program, topic,
  geography, and fiscal year without manually paging through the website.
- **Journalism and accountability reporting** — pull exact grant amounts, dates, and descriptions
  with a source URL for every record, ready to cite.
- **Grant consultants** — build a current, exportable reference of Ford's award history for client
  research, rather than re-scraping the site by hand for every engagement.

### How to use Ford Foundation Grants Database Actor

1. Click **Try for free** (or **Run**) on this Actor's page.
2. Leave the default **Start URL** as-is — it points at Ford's full grants database and the Actor
   paginates through it automatically.
3. Set **Max items** to however many grant records you want (leave it high, e.g. 5000+, for a
   full export of the whole database).
4. Click **Start** and wait for the run to finish.
5. Download the results from the **Output** tab in JSON, CSV, Excel, or HTML.

### Input

| Field | Type | Description |
|---|---|---|
| `startUrls` | array | Ford Foundation grants database URL(s). The default base URL is all you need — the Actor paginates internally. |
| `maxItems` | integer | Maximum number of grant records to scrape (default 100, max 10,000). |

```json
{
  "startUrls": [{ "url": "https://www.fordfoundation.org/work/our-grants/awarded-grants/grants-database/" }],
  "maxItems": 1000
}
````

### Output

Each item in the dataset looks like this:

```json
{
  "grant_id": 149142,
  "grant_key": "149142-2",
  "grantee_id": 32023,
  "grantee_name": "Allied Media Projects, Inc.",
  "grantee_website_url": "www.alliedmedia.org",
  "grantee_url": "https://www.fordfoundation.org/work/our-grants/awarded-grants/grantee/allied-media-projects-inc/",
  "grant_amount": 150000,
  "total_amount": 150000,
  "grant_description": "Core support for A People's Guide to Tech to produce materials and collaborative activities that support social justice movements in understanding how the internet and emerging technologies influence economies, relationships, and culture",
  "approval_date": "2026-01-21 00:00:00",
  "start_date": "2024-11-01 00:00:00",
  "end_date": "2026-10-31 00:00:00",
  "fiscal_year_of_approval": "2024",
  "grant_detail_url": "https://www.fordfoundation.org/work/our-grants/awarded-grants/grants-database/allied-media-projects-inc-149142/",
  "benefiting_locations": "United States",
  "programs": "Technology and Society",
  "subjects": "Other, Technology",
  "regions": "United States",
  "grant_type": "Regular",
  "source_url": "https://www.fordfoundation.org/work/our-grants/awarded-grants/grants-database/?page=1&per_page=100"
}
```

You can download the dataset in various formats such as JSON, HTML, CSV, or Excel.

### Data table

| Field | Description |
|---|---|
| `grant_id` | Ford Foundation internal grant ID |
| `grant_key` | Ford Foundation grant key (grant\_id, sometimes with a renewal suffix) |
| `grantee_id` | Ford Foundation internal grantee/organization ID |
| `grantee_name` | Name of the grantee organization |
| `grantee_website_url` | Grantee's own external website, when published |
| `grantee_url` | Ford Foundation's profile page for the grantee |
| `grant_amount` | Dollar amount of this specific grant award |
| `total_amount` | Total cumulative amount across all installments of this grant |
| `grant_description` | Ford's description of what the grant funds |
| `approval_date` | Date the grant was approved |
| `start_date` / `end_date` | Grant period dates |
| `fiscal_year_of_approval` | Fiscal year the grant was approved in |
| `grant_detail_url` | Ford Foundation's page for this specific grant |
| `benefiting_locations` | Benefiting location name(s) |
| `programs` | Ford program area name(s) |
| `subjects` | Subject/topic name(s) |
| `regions` | Ford regional funding office name(s) |
| `grant_type` | Grant type (e.g. Regular, Social Bond) |
| `source_url` | The paginated database query URL this record was scraped from |

### Pricing / Cost estimation

Priced at **$5.99 per 1,000 results**. Each run is a lightweight paginated JSON fetch (up to 100
grants per page fetch), so cost scales predictably with `maxItems`:

| Results | Estimated cost |
|---|---|
| 100 | $0.60 |
| 500 | $3.00 |
| 1,000 | $5.99 |
| 5,000 | $29.95 |

A full database export (~5,662 grants) costs roughly $34.

### Tips / Advanced options

- Leave `maxItems` at the default 100 for a quick sample; raise it to 10,000 for a full export.
- The Actor paginates at 100 results per page fetch internally — there's nothing to tune here for
  speed, since the database itself sets a 100/page cap.
- Ford's own facet filters (subject, program, region, amount range) are not usable via the
  `startUrls` query string — they're only applied by an authenticated route on Ford's own site.
  Filter or segment the exported dataset yourself after the run instead.

### FAQ, disclaimers, and support

This Actor only scrapes publicly available grant records already published on Ford Foundation's
own grants database page — no login, paywall, or private data is involved. Data reflects Ford's
public grant history as of each run and may lag Ford's own site by the time between runs. Found an
issue or want a related philanthropy dataset? Use the Issues tab on this Actor's Store page.

# Actor input Schema

## `startUrls` (type: `array`):

Ford Foundation grants database URL(s) to start from. The Actor paginates internally via query params, so the default base URL alone covers the whole database.

## `maxItems` (type: `integer`):

Maximum number of grant records to scrape

## Actor input object example

```json
{
  "startUrls": [
    {
      "url": "https://www.fordfoundation.org/work/our-grants/awarded-grants/grants-database/"
    }
  ],
  "maxItems": 100
}
```

# Actor output Schema

## `results` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {};

// Run the Actor and wait for it to finish
const run = await client.actor("tehsnarf/ford-foundation-grants-database").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {}

# Run the Actor and wait for it to finish
run = client.actor("tehsnarf/ford-foundation-grants-database").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{}' |
apify call tehsnarf/ford-foundation-grants-database --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=tehsnarf/ford-foundation-grants-database",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Ford Foundation Grants Database Apify Actor",
        "description": "Scrapes the Ford Foundation's public awarded-grants database into a normalized export of grants, grantees, amounts, programs, topics, regions, and source URLs for nonprofit prospecting and philanthropy research.",
        "version": "1.0",
        "x-build-id": "3NGanlTbqtLbgxc5V"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/tehsnarf~ford-foundation-grants-database/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-tehsnarf-ford-foundation-grants-database",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/tehsnarf~ford-foundation-grants-database/runs": {
            "post": {
                "operationId": "runs-sync-tehsnarf-ford-foundation-grants-database",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/tehsnarf~ford-foundation-grants-database/run-sync": {
            "post": {
                "operationId": "run-sync-tehsnarf-ford-foundation-grants-database",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "required": [
                    "startUrls"
                ],
                "properties": {
                    "startUrls": {
                        "title": "Start URLs",
                        "type": "array",
                        "description": "Ford Foundation grants database URL(s) to start from. The Actor paginates internally via query params, so the default base URL alone covers the whole database.",
                        "default": [
                            {
                                "url": "https://www.fordfoundation.org/work/our-grants/awarded-grants/grants-database/"
                            }
                        ],
                        "items": {
                            "type": "object",
                            "required": [
                                "url"
                            ],
                            "properties": {
                                "url": {
                                    "type": "string",
                                    "title": "URL of a web page",
                                    "format": "uri"
                                }
                            }
                        }
                    },
                    "maxItems": {
                        "title": "Max items",
                        "minimum": 1,
                        "maximum": 10000,
                        "type": "integer",
                        "description": "Maximum number of grant records to scrape",
                        "default": 100
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
