# California Grants Opportunities Monitor (`defenestrator/california-grants-opportunities-monitor`) Actor

Fetch active California Grants Portal opportunity rows from the official data.ca.gov CKAN datastore. Unofficial and not affiliated with California Grants Portal.

- **URL**: https://apify.com/defenestrator/california-grants-opportunities-monitor.md
- **Developed by:** [Defenestrator](https://apify.com/defenestrator) (community)
- **Categories:** Business, News
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $1.00 / 1,000 california grant opportunity rows

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

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

## 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.md):

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

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.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/platform/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

## California Grants Opportunities Monitor

Export official California Grants Portal opportunity rows from data.ca.gov into a structured, source-linked Apify dataset for grant discovery, procurement research, public-program monitoring, and internal opportunity triage.

Use this Actor to run repeatable searches against California public grant-opportunity data, save normalized rows, and monitor changes without manually checking the portal each time.

Unofficial / not affiliated: this Actor is not operated by, endorsed by, or affiliated with the California Grants Portal, data.ca.gov, the State of California, or any government agency.

### Common use cases

| Use case | Why it helps |
|---|---|
| Grant-opportunity monitoring | Run bounded searches for infrastructure, housing, climate, workforce, or other public opportunities. |
| Procurement / partnership research | Export source-linked rows before manual eligibility and application review. |
| Nonprofit / public-sector triage | Track relevant programs without manually refreshing the portal. |
| Internal alerts | Schedule focused runs for a search term, agency department, or status filter. |
| Market / policy research | Build repeatable datasets from public grant-opportunity records. |

### Example input

```json
{
  "search": "infrastructure",
  "maxItems": 10,
  "includeRawSourceRow": false
}
````

### Input fields

| Field | Type | Default | Notes |
|---|---:|---:|---|
| `search` | string | `infrastructure` | Optional CKAN full-text query. Use targeted terms such as `housing`, `climate`, `workforce`, or `infrastructure`. |
| `status` | string | optional | Optional source status filter. |
| `agencyDept` | string | optional | Optional agency/department filter. |
| `maxItems` | integer | `3` | Maximum rows to return, capped at 100. |
| `includeRawSourceRow` | boolean | `false` | Include sanitized raw source-row fields for debugging. Privacy-sensitive configured fields remain omitted. |

### Output

The Actor writes one dataset item per California grant opportunity row. Depending on source availability, rows include:

- opportunity title/name and source identifiers
- agency/department and status fields
- deadline or date fields when present
- funding/category/program details when present
- source URL / data.ca.gov reference fields
- collection timestamp

### Source

Official/source dataset: https://data.ca.gov/dataset/california-grants-portal-data

The source is California Grants Portal data exposed through data.ca.gov / CKAN. Records can change as agencies update opportunities, deadlines, eligibility, funding amounts, or contact details.

### Pricing

from $1.00 / 1,000 California grant opportunity rows

This Actor uses Apify Pay per Event pricing with platform usage included. The row event is charged only for useful rows written to the default dataset.

| Event | Price | Unit |
|---|---:|---|
| Actor start (`apify-actor-start`) | `$0.00005` | Once when the run starts. |
| California Grant Opportunity Row (`apify-default-dataset-item`) | `$0.001` | Per California grant opportunity row. |

A row is one California Grants Portal opportunity row. Apify plan discounts, user-configured max-charge limits, and any future Apify pricing UI changes may affect final charges.

### Limitations and responsible use

- This Actor is unofficial and does not provide grant, legal, procurement, financial, compliance, eligibility, or application advice.
- Always verify grant opportunity status, deadlines, eligibility, application requirements, and funding details against the official California Grants Portal / data.ca.gov source before applying, advising clients, committing funds, or making public claims.
- Do not use the output for unsolicited outreach, harassment, unlawful activity, or automated adverse decisions.
- Public source records can be updated, corrected, removed, delayed, or incomplete.

### Data handling

The Actor queries the public source dataset with your filters, keeps runs bounded with `maxItems`, and writes one source-linked row per dataset item. It does not use a browser, proxy, login, private API, external paid API, or LLM.

### Related Actors in this portfolio

This Actor is part of the **Property, infrastructure, and grants datasets** group. These are narrow, source-specific Apify Actors intended for scheduled checks and repeatable dataset exports — not broad scraped-content feeds.

- [Florida DEP Cleanup Sites Monitor](https://apify.com/defenestrator/florida-dep-cleanup-sites-monitor) — Official Florida DEP cleanup-site rows for property/environmental review.
- [Census Building Permits Monitor](https://apify.com/defenestrator/census-building-permits-monitor) — Official Census building-permit rows for construction and local-market monitoring.
- [California Grants Opportunities Monitor](https://apify.com/defenestrator/california-grants-opportunities-monitor) — Official California Grants Portal opportunities for funding-discovery workflows.
- [EPA WaterSense Labeled Products](https://apify.com/defenestrator/epa-watersense-products) — Official EPA WaterSense labeled-product rows for product and procurement research.

Each listing includes its own source notes, limits, pricing, and responsible-use caveats. Use the official source links in each Actor when decisions require verification.

# Actor input Schema

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

Maximum number of rows to return. Capped at 100.

## `includeRawSourceRow` (type: `boolean`):

Include sanitized raw source row fields for debugging. Privacy-sensitive fields configured for this Actor remain omitted.

## `search` (type: `string`):

Optional CKAN full-text query.

## `status` (type: `string`):

Optional Status filter.

## `agencyDept` (type: `string`):

Optional Agency department filter.

## Actor input object example

```json
{
  "maxItems": 3,
  "includeRawSourceRow": false,
  "search": "infrastructure"
}
```

# Actor output Schema

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

No description

## `summary` (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("defenestrator/california-grants-opportunities-monitor").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("defenestrator/california-grants-opportunities-monitor").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 defenestrator/california-grants-opportunities-monitor --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=defenestrator/california-grants-opportunities-monitor",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "California Grants Opportunities Monitor",
        "description": "Fetch active California Grants Portal opportunity rows from the official data.ca.gov CKAN datastore. Unofficial and not affiliated with California Grants Portal.",
        "version": "0.0",
        "x-build-id": "qdcwjUWEVgchj01eb"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/defenestrator~california-grants-opportunities-monitor/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-defenestrator-california-grants-opportunities-monitor",
                "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/defenestrator~california-grants-opportunities-monitor/runs": {
            "post": {
                "operationId": "runs-sync-defenestrator-california-grants-opportunities-monitor",
                "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/defenestrator~california-grants-opportunities-monitor/run-sync": {
            "post": {
                "operationId": "run-sync-defenestrator-california-grants-opportunities-monitor",
                "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",
                "properties": {
                    "maxItems": {
                        "title": "Max items",
                        "minimum": 1,
                        "maximum": 100,
                        "type": "integer",
                        "description": "Maximum number of rows to return. Capped at 100.",
                        "default": 3
                    },
                    "includeRawSourceRow": {
                        "title": "Include raw source row",
                        "type": "boolean",
                        "description": "Include sanitized raw source row fields for debugging. Privacy-sensitive fields configured for this Actor remain omitted.",
                        "default": false
                    },
                    "search": {
                        "title": "Search",
                        "type": "string",
                        "description": "Optional CKAN full-text query.",
                        "default": "infrastructure"
                    },
                    "status": {
                        "title": "Status",
                        "type": "string",
                        "description": "Optional Status filter."
                    },
                    "agencyDept": {
                        "title": "Agency department",
                        "type": "string",
                        "description": "Optional Agency department filter."
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
