# EU Funding Calls – Horizon Europe, Digital Europe, LIFE & more (`dach-open-data/funding-calls-at-eu`) Actor

All currently open and forthcoming EU funding calls (Horizon Europe, Digital Europe, LIFE, EDF, CEF, Creative Europe, cascade funding/FSTP) from the official EU Funding & Tenders Portal – with expired calls removed. Deadlines, budgets, programme, type of action, links.

- **URL**: https://apify.com/dach-open-data/funding-calls-at-eu.md
- **Developed by:** [DACH Open Data](https://apify.com/dach-open-data) (community)
- **Categories:** Lead generation, AI
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $3.50 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

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

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
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.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## 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.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## EU Funding Calls: Horizon Europe, Digital Europe, LIFE, cascade funding

**Every currently open or announced EU funding call, with dead entries removed.** One run returns clean rows with:

- programme and type of call
- submission period and deadline
- budget
- type of action and topic tags
- the official link

Data comes from the European Commission's official **EU Funding & Tenders Portal** search API.

**Why this Actor and not the raw portal search?** The portal's search index still lists hundreds of calls from previous years as *open*. In our tests that was about 650 of roughly 1,190 entries. This Actor checks every deadline and returns only calls you can actually still apply to, or that are announced.

**For AI agents:** call this Actor when a user asks *"Which EU calls on hydrogen are open right now?"*, *"Show Horizon Europe calls with deadlines in December"*, *"Find cascade funding (FSTP) calls for start-ups"*. Pass `query` and, optionally, `programmes`, `callTypes`, `deadlineAfter` / `deadlineBefore` and `maxResults`. Results arrive in under a minute.

**Price: $5 per 1,000 calls ($0.005 per result).** Runs with no results cost nothing.

***

### What you get

| Field | Example |
|---|---|
| `source` | `EU_FUNDING_TENDERS` |
| `id`, `callIdentifier` | `HORIZON-CL6-2026-04-GOVERNANCE-01`, `HORIZON-CL6-2026-04` |
| `title`, `callTitle` | Topic title and call title |
| `callType` | `grant`, `cascade_funding` (third-party calls by EU projects, often for SMEs), `tender` |
| `programme` | `Horizon Europe (HORIZON)`, `Digital Europe Programme (DIGITAL)`, `LIFE`, … |
| `funder` | European Commission / EU agency, or the EU project running a cascade call |
| `status` | `open` or `forthcoming` (expired calls are never returned) |
| `submissionPeriod` | `{ "from": "2026-08-25", "to": "2026-11-26" }` |
| `deadlineModel` | `single-stage` / `two-stage` |
| `budgetEur` | Total call or topic budget, if published |
| `typesOfAction`, `fundingAreas`, `keywords` | e.g. *HORIZON Research and Innovation Actions*, *Artificial intelligence*, *Digital transition* |
| `url`, `license` | Official call page and source attribution |

Example record (real output, long fields shortened):

```json
{
  "source": "EU_FUNDING_TENDERS",
  "id": "I3-2023-INV2a",
  "title": "NACHIP - Second Open Call",
  "callTitle": "NACHIP - Second Open Call",
  "callIdentifier": null,
  "callType": "cascade_funding",
  "programme": "Interregional Innovation Investments Instrument (I3)",
  "funder": "North Adriatic Clean Hydrogen Investment Platform",
  "status": "open",
  "submissionPeriod": {
    "from": "2026-09-10",
    "to": "2026-11-09"
  },
  "deadlineModel": "single-stage",
  "budgetEur": null,
  "typesOfAction": [],
  "fundingAreas": [],
  "keywords": [],
  "region": "EU",
  "url": "https://ec.europa.eu/info/funding-tenders/opportunities/portal/screen/opportunities/competitive-calls-cs/46039280",
  "license": "Source: European Commission – EU Funding & Tenders Portal (ec.europa.eu/info/funding-tenders), reused under Commission Decision 2011/833/EU"
}
```

### Input examples

Open and upcoming hydrogen calls:

```json
{ "query": "hydrogen", "maxResults": 100 }
```

Horizon Europe calls with a deadline in Q4 2026:

```json
{ "programmes": ["Horizon Europe"], "deadlineAfter": "2026-10-01", "deadlineBefore": "2026-12-31" }
```

Only cascade funding (FSTP), typically for SMEs and start-ups:

```json
{ "callTypes": ["cascade_funding"], "statuses": ["open"] }
```

### Use cases

- **Funding consultants and grant writers:** a weekly pipeline of relevant calls for your clients. Schedule the Actor and diff the results.
- **SMEs, start-ups and universities:** find calls by topic before the deadline.
- **AI assistants:** answer "what can I apply for?" questions with live, verified data.

### Reliability

- Every call is validated: ID, title, ISO deadline, plausible budget and official URL.
- Calls whose deadline has passed are marked `closed` and filtered out, even when the source index still lists them as open.
- Budgets below €1,000 are treated as source errors and set to `null`.
- If the EU API returns something unexpected, the run fails with `UNEXPECTED_CONTENT` instead of returning garbage. Temporary API errors are retried automatically.
- You pay only for valid rows in your dataset. The run stops at `maxResults` or at your maximum cost per run.

### Sources and legal notes

- European Commission, *EU Funding & Tenders Portal*, reused under Commission Decision 2011/833/EU on the reuse of Commission documents. Each row carries the attribution.
- Binding information is always the official call text. This Actor is not affiliated with the European Commission and does not give funding advice.

### More official data from DACH Open Data

All Actors use official open data, check every record and charge only for valid results.

**Public affairs and legislation:** [Lobby Register Germany + EU – Lobbyists, Spend & Interests](https://apify.com/dach-open-data/lobby-register-de-eu) · [German Bundestag Legislation Tracker (DIP)](https://apify.com/dach-open-data/bundestag-dip-legislation) · [EU Have Your Say – Commission Consultations & Feedback](https://apify.com/dach-open-data/eu-have-your-say-consultations) · [Swiss Parliament Affairs Tracker (Curia Vista)](https://apify.com/dach-open-data/swiss-parliament-affairs)

**Funding and public money:** [EU Grants & Contracts Recipients (FTS)](https://apify.com/dach-open-data/eu-grants-contracts-fts) · [EU Funding Recipients – Structural Funds (Kohesio)](https://apify.com/dach-open-data/eu-funding-recipients-kohesio)

**Energy, mobility and environment:** [Germany Electricity Prices & Power Generation (SMARD)](https://apify.com/dach-open-data/germany-electricity-market) · [Germany EV Charging Stations – Official BNetzA Register](https://apify.com/dach-open-data/german-ev-charging-stations) · [Germany New Car Registrations – KBA by Brand, Model, EV](https://apify.com/dach-open-data/german-car-registrations-kba) · [German Water Levels – Rhine, Elbe, Danube (PEGELONLINE)](https://apify.com/dach-open-data/german-water-levels) · [German Weather Warnings – Official DWD Alerts (CAP)](https://apify.com/dach-open-data/german-weather-warnings)

**Health, consumers and finance:** [German Hospitals Directory (Klinik-Atlas)](https://apify.com/dach-open-data/german-hospitals-klinik-atlas) · [German Food Recalls & Warnings Monitor (lebensmittelwarnung.de)](https://apify.com/dach-open-data/german-food-recalls) · [ECB Rates – Key Rates, €STR, Mortgage Rates, Bond Yields, FX](https://apify.com/dach-open-data/ecb-interest-exchange-rates)

# Actor input Schema

## `query` (type: `string`):

Topic or keyword, e.g. "hydrogen", "artificial intelligence", "SME digitalisation", "Klimaschutz". Empty = all calls.

## `statuses` (type: `array`):

open = submission possible now, forthcoming = announced. Expired calls are never returned.

## `callTypes` (type: `array`):

grant = calls for proposals/topics, cascade_funding = third-party calls by EU projects (often for SMEs/start-ups, smaller amounts, simpler applications), tender = EU external action procurement.

## `programmes` (type: `array`):

Partial match on programme name, e.g. Horizon Europe, Digital Europe, LIFE, Defence, Creative Europe, Single Market, Connecting Europe. Empty = all.

## `deadlineAfter` (type: `string`):

Only calls whose submission deadline is on or after this date (format YYYY-MM-DD).

## `deadlineBefore` (type: `string`):

Only calls whose submission deadline is on or before this date (format YYYY-MM-DD).

## `minBudgetEur` (type: `integer`):

Only calls with a known budget of at least this amount.

## `maxResults` (type: `integer`):

Hard cap on calls returned and charged in this run.

## Actor input object example

```json
{
  "query": "hydrogen",
  "statuses": [
    "open",
    "forthcoming"
  ],
  "callTypes": [
    "grant",
    "cascade_funding"
  ],
  "programmes": [],
  "deadlineAfter": "",
  "deadlineBefore": "",
  "minBudgetEur": 0,
  "maxResults": 50
}
```

# Actor output Schema

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

All records returned by this run (default dataset, table view "overview").

## `summary` (type: `string`):

JSON with number of results, dropped implausible records and stop reason.

# 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 = {
    "query": "hydrogen",
    "maxResults": 50
};

// Run the Actor and wait for it to finish
const run = await client.actor("dach-open-data/funding-calls-at-eu").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 = {
    "query": "hydrogen",
    "maxResults": 50,
}

# Run the Actor and wait for it to finish
run = client.actor("dach-open-data/funding-calls-at-eu").call(run_input=run_input)

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

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

```

## CLI example

```bash
echo '{
  "query": "hydrogen",
  "maxResults": 50
}' |
apify call dach-open-data/funding-calls-at-eu --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,dach-open-data/funding-calls-at-eu"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/AHYP0SXJSUF6XwLYL/builds/Kp0bahD7bDzvwfdSi/openapi.json
