oneapi
Sign in
Business v1 / Fonduri europene

Kohesio projects

Projects from Kohesio, the European Commission's cohesion policy platform — a different source from the national lists, with different detail and EU-wide coverage.

GET
https://oneapi.ro/api/business/v1/fonduri/kohesio

Query parameters

NameTypeDescriptionAccepted values
qoptional string | null Searches the project title and description, 2–120 characters. max 120 car.
tara_codoptional string | null Ţara e cea publicată de sursă acolo unde o publică; vezi tara_sursa din răspuns, care spune
dacă e un fapt de la sursă sau implicitul. Filtrul pe o ţară pe care sursa n-o declară ar da
rezultate care par certe şi nu sunt — de aceea răspunsul poartă provenienţa lângă valoare.
max 2 car.

How it behaves

  • Cohesion projects from the European Kohesio platform, complementary to the national grants. The detail of a project is at /fonduri/kohesio/{id}.
  • The order is by start date, descending; projects without a date come LAST.
  • ⚠️ It overlaps with the national grants in /fonduri/cauta and /firme/{cui}/fonduri: the same 2014–2023 programmes, different sources, no common key. Measured on beneficiary names: 21.2% appear identically in both. Do not add the two together without deduplicating.
  • ⚠️ Kohesio publishes no tax ID, so a project is not linked to a company by key but through the beneficiary NAME. The link exists since 13 Oct 2026 and covers 9,377 of the 12,124 beneficiaries (77.3%); the projects of a given company are requested at /firme/{cui}/kohesio, where meta.legatura states how certain the match is. The rest stay unlinked, to be verified by hand — do not infer the link from name similarity.

What it is for

  • Completing the picture with cohesion projects reported at European level.
  • Finding projects by theme or region, in EU vocabulary.
  • Comparing national data with what the Commission publishes.

Response structure

FieldTypeDescription
data[].kohesio_id string The project identifier in Kohesio (Q…).
data[].titlu string | null The project title.
data[].beneficiari[].nume string The beneficiary name, as published by Kohesio.
data[].beneficiari[].kohesio_id string | null The beneficiary identifier in Kohesio (Q…), when there is one.
data[].buget_eur number | null The total project budget, in euro.
data[].buget_ue_eur number | null The share funded from European funds, in euro.
data[].fond string | null The European fund it is financed from.
data[].program string | null The funding programme.
data[].regiune string | null The development region.
data[].data_inceput string | null The start date.
data[].data_sfarsit string | null The end date.
data[].lat number | null Latitude (WGS84).
data[].lng number | null Longitude (WGS84).
meta.paginare.pagina integer Pagina curentă.
meta.paginare.per_pagina integer Rezultate pe pagină.
meta.paginare.total integer Total rezultate.
meta.paginare.pagini integer Număr de pagini.

Response examples

GEThttps://oneapi.ro/api/business/v1/fonduri/kohesio?tara_cod=RO
{
    "data": [
        {
            "kohesio_id": "Q7420355",
            "titlu": "JobNet - Click pentru Tineret",
            "beneficiari": [
                {
                    "nume": "AGENTIA JUDETEANA PENTRU OCUPAREA FORTEI DE MUNCA IASI",
                    "kohesio_id": "Q7388983"
                }
            ],
            "buget_eur": 1991007.49,
            "buget_ue_eur": 1818387.14,
            "fond": "ESF+ - Fondul social european Plus",
            "program": "2021RO05SFPR001 - Educatie si Ocupare",
            "regiune": null,
            "data_inceput": "2025-09-01",
            "data_sfarsit": "2028-08-31",
            "lat": 47.1615598,
            "lng": 27.5837814
        }
    ],
    "meta": {
        "paginare": {
            "pagina": 1,
            "per_pagina": 20,
            "total": 21939,
            "pagini": 1097
        }
    }
}

Error codes

CodeSlugWhen it occurs
401neautentificatToken missing, invalid, expired or revoked.
403feature_indisponibilThe current plan does not include the feature the route depends on.
422validareThe route takes no parameters apart from lang: any other parameter returns 422 instead of being ignored.
429cota_depasitaThe plan's monthly quota has been exceeded (see Retry-After).

All errors share the same shape. eroare.cod is stable and is the value you should branch on in code — not the text in mesaj, which may change.

{
    "eroare": {
        "cod": "validare",
        "mesaj": "The route takes no parameters apart from lang: any other parameter returns 422 instead of being ignored.",
        "detalii": {
            "q": [
                "The value sent does not satisfy the parameter rule."
            ]
        }
    }
}