{"api":{"title":"Pentry Public API","version":"1.0.0-draft","base_path":"/api/v1","operations":34},"authentication":{"scheme":"Bearer","header":"Authorization: Bearer api_live_{credential_id}.{secret}","alternative_header":"X-API-Key","notes":"Ключ визначає компанію; company_id у запитах не приймається. CORS вимкнено."},"conventions":{"envelope":"Успішна відповідь — {\"data\": [...], \"meta\": {...}}.","errors":"RFC 9457 application/problem+json із полями code, detail, request_id.","rate_limit_headers":["RateLimit-Limit","RateLimit-Remaining","RateLimit-Reset"],"idempotency":"POST-методи цього API читають дані й не змінюють стан; повтор безпечний."},"access":{"filtered_by_company":true,"reason":"company_entitlements","note":"Перелічено лише точки, увімкнені для компанії цього домену."},"domains":[{"id":"system","title":"System","operations":[{"method":"GET","path":"/api/v1/health","operation_id":"getApiHealth","summary":"Перевірити доступність Public API","scopes":[],"entitlements":[],"rate_limit":null},{"method":"GET","path":"/api/v1/token","operation_id":"getApiToken","summary":"Перевірка ключа і перелік доступних даних","scopes":[],"entitlements":[],"rate_limit":"token_introspect"}],"scopes":[],"guide":null},{"id":"declarations","title":"Declarations","operations":[{"method":"GET","path":"/api/v1/persons","operation_id":"searchDeclarationsByPersonName","summary":"Знайти осіб за ПІБ","scopes":["declarations.search"],"entitlements":["public_api.v1","declarations.api","method.get.declarations.search"],"rate_limit":"declarations_search"},{"method":"GET","path":"/api/v1/persons/{person_id}/declarations","operation_id":"getPersonDeclarations","summary":"Перегляд декларації","scopes":["declarations.read"],"entitlements":["public_api.v1","declarations.api","method.get.declarations.read"],"rate_limit":"declarations_read"},{"method":"POST","path":"/api/v1/persons/search","operation_id":"searchDeclarationsByPersonNames","summary":"Знайти осіб за кількома ПІБ","scopes":["declarations.search"],"entitlements":["public_api.v1","declarations.api","method.post.declarations.search"],"rate_limit":"declarations_search"}],"scopes":["declarations.search","declarations.read"],"guide":"/api/guides/declarations"},{"id":"cost","title":"Cost","operations":[{"method":"GET","path":"/api/v1/cost/apartment","operation_id":"getApartmentCostRates","summary":"Показники опосередкованої вартості спорудження житла","scopes":["cost.read"],"entitlements":["public_api.v1","cost.api","method.get.cost.apartment"],"rate_limit":"cost_read"},{"method":"POST","path":"/api/v1/cost/apartment","operation_id":"calculateApartmentCostBatch","summary":"Пакетний розрахунок опосередкованої вартості","scopes":["cost.read"],"entitlements":["public_api.v1","cost.api","method.post.cost.apartment"],"rate_limit":"cost_read"},{"method":"GET","path":"/api/v1/cost/apartment/regions","operation_id":"listApartmentCostRegions","summary":"Регіони довідника вартості житла","scopes":["cost.read"],"entitlements":["public_api.v1","cost.api","method.get.cost.apartment"],"rate_limit":"cost_read"},{"method":"GET","path":"/api/v1/cost/apartment/periods","operation_id":"listApartmentCostPeriods","summary":"Періоди дії показників вартості житла","scopes":["cost.read"],"entitlements":["public_api.v1","cost.api","method.get.cost.apartment"],"rate_limit":"cost_read"}],"scopes":["cost.read"],"guide":"/api/guides/cost"},{"id":"deprecated","title":"Deprecated","operations":[{"method":"GET","path":"/api/v1/declarations/list","operation_id":"searchDeclarationsByPersonNameAlias","summary":"Застарілий синонім пошуку осіб за ПІБ","scopes":["declarations.search"],"entitlements":["public_api.v1","declarations.api","method.get.declarations.search"],"rate_limit":"declarations_search","deprecated":true},{"method":"GET","path":"/api/v1/declarations/person/{person_id}","operation_id":"getPersonDeclarationsAlias","summary":"Перегляд декларації (застарілий синонім)","scopes":["declarations.read"],"entitlements":["public_api.v1","declarations.api","method.get.declarations.read"],"rate_limit":"declarations_read","deprecated":true}],"scopes":["declarations.search","declarations.read"],"guide":null},{"id":"court","title":"Court","operations":[{"method":"GET","path":"/api/v1/court/cases","operation_id":"searchCourtCases","summary":"Знайти судові справи","scopes":["court.cases.read"],"entitlements":["public_api.v1","court.api","method.get.court.cases"],"rate_limit":"court_cases_read"},{"method":"POST","path":"/api/v1/court/cases","operation_id":"searchCourtCasesBatch","summary":"Знайти судові справи (пакет запитів)","scopes":["court.cases.read"],"entitlements":["public_api.v1","court.api","method.post.court.cases"],"rate_limit":"court_cases_read"},{"method":"GET","path":"/api/v1/court/judges","operation_id":"listCourtJudges","summary":"Довідник суддів","scopes":["court.reference.read"],"entitlements":["public_api.v1","court.api","method.get.court.reference"],"rate_limit":"court_reference_read"},{"method":"GET","path":"/api/v1/court/courts","operation_id":"listCourtCourts","summary":"Довідник судів","scopes":["court.reference.read"],"entitlements":["public_api.v1","court.api","method.get.court.reference"],"rate_limit":"court_reference_read"},{"method":"GET","path":"/api/v1/court/participants","operation_id":"listCourtParticipants","summary":"Автопідказка учасників","scopes":["court.cases.read"],"entitlements":["public_api.v1","court.api","method.get.court.cases"],"rate_limit":"court_reference_read"}],"scopes":["court.cases.read","court.reference.read"],"guide":"/api/guides/court"},{"id":"currency","title":"Currency","operations":[{"method":"GET","path":"/api/v1/currency/rates","operation_id":"getCurrencyRates","summary":"Курс валют на дату","scopes":["currency.read"],"entitlements":["public_api.v1","currency.api","method.get.currency.rates"],"rate_limit":"currency_read"},{"method":"POST","path":"/api/v1/currency/rates","operation_id":"getCurrencyRatesBatch","summary":"Курси валют (пакет)","scopes":["currency.read"],"entitlements":["public_api.v1","currency.api","method.post.currency.rates"],"rate_limit":"currency_read"},{"method":"GET","path":"/api/v1/currency/rates/weighted","operation_id":"getWeightedCurrencyRate","summary":"Середньозважений курс за період","scopes":["currency.read"],"entitlements":["public_api.v1","currency.api","method.get.currency.rates"],"rate_limit":"currency_series"},{"method":"POST","path":"/api/v1/currency/rates/weighted","operation_id":"getWeightedCurrencyRateBatch","summary":"Середньозважений курс (пакет, у кожного свій період)","scopes":["currency.read"],"entitlements":["public_api.v1","currency.api","method.post.currency.rates"],"rate_limit":"currency_series"},{"method":"GET","path":"/api/v1/currency/rates/fluctuation","operation_id":"getCurrencyFluctuation","summary":"Зміна курсу за період","scopes":["currency.read"],"entitlements":["public_api.v1","currency.api","method.get.currency.rates"],"rate_limit":"currency_series"},{"method":"GET","path":"/api/v1/currency/convert","operation_id":"convertCurrency","summary":"Конвертація суми","scopes":["currency.read"],"entitlements":["public_api.v1","currency.api","method.get.currency.convert"],"rate_limit":"currency_read"},{"method":"POST","path":"/api/v1/currency/convert","operation_id":"convertCurrencyBatch","summary":"Конвертація сум (пакет)","scopes":["currency.read"],"entitlements":["public_api.v1","currency.api","method.post.currency.convert"],"rate_limit":"currency_series"},{"method":"GET","path":"/api/v1/currency/rates/timeseries","operation_id":"getCurrencyTimeseries","summary":"Ряд курсу за період","scopes":["currency.read"],"entitlements":["public_api.v1","currency.api","method.get.currency.rates"],"rate_limit":"currency_series"},{"method":"GET","path":"/api/v1/currency/currencies","operation_id":"listCurrencies","summary":"Валюти джерела","scopes":["currency.read"],"entitlements":["public_api.v1","currency.api","method.get.currency.reference"],"rate_limit":"currency_read"},{"method":"GET","path":"/api/v1/currency/sources","operation_id":"listCurrencySources","summary":"Джерела курсів","scopes":["currency.read"],"entitlements":["public_api.v1","currency.api","method.get.currency.reference"],"rate_limit":"currency_read"}],"scopes":["currency.read"],"guide":"/api/guides/currency"},{"id":"media","title":"Media","operations":[{"method":"GET","path":"/api/v1/media/mentions","operation_id":"searchMediaMentions","summary":"Знайти згадки особи в медіа","scopes":["media.mentions.read"],"entitlements":["public_api.v1","media.api","method.get.media.mentions"],"rate_limit":"media_mentions_read"},{"method":"POST","path":"/api/v1/media/mentions","operation_id":"searchMediaMentionsBatch","summary":"Знайти згадки кількох осіб","scopes":["media.mentions.read"],"entitlements":["public_api.v1","media.api","method.post.media.mentions"],"rate_limit":"media_mentions_read"},{"method":"GET","path":"/api/v1/media/sources","operation_id":"listMediaSources","summary":"Джерела медіапошуку","scopes":["media.sources.read"],"entitlements":["public_api.v1","media.api","method.get.media.sources"],"rate_limit":"media_sources_read"},{"method":"GET","path":"/api/v1/media/items/{id}/transcript","operation_id":"getMediaTranscript","summary":"Повний текст медіаматеріалу","scopes":["media.mentions.read"],"entitlements":["public_api.v1","media.api","method.get.media.transcript"],"rate_limit":"media_transcript_read"}],"scopes":["media.mentions.read","media.sources.read"],"guide":"/api/guides/media"},{"id":"media-worker","title":"Media worker","operations":[{"method":"GET","path":"/api/v1/media/websub/youtube","operation_id":"verifyYouTubeWebSubSubscription","summary":"WebSub YouTube: підтвердження підписки (службова)","scopes":[],"entitlements":[],"rate_limit":"media_websub"},{"method":"POST","path":"/api/v1/media/websub/youtube","operation_id":"receiveYouTubeWebSubNotification","summary":"WebSub YouTube: сповіщення про відео (службова)","scopes":[],"entitlements":[],"rate_limit":"media_websub"}],"scopes":[],"guide":null},{"id":"competitions","title":"Competitions","operations":[{"method":"GET","path":"/api/v1/competitions/search","operation_id":"searchCompetitions","summary":"Знайти конкурсні процедури за ПІБ кандидата","scopes":["tenders.read"],"entitlements":["public_api.v1","tenders.api","method.get.competitions.search"],"rate_limit":"competitions_search"},{"method":"POST","path":"/api/v1/competitions/search","operation_id":"searchCompetitionsBatch","summary":"Пакетний пошук конкурсних процедур","scopes":["tenders.read"],"entitlements":["public_api.v1","tenders.api","method.post.competitions.search"],"rate_limit":"competitions_search"}],"scopes":["tenders.read"],"guide":null}],"rate_limits":{"competitions_search":{"with_key":120,"without_key":10,"window_seconds":60,"endpoints":["GET /api/v1/competitions/search","POST /api/v1/competitions/search"]},"cost_read":{"with_key":300,"without_key":20,"window_seconds":60,"endpoints":["GET /api/v1/cost/apartment","GET /api/v1/cost/apartment/periods","GET /api/v1/cost/apartment/regions","POST /api/v1/cost/apartment"]},"court_cases_read":{"with_key":60,"without_key":5,"window_seconds":60,"endpoints":["GET /api/v1/court/cases","POST /api/v1/court/cases"]},"court_reference_read":{"with_key":120,"without_key":10,"window_seconds":60,"endpoints":["GET /api/v1/court/courts","GET /api/v1/court/judges","GET /api/v1/court/participants"]},"currency_read":{"with_key":300,"without_key":20,"window_seconds":60,"endpoints":["GET /api/v1/currency/convert","GET /api/v1/currency/currencies","GET /api/v1/currency/rates","GET /api/v1/currency/sources","POST /api/v1/currency/rates"]},"currency_series":{"with_key":120,"without_key":10,"window_seconds":60,"endpoints":["GET /api/v1/currency/rates/fluctuation","GET /api/v1/currency/rates/timeseries","GET /api/v1/currency/rates/weighted","POST /api/v1/currency/convert","POST /api/v1/currency/rates/weighted"]},"declarations_read":{"with_key":60,"without_key":5,"window_seconds":60,"endpoints":["GET /api/v1/declarations/person/{person_id}","GET /api/v1/persons/{person_id}/declarations"]},"declarations_search":{"with_key":120,"without_key":10,"window_seconds":60,"endpoints":["GET /api/v1/declarations/list","GET /api/v1/persons","POST /api/v1/persons/search"]},"media_mentions_read":{"with_key":60,"without_key":5,"window_seconds":60,"endpoints":["GET /api/v1/media/mentions","POST /api/v1/media/mentions"]},"media_sources_read":{"with_key":120,"without_key":10,"window_seconds":60,"endpoints":["GET /api/v1/media/sources"]},"media_transcript_read":{"with_key":60,"without_key":10,"window_seconds":60,"endpoints":["GET /api/v1/media/items/{id}/transcript"]},"media_websub":{"with_key":300,"without_key":300,"window_seconds":60,"endpoints":["GET /api/v1/media/websub/youtube","POST /api/v1/media/websub/youtube"]},"media_worker":{"with_key":120,"without_key":1,"window_seconds":60,"endpoints":["POST /api/v1/media/worker/leases","POST /api/v1/media/worker/leases/{job_id}/failure","POST /api/v1/media/worker/leases/{job_id}/heartbeat","POST /api/v1/media/worker/leases/{job_id}/result"]},"telegram_collector":{"with_key":600,"without_key":1,"window_seconds":60,"endpoints":["GET /api/v1/telegram/collector/chats","GET /api/v1/telegram/collector/state","POST /api/v1/telegram/collector/ingest","POST /api/v1/telegram/collector/leader","POST /api/v1/telegram/collector/leases","POST /api/v1/telegram/collector/leases/{job_id}/failure","POST /api/v1/telegram/collector/leases/{job_id}/heartbeat","POST /api/v1/telegram/collector/leases/{job_id}/result","POST /api/v1/telegram/collector/state"]},"token_introspect":{"with_key":60,"without_key":5,"window_seconds":60,"endpoints":["GET /api/v1/token"]}},"links":{"openapi":"/api/openapi.json","openapi_with_planned":"/api/openapi.json?include=planned","reference":"/api/docs","catalog_with_parameters":"/api/catalog?include=parameters","catalog_single_domain":"/api/catalog?domain={domain_id}&include=parameters","health":"/api/v1/health"},"guides":[{"id":"integration","url":"/api/guides/integration","format":"text/markdown"},{"id":"currency","url":"/api/guides/currency","format":"text/markdown"},{"id":"cost","url":"/api/guides/cost","format":"text/markdown"},{"id":"court","url":"/api/guides/court","format":"text/markdown"},{"id":"media","url":"/api/guides/media","format":"text/markdown"},{"id":"declarations","url":"/api/guides/declarations","format":"text/markdown"},{"id":"format-38","url":"/api/guides/format-38","format":"text/markdown"}]}