Стабилан, верзионисан приступ црногорским пословним, тендер и државним подацима уз јавни OpenAPI уговор.
Јавни GET endpoint-и су под /v1. Промјене које ломе клијенте добијају нову главну верзију; OpenAPI је машински уговор.
Каталог описује извор, каденцу, кључеве, методологију и ограничења. Одговори чувају изворне URL-ове и датуме.
Разумно јавно читање је доступно без кључа. Већи обим, webhook-ови, SLA, снимци и комерцијална редистрибуција уговарају се посебно.
Агенти који подржавају MCP (Model Context Protocol) могу директно да претражују податке о компанијама, тендерима и јавним плаћањима у Црној Гори. Бесплатно је и само за читање, без налога и кључа.
https://api.bizstats.me/mcpАпликације са прилагођеним конекторима могу директно да користе овај URL.
claude mcp add --transport http bizstats https://api.bizstats.me/mcp{
"mcpServers": {
"bizstats": {
"url": "https://api.bizstats.me/mcp"
}
}
}search_companiesget_companyrank_companiessearch_tendersget_tendersearch_public_paymentsget_recent_changesfind_personget_personget_dataset_statusНајвише 60 захтева у минуту по клијенту. Сваки резултат садржи линк ка изворној страници и лиценци за податке, како би агенти могли да их цитирају. Дугачке листе су скраћене; за масовно коришћење и комерцијалну редистрибуцију потребан је посебан договор. Прочитајте лиценцу за податке
Сваки документовани позив верзије 1.1.0, са параметрима, обликом одговора и примером који ради. Описи поља су на енглеском, као у OpenAPI документу.
/v1Улазна тачка API-јаБез параметара
application/json · ApiIndexResponse
| Поље | Тип | Опис |
|---|---|---|
| name | string | |
| version | string | |
| documentation | string | |
| openapi | string | |
| catalog | string | |
| mcp | string |
/v1/datasets/catalogСписак јавних скупова податакаSource, cadence, coverage, methodology, limitations and endpoints for every dataset.
Без параметара
application/json · DatasetCatalogResponse
| Поље | Тип | Опис |
|---|---|---|
| schemaVersion | string | |
| generatedAt | string | ISO 8601 date (YYYY-MM-DD) or timestamp |
| license | string | |
| methodology | string | |
| datasets | array<DatasetDefinition> |
/v1/datasets/catalog/{id}Опис једног скупа података| Назив | Место | Тип | Подразумевано | Опис |
|---|---|---|---|---|
| id*обавезно | путања | "companies" | "company-registry" | "company-ownership" | "persons" | "procurement-notices" | "procurement-awards" | "public-payments" | "blocked-accounts" | "tax-debtors" | "economic-indicators" | "municipality-statistics" | "development-projects" | "court-hearings" | "court-decisions" | "property-ownership" | — |
application/json · DatasetResponse
| Поље | Тип | Опис |
|---|---|---|
| schemaVersion | string | |
| dataset | DatasetDefinition |
/v1/datasets/statusСвежина извора и стање увозаFor each source: when BizStats last fetched it, the newest date its records cover, and a freshness tier.
Без параметара
application/json · DatasetStatusResponse
| Поље | Тип | Опис |
|---|---|---|
| sourceAvailable | boolean | |
| generatedAt | string | ISO 8601 date (YYYY-MM-DD) or timestamp |
| datasets | array<object> | |
| readModels | array<object> |
/v1/companiesСписак, филтери и рангирање компанија за годину| Назив | Место | Тип | Подразумевано | Опис |
|---|---|---|---|---|
| year | упит | string^[0-9]{4}$ | — | Filing year; defaults to the latest year with filings (unknown years fall back to it) |
| sort | упит | "name" | "totalIncome" | "profit" | "employeeCount" | "averagePay" | "incomePerEmployee" | "margin" | "revenueChange" | "totalIncome" | margin ranks companies with at least 100,000 EUR revenue first; revenueChange (vs year − 1) ranks bases of at least 1M EUR revenue and 5 employees first. Rows without a value sort last. |
| dir | упит | "asc" | "desc" | "desc" | |
| q | упит | string | — | Substring of name, PIB, activity or municipality |
| sector | упит | string | — | Exact sector name |
| municipality | упит | string | — | |
| category | упит | string | — | Activity title |
| activityCode | упит | string | — | KD 2010 code |
| minRevenue | упит | number≥ 0 | — | |
| maxRevenue | упит | number≥ 0 | — | |
| minEmployees | упит | number≥ 0 | — | |
| maxEmployees | упит | number≥ 0 | — | |
| plausibleProfit | упит | "1" | — | 1 = exclude filings with an implausible profit |
| page | упит | integer≥ 1 | 1 | 1-based page; past the last page serves the last |
| pageSize | упит | integer≥ 1, ≤ 200 | 50 | Rows per page (max 200; larger values are capped) |
application/json · CompanyListResponse
| Поље | Тип | Опис |
|---|---|---|
| year | string | |
| page | integer | |
| pageSize | integer | |
| total | integer | |
| previousYear | object | null | The comparison year of each row's `previous` filing; null when year − 1 has no filings. |
| companies | array<CompanyListRow> |
/v1/companies/{pib}Историја извештаја компаније и повезани јавни записиReturns a JSON array with one row per filing year, oldest first. The last (latest-year) row also carries identity, ownership, risk, procurement, payment, court and property records.
| Назив | Место | Тип | Подразумевано | Опис |
|---|---|---|---|---|
| pib*обавезно | путања | string^[0-9]{8}$ | — | 8-digit tax identification number (PIB) |
| includeEnrichment | упит | "0" | "1" | "1" | 0 = filing rows only, without the linked public records |
application/json · CompanyHistoryResponse · низ
| Поље | Тип | Опис |
|---|---|---|
| id | integer | |
| name | string | |
| pib | string | |
| reportId | string | null | |
| legalStatus | string | null | |
| municipality | string | null | |
| activityCode | string | null | KD 2010 activity code |
| activityName | string | null | |
| sector | string | |
| parseStatus | string | null | |
| totalIncome | number | null | Total income, EUR |
| profit | number | null | Profit or loss for the year, EUR |
| employeeCount | number | null | |
| grossPayCosts | number | null | Gross wage costs for the year, EUR (IRMS AOP 012, or AOP 210 'troškovi zarada' when 012 is missing). |
| netPayCostsзастарело | number | null | Deprecated alias of grossPayCosts. Despite the name the value is GROSS pay costs; it stays in v1 for compatibility. |
| averagePay | number | null | Average monthly gross pay, EUR; null when not computable or the filing is flagged suspicious. |
| incomePerEmployee | number | null | |
| yearId | integer | |
| yearValue | integer | |
| year | string | |
| updatedAt | string | null | |
| officialFilingUrl | string | null | |
| logoUrl | string | null | |
| logoSourceUrl | string | null | |
| logoDomain | string | null | |
| logoConfidence | number | null | |
| identity | object | null | CRPS registry identity (latest row only) |
| companyWebsite | object | null | The company's own website and the emails, phones and social profiles it publishes (latest row only) |
| ownership | object | CRPS owners and owned companies (latest row only) |
| risk | object | null | Blocked accounts, tax-debtor lists, filing gaps and registry status (latest row only) |
| procurements | object | |
| payments | object | |
| developmentProjects | object | |
| courtActivity | object | |
| accounts | object | |
| properties | object | |
| filingPersons | object | |
| registryNotices | object | |
| verdict | object |
/v1/companies/{pib}/export.csvИсторија извештаја компаније као CSV| Назив | Место | Тип | Подразумевано | Опис |
|---|---|---|---|---|
| pib*обавезно | путања | string^[0-9]{8}$ | — | 8-digit tax identification number (PIB) |
text/csv
/v1/export.csvПрвих 100 компанија које одговарају филтерима као CSVSame filters as /v1/companies, no paging. A free preview: the first 100 rows in the requested order (X-Export-Row-Count, X-Export-Row-Limit, and X-Export-Truncated: true when more companies match). Full lists with website, email and phone columns are part of BizStats Business.
| Назив | Место | Тип | Подразумевано | Опис |
|---|---|---|---|---|
| year | упит | string^[0-9]{4}$ | — | Filing year; defaults to the latest year with filings (unknown years fall back to it) |
| sort | упит | "name" | "totalIncome" | "profit" | "employeeCount" | "averagePay" | "incomePerEmployee" | "margin" | "revenueChange" | "totalIncome" | margin ranks companies with at least 100,000 EUR revenue first; revenueChange (vs year − 1) ranks bases of at least 1M EUR revenue and 5 employees first. Rows without a value sort last. |
| dir | упит | "asc" | "desc" | "desc" | |
| q | упит | string | — | Substring of name, PIB, activity or municipality |
| sector | упит | string | — | Exact sector name |
| municipality | упит | string | — | |
| category | упит | string | — | Activity title |
| activityCode | упит | string | — | KD 2010 code |
| minRevenue | упит | number≥ 0 | — | |
| maxRevenue | упит | number≥ 0 | — | |
| minEmployees | упит | number≥ 0 | — | |
| maxEmployees | упит | number≥ 0 | — | |
| plausibleProfit | упит | "1" | — | 1 = exclude filings with an implausible profit |
text/csv
/v1/searchПретрага компанија по називу, ПИБ-у, делатности или власнику| Назив | Место | Тип | Подразумевано | Опис |
|---|---|---|---|---|
| q*обавезно | упит | string | — | |
| mode | упит | "typeahead" | "full" | "typeahead" | |
| limit | упит | integer≥ 1, ≤ 50 | — | Default 8 (typeahead) or 40 (full); max 50 |
application/json · SearchResponse
| Поље | Тип | Опис |
|---|---|---|
| query | string | |
| results | array<object> | |
| companyTotal | integer | |
| sectors | array<object> | |
| municipalities | array<object> | |
| tenders | array<object> |
/v1/regionsЗбирни подаци компанија по општинама| Назив | Место | Тип | Подразумевано | Опис |
|---|---|---|---|---|
| year | упит | string^[0-9]{4}$ | — | Filing year; defaults to the latest year with filings (unknown years fall back to it) |
application/json · RegionsResponse
| Поље | Тип | Опис |
|---|---|---|
| year | string | |
| coverage | object | null | |
| national | object | |
| municipalities | array<object> | |
| unassigned | object | null |
/v1/sectorsЗбирни подаци компанија по секторима| Назив | Место | Тип | Подразумевано | Опис |
|---|---|---|---|---|
| year | упит | string^[0-9]{4}$ | — | Filing year; defaults to the latest year with filings (unknown years fall back to it) |
application/json · SectorsResponse
| Поље | Тип | Опис |
|---|---|---|
| year | string | |
| coverage | object | null | |
| national | object | |
| sectors | array<object> |
/v1/moversНајвеће промене у односу на претходну годину| Назив | Место | Тип | Подразумевано | Опис |
|---|---|---|---|---|
| metric | упит | "revenue" | "profit" | "employees" | "pay" | "revenue" | |
| limit | упит | integer≥ 1, ≤ 50 | 12 | |
| year | упит | string^[0-9]{4}$ | — | Filing year; defaults to the latest year with filings (unknown years fall back to it) |
| sector | упит | string | — | |
| municipality | упит | string | — |
application/json · MoversResponse
| Поље | Тип | Опис |
|---|---|---|
| metric | "revenue" | "profit" | "employees" | "pay" | |
| year | string | |
| prevYear | string | null | |
| tracked | integer | |
| stats | object | |
| gainers | array<object> | |
| losers | array<object> | |
| turnarounds | object | Loss to profit between the two years, by the profit swing, whatever the metric; with the counts both ways. |
/v1/persons/{slug}Јавне улоге у регистру груписане под једним именом| Назив | Место | Тип | Подразумевано | Опис |
|---|---|---|---|---|
| slug*обавезно | путања | string^[a-z0-9-]+$ | — |
application/json · PersonResponse
| Поље | Тип | Опис |
|---|---|---|
| sourceAvailable | boolean | |
| person | object | |
| roles | array<object> | |
| aggregates | object | |
| sourceFetchedAt | string | null | |
| indexable | boolean |
/v1/changesОткривене блокаде, пореске листе и добијени тендериSame-day contracts of one supplier on one tender are one row (contractCount). Rows are ordered by detection day, then event date and amount, unless sort says otherwise.
| Назив | Место | Тип | Подразумевано | Опис |
|---|---|---|---|---|
| type | упит | "blockade_started" | "blockade_cleared" | "tax_debtor_listed" | "tender_won" | "registry_notice" | — | |
| pib | упит | string^[0-9]{8}$ | — | 8-digit tax identification number (PIB) |
| buyer | упит | string | — | Substring of the tender buyer (tender wins only) |
| municipality | упит | string | — | Company municipality (latest filing) |
| sector | упит | string | — | |
| minAmount | упит | number≥ 0 | — | |
| sort | упит | "recent" | "eventDate" | "amount" | "recent" | |
| page | упит | integer≥ 1 | 1 | 1-based page; past the last page serves the last |
| pageSize | упит | integer≥ 1, ≤ 100 | 50 | Rows per page (max 100; larger values are capped) |
application/json · ChangesResponse
| Поље | Тип | Опис |
|---|---|---|
| sourceAvailable | boolean | |
| type | string | null | |
| pib | string | null | |
| sort | "recent" | "eventDate" | "amount" | |
| filters | object | |
| page | integer | Page served (clamped to the last page) |
| pageSize | integer | |
| total | integer | |
| totalPages | integer | |
| requestedPage | integer | |
| typeCounts | array<object> | |
| weeklyCounts | array<object> | |
| filterOptions | object | |
| events | array<object> |
/v1/changes/export.csvФилтриране промене као CSV| Назив | Место | Тип | Подразумевано | Опис |
|---|---|---|---|---|
| type | упит | "blockade_started" | "blockade_cleared" | "tax_debtor_listed" | "tender_won" | "registry_notice" | — | |
| pib | упит | string^[0-9]{8}$ | — | 8-digit tax identification number (PIB) |
| buyer | упит | string | — | Substring of the tender buyer (tender wins only) |
| municipality | упит | string | — | Company municipality (latest filing) |
| sector | упит | string | — | |
| minAmount | упит | number≥ 0 | — | |
| sort | упит | "recent" | "eventDate" | "amount" | "recent" |
text/csv
/v1/blocked-accountsКомпаније са блокираним рачуном (CBCG пресек)| Назив | Место | Тип | Подразумевано | Опис |
|---|---|---|---|---|
| snapshotDate | упит | string^[0-9]{4}-[0-9]{2}-[0-9]{2}$ | — | CBCG snapshot (YYYY-MM-DD); default the latest |
| pib | упит | string^[0-9]{8}$ | — | 8-digit tax identification number (PIB) |
| q | упит | string | — | Name substring |
| minAmount | упит | number≥ 0 | — | |
| sort | упит | "amount" | "days" | "name" | "amount" | |
| dir | упит | "asc" | "desc" | — | Default desc (asc for name) |
| page | упит | integer≥ 1 | 1 | 1-based page; past the last page serves the last |
| pageSize | упит | integer≥ 1, ≤ 200 | 50 | Rows per page (max 200; larger values are capped) |
application/json · BlockedAccountsResponse
| Поље | Тип | Опис |
|---|---|---|
| sourceAvailable | boolean | |
| snapshotDate | string | null | |
| snapshots | array<string> | |
| page | integer | Page served (clamped to the last page) |
| pageSize | integer | |
| total | integer | |
| totalPages | integer | |
| excluded | object | |
| results | array<object> |
/v1/tax-debtorsУноси са објављених листа пореских дужника| Назив | Место | Тип | Подразумевано | Опис |
|---|---|---|---|---|
| list | упит | "top_200" | "bankruptcy_100" | "salary_taxes_50" | "tax_white_list" | — | Published list; legacy 2024 names (tax_debt_black_list_200, …) are accepted |
| snapshotDate | упит | string^[0-9]{4}-[0-9]{2}-[0-9]{2}$ | — | Edition date; default each list's latest edition |
| pib | упит | string^[0-9]{8}$ | — | 8-digit tax identification number (PIB) |
| q | упит | string | — | |
| minAmount | упит | number≥ 0 | — | |
| sort | упит | "amount" | "name" | "amount" | |
| dir | упит | "asc" | "desc" | — | |
| page | упит | integer≥ 1 | 1 | 1-based page; past the last page serves the last |
| pageSize | упит | integer≥ 1, ≤ 200 | 50 | Rows per page (max 200; larger values are capped) |
application/json · TaxDebtorsResponse
| Поље | Тип | Опис |
|---|---|---|
| sourceAvailable | boolean | |
| list | string | null | |
| snapshotDate | string | null | |
| editions | array<object> | |
| page | integer | Page served (clamped to the last page) |
| pageSize | integer | |
| total | integer | |
| totalPages | integer | |
| results | array<object> |
/v1/procurements/searchПретрага CEJN позива за јавне набавке| Назив | Место | Тип | Подразумевано | Опис |
|---|---|---|---|---|
| q | упит | string | — | Keywords; a comma or semicolon separates alternatives (any of them) |
| buyer | упит | string | — | Buyer name substring |
| municipality | упит | string | — | Buyer municipality |
| status | упит | "active" | "expired" | "completed" | "canceled" | "suspended" | — | |
| procedureType | упит | string | — | |
| noticeType | упит | string | — | |
| cpv | упит | string^\d{2}(\d{6})?$ | — | CPV division (2 digits) or a code in it |
| dateFrom | упит | string^[0-9]{4}-[0-9]{2}-[0-9]{2}$ | — | Publication date from |
| dateTo | упит | string^[0-9]{4}-[0-9]{2}-[0-9]{2}$ | — | Publication date to |
| minValue | упит | number≥ 0 | — | Minimum estimated value, EUR |
| maxValue | упит | number≥ 0 | — | |
| sort | упит | "publicationDate" | "deadline" | "estimatedValue" | "publicationDate" | |
| dir | упит | "asc" | "desc" | "desc" | |
| page | упит | integer≥ 1 | 1 | 1-based page; past the last page serves the last |
| pageSize | упит | integer≥ 1, ≤ 100 | 25 | Rows per page (max 100; larger values are capped) |
application/json · ProcurementSearchResponse
| Поље | Тип | Опис |
|---|---|---|
| sourceAvailable | boolean | |
| query | string | |
| page | integer | Page served (clamped to the last page) |
| pageSize | integer | |
| total | integer | |
| totalPages | integer | |
| valuedTotal | integer | |
| facets | object | |
| results | array<ProcurementRow> |
/v1/procurements/{id}Јавна набавка са лотовима, догађајима и уговорима| Назив | Место | Тип | Подразумевано | Опис |
|---|---|---|---|---|
| id*обавезно | путања | string | — | procurement_id (me_cejn:tender:121357) or numeric CEJN id |
application/json · ProcurementDetailResponse
| Поље | Тип | Опис |
|---|---|---|
| sourceAvailable | boolean | |
| procurement | object | |
| parties | array<object> | |
| lots | array<object> | |
| statusEvents | array<object> | |
| awards | array<object> | |
| matchedPayments | object |
/v1/procurements/buyers/{buyer}Профил наручиоца| Назив | Место | Тип | Подразумевано | Опис |
|---|---|---|---|---|
| buyer*обавезно | путања | string | — | Buyer name (URL-encoded) |
application/json · BuyerProfileResponse
| Поље | Тип | Опис |
|---|---|---|
| sourceAvailable | boolean | |
| buyerName | string | |
| summary | object | null | |
| topSuppliers | array<object> | |
| byYear | array<object> | |
| tenders | array<ProcurementRow> |
/v1/procurements/suppliers/{pib}Додељени уговори добављача| Назив | Место | Тип | Подразумевано | Опис |
|---|---|---|---|---|
| pib*обавезно | путања | string^[0-9]{8}$ | — | 8-digit tax identification number (PIB) |
application/json · SupplierProfileResponse
| Поље | Тип | Опис |
|---|---|---|
| sourceAvailable | boolean | |
| pib | string | |
| supplierName | string | null | |
| company | object | null | |
| summary | object | null | |
| awardsByYear | array<object> | |
| topBuyers | array<object> | |
| recentAwards | array<object> |
/v1/public-payments/searchПретрага плаћања Државног трезора| Назив | Место | Тип | Подразумевано | Опис |
|---|---|---|---|---|
| q | упит | string | — | Payee, account, ledger account, expense item, funding source, document number or source title |
| sort | упит | "date" | "amount" | "date" | |
| dir | упит | "asc" | "desc" | "desc" | |
| page | упит | integer≥ 1 | 1 | 1-based page; past the last page serves the last |
| pageSize | упит | integer≥ 1, ≤ 100 | 25 | Rows per page (max 100; larger values are capped) |
| cursor | упит | string | — | nextCursor of the previous page (keyset paging; newest-first order only) |
| includeTotal | упит | "0" | "1" | "1" |
application/json · PublicPaymentSearchResponse
| Поље | Тип | Опис |
|---|---|---|
| sourceAvailable | boolean | |
| query | string | |
| page | integer | |
| pageSize | integer | |
| total | integer | |
| totalPages | integer | |
| totalAmount | number | null | Sum of every matching payment, EUR (with the total) |
| nextCursor | string | null | |
| results | array<object> |
/v1/public-payments/export.csvСва плаћања Државног трезора из претраге као CSVSame q and sort as /v1/public-payments/search, no paging. Up to 50,000 rows (X-Export-Row-Count, X-Export-Row-Limit headers); larger exports return 422.
| Назив | Место | Тип | Подразумевано | Опис |
|---|---|---|---|---|
| q | упит | string | — | |
| sort | упит | "date" | "amount" | "date" | |
| dir | упит | "asc" | "desc" | "desc" |
text/csv
/v1/development-projects/searchПретрага објављених развојних пројеката| Назив | Место | Тип | Подразумевано | Опис |
|---|---|---|---|---|
| q | упит | string | — | |
| municipality | упит | string | — | |
| status | упит | string | — | |
| investor | упит | string | — | |
| investorPib | упит | string^[0-9]{8}$ | — | 8-digit tax identification number (PIB) |
| year | упит | string | — | 2000–2100, or 'undated' |
| includeIndividuals | упит | "0" | "1" | "0" | |
| page | упит | integer≥ 1 | 1 | 1-based page; past the last page serves the last |
| pageSize | упит | integer≥ 1, ≤ 100 | 25 | Rows per page (max 100; larger values are capped) |
application/json · DevelopmentProjectSearchResponse
| Поље | Тип | Опис |
|---|---|---|
| sourceAvailable | boolean | |
| page | integer | Page served (clamped to the last page) |
| pageSize | integer | |
| total | integer | |
| totalPages | integer | |
| undatedExcluded | integer | |
| results | array<object> |
/v1/government/summaryЗбирни преглед извора отворених података државеБез параметара
application/json · GovernmentSummaryResponse
/v1/regional-context/summaryДоступна општинска статистика по категоријамаБез параметара
application/json · RegionalContextSummaryResponse
| Поље | Тип | Опис |
|---|---|---|
| sourceAvailable | boolean | |
| total | integer | |
| categories | array<object> |
/v1/government/indicatorsИзабрани економски индикаториБез параметара
application/json · IndicatorListResponse
| Поље | Тип | Опис |
|---|---|---|
| sourceAvailable | boolean | |
| indicators | array<object> |
/v1/government/indicators/{slug}Годишња серија економског индикатора| Назив | Место | Тип | Подразумевано | Опис |
|---|---|---|---|---|
| slug*обавезно | путања | "gdp-current-prices" | "gdp-per-capita" | "gdp-real-growth" | "unemployment-rate" | "employees" | "average-gross-wage" | — |
application/json · IndicatorSeriesResponse
| Поље | Тип | Опис |
|---|---|---|
| sourceAvailable | boolean | |
| slug | string | |
| topic | string | |
| metricName | string | |
| unit | "eur" | "eur_thousand" | "percent" | "index" | "persons" | |
| aggregation | "annual_average" | "annual_latest" | "annual_sum" | "annual_sum_yoy" | |
| sourceFrequency | "annual" | "quarterly" | "monthly" | "mixed" | "unknown" | |
| series | array<object> | |
| partialLatest | object | null | |
| source | object |
Поља сваке шеме на коју упућују одговори изнад.
ApiIndexResponse| Поље | Тип | Опис |
|---|---|---|
| name | string | |
| version | string | |
| documentation | string | |
| openapi | string | |
| catalog | string | |
| mcp | string |
BlockedAccountsResponse| Поље | Тип | Опис |
|---|---|---|
| sourceAvailable | boolean | |
| snapshotDate | string | null | |
| snapshots | array<string> | |
| page | integer | Page served (clamped to the last page) |
| pageSize | integer | |
| total | integer | |
| totalPages | integer | |
| excluded | object | |
| results | array<object> |
BuyerProfileResponse| Поље | Тип | Опис |
|---|---|---|
| sourceAvailable | boolean | |
| buyerName | string | |
| summary | object | null | |
| topSuppliers | array<object> | |
| byYear | array<object> | |
| tenders | array<ProcurementRow> |
ChangesResponse| Поље | Тип | Опис |
|---|---|---|
| sourceAvailable | boolean | |
| type | string | null | |
| pib | string | null | |
| sort | "recent" | "eventDate" | "amount" | |
| filters | object | |
| page | integer | Page served (clamped to the last page) |
| pageSize | integer | |
| total | integer | |
| totalPages | integer | |
| requestedPage | integer | |
| typeCounts | array<object> | |
| weeklyCounts | array<object> | |
| filterOptions | object | |
| events | array<object> |
CompanyHistoryResponse| Поље | Тип | Опис |
|---|---|---|
| id | integer | |
| name | string | |
| pib | string | |
| reportId | string | null | |
| legalStatus | string | null | |
| municipality | string | null | |
| activityCode | string | null | KD 2010 activity code |
| activityName | string | null | |
| sector | string | |
| parseStatus | string | null | |
| totalIncome | number | null | Total income, EUR |
| profit | number | null | Profit or loss for the year, EUR |
| employeeCount | number | null | |
| grossPayCosts | number | null | Gross wage costs for the year, EUR (IRMS AOP 012, or AOP 210 'troškovi zarada' when 012 is missing). |
| netPayCostsзастарело | number | null | Deprecated alias of grossPayCosts. Despite the name the value is GROSS pay costs; it stays in v1 for compatibility. |
| averagePay | number | null | Average monthly gross pay, EUR; null when not computable or the filing is flagged suspicious. |
| incomePerEmployee | number | null | |
| yearId | integer | |
| yearValue | integer | |
| year | string | |
| updatedAt | string | null | |
| officialFilingUrl | string | null | |
| logoUrl | string | null | |
| logoSourceUrl | string | null | |
| logoDomain | string | null | |
| logoConfidence | number | null | |
| identity | object | null | CRPS registry identity (latest row only) |
| companyWebsite | object | null | The company's own website and the emails, phones and social profiles it publishes (latest row only) |
| ownership | object | CRPS owners and owned companies (latest row only) |
| risk | object | null | Blocked accounts, tax-debtor lists, filing gaps and registry status (latest row only) |
| procurements | object | |
| payments | object | |
| developmentProjects | object | |
| courtActivity | object | |
| accounts | object | |
| properties | object | |
| filingPersons | object | |
| registryNotices | object | |
| verdict | object |
CompanyListResponse| Поље | Тип | Опис |
|---|---|---|
| year | string | |
| page | integer | |
| pageSize | integer | |
| total | integer | |
| previousYear | object | null | The comparison year of each row's `previous` filing; null when year − 1 has no filings. |
| companies | array<CompanyListRow> |
CompanyListRow| Поље | Тип | Опис |
|---|---|---|
| id | integer | |
| name | string | |
| pib | string | |
| reportId | string | null | |
| legalStatus | string | null | |
| municipality | string | null | |
| activityCode | string | null | KD 2010 activity code |
| activityName | string | null | |
| sector | string | |
| parseStatus | string | null | |
| totalIncome | number | null | Total income, EUR |
| profit | number | null | Profit or loss for the year, EUR |
| employeeCount | number | null | |
| grossPayCosts | number | null | Gross wage costs for the year, EUR (IRMS AOP 012, or AOP 210 'troškovi zarada' when 012 is missing). |
| netPayCostsзастарело | number | null | Deprecated alias of grossPayCosts. Despite the name the value is GROSS pay costs; it stays in v1 for compatibility. |
| averagePay | number | null | Average monthly gross pay, EUR; null when not computable or the filing is flagged suspicious. |
| incomePerEmployee | number | null | |
| yearId | integer | |
| yearValue | integer | |
| year | string | |
| updatedAt | string | null | |
| officialFilingUrl | string | null | |
| logoUrl | string | null | |
| logoSourceUrl | string | null | |
| logoDomain | string | null | |
| logoConfidence | number | null | |
| previous | PreviousYearFiling | null | The filing for year − 1, or null when there is none (first filing, gap or placeholder) or no comparison year. |
CompanyRow| Поље | Тип | Опис |
|---|---|---|
| id | integer | |
| name | string | |
| pib | string | |
| reportId | string | null | |
| legalStatus | string | null | |
| municipality | string | null | |
| activityCode | string | null | KD 2010 activity code |
| activityName | string | null | |
| sector | string | |
| parseStatus | string | null | |
| totalIncome | number | null | Total income, EUR |
| profit | number | null | Profit or loss for the year, EUR |
| employeeCount | number | null | |
| grossPayCosts | number | null | Gross wage costs for the year, EUR (IRMS AOP 012, or AOP 210 'troškovi zarada' when 012 is missing). |
| netPayCostsзастарело | number | null | Deprecated alias of grossPayCosts. Despite the name the value is GROSS pay costs; it stays in v1 for compatibility. |
| averagePay | number | null | Average monthly gross pay, EUR; null when not computable or the filing is flagged suspicious. |
| incomePerEmployee | number | null | |
| yearId | integer | |
| yearValue | integer | |
| year | string | |
| updatedAt | string | null | |
| officialFilingUrl | string | null | |
| logoUrl | string | null | |
| logoSourceUrl | string | null | |
| logoDomain | string | null | |
| logoConfidence | number | null |
CompanyYear| Поље | Тип | Опис |
|---|---|---|
| id | integer | |
| name | string | |
| pib | string | |
| reportId | string | null | |
| legalStatus | string | null | |
| municipality | string | null | |
| activityCode | string | null | KD 2010 activity code |
| activityName | string | null | |
| sector | string | |
| parseStatus | string | null | |
| totalIncome | number | null | Total income, EUR |
| profit | number | null | Profit or loss for the year, EUR |
| employeeCount | number | null | |
| grossPayCosts | number | null | Gross wage costs for the year, EUR (IRMS AOP 012, or AOP 210 'troškovi zarada' when 012 is missing). |
| netPayCostsзастарело | number | null | Deprecated alias of grossPayCosts. Despite the name the value is GROSS pay costs; it stays in v1 for compatibility. |
| averagePay | number | null | Average monthly gross pay, EUR; null when not computable or the filing is flagged suspicious. |
| incomePerEmployee | number | null | |
| yearId | integer | |
| yearValue | integer | |
| year | string | |
| updatedAt | string | null | |
| officialFilingUrl | string | null | |
| logoUrl | string | null | |
| logoSourceUrl | string | null | |
| logoDomain | string | null | |
| logoConfidence | number | null | |
| identity | object | null | CRPS registry identity (latest row only) |
| companyWebsite | object | null | The company's own website and the emails, phones and social profiles it publishes (latest row only) |
| ownership | object | CRPS owners and owned companies (latest row only) |
| risk | object | null | Blocked accounts, tax-debtor lists, filing gaps and registry status (latest row only) |
| procurements | object | |
| payments | object | |
| developmentProjects | object | |
| courtActivity | object | |
| accounts | object | |
| properties | object | |
| filingPersons | object | |
| registryNotices | object | |
| verdict | object |
DatasetCatalogResponse| Поље | Тип | Опис |
|---|---|---|
| schemaVersion | string | |
| generatedAt | string | ISO 8601 date (YYYY-MM-DD) or timestamp |
| license | string | |
| methodology | string | |
| datasets | array<DatasetDefinition> |
DatasetDefinition| Поље | Тип | Опис |
|---|---|---|
| id | string | |
| title | string | |
| description | string | |
| sourceName | string | |
| sourceUrl | string | |
| cadence | string | |
| geographicCoverage | "Montenegro" | |
| temporalCoverage | string | |
| entityKeys | array<string> | |
| apiPath | string | Main endpoint (may be a URI template such as {pib}) |
| webPath | string | |
| formats | array<"json" | "csv" | "rss"> | |
| endpoints | array<object> | |
| methodology | string | |
| limitations | string | |
| commercialAccess | boolean |
DatasetResponse| Поље | Тип | Опис |
|---|---|---|
| schemaVersion | string | |
| dataset | DatasetDefinition |
DatasetStatusResponse| Поље | Тип | Опис |
|---|---|---|
| sourceAvailable | boolean | |
| generatedAt | string | ISO 8601 date (YYYY-MM-DD) or timestamp |
| datasets | array<object> | |
| readModels | array<object> |
DevelopmentProjectSearchResponse| Поље | Тип | Опис |
|---|---|---|
| sourceAvailable | boolean | |
| page | integer | Page served (clamped to the last page) |
| pageSize | integer | |
| total | integer | |
| totalPages | integer | |
| undatedExcluded | integer | |
| results | array<object> |
ErrorResponse| Поље | Тип | Опис |
|---|---|---|
| error | string | |
| message | string |
GovernmentSummaryResponseОтворен објекат; поља зависе од извора.
IndicatorListResponse| Поље | Тип | Опис |
|---|---|---|
| sourceAvailable | boolean | |
| indicators | array<object> |
IndicatorSeriesResponse| Поље | Тип | Опис |
|---|---|---|
| sourceAvailable | boolean | |
| slug | string | |
| topic | string | |
| metricName | string | |
| unit | "eur" | "eur_thousand" | "percent" | "index" | "persons" | |
| aggregation | "annual_average" | "annual_latest" | "annual_sum" | "annual_sum_yoy" | |
| sourceFrequency | "annual" | "quarterly" | "monthly" | "mixed" | "unknown" | |
| series | array<object> | |
| partialLatest | object | null | |
| source | object |
MoversResponse| Поље | Тип | Опис |
|---|---|---|
| metric | "revenue" | "profit" | "employees" | "pay" | |
| year | string | |
| prevYear | string | null | |
| tracked | integer | |
| stats | object | |
| gainers | array<object> | |
| losers | array<object> | |
| turnarounds | object | Loss to profit between the two years, by the profit swing, whatever the metric; with the counts both ways. |
PersonResponse| Поље | Тип | Опис |
|---|---|---|
| sourceAvailable | boolean | |
| person | object | |
| roles | array<object> | |
| aggregates | object | |
| sourceFetchedAt | string | null | |
| indexable | boolean |
PreviousYearFiling| Поље | Тип | Опис |
|---|---|---|
| year | string | |
| totalIncome | number | null | |
| profit | number | null | |
| employeeCount | number | null | |
| netPayCosts | number | null | |
| averagePay | number | null | |
| incomePerEmployee | number | null | |
| parseStatus | string | null |
ProcurementDetailResponse| Поље | Тип | Опис |
|---|---|---|
| sourceAvailable | boolean | |
| procurement | object | |
| parties | array<object> | |
| lots | array<object> | |
| statusEvents | array<object> | |
| awards | array<object> | |
| matchedPayments | object |
ProcurementRow| Поље | Тип | Опис |
|---|---|---|
| procurementId | string | |
| cejnId | integer | null | |
| title | string | |
| buyerName | string | null | |
| procedureType | string | null | |
| noticeType | string | null | |
| status | string | null | |
| lifecycleState | string | null | |
| publicationDate | string | null | |
| deadlineDate | string | null | |
| estimatedValue | number | null | |
| awardValue | number | null | |
| awardDate | string | null | |
| cpvCodes | array<string> | CEJN CPV codes (8 digits) |
| supplierNames | array<string> | |
| contractCount | integer | |
| currency | string | null | |
| sourceUrl | string | null |
ProcurementSearchResponse| Поље | Тип | Опис |
|---|---|---|
| sourceAvailable | boolean | |
| query | string | |
| page | integer | Page served (clamped to the last page) |
| pageSize | integer | |
| total | integer | |
| totalPages | integer | |
| valuedTotal | integer | |
| facets | object | |
| results | array<ProcurementRow> |
PublicPaymentSearchResponse| Поље | Тип | Опис |
|---|---|---|
| sourceAvailable | boolean | |
| query | string | |
| page | integer | |
| pageSize | integer | |
| total | integer | |
| totalPages | integer | |
| totalAmount | number | null | Sum of every matching payment, EUR (with the total) |
| nextCursor | string | null | |
| results | array<object> |
RegionalContextSummaryResponse| Поље | Тип | Опис |
|---|---|---|
| sourceAvailable | boolean | |
| total | integer | |
| categories | array<object> |
RegionsResponse| Поље | Тип | Опис |
|---|---|---|
| year | string | |
| coverage | object | null | |
| national | object | |
| municipalities | array<object> | |
| unassigned | object | null |
SearchResponse| Поље | Тип | Опис |
|---|---|---|
| query | string | |
| results | array<object> | |
| companyTotal | integer | |
| sectors | array<object> | |
| municipalities | array<object> | |
| tenders | array<object> |
SectorsResponse| Поље | Тип | Опис |
|---|---|---|
| year | string | |
| coverage | object | null | |
| national | object | |
| sectors | array<object> |
SupplierProfileResponse| Поље | Тип | Опис |
|---|---|---|
| sourceAvailable | boolean | |
| pib | string | |
| supplierName | string | null | |
| company | object | null | |
| summary | object | null | |
| awardsByYear | array<object> | |
| topBuyers | array<object> | |
| recentAwards | array<object> |
TaxDebtorsResponse| Поље | Тип | Опис |
|---|---|---|
| sourceAvailable | boolean | |
| list | string | null | |
| snapshotDate | string | null | |
| editions | array<object> | |
| page | integer | Page served (clamped to the last page) |
| pageSize | integer | |
| total | integer | |
| totalPages | integer | |
| results | array<object> |