oneapi
Sign in
Business v1 / Firme

Kohesio projects

The cohesion projects where the company is a beneficiary, as published by the European Commission: the budget in euro, the fund, the programme and the period. The link to the company is made through the beneficiary name, and meta.legatura states how certain it is.

GET
https://oneapi.ro/api/business/v1/firme/{cui}/kohesio

Path parameters

NameTypeDescriptionExample
cuirequired string The company tax identification number, without the RO prefix (e.g. 6719278).

Query parameters

This route accepts no query parameters.

How it behaves

  • The projects where the company is a beneficiary, according to the European Commission Kohesio platform. Amounts are in EURO and at PROJECT level, not contract level — a different unit than at /firme/{cui}/fonduri.
  • The order is by start date, descending; projects without a date come LAST.
  • ⚠️ The link to the company does NOT come from the source: Kohesio publishes no tax ID, so beneficiaries are linked to a tax ID by NAME. meta.legatura states, for each beneficiary, how certain the match is — exact (identical name, unique in the company register), probabil (close, confirmed by location) or manual (verified by a human). Read it before treating the list as a fact.
  • ⚠️ The source holds DUPLICATE entities: the same institution can appear twice, with different spellings of the name (CNAIR is both Q7387008 and Q3117516). That is why meta.legatura is a LIST, and the projects are gathered from every duplicate linked to the same tax ID.
  • ⚠️ It overlaps with /firme/{cui}/fonduri: the same 2014–2023 programmes, different sources. Do not add the two together without deduplication — the same money would be counted twice.
  • Unlinked companies answer with 200 and zero projects, not 404: the company exists, it just has no (or could not be linked to any) Kohesio project. Out of 12,124 beneficiaries, 9,377 are linked to a company (77.3%).

What it is for

  • Checking what the company received from cohesion funds, as the Commission reports it.
  • State-aid cumulation rules, on the European source — not only the national one.
  • Comparing the European figures with the national ones at /firme/{cui}/fonduri, for the same company.

Response structure

FieldTypeDescription
data[].kohesio_id string The project identifier in Kohesio (Q…); the detail is at /fonduri/kohesio/{id}.
data[].titlu string | null The project title.
data[].beneficiari[].nume string The beneficiary name, as Kohesio publishes it.
data[].beneficiari[].kohesio_id string | null The beneficiary identifier in Kohesio (Q…).
data[].buget_eur number | null The total project budget, in euro.
data[].buget_ue_eur number | null The share funded from EU funds, in euro.
data[].fond string | null The fund (ERDF, ESF, Cohesion Fund…).
data[].program string | null The operational programme.
data[].regiune string | null The region, in Kohesio vocabulary (rarely filled in).
data[].data_inceput string | null The start date.
data[].data_sfarsit string | null The end date.
data[].lat number | null The latitude (WGS84).
data[].lng number | null The 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.
meta.legatura[].kohesio_id The Kohesio beneficiary through which the projects were reached.
meta.legatura[].nume The beneficiary name at the source — the form the match was made on.
meta.legatura[].potrivire How certain the link to the company is: exact, probabil or manual.
meta.legatura[].nr_proiecte How many projects the beneficiary has, according to Kohesio.
meta.legatura[].buget_eur The beneficiary total budget, in euro.
meta.legatura[].buget_ue_eur The EU share of the beneficiary budget, in euro.

Response examples

GEThttps://oneapi.ro/api/business/v1/firme/%7Bcui%7D/kohesio
{
    "data": "string"
}

Error codes

CodeSlugWhen it occurs
401neautentificatToken missing, invalid, expired or revoked.
403feature_indisponibilThe current plan does not include the feature the route depends on.
404negasitThe company with tax ID [{cui}] was not found.
422validareThe route takes no parameters other than pagination and lang: any other parameter returns 422, it is not 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 other than pagination and lang: any other parameter returns 422, it is not ignored.",
        "detalii": {
            "cui": [
                "The value sent does not satisfy the parameter rule."
            ]
        }
    }
}