Skip to content
Subsido

Subsidies and grants API

Every Belgian subsidy and grant in one API

Flemish, Brussels, Walloon, federal and EU measures for citizens and businesses, in one data model and three languages. Search, match and follow changes from your own application.

From €20 a month, cancel any month.

curl "https://api.subsido.be/v1/subsidies?region=brussels&scope=regional&status=open,continuous&limit=2&lang=en" \
  -H "Authorization: Bearer sb_live_..."
Responselive data · api.subsido.be
{
  "data": [
    {
      "id": "vl:183e85aa-7d15-44e1-8042-80249f39a64c",
      "title": "Fundamenteel klinisch mandaat",
      "status": "continuous",
      "instrument_type": "other",
      "issuer": "Fonds Wetenschappelijk Onderzoek - Vlaanderen",
      "regions": [
        "flanders",
        "brussels"
      ],
      "closes_at": null,
      "rate_max": null,
      "amount_max": null,
      "links": {
        "web": "https://subsido.be/en/grants/fundamenteel-klinisch-mandaat"
      }
    },
    {
      "id": "vl:48370b4d-399e-4b84-b891-ad7cc5d2ff27",
      "title": "Steun voor wetenschappelijke internationale samenwerking en contacten",
      "status": "continuous",
      "instrument_type": "grant",
      "issuer": "Fonds Wetenschappelijk Onderzoek - Vlaanderen",
      "regions": [
        "flanders",
        "brussels"
      ],
      "closes_at": null,
      "rate_max": null,
      "amount_max": null,
      "links": {
        "web": "https://subsido.be/en/grants/steun-voor-wetenschappelijke-internationale-samenwerking-en-contacten"
      }
    }
  ],
  "pagination": {
    "has_more": true,
    "next_cursor": "eyJ..."
  },
  "meta": {
    "total": 13
  }
}

What the API does

From government pages to an answer in your app

One stable data model for every measure. Five things you can build with it today.

Search and filters

Filter by region, audience, topic, type of support, status and deadline. Full-text search in three languages.

region=walloniaaudience=citizenstopic=housingstatus=opendeadline_before=2026-12-31

Explained matching

Send a profile and get every measure it may qualify for, with each condition met, not met or unknown, and the question that would settle it.

POST /v1/match
{ "company": {
  "postcode": "9000",
  "employees": 12,
  "nace": ["62.010"] } }
likely eligible
  • Establishment in Flanders
  • SME under the EU definition
  • Not in difficulty

Changes and webhooks

Every new measure, every changed deadline or amount and every closure as an event, with the field-level difference. Signed webhooks with retries.

  1. subsidy.deadline_changed

    Deadline 15/10 → 31/10

  2. subsidy.funding_changed

    Maximum €5,000 → €7,500

  3. subsidy.created

    New call published

POST https://app.example.be/webhooks · Subsido-Signature: t=…,v1=…

Versions and history

Every change is a version. Read a measure as it stood on a given date, for instance to audit an old application.

- funding.amount_max: 5000
+ funding.amount_max: 7500
GET /v1/subsidies/{id}?as_of=2026-01-01

MCP server for AI assistants

The same search, detail pages and matching as tools for Claude, ChatGPT and other agents, with the same key.

MCP documentation

How it works

From source to application

We read the official sources, put everything in one model and keep it current. You build on top.

Official sources

  • EU Funding & Tenders
  • vlaanderen.be
  • FPS Economy
  • BELSPO
  • Walloon and Brussels measures

Subsido

  • One model for every measure
  • Current status and deadlines
  • Versions and changes
  • Conditions as testable rules

Your application

  • REST API
  • Webhooks
  • MCP server
  • Watchlists

Use cases

What you can build

Subsidies touch everyone: people who renovate, hire, invest or export. A few examples of what runs on this API.

All use cases
For citizens

Renovation and energy apps

Energy suppliers, installers, renovation platforms

Filter on the citizens audience, the customer's region and the topic, and show the current premiums with their conditions and a link to apply.

GET /v1/subsidies?audience=citizens&region=flanders&topic=housing&lang=en
For businesses

Accounting and ERP software

Accounting packages, invoicing software, SME platforms

Send the customer profile to matching and show the measures they likely qualify for in their dashboard, with what is still missing.

POST /v1/match { company: { postcode, employees, nace } }
For businesses

Payroll providers and HR software

Payroll, HR platforms, staffing agencies

On every new hire, look up the hiring and employment support in the employer's region.

GET /v1/subsidies?topic=hiring_employment&region=brussels&lang=en
For businesses

Banks and lenders

Banks, fintechs, crowdfunding

Show the guarantees and loans open to the profile during the application, with their amounts.

GET /v1/subsidies?instrument_type=guarantee,loan&region=brussels
For businesses

Advisers and accounting firms

Grant consultants, accountants, business support desks

Put your clients on a watchlist. Every new or changed measure triggers a new match, and you get a webhook for every new result.

POST /v1/watchlists/{id}/companies
For everyone

AI assistants and chatbots

Customer service, public desks, in-house assistants

Connect the MCP server: the assistant searches, reads and matches on current data, with the source in every answer.

tools/call search_subsidies { q: "heat pump" }

One data model

Every measure in the same shape

Whether the source is an EU portal, a Flemish product page or a Walloon scheme, you always get the same fields.

status
open, continuous, upcoming, closed or suspended
application_window
opening and every deadline in Brussels time, or rolling
funding
rates by company size, maximum, annual cap, de minimis
rules_readable
the conditions as readable rules, ready to show or to test
provenance
the official page and when it was last checked
{
  "id": "wallonia:wal-cheques-croissance",
  "title": "Business vouchers Growth: diagnosis and coaching",
  "status": "continuous",
  "instrument_type": "voucher",
  "issuer": { "name": "SPW Économie Emploi Recherche",
              "government_level": "region" },
  "geography": { "scope": "regional", "regions": ["wallonia"] },
  "application_window": { "rolling": true, "closes_at": null },
  "funding": { "rate_max": 50, "amount_max": 70000,
               "de_minimis": true },
  "eligibility": { "company_sizes": ["micro", "small", "medium"],
                   "topics": ["advice_consultancy", "growth_scaleup"] },
  "rules_readable": { "conditions": [
    { "label": "Establishment in Wallonia",
      "field": "company.regions", "op": "contains_any" } ] },
  "provenance": { "source_id": "curated_wallonia",
                  "last_checked_at": "2026-09-27T20:46:00+02:00" }
}

Multilingual

Dutch, French and English in every response

Summaries in Dutch, French and English, and titles in every language the source publishes them in. Use lang= to choose which comes first.

titles.nl"Kmo-portefeuille: steun voor opleiding en advies"
titles.fr"Portefeuille PME : aide à la formation et au conseil"
titles.en"SME wallet: support for training and advice"

Coverage

All of Belgium, and Europe on top

From renovation premiums and hiring support to innovation calls: by region, federal and European, for citizens and for businesses.

For developers

Built to integrate with

OpenAPI 3.1 and Swagger

A complete contract, every error documented, ready to try in the API reference.

Cursors, not offsets

Stable pagination, even when the data changes in between.

Signed webhooks

HMAC-SHA256 with a timestamp, retries for up to twelve hours, test deliveries from the dashboard.

Test and live keys

Build with a test key, switch over without changing code.

Limits in every header

RateLimit headers and clear error codes, so your client knows when to wait.

One key for everything

The same key works for the REST API, the change feed and the MCP server.

Live in three steps

  1. 1

    Choose a plan

    Sign in with Google and pick the plan that fits your volume.

  2. 2

    Make your first call

    GET /v1/subsidies with your key as a Bearer token.

  3. 3

    Listen for changes

    A webhook on your endpoint, or the change feed with a cursor.

Frequently asked questions

Is this an official government service?
No. Subsido is an independent service. The competent authority decides on every application, and every measure links to its official page.
Is it only about grants for businesses?
No. The API covers measures for businesses and for citizens: from innovation and hiring support to renovation and energy premiums. The audience filter picks the target group.
Which sources are included?
The EU Funding & Tenders portal, vlaanderen.be, FPS Economy, BELSPO and the Walloon, Brussels and federal measures. The sources page lists them all.
How reliable is a match?
A match is an indication. Each condition is listed as met, not met or unknown, with the question that would settle it. The competent authority decides.
Can I cancel monthly or switch plans?
Yes. Every plan can be cancelled monthly, and you can switch plans at any time from your dashboard.
Which languages is the data in?
Dutch, French and English. The lang parameter picks which comes first.

Start building with subsidy data today

From €20 a month. Cancel any month.