GET
/api/v1/red-flags
red_flags.catalog
|
The ten indicators, with their slug, severity band and the path of their endpoints. Use it to find the other indicator endpoints.
|
—
|
GET
/api/v1/red-flags/overview
red_flags.overview
|
Case count and money at stake for each of the ten indicators. The indicators count different units (a lot, a pair, an authority-year, a market), so their cases and money must not be added together; the totals in `meta` do so and are kept only for compatibility. For how many authorities and suppliers are flagged, use red_flags.coverage.
|
—
|
GET
/api/v1/red-flags/coverage
red_flags.coverage
|
How many authorities and suppliers the indicators flag, out of every one that spent or was paid public money. A flag is a finding. #06 counts at a single-bidder rate of 50% or more over at least 5 lots, #09 at an index above 60% in some year, and a supplier on #05 at a single-offer share of 50% or more over at least 5 lots; #05 is not counted per authority, because #06 is its authority form. Eight indicators apply to authorities, seven to suppliers.
|
—
|
GET
/api/v1/red-flags/convergence
red_flags.convergence
|
Authorities and suppliers by the number of indicators that flag them. One row per count from 1 up, counted as in red_flags.coverage. Suppliers have seven indicators, so their counts stop at 7.
|
—
|
GET
/api/v1/red-flags/cooccurrence
red_flags.cooccurrence
|
For every pair of authority indicators, how many authorities both flag, and what share of the first indicator's authorities that is. The shares are not symmetric: `share_pct` is taken over the authorities `flag_a` flags. Where `flag_a` = `flag_b`, the row is the indicator's own count, at 100%.
|
—
|
GET
/api/v1/red-flags/most-flagged/authorities
red_flags.most_flagged_authorities
|
The contracting authorities flagged by the most indicators, the biggest spenders first among equals. `flags` lists the indicators that flag the authority and `cases` how many cases each holds. When an indicator holds the case only in a given year, `flag_year` names it.
|
-
limit
int
-
How many authorities to return.
Default:
20
|
GET
/api/v1/red-flags/most-flagged/suppliers
red_flags.most_flagged_suppliers
|
The suppliers flagged by the most indicators, the biggest earners first among equals. As red_flags.most_flagged_authorities, over the seven indicators that name a supplier.
|
-
limit
int
-
How many suppliers to return.
Default:
20
|
GET
/api/v1/red-flags/overview/years
red_flags.overview_years
|
Cases and money per indicator per year, and for the indicators that measure one, the eligible population and the rate against it. Each indicator files its cases under its own year: the year the money was spent for #01, #05 and #07-#10, the finalisation year for #02 and the year of the first win for #03. For #01-#03, `eligible` is: groups of direct purchases with at least two purchases (#01), direct purchases at 50-100% of the ceiling of their date (#02), companies receiving their first public money that year (#03). #04 and #06 have no year, so they have no rows. `partial` marks a year the data does not cover in full.
|
-
flag
int
-
Only the rows of this indicator (1-10); 0 returns every indicator.
Default:
0
|
GET
/api/v1/red-flags/overview/cpv
red_flags.overview_cpv
|
Each indicator's flagged money by CPV division, as a share of that indicator's total, for the divisions that weigh most across the indicators. Seven indicators carry a CPV code: #01, #02, #05, #07, #08, #09 and #10. Divisions are ranked by their mean share across them, so each indicator weighs the same whatever its money. #08 counts the flagged December windows and #09 the discretionary spend of the ranked authorities. The pooled row carries a null division and `"remainder": true`, so every indicator's shares sum to 100.
|
-
top
int
-
How many divisions to name before the rest are pooled.
Default:
12
|
GET
/api/v1/red-flags/by-county
red_flags.by_county
|
Per county, the authorities that spent public money and how many of them the indicators flag. The county is the authority's seat. Flags are counted as in red_flags.coverage.
|
—
|
GET
/api/v1/red-flags/by-authority/{cui}
red_flags.by_authority
|
How many cases each indicator holds for one contracting authority. #06 and #09 score the authority rather than list cases: each counts 1 when the authority crosses the dashboard's line (a single-bidder rate of 50% or more over at least 5 lots; an index above 60% in some year) and returns the figure as `score`, a percentage. #03 names only suppliers, so its `cases` is null. When an indicator holds the case only in a given year, `flag_year` names it, and `cases` counts the cases of that year.
|
-
cui
int
required
-
The contracting authority's CUI.
|
GET
/api/v1/red-flags/by-supplier/{cui}
red_flags.by_supplier
|
How many cases each indicator holds for one supplier. Seven indicators name the supplier. On #05 and #07 every member of an association counts; #10 counts the markets where the supplier is the largest. #06, #08 and #09 score only the authority and return null `cases`. `flag_year` works as in red_flags.by_authority.
|
-
cui
int
required
-
CUI of the supplier.
|
GET
/api/v1/red-flags/sbr/national-rate
red_flags.sbr.national_rate
|
The national single-bidder rate (single-offer lots over every lot with money spent and a known offer count): the benchmark an authority's rate is read against. |
—
|
GET
/api/v1/red-flags/fractionare/cpv-spend
red_flags.fractionare.cpv_spend
|
Sliced spend by CPV group: the biggest groups named one by one, everything below them pooled into a single remainder. The pooled row has a null `cpv_group` and `"remainder": true`; `meta` says how many groups it holds.
|
-
top
int
-
How many groups to name before the rest are pooled.
Default:
20
|
GET
/api/v1/red-flags/praguri/contract-types
red_flags.praguri.contract_types
|
Purchases just below the ceiling and their value, by contract type. Three rows, one per contract type, each with its case count and money.
|
—
|
GET
/api/v1/red-flags/praguri/cpv-spend
red_flags.praguri.cpv_spend
|
Money on purchases just below the ceiling, by CPV group: the largest groups named, the rest pooled. A group is the first three digits of the CPV code, and `cases` counts purchases. Purchases without a code form a row with a null `cpv_group`, so the rows sum to the indicator total. The pooled row has a null `cpv_group` and `"remainder": true`.
|
-
top
int
-
How many groups to name before the rest are pooled.
Default:
10
|
GET
/api/v1/red-flags/clientelism-hhi/stream-spend
red_flags.clientelism_hhi.stream_spend
|
Money of the flagged authority/supplier pairs, by stream. Three rows, one per stream, each with the money and how many pairs have money in it. The three sum to the indicator total, also given in `meta`.
|
—
|
GET
/api/v1/red-flags/concentrare/cpv-spend
red_flags.concentrare.cpv_spend
|
Money of the flagged markets, by CPV group: the largest groups named, the rest pooled. Each market counts once, over the whole period. Each named row also gives how many suppliers sold in that group nationally. The pooled row has a null `cpv_group` and `"remainder": true`.
|
-
top
int
-
How many groups to name before the rest are pooled.
Default:
12
|
GET
/api/v1/red-flags/firme-noi/stream-spend
red_flags.firme_noi.stream_spend
|
Money won by new companies in their first 90 days, by stream. Three rows, one per stream, each with the money, the contracts and how many suppliers won in it. The money sums to the indicator total, also given in `meta`; the supplier counts do not, because a supplier can win in several streams.
|
—
|
GET
/api/v1/red-flags/ofertant-unic/cpv-spend
red_flags.ofertant_unic.cpv_spend
|
Money spent on single-offer lots, by CPV group: the largest groups named, the rest pooled. A group is the first three digits of the lot's CPV code. `cases` counts lots, so a lot with money in several years is one case. The pooled row has a null `cpv_group` and `"remainder": true`; `meta` says how many groups it holds.
|
-
top
int
-
How many groups to name before the rest are pooled.
Default:
20
|
GET
/api/v1/red-flags/pret-la-virgula/offers-spread
red_flags.pret_la_virgula.offers_spread
|
Exact price matches by the number of offers the lot received: every eligible lot, how many were paid exactly at the estimate, and the money on each side. One row per offer count. `offers_received` 0 means the count is missing from the data: a lot with money spent on it received at least one offer.
|
—
|
GET
/api/v1/red-flags/pret-la-virgula/cpv-spend
red_flags.pret_la_virgula.cpv_spend
|
Money spent on lots paid exactly at their estimate, by CPV group: the largest groups named, the rest pooled. A group is the first three digits of the lot's CPV code, and `cases` counts lots. Lots without a code form a row with a null `cpv_group`, so the rows sum to the indicator total. The pooled row has a null `cpv_group` and `"remainder": true`.
|
-
top
int
-
How many groups to name before the rest are pooled.
Default:
10
|
GET
/api/v1/red-flags/sbr/authority-spend
red_flags.sbr.authority_spend
|
Money spent on single-offer lots, by ranked authority: the largest named, the rest pooled. Only the ranked authorities, those with at least 5 lots. The pooled row has a null `cui` and `"remainder": true`.
|
-
top
int
-
How many authorities to name before the rest are pooled.
Default:
10
|
GET
/api/v1/red-flags/sindromul-decembrie/cpv-spend
red_flags.sindromul_decembrie.cpv_spend
|
What the flagged authorities bought on 10-31 December, by CPV group: the largest groups named, the rest pooled. A group is the first three digits of the CPV code, and `cases` counts purchases. The money is everything spent on 10-31 December, not the excess, which belongs to the authority-year and cannot be split by code. The pooled row has a null `cpv_group` and `"remainder": true`.
|
-
top
int
-
How many groups to name before the rest are pooled.
Default:
12
|
GET
/api/v1/red-flags/dsi/cpv-spend
red_flags.dsi.cpv_spend
|
What the ranked authorities bought without a competitive procedure, by CPV group: the largest groups named, the rest pooled. A group is the first three digits of the CPV code, and `cases` counts purchases. The money is direct and offline purchases together, the discretionary side of the index; tenders are not included. The pooled row has a null `cpv_group` and `"remainder": true`.
|
-
top
int
-
How many groups to name before the rest are pooled.
Default:
12
|
GET
/api/v1/red-flags/concentrare/years
red_flags.concentrare.years
|
How many markets are flagged over the whole period and in each year, for the same filters as the listing. One row per year with a flagged market, plus `fiscal_year` 0 for the whole period. The whole-period row is a separate test over all years together, with higher floors, not the sum of the years: a market can be flagged in a year and not over the whole period. Never add the rows together.
|
-
ca
string
-
Contracting authority, as a CUI or as words from its name.
-
supplier
string
-
A supplier of the market, as a CUI or as words from its name. Every supplier the market names matches, not only the largest.
-
cpv_group
string
-
CPV group, or its leading digits: 45 covers 450 through 459.
-
min_hhi
number
-
Smallest concentration score to return, on the 0-10000 HHI scale.
Default:
0
|
GET
/api/v1/red-flags/fractionare
red_flags.fractionare.list
|
Groups of direct purchases (one authority, supplier, CPV group and year) whose total exceeds the legal ceiling although each purchase stays under it. `meta.stats` holds the totals for the same filters.
|
-
ca
string
-
Contracting authority, as a CUI or as words from its name.
-
supplier
string
-
Supplier, as a CUI or as words from its name.
-
cpv_group
string
-
CPV group, or its leading digits: 45 covers 450 through 459.
-
year
int
-
Year to filter on; 0 returns every year.
Default:
0
-
contract_type
enum
-
Contract type: 1 supply, 2 services, 3 works. 0 returns every type.
Values:
1, 2, 3
Default:
0
-
page
int
-
Page number, 1-based.
Default:
1
-
per_page
int
-
Rows per page, at most 100.
Default:
25
-
sort
enum
-
Column to sort by. Omit for the default ordering.
Values:
ca_name, supplier_name, cpv_group, fiscal_year, contract_type_id, slice_count, cumulative_spend, avg_contract_value, max_contract_value
-
dir
enum
-
Sort direction; defaults to the natural direction of the column.
Values:
asc, desc
|
GET
/api/v1/red-flags/fractionare/distribution
red_flags.fractionare.distribution
|
Flagged groups per year. |
—
|
GET
/api/v1/red-flags/praguri
red_flags.praguri.list
|
Direct purchases priced just below the ceiling above which a competitive procedure becomes mandatory. `meta.stats` holds the totals for the same filters.
|
-
ca
string
-
Contracting authority, as a CUI or as words from its name.
-
supplier
string
-
Supplier, as a CUI or as words from its name.
-
cpv
string
-
CPV code, or the leading digits of one: 45 covers the whole branch. The check digit is optional.
-
year
int
-
Year of finalisation to restrict to; 0 returns every year.
Default:
0
-
contract_type
enum
-
Contract type: 1 supply, 2 services, 3 works. 0 returns every type.
Values:
1, 2, 3
Default:
0
-
min_pct
enum
-
Only purchases reaching at least this percentage of the ceiling.
Values:
95, 98, 99
Default:
95
-
page
int
-
Page number, 1-based.
Default:
1
-
per_page
int
-
Rows per page, at most 100.
Default:
25
-
sort
enum
-
Column to sort by. Omit for the default ordering.
Values:
ca_name, supplier_name, contract_type_id, cpv_code, finalization_date, closing_value, pct_of_legal_threshold
-
dir
enum
-
Sort direction; defaults to the natural direction of the column.
Values:
asc, desc
|
GET
/api/v1/red-flags/praguri/distribution
red_flags.praguri.distribution
|
Flagged purchases by how close they come to the ceiling, in bands from 95% to 100%. |
—
|
GET
/api/v1/red-flags/firme-noi
red_flags.firme_noi.list
|
Suppliers that won public money within 90 days of registration, with what they won in each of the three streams. `meta.stats` holds the totals for the same filters.
|
-
supplier
string
-
Supplier, as a CUI or as words from its name.
-
stream
enum
-
Only suppliers that won in this stream within the 90 days: 1 tenders, 2 direct purchases, 3 offline purchases. 0 returns every supplier.
Values:
1, 2, 3
Default:
0
-
year
int
-
Year the supplier was registered; 0 returns every year.
Default:
0
-
max_days
enum
-
Most days between registration and the first win in any stream.
Values:
30, 60, 90
Default:
90
-
page
int
-
Page number, 1-based.
Default:
1
-
per_page
int
-
Rows per page, at most 100.
Default:
25
-
sort
enum
-
Column to sort by. Omit for the default ordering.
Values:
supplier_name, registration_date, t_contracts, t_value, t_days, d_contracts, d_value, d_days, a_contracts, a_value, a_days, total_value
-
dir
enum
-
Sort direction; defaults to the natural direction of the column.
Values:
asc, desc
|
GET
/api/v1/red-flags/firme-noi/distribution
red_flags.firme_noi.distribution
|
Flagged suppliers and their money by company age at the first win: 0-30, 31-60 and 61-90 days. |
—
|
GET
/api/v1/red-flags/clientelism-hhi
red_flags.clientelism_hhi.list
|
Authority/supplier pairs where the supplier draws most of its revenue from that one authority. `meta.stats` holds the totals for the same filters.
|
-
ca
string
-
Contracting authority, as a CUI or as words from its name.
-
supplier
string
-
Supplier, as a CUI or as words from its name.
-
min_sdr
int
-
Minimum share of the supplier's revenue that comes from the authority, in percent.
Default:
80
-
min_captured
int
-
Minimum share of the authority's spending that goes to the supplier, in percent; 0 returns every pair.
Default:
0
-
stream
enum
-
Only pairs with money in this stream: 1 tenders, 2 direct purchases, 3 offline purchases. 0 returns every pair.
Values:
1, 2, 3
Default:
0
-
page
int
-
Page number, 1-based.
Default:
1
-
per_page
int
-
Rows per page, at most 100.
Default:
25
-
sort
enum
-
Column to sort by. Omit for the default ordering.
Values:
ca_name, supplier_name, pair_spend, pair_spend_tender, pair_spend_direct, pair_spend_offline, supplier_captivity_pct, authority_budget_captured_pct, contracts_together
-
dir
enum
-
Sort direction; defaults to the natural direction of the column.
Values:
asc, desc
|
GET
/api/v1/red-flags/clientelism-hhi/distribution
red_flags.clientelism_hhi.distribution
|
Pairs and their money by the supplier's dependence on the authority, in bands from 50% to 100%. |
—
|
GET
/api/v1/red-flags/ofertant-unic
red_flags.ofertant_unic.list
|
Tender lots under a competitive procedure that received a single offer, with the money spent on them. `meta.stats` holds the totals for the same filters.
|
-
ca
string
-
Contracting authority, as a CUI or as words from its name.
-
supplier
string
-
A winner of the lot, as a CUI or as words from its name. Every member of an association matches.
-
procedure
int
-
Procedure type id, from /reference/procedure-types; 0 returns every type.
Default:
0
-
cpv
string
-
CPV code of the lot, or the leading digits of one: 45 covers the whole branch. The check digit is optional.
-
year
int
-
Year the money was spent in, by contract date: each lot with that year's contracts and money. 0 returns each lot once, with its totals across all years.
Default:
0
-
page
int
-
Page number, 1-based.
Default:
1
-
per_page
int
-
Rows per page, at most 100.
Default:
25
-
sort
enum
-
Column to sort by. Omit for the default ordering.
Values:
ca_name, supplier_name, notice_number, cpv_code, procedure_name, fiscal_year, contracts_count, estimated_value, spent_value
-
dir
enum
-
Sort direction; defaults to the natural direction of the column.
Values:
asc, desc
|
GET
/api/v1/red-flags/ofertant-unic/distribution
red_flags.ofertant_unic.distribution
|
Per year: single-offer lots, every lot with a known offer count, the rate and the money spent on single-offer lots. |
—
|
GET
/api/v1/red-flags/sbr
red_flags.sbr.list
|
Contracting authorities ranked by the share of their tender lots (with money spent) that received a single offer. `meta.stats` holds the totals for the same filters.
|
-
ca
string
-
Contracting authority, as a CUI or as words from its name.
-
page
int
-
Page number, 1-based.
Default:
1
-
per_page
int
-
Rows per page, at most 100.
Default:
25
-
sort
enum
-
Column to sort by. Omit for the default ordering.
Values:
ca_name, total_lots, single_bidder_lots, single_bidder_rate_pct, total_spent, single_bidder_spent, single_bidder_spent_pct
-
dir
enum
-
Sort direction; defaults to the natural direction of the column.
Values:
asc, desc
|
GET
/api/v1/red-flags/sbr/distribution
red_flags.sbr.distribution
|
Ranked authorities by single-bidder rate, in bands of ten points, with their money on single-offer lots. |
—
|
GET
/api/v1/red-flags/pret-la-virgula
red_flags.pret_la_virgula.list
|
Tender lots on which the money spent equals the authority's estimated value, to the leu. `meta.stats` holds the totals for the same filters.
|
-
ca
string
-
Contracting authority, as a CUI or as words from its name.
-
supplier
string
-
A winner of the lot, as a CUI or as words from its name. Every member of an association matches.
-
procedure
int
-
Procedure type id, from /reference/procedure-types; 0 returns every type.
Default:
0
-
cpv
string
-
CPV code of the lot, or the leading digits of one: 45 covers the whole branch. The check digit is optional.
-
year
int
-
Award year, read off the first contract on the lot; 0 returns every year.
Default:
0
-
min_offers
int
-
Fewest offers the lot must have received; 2 keeps only lots with real competition. 0 returns every lot.
Default:
0
-
page
int
-
Page number, 1-based.
Default:
1
-
per_page
int
-
Rows per page, at most 100.
Default:
25
-
sort
enum
-
Column to sort by. Omit for the default ordering.
Values:
ca_name, supplier_name, notice_number, cpv_code, procedure_name, offers_received, fiscal_year, contracts_count, estimated_value, spent_value
-
dir
enum
-
Sort direction; defaults to the natural direction of the column.
Values:
asc, desc
|
GET
/api/v1/red-flags/pret-la-virgula/distribution
red_flags.pret_la_virgula.distribution
|
Per year: lots paid exactly at the estimate, every eligible lot, the rate and the money on the matching lots. |
—
|
GET
/api/v1/red-flags/sindromul-decembrie
red_flags.sindromul_decembrie.list
|
Authorities that spent a far larger share of their year on 10-31 December than the country did, ranked by the excess money. `meta.stats` holds the totals for the same filters.
|
-
year
int
-
Year to filter on; 0 returns every year.
Default:
0
-
ca
string
-
Contracting authority, as a CUI or as words from its name.
-
min_lift
number
-
Only authorities whose December share is at least this many times the national one. Every case is at 3 or more.
Default:
0
-
page
int
-
Page number, 1-based.
Default:
1
-
per_page
int
-
Rows per page, at most 100.
Default:
25
-
sort
enum
-
Column to sort by. Omit for the default ordering.
Values:
ca_name, fiscal_year, total_year_spend, late_december_spend, december_dump_pct, dump_lift, window_purchases, excess_spend
-
dir
enum
-
Sort direction; defaults to the natural direction of the column.
Values:
asc, desc
|
GET
/api/v1/red-flags/sindromul-decembrie/distribution
red_flags.sindromul_decembrie.distribution
|
Per year: eligible authorities, how many were flagged, the national December share and the excess money of the flagged ones. |
—
|
GET
/api/v1/red-flags/dsi
red_flags.dsi.list
|
Contracting authorities ranked by the share of their spending that did not go through a competitive procedure. `meta.stats` holds the totals for the same filters.
|
-
ca
string
-
Contracting authority, as a CUI or as words from its name.
-
year
int
-
Year to restrict to; 0 (the default) gives each authority's figure over the whole period.
Default:
0
-
min_dsi
number
-
Smallest index to return, as a percentage.
Default:
0
-
page
int
-
Page number, 1-based.
Default:
1
-
per_page
int
-
Rows per page, at most 100.
Default:
25
-
sort
enum
-
Column to sort by. Omit for the default ordering.
Values:
ca_name, fiscal_year, direct_spend, award_spend, discretionary_spend, tender_spend, total_spend, dsi_pct
-
dir
enum
-
Sort direction; defaults to the natural direction of the column.
Values:
asc, desc
|
GET
/api/v1/red-flags/dsi/distribution
red_flags.dsi.distribution
|
Per year: eligible authorities, how many exceed 60%, the national index and the discretionary money. |
—
|
GET
/api/v1/red-flags/concentrare
red_flags.concentrare.list
|
Markets (one authority, one CPV group, one year) where the money went to a handful of suppliers although many sold in that group nationally. `meta.stats` holds the totals for the same filters.
|
-
ca
string
-
Contracting authority, as a CUI or as words from its name.
-
supplier
string
-
A supplier of the market, as a CUI or as words from its name. Every supplier the market names matches, not only the largest.
-
cpv_group
string
-
CPV group, or its leading digits: 45 covers 450 through 459.
-
year
int
-
Year to restrict to; 0 (the default) gives each market over the whole period.
Default:
0
-
min_hhi
number
-
Smallest concentration score to return, on the 0-10000 HHI scale.
Default:
0
-
page
int
-
Page number, 1-based.
Default:
1
-
per_page
int
-
Rows per page, at most 100.
Default:
25
-
sort
enum
-
Column to sort by. Omit for the default ordering.
Values:
ca_name, cpv_group, fiscal_year, total_spend, purchases, suppliers_used, suppliers_available, hhi, top_supplier_name, top_supplier_pct
-
dir
enum
-
Sort direction; defaults to the natural direction of the column.
Values:
asc, desc
|
GET
/api/v1/red-flags/concentrare/distribution
red_flags.concentrare.distribution
|
Per year: eligible markets, how many were flagged, the national concentration score and the flagged money. |
—
|