openapi: 3.0.0 info: title: slovensko.sk API version: 3.9.0 (Komunitná verzia) 8.10.0 (Prémium verzia) description: | slovensko.sk API je proxy REST API komponent k službám www.slovensko.sk (Ústredný portál verejnej správy – ÚPVS), pomocou ktorých je možné: **Komunitná verzia** (EUPL 1.2 licencia) - uskutočniť prihlásenie pomocou ÚPVS (pomocou elektronického občianskeho preukazu) a získať údaje o prihlásenom subjekte, - manipulovať s obsahom el. schránky a preberať poštu do vlastných rúk, - podávať podania v mene subjektu, ktorý sa prihlásil cez ÚPVS alebo pomocou technického účtu, - vyhľadávať subjekty (právnické a fyzické osoby) za účelom zasielania správ (dostupné len pre OVM), - skontrolovať či je daná správa vo formáte SKTalk validná voči aktuálnej definícii formulára (podporná funkcia). **Prémium verzia** (komerčná licencia) - ukladať záznamy do dlhodobého úložiska registratúrnych záznamov, - zverejnovať dokumenty na centrálnej úradnej tabuli (dostupné len pre OVM), - podpisovať správy pomocou kvalifikovanej pečate uloženej v úložisku na slovensko.sk, - pridávať kvalifikované časové pečiatky elektronicky podpísaným dokumentom, - informatívne overovať podpisy na elektronicky podpísaných dokumentoch, - generovať doložky o autorizácii (dostupné len pre OVM), - získať informácie o type a forme podpisov elektronicky podpísaných dokumentov. contact: name: Služby Slovensko.Digital, s.r.o. url: https://ekosystem.slovensko.digital email: ekosystem@slovensko.digital servers: - description: Komunitná verzia v prostredí ÚPVS FIX url: https://fix.slovensko-sk-api.staging.slovensko.digital - description: Prémium verzia v prostredí ÚPVS FIX url: https://fix.premium-slovensko-sk-api.staging.slovensko.digital # TODO check if response codes specified here match response codes in API controllers # TODO consider using 201 when creating stuff, for example return 201 when successfully sending sktalk message: receive_result == 0 (a resource -- message is created) but return 202 when unsuccessfully sending sktalk message: receive_result != 0 paths: /login: get: tags: [Prihlasovanie pomocou eID] summary: Prihlási používateľa pomocou eID description: | Prihlási používateľa pomocou slovensko.sk (ÚPVS). Po úspešnom prihlásení nasleduje presmerovanie späť na callback URL tretej strany nastavený v premenných prostredia API (LOGIN_CALLBACK_URL). V parametri `token` bude zaslaný OBO (On-Behalf-Of) token použiteľný na získanie údajov o prihlásenom používateľovi alebo na volanie ďaľších rozhraní v mene prihláseného používateľa. responses: 302: description: Úspešné presmerovanie na prihlasovaciu stránku ÚPVS a následne na callback URL tretej strany. callbacks: login_callback: '{$LOGIN_CALLBACK_URL}': get: parameters: - name: token in: query required: true description: | OBO token v JWT formáte, ktorého payload vyzerá nasledovne: { "sub": "ico://sk/83130022", "exp": 1545147549, "nbf": 1545146349, "iat": 1545146349, "jti": "ad8e5d2a-85ff-46b9-a13f-ac860db9acee", "name": "Identita 83130022", "actor": { "name": "Janko Tisíci", "sub": "rc://sk/8314451337_tisici_janko" }, "scopes": [ "sktalk/receive", "sktalk/receive_and_save_to_outbox", "sktalk/save_to_outbox", "sktalk/prepare_for_later_receive", "upvs/assertion", "upvs/identity" ] } schema: type: string format: jwt responses: 200: description: Úspešné prihlásenie. post: tags: [Prihlasovanie pomocou eID] summary: Prihlási používateľa pomocou SAML assertion description: | Prihlási používateľa pomocou slovensko.sk (ÚPVS) na základe prijatej SAML assertion. Umožňuje vykonať ÚPVS SSO mimo slovensko-sk-api a poslať na API iba SAML assertion. V parametri `token` bude zaslaný OBO (On-Behalf-Of) token použiteľný na získanie údajov o prihlásenom používateľovi alebo na volanie ďaľších rozhraní v mene prihláseného používateľa. requestBody: required: true content: application/json: schema: type: object properties: saml_assertion: description: Base64 SAML assertion získaná z ÚPVS. type: string format: base64 example: PHNhbWw6QXNzZXJ0aW9uIElEPSJpZC1FU2JUWWMyR2V3cFA2dXZtYzVxaFl1S0Qtakl5Tm5IWWtsVFlGNVdjIiBJc3N1ZUluc3RhbnQ9IjIwMjItMDQtMjJUMTA6MDU6NDdaIiBWZXJzaW9uPSIyLjAiIHhtbG5zOmRzaWc9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvMDkveG1sZHNpZyMiIHhtbG5zOmVuYz0iaHR0cDovL3d3dy53My5vcmcvMjAwMS8wNC94bWxlbmMjIiB4bWxuczpzYW1sPSJ1cm46b2FzaXM6bmFtZXM6dGM6U0FNTDoyLjA6YXNzZXJ0aW9uIiB4bWxuczpzYW1scD0idXJuOm9hc2lzOm5hbWVzOnRjOlNBTUw6Mi4wOnByb3RvY29sIiB4bWxuczp4NTAwPSJ1cm46b2FzaXM6bmFtZXM6dGM6U0FNTDoyLjA6cHJvZmlsZXM6YXR0cmlidXRlOlg1MDAiIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiPjxzYW1sOklzc3VlciBGb3JtYXQ9InVybjpvYXNpczpuYW1lczp0YzpTQU1MOjIuMDpuYW1laWQtZm9ybWF0OmVudGl0eSI+aHR0cHM6Ly9wcmlobGFzZW5pZS51cHZzZml4Lmdvdi5zay9vYW0vZmVkPC9zYW1sOklzc3Vlcj48ZHNpZzpTaWduYXR1cmU+PGRzaWc6U2lnbmVkSW5mbz48ZHNpZzpDYW5vbmljYWxpemF0aW9uTWV0aG9kIEFsZ29yaXRobT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS8xMC94bWwtZXhjLWMxNG4jIi8+PGRzaWc6U2lnbmF0dXJlTWV0aG9kIEFsZ29yaXRobT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS8wNC94bWxkc2lnLW1vcmUjcnNhLXNoYTI1NiIvPjxkc2lnOlJlZmVyZW5jZSBVUkk9IiNpZC1FU2JUWWMyR2V3cFA2dXZtYzVxaFl1S0Qtakl5Tm5IWWtsVFlGNVdjIj48ZHNpZzpUcmFuc2Zvcm1zPjxkc2lnOlRyYW5zZm9ybSBBbGdvcml0aG09Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvMDkveG1sZHNpZyNlbnZlbG9wZWQtc2lnbmF0dXJlIi8+PGRzaWc6VHJhbnNmb3JtIEFsZ29yaXRobT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS8xMC94bWwtZXhjLWMxNG4jIi8+PC9kc2lnOlRyYW5zZm9ybXM+PGRzaWc6RGlnZXN0TWV0aG9kIEFsZ29yaXRobT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS8wNC94bWxlbmMjc2hhMjU2Ii8+PGRzaWc6RGlnZXN0VmFsdWU+ZXFNSzhEMUFJTGc2amppV3RUU2NFMnZ6NWJhM0owUXZubHQ2TE51d0MzYz08L2RzaWc6RGlnZXN0VmFsdWU+PC9kc2lnOlJlZmVyZW5jZT48L2RzaWc6U2lnbmVkSW5mbz48ZHNpZzpTaWduYXR1cmVWYWx1ZT5mclhQZjBveFc0RjB3dG1PR2dXMU4vditTNEtha2hvZ2o3ZHVKZzZnYjJpd3ZwMjJCakhKcWJKODFKcXBRS0VlVWJkR05iNVBEdlFySXZPTDRsaE9YRUlsT3pNbUNxNGFhWDNhQW1OczRqbjAvRHVxN2tWaytLVjNtNXlNY2pkTWxkcXRlRkRGdXdaczJNdkdkMkhmaXN1Y0lWeUR3dW9vZXB0V1NsbjRzeG9uTzZ3dUFHL1R0STJ3RDkvMTQ0SEZvVWs1RlFHVW4zYXZWOVNXMnBOMllNdmZZT2hySkVwNi8xNkFFTzMyMlJVK3QzeVZOdjNxL3MveWR0amp3dUkwbG9DalduUWlnYmprQ0ZaSGxZOUZNcTlQY0RNRGgvYVg4ZTBMSWs3TnNzY2lleWs2ZzJXamNmVzdMc0xudktVMVRQcEhUMlZscW93TkM4K2VMc1BhZmc9PTwvZHNpZzpTaWduYXR1cmVWYWx1ZT48ZHNpZzpLZXlJbmZvPjxkc2lnOlg1MDlEYXRhPjxkc2lnOlg1MDlDZXJ0aWZpY2F0ZT5NSUlETURDQ0FoaWdBd0lCQWdJS01PN1Jpd0FBQUFBRGtEQU5CZ2txaGtpRzl3MEJBUXNGQURBYU1SZ3dGZ1lEVlFRREV3OWpZUzV6Ykc5MlpXNXphMjh1YzJzd0hoY05NakV3TWpJeU1EYzFNVEUxV2hjTk1qTXdNakl5TURnd01URTFXakFkTVJzd0dRWURWUVFERXhKcFpIQXVkWEIyYzJacGVDNW5iM1l1YzJzd2dnRWlNQTBHQ1NxR1NJYjNEUUVCQVFVQUE0SUJEd0F3Z2dFS0FvSUJBUUNwUnFmVVVPaVpJZ2U2dDEvL2VBMmJzMEc3R0pSNHB2VWlNRGxqanQyQU1oUjNZbTJOZHBFNjlEQXpCUmNGK0llMTVyVmRwaUNPMDB0VUFYZFVLQXV3RlYxT2tNWllqeVFqUnFZdk9GbVlaT1RETlg3YkM3cmZmSS8zQUwzQkN1RFkzNm5TY1pKQmhRR29pWUQyd3QzR1B6TzZJUlVkUWJRYzVQaFgyQ2FmNDdoREVmL2JIK0c1MzFwNU81UFIzSGFpOHNlTldUUC8xbFBkMHJrdUhwbmpuUzFDOXd0TmgxQVdoalhacmkrMUhwVllxaGpyU2d5MCtrZmtWQ3NJK3dMQS9LaDZCSHluZmt6bEFVODI1VGpxY2tHUEhmblhyNmMrZnNMeU5DTk85WGJJdWxZWmZRcmQwUEoyTmpieWFhUzU4MWtwbVp0anpkN2pnYzdTbGVmZkFnTUJBQUdqZFRCek1BNEdBMVVkRHdFQi93UUVBd0lFOERBVEJnTlZIU1VFRERBS0JnZ3JCZ0VGQlFjREFqQWRCZ05WSFE0RUZnUVV2U1BOMG9YelV2d2JyNWdPallqUHd3c08zSzR3SHdZRFZSMGpCQmd3Rm9BVUtsTzNUaHByazBYZjZWUXIydHU0VHBvU3pvWXdEQVlEVlIwVEFRSC9CQUl3QURBTkJna3Foa2lHOXcwQkFRc0ZBQU9DQVFFQUhXNXdKREdReGhUdkRiQytEeTcrdXZZVjZYK042akJUM0hidmxrM0V1bG50dGRsT1FrbGtQejBaRXNCdTU5L09TNXh1anh5Ky9rYWVtYm56eGdaTzg3SXp4d3JpRXNmMXIxcUZaNW1xdEY4eGNWNkdvRUJMSHJIMW1TQ2Y4YzAxUi9MeDdrNmU3emV4eFk0RWk0MDhMMnNYWEl1Q1BmODhjckdPUFZYcWNTQ1NFdmhIWlNWcE44NFRLZkVIY0NwR1BHdjkrUmUySHZuUm9HMG9PSmhVS21Wa0xDSzU1STVxaUJRcFJmNC9IVy9sZEVMR25wU2N2UUJVVVNNUkFIRE40dmF6dHBCQ2hHZkRBREoxZHhBaGswQytyTWtRd2wyQ2lhTlBLL3A2blM5OWhJc1IrR2tGUGJXUTEvVGM0c0didjJkQWhmZnZ0TWw3RzZmekdmTGNtdz09PC9kc2lnOlg1MDlDZXJ0aWZpY2F0ZT48L2RzaWc6WDUwOURhdGE+PC9kc2lnOktleUluZm8+PC9kc2lnOlNpZ25hdHVyZT48c2FtbDpTdWJqZWN0PjxzYW1sOk5hbWVJRCBGb3JtYXQ9InVybjpvYXNpczpuYW1lczp0YzpTQU1MOjIuMDpuYW1laWQtZm9ybWF0OnRyYW5zaWVudCIgTmFtZVF1YWxpZmllcj0iaHR0cHM6Ly9wcmlobGFzZW5pZS51cHZzZml4Lmdvdi5zay9vYW0vZmVkIiBTUE5hbWVRdWFsaWZpZXI9Imh0dHBzOi8vZml4LnByZW1pdW0tc2xvdmVuc2tvLXNrLWFwaS5zdGFnaW5nLnNsb3ZlbnNrby5kaWdpdGFsIj5pZC1KUTEzWENEcDNNVEJkWWExYXlMZndUQXVxdjZHeXg0dzFNdlJvYzlsPC9zYW1sOk5hbWVJRD48c2FtbDpTdWJqZWN0Q29uZmlybWF0aW9uIE1ldGhvZD0idXJuOm9hc2lzOm5hbWVzOnRjOlNBTUw6Mi4wOmNtOmJlYXJlciI+PHNhbWw6U3ViamVjdENvbmZpcm1hdGlvbkRhdGEgSW5SZXNwb25zZVRvPSJfZWUwMDIxMDItNDMyYi00NzUwLTgyMmUtODc1ZWQzN2Y4MmJiIiBOb3RPbk9yQWZ0ZXI9IjIwMjItMDQtMjJUMTA6MjU6NDdaIiBSZWNpcGllbnQ9Imh0dHBzOi8vZml4LnByZW1pdW0tc2xvdmVuc2tvLXNrLWFwaS5zdGFnaW5nLnNsb3ZlbnNrby5kaWdpdGFsL2F1dGgvc2FtbC9jYWxsYmFjayIvPjwvc2FtbDpTdWJqZWN0Q29uZmlybWF0aW9uPjwvc2FtbDpTdWJqZWN0PjxzYW1sOkNvbmRpdGlvbnMgTm90QmVmb3JlPSIyMDIyLTA0LTIyVDEwOjA1OjQ3WiIgTm90T25PckFmdGVyPSIyMDIyLTA0LTIyVDEwOjI1OjQ3WiI+PHNhbWw6QXVkaWVuY2VSZXN0cmljdGlvbj48c2FtbDpBdWRpZW5jZT5odHRwczovL2ZpeC5wcmVtaXVtLXNsb3ZlbnNrby1zay1hcGkuc3RhZ2luZy5zbG92ZW5za28uZGlnaXRhbDwvc2FtbDpBdWRpZW5jZT48L3NhbWw6QXVkaWVuY2VSZXN0cmljdGlvbj48L3NhbWw6Q29uZGl0aW9ucz48c2FtbDpBdXRoblN0YXRlbWVudCBBdXRobkluc3RhbnQ9IjIwMjItMDQtMjJUMTA6MDU6NDdaIiBTZXNzaW9uSW5kZXg9ImlkLTJxSWdyb1dlNlNlYnl3cUluOTZ3cGl1M2s3QVo2cHlDMEI4VkJsVWYiIFNlc3Npb25Ob3RPbk9yQWZ0ZXI9IjIwMjItMDQtMjJUMTA6MjU6NDdaIj48c2FtbDpBdXRobkNvbnRleHQ+PHNhbWw6QXV0aG5Db250ZXh0Q2xhc3NSZWY+dXJuOm9hc2lzOm5hbWVzOnRjOlNBTUw6Mi4wOmFjOmNsYXNzZXM6U21hcnRjYXJkUEtJPC9zYW1sOkF1dGhuQ29udGV4dENsYXNzUmVmPjwvc2FtbDpBdXRobkNvbnRleHQ+PC9zYW1sOkF1dGhuU3RhdGVtZW50PjxzYW1sOkF0dHJpYnV0ZVN0YXRlbWVudD48c2FtbDpBdHRyaWJ1dGUgTmFtZT0iRGVyaXZlZEZyb21JRCIgTmFtZUZvcm1hdD0idXJuOm9hc2lzOm5hbWVzOnRjOlNBTUw6Mi4wOmF0dHJuYW1lLWZvcm1hdDpiYXNpYyI+PHNhbWw6QXR0cmlidXRlVmFsdWUgeHNpOm5pbD0idHJ1ZSIvPjwvc2FtbDpBdHRyaWJ1dGU+PHNhbWw6QXR0cmlidXRlIE5hbWU9IlN1YmplY3RJRFNlY3RvciIgTmFtZUZvcm1hdD0idXJuOm9hc2lzOm5hbWVzOnRjOlNBTUw6Mi4wOmF0dHJuYW1lLWZvcm1hdDpiYXNpYyI+PHNhbWw6QXR0cmlidXRlVmFsdWUgeHNpOnR5cGU9InhzOnN0cmluZyIgeG1sbnM6eHM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hIj5TRUNUT1JfVVBWUzwvc2FtbDpBdHRyaWJ1dGVWYWx1ZT48L3NhbWw6QXR0cmlidXRlPjxzYW1sOkF0dHJpYnV0ZSBOYW1lPSJBY3Rvci5BdXRoUmVzb3VyY2VUeXBlIiBOYW1lRm9ybWF0PSJ1cm46b2FzaXM6bmFtZXM6dGM6U0FNTDoyLjA6YXR0cm5hbWUtZm9ybWF0OmJhc2ljIj48c2FtbDpBdHRyaWJ1dGVWYWx1ZSB4c2k6dHlwZT0ieHM6c3RyaW5nIiB4bWxuczp4cz0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEiPjE8L3NhbWw6QXR0cmlidXRlVmFsdWU+PC9zYW1sOkF0dHJpYnV0ZT48c2FtbDpBdHRyaWJ1dGUgTmFtZT0iQWN0b3IuQXV0aFJlc291cmNlU3ViVHlwZSIgTmFtZUZvcm1hdD0idXJuOm9hc2lzOm5hbWVzOnRjOlNBTUw6Mi4wOmF0dHJuYW1lLWZvcm1hdDpiYXNpYyI+PHNhbWw6QXR0cmlidXRlVmFsdWUgeHNpOnR5cGU9InhzOnN0cmluZyIgeG1sbnM6eHM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hIi8+PC9zYW1sOkF0dHJpYnV0ZT48c2FtbDpBdHRyaWJ1dGUgTmFtZT0iU3ViamVjdC5Gb3JtYXR0ZWROYW1lIiBOYW1lRm9ybWF0PSJ1cm46b2FzaXM6bmFtZXM6dGM6U0FNTDoyLjA6YXR0cm5hbWUtZm9ybWF0OmJhc2ljIj48c2FtbDpBdHRyaWJ1dGVWYWx1ZSB4c2k6dHlwZT0ieHM6c3RyaW5nIiB4bWxuczp4cz0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEiPkphbmtvIFRpc8OtY2k8L3NhbWw6QXR0cmlidXRlVmFsdWU+PC9zYW1sOkF0dHJpYnV0ZT48c2FtbDpBdHRyaWJ1dGUgTmFtZT0iU3ViamVjdElEIiBOYW1lRm9ybWF0PSJ1cm46b2FzaXM6bmFtZXM6dGM6U0FNTDoyLjA6YXR0cm5hbWUtZm9ybWF0OmJhc2ljIj48c2FtbDpBdHRyaWJ1dGVWYWx1ZSB4c2k6dHlwZT0ieHM6c3RyaW5nIiB4bWxuczp4cz0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEiPnJjOi8vc2svODMxMTU3NzgzMF90aXNpY2lfamFua288L3NhbWw6QXR0cmlidXRlVmFsdWU+PC9zYW1sOkF0dHJpYnV0ZT48c2FtbDpBdHRyaWJ1dGUgTmFtZT0iQXNzZXJ0aW9uVHlwZSIgTmFtZUZvcm1hdD0idXJuOm9hc2lzOm5hbWVzOnRjOlNBTUw6Mi4wOmF0dHJuYW1lLWZvcm1hdDpiYXNpYyI+PHNhbWw6QXR0cmlidXRlVmFsdWUgeHNpOnR5cGU9InhzOnN0cmluZyIgeG1sbnM6eHM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hIj5XRUJTU088L3NhbWw6QXR0cmlidXRlVmFsdWU+PC9zYW1sOkF0dHJpYnV0ZT48c2FtbDpBdHRyaWJ1dGUgTmFtZT0iUUFBTGV2ZWwiIE5hbWVGb3JtYXQ9InVybjpvYXNpczpuYW1lczp0YzpTQU1MOjIuMDphdHRybmFtZS1mb3JtYXQ6YmFzaWMiPjxzYW1sOkF0dHJpYnV0ZVZhbHVlIHhzaTp0eXBlPSJ4czpzdHJpbmciIHhtbG5zOnhzPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYSI+MTwvc2FtbDpBdHRyaWJ1dGVWYWx1ZT48L3NhbWw6QXR0cmlidXRlPjxzYW1sOkF0dHJpYnV0ZSBOYW1lPSJTdWJqZWN0LmVEZXNrUmVtb3RlVVJJIiBOYW1lRm9ybWF0PSJ1cm46b2FzaXM6bmFtZXM6dGM6U0FNTDoyLjA6YXR0cm5hbWUtZm9ybWF0OmJhc2ljIj48c2FtbDpBdHRyaWJ1dGVWYWx1ZSB4c2k6dHlwZT0ieHM6c3RyaW5nIiB4bWxuczp4cz0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEiLz48L3NhbWw6QXR0cmlidXRlPjxzYW1sOkF0dHJpYnV0ZSBOYW1lPSJEZWxlZ2F0aW9uTWVkaWF0b3JJRCIgTmFtZUZvcm1hdD0idXJuOm9hc2lzOm5hbWVzOnRjOlNBTUw6Mi4wOmF0dHJuYW1lLWZvcm1hdDpiYXNpYyI+PHNhbWw6QXR0cmlidXRlVmFsdWUgeHNpOnR5cGU9InhzOnN0cmluZyIgeG1sbnM6eHM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hIi8+PC9zYW1sOkF0dHJpYnV0ZT48c2FtbDpBdHRyaWJ1dGUgTmFtZT0iU3ViamVjdC5JZGVudGl0eVR5cGUiIE5hbWVGb3JtYXQ9InVybjpvYXNpczpuYW1lczp0YzpTQU1MOjIuMDphdHRybmFtZS1mb3JtYXQ6YmFzaWMiPjxzYW1sOkF0dHJpYnV0ZVZhbHVlIHhzaTp0eXBlPSJ4czpzdHJpbmciIHhtbG5zOnhzPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYSI+MTwvc2FtbDpBdHRyaWJ1dGVWYWx1ZT48L3NhbWw6QXR0cmlidXRlPjxzYW1sOkF0dHJpYnV0ZSBOYW1lPSJBY3Rvci5QQ08iIE5hbWVGb3JtYXQ9InVybjpvYXNpczpuYW1lczp0YzpTQU1MOjIuMDphdHRybmFtZS1mb3JtYXQ6YmFzaWMiPjxzYW1sOkF0dHJpYnV0ZVZhbHVlIHhzaTp0eXBlPSJ4czpzdHJpbmciIHhtbG5zOnhzPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYSI+ODMxMTU3NzgzMDwvc2FtbDpBdHRyaWJ1dGVWYWx1ZT48L3NhbWw6QXR0cmlidXRlPjxzYW1sOkF0dHJpYnV0ZSBOYW1lPSJTdWJqZWN0LkZpcnN0TmFtZSIgTmFtZUZvcm1hdD0idXJuOm9hc2lzOm5hbWVzOnRjOlNBTUw6Mi4wOmF0dHJuYW1lLWZvcm1hdDpiYXNpYyI+PHNhbWw6QXR0cmlidXRlVmFsdWUgeHNpOnR5cGU9InhzOnN0cmluZyIgeG1sbnM6eHM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hIj5KYW5rbzwvc2FtbDpBdHRyaWJ1dGVWYWx1ZT48L3NhbWw6QXR0cmlidXRlPjxzYW1sOkF0dHJpYnV0ZSBOYW1lPSJBY3Rvci5Gb3JtYXR0ZWROYW1lIiBOYW1lRm9ybWF0PSJ1cm46b2FzaXM6bmFtZXM6dGM6U0FNTDoyLjA6YXR0cm5hbWUtZm9ybWF0OmJhc2ljIj48c2FtbDpBdHRyaWJ1dGVWYWx1ZSB4c2k6dHlwZT0ieHM6c3RyaW5nIiB4bWxuczp4cz0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEiPkphbmtvIFRpc8OtY2k8L3NhbWw6QXR0cmlidXRlVmFsdWU+PC9zYW1sOkF0dHJpYnV0ZT48c2FtbDpBdHRyaWJ1dGUgTmFtZT0iU3ViamVjdC5QQ08iIE5hbWVGb3JtYXQ9InVybjpvYXNpczpuYW1lczp0YzpTQU1MOjIuMDphdHRybmFtZS1mb3JtYXQ6YmFzaWMiPjxzYW1sOkF0dHJpYnV0ZVZhbHVlIHhzaTp0eXBlPSJ4czpzdHJpbmciIHhtbG5zOnhzPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYSI+ODMxMTU3NzgzMDwvc2FtbDpBdHRyaWJ1dGVWYWx1ZT48L3NhbWw6QXR0cmlidXRlPjxzYW1sOkF0dHJpYnV0ZSBOYW1lPSJTdWJqZWN0LlRlcm1pbmF0aW9uRGF0ZSIgTmFtZUZvcm1hdD0idXJuOm9hc2lzOm5hbWVzOnRjOlNBTUw6Mi4wOmF0dHJuYW1lLWZvcm1hdDpiYXNpYyI+PHNhbWw6QXR0cmlidXRlVmFsdWUgeHNpOnR5cGU9InhzOnN0cmluZyIgeG1sbnM6eHM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hIi8+PC9zYW1sOkF0dHJpYnV0ZT48c2FtbDpBdHRyaWJ1dGUgTmFtZT0iQWN0b3IuVXNlcm5hbWUiIE5hbWVGb3JtYXQ9InVybjpvYXNpczpuYW1lczp0YzpTQU1MOjIuMDphdHRybmFtZS1mb3JtYXQ6YmFzaWMiPjxzYW1sOkF0dHJpYnV0ZVZhbHVlIHhzaTp0eXBlPSJ4czpzdHJpbmciIHhtbG5zOnhzPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYSI+RTAwMDUxODMxMzg8L3NhbWw6QXR0cmlidXRlVmFsdWU+PC9zYW1sOkF0dHJpYnV0ZT48c2FtbDpBdHRyaWJ1dGUgTmFtZT0iQWN0b3IuRW1haWwiIE5hbWVGb3JtYXQ9InVybjpvYXNpczpuYW1lczp0YzpTQU1MOjIuMDphdHRybmFtZS1mb3JtYXQ6YmFzaWMiPjxzYW1sOkF0dHJpYnV0ZVZhbHVlIHhzaTp0eXBlPSJ4czpzdHJpbmciIHhtbG5zOnhzPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYSI+dGVzdEBzbG92ZW5za28uc2s8L3NhbWw6QXR0cmlidXRlVmFsdWU+PC9zYW1sOkF0dHJpYnV0ZT48c2FtbDpBdHRyaWJ1dGUgTmFtZT0iRGVsZWdhdGlvblR5cGUiIE5hbWVGb3JtYXQ9InVybjpvYXNpczpuYW1lczp0YzpTQU1MOjIuMDphdHRybmFtZS1mb3JtYXQ6YmFzaWMiPjxzYW1sOkF0dHJpYnV0ZVZhbHVlIHhzaTp0eXBlPSJ4czpzdHJpbmciIHhtbG5zOnhzPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYSI+MDwvc2FtbDpBdHRyaWJ1dGVWYWx1ZT48L3NhbWw6QXR0cmlidXRlPjxzYW1sOkF0dHJpYnV0ZSBOYW1lPSJBY3Rvci5MYXN0TmFtZSIgTmFtZUZvcm1hdD0idXJuOm9hc2lzOm5hbWVzOnRjOlNBTUw6Mi4wOmF0dHJuYW1lLWZvcm1hdDpiYXNpYyI+PHNhbWw6QXR0cmlidXRlVmFsdWUgeHNpOnR5cGU9InhzOnN0cmluZyIgeG1sbnM6eHM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hIj5UaXPDrWNpPC9zYW1sOkF0dHJpYnV0ZVZhbHVlPjwvc2FtbDpBdHRyaWJ1dGU+PHNhbWw6QXR0cmlidXRlIE5hbWU9IkFjdG9yLklkZW50aXR5VHlwZSIgTmFtZUZvcm1hdD0idXJuOm9hc2lzOm5hbWVzOnRjOlNBTUw6Mi4wOmF0dHJuYW1lLWZvcm1hdDpiYXNpYyI+PHNhbWw6QXR0cmlidXRlVmFsdWUgeHNpOnR5cGU9InhzOnN0cmluZyIgeG1sbnM6eHM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hIj4xPC9zYW1sOkF0dHJpYnV0ZVZhbHVlPjwvc2FtbDpBdHRyaWJ1dGU+PHNhbWw6QXR0cmlidXRlIE5hbWU9IkFjdG9yLkZpcnN0TmFtZSIgTmFtZUZvcm1hdD0idXJuOm9hc2lzOm5hbWVzOnRjOlNBTUw6Mi4wOmF0dHJuYW1lLWZvcm1hdDpiYXNpYyI+PHNhbWw6QXR0cmlidXRlVmFsdWUgeHNpOnR5cGU9InhzOnN0cmluZyIgeG1sbnM6eHM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hIj5KYW5rbzwvc2FtbDpBdHRyaWJ1dGVWYWx1ZT48L3NhbWw6QXR0cmlidXRlPjxzYW1sOkF0dHJpYnV0ZSBOYW1lPSJTdWJqZWN0LmVEZXNrU3RhdHVzIiBOYW1lRm9ybWF0PSJ1cm46b2FzaXM6bmFtZXM6dGM6U0FNTDoyLjA6YXR0cm5hbWUtZm9ybWF0OmJhc2ljIj48c2FtbDpBdHRyaWJ1dGVWYWx1ZSB4c2k6dHlwZT0ieHM6c3RyaW5nIiB4bWxuczp4cz0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEiPkRFTElWRVJBQkxFPC9zYW1sOkF0dHJpYnV0ZVZhbHVlPjwvc2FtbDpBdHRyaWJ1dGU+PHNhbWw6QXR0cmlidXRlIE5hbWU9IkFjdG9yLlVQVlNJZGVudGl0eUlEIiBOYW1lRm9ybWF0PSJ1cm46b2FzaXM6bmFtZXM6dGM6U0FNTDoyLjA6YXR0cm5hbWUtZm9ybWF0OmJhc2ljIj48c2FtbDpBdHRyaWJ1dGVWYWx1ZSB4c2k6dHlwZT0ieHM6c3RyaW5nIiB4bWxuczp4cz0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEiPjYzQzlGRUU2LTMzQTctNDNGOS04NDMyLTFFMEZBNkJGRkI1NTwvc2FtbDpBdHRyaWJ1dGVWYWx1ZT48L3NhbWw6QXR0cmlidXRlPjxzYW1sOkF0dHJpYnV0ZSBOYW1lPSJTdWJqZWN0LklDTyIgTmFtZUZvcm1hdD0idXJuOm9hc2lzOm5hbWVzOnRjOlNBTUw6Mi4wOmF0dHJuYW1lLWZvcm1hdDpiYXNpYyI+PHNhbWw6QXR0cmlidXRlVmFsdWUgeHNpOnR5cGU9InhzOnN0cmluZyIgeG1sbnM6eHM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hIi8+PC9zYW1sOkF0dHJpYnV0ZT48c2FtbDpBdHRyaWJ1dGUgTmFtZT0iQWN0b3JJRCIgTmFtZUZvcm1hdD0idXJuOm9hc2lzOm5hbWVzOnRjOlNBTUw6Mi4wOmF0dHJuYW1lLWZvcm1hdDpiYXNpYyI+PHNhbWw6QXR0cmlidXRlVmFsdWUgeHNpOnR5cGU9InhzOnN0cmluZyIgeG1sbnM6eHM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hIj5yYzovL3NrLzgzMTE1Nzc4MzBfdGlzaWNpX2phbmtvPC9zYW1sOkF0dHJpYnV0ZVZhbHVlPjwvc2FtbDpBdHRyaWJ1dGU+PHNhbWw6QXR0cmlidXRlIE5hbWU9IlN1YmplY3QuVVBWU0lkZW50aXR5SUQiIE5hbWVGb3JtYXQ9InVybjpvYXNpczpuYW1lczp0YzpTQU1MOjIuMDphdHRybmFtZS1mb3JtYXQ6YmFzaWMiPjxzYW1sOkF0dHJpYnV0ZVZhbHVlIHhzaTp0eXBlPSJ4czpzdHJpbmciIHhtbG5zOnhzPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYSI+NjNDOUZFRTYtMzNBNy00M0Y5LTg0MzItMUUwRkE2QkZGQjU1PC9zYW1sOkF0dHJpYnV0ZVZhbHVlPjwvc2FtbDpBdHRyaWJ1dGU+PHNhbWw6QXR0cmlidXRlIE5hbWU9IlJvbGVzIiBOYW1lRm9ybWF0PSJ1cm46b2FzaXM6bmFtZXM6dGM6U0FNTDoyLjA6YXR0cm5hbWUtZm9ybWF0OmJhc2ljIj48c2FtbDpBdHRyaWJ1dGVWYWx1ZSB4c2k6dHlwZT0ieHM6c3RyaW5nIiB4bWxuczp4cz0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEiPlJfTURVUlpfUkVBREVSPC9zYW1sOkF0dHJpYnV0ZVZhbHVlPjxzYW1sOkF0dHJpYnV0ZVZhbHVlIHhzaTp0eXBlPSJ4czpzdHJpbmciIHhtbG5zOnhzPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYSI+Ul9NRFVSWl9XUklURVI8L3NhbWw6QXR0cmlidXRlVmFsdWU+PC9zYW1sOkF0dHJpYnV0ZT48c2FtbDpBdHRyaWJ1dGUgTmFtZT0iQWN0b3IuUkVJZGVudGl0eUlkIiBOYW1lRm9ybWF0PSJ1cm46b2FzaXM6bmFtZXM6dGM6U0FNTDoyLjA6YXR0cm5hbWUtZm9ybWF0OmJhc2ljIj48c2FtbDpBdHRyaWJ1dGVWYWx1ZSB4c2k6dHlwZT0ieHM6c3RyaW5nIiB4bWxuczp4cz0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEiPjUxODQ5ODI8L3NhbWw6QXR0cmlidXRlVmFsdWU+PC9zYW1sOkF0dHJpYnV0ZT48c2FtbDpBdHRyaWJ1dGUgTmFtZT0iU3ViamVjdC5QcmVmZXJyZWRMYW5ndWFnZSIgTmFtZUZvcm1hdD0idXJuOm9hc2lzOm5hbWVzOnRjOlNBTUw6Mi4wOmF0dHJuYW1lLWZvcm1hdDpiYXNpYyI+PHNhbWw6QXR0cmlidXRlVmFsdWUgeHNpOnR5cGU9InhzOnN0cmluZyIgeG1sbnM6eHM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hIi8+PC9zYW1sOkF0dHJpYnV0ZT48c2FtbDpBdHRyaWJ1dGUgTmFtZT0iU3ViamVjdC5SRUlkZW50aXR5SWQiIE5hbWVGb3JtYXQ9InVybjpvYXNpczpuYW1lczp0YzpTQU1MOjIuMDphdHRybmFtZS1mb3JtYXQ6YmFzaWMiPjxzYW1sOkF0dHJpYnV0ZVZhbHVlIHhzaTp0eXBlPSJ4czpzdHJpbmciIHhtbG5zOnhzPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYSI+NTE4NDk4Mjwvc2FtbDpBdHRyaWJ1dGVWYWx1ZT48L3NhbWw6QXR0cmlidXRlPjxzYW1sOkF0dHJpYnV0ZSBOYW1lPSJTdWJqZWN0Lkxhc3ROYW1lIiBOYW1lRm9ybWF0PSJ1cm46b2FzaXM6bmFtZXM6dGM6U0FNTDoyLjA6YXR0cm5hbWUtZm9ybWF0OmJhc2ljIj48c2FtbDpBdHRyaWJ1dGVWYWx1ZSB4c2k6dHlwZT0ieHM6c3RyaW5nIiB4bWxuczp4cz0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEiPlRpc8OtY2k8L3NhbWw6QXR0cmlidXRlVmFsdWU+PC9zYW1sOkF0dHJpYnV0ZT48c2FtbDpBdHRyaWJ1dGUgTmFtZT0iQWN0b3IuUHJlZmVycmVkTGFuZ3VhZ2UiIE5hbWVGb3JtYXQ9InVybjpvYXNpczpuYW1lczp0YzpTQU1MOjIuMDphdHRybmFtZS1mb3JtYXQ6YmFzaWMiPjxzYW1sOkF0dHJpYnV0ZVZhbHVlIHhzaTp0eXBlPSJ4czpzdHJpbmciIHhtbG5zOnhzPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYSIvPjwvc2FtbDpBdHRyaWJ1dGU+PHNhbWw6QXR0cmlidXRlIE5hbWU9IlN1YmplY3QuRW1haWwiIE5hbWVGb3JtYXQ9InVybjpvYXNpczpuYW1lczp0YzpTQU1MOjIuMDphdHRybmFtZS1mb3JtYXQ6YmFzaWMiPjxzYW1sOkF0dHJpYnV0ZVZhbHVlIHhzaTp0eXBlPSJ4czpzdHJpbmciIHhtbG5zOnhzPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYSI+dGVzdEBzbG92ZW5za28uc2s8L3NhbWw6QXR0cmlidXRlVmFsdWU+PC9zYW1sOkF0dHJpYnV0ZT48c2FtbDpBdHRyaWJ1dGUgTmFtZT0iQWN0b3JJRFNlY3RvciIgTmFtZUZvcm1hdD0idXJuOm9hc2lzOm5hbWVzOnRjOlNBTUw6Mi4wOmF0dHJuYW1lLWZvcm1hdDpiYXNpYyI+PHNhbWw6QXR0cmlidXRlVmFsdWUgeHNpOnR5cGU9InhzOnN0cmluZyIgeG1sbnM6eHM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hIj5TRUNUT1JfVVBWUzwvc2FtbDpBdHRyaWJ1dGVWYWx1ZT48L3NhbWw6QXR0cmlidXRlPjxzYW1sOkF0dHJpYnV0ZSBOYW1lPSJTdWJqZWN0LmVEZXNrTnVtYmVyIiBOYW1lRm9ybWF0PSJ1cm46b2FzaXM6bmFtZXM6dGM6U0FNTDoyLjA6YXR0cm5hbWUtZm9ybWF0OmJhc2ljIj48c2FtbDpBdHRyaWJ1dGVWYWx1ZSB4c2k6dHlwZT0ieHM6c3RyaW5nIiB4bWxuczp4cz0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEiPkUwMDA1MTgzMTM4PC9zYW1sOkF0dHJpYnV0ZVZhbHVlPjwvc2FtbDpBdHRyaWJ1dGU+PHNhbWw6QXR0cmlidXRlIE5hbWU9IkRlcml2ZWRGcm9tLlVQVlNJZGVudGl0eUlEIiBOYW1lRm9ybWF0PSJ1cm46b2FzaXM6bmFtZXM6dGM6U0FNTDoyLjA6YXR0cm5hbWUtZm9ybWF0OmJhc2ljIj48c2FtbDpBdHRyaWJ1dGVWYWx1ZSB4c2k6dHlwZT0ieHM6c3RyaW5nIiB4bWxuczp4cz0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEiLz48L3NhbWw6QXR0cmlidXRlPjwvc2FtbDpBdHRyaWJ1dGVTdGF0ZW1lbnQ+PC9zYW1sOkFzc2VydGlvbj4NCg== required: - saml_assertion responses: 200: description: | OBO token v JWT formáte, ktorého payload vyzerá nasledovne: { "sub": "ico://sk/83130022", "exp": 1545153549, "nbf": 1545146349, "iat": 1545146349, "jti": "ad8e5d2a-85ff-46b9-a13f-ac860db9acee", "name": "Identita 83130022", "actor": { "name": "Janko Tisíci", "sub": "rc://sk/8314451337_tisici_janko" }, "scopes": [ "sktalk/receive", "sktalk/receive_and_save_to_outbox", "sktalk/save_to_outbox" ] } content: application/json: schema: type: object properties: token: schema: type: string format: jwt required: - token security: - 'API Token': [] /logout: get: tags: [Prihlasovanie pomocou eID] summary: Odhlási používateľa description: | Odhlási používateľa pomocou slovensko.sk (ÚPVS). Po úspešnom odhlásení nasleduje presmerovanie späť na callback URL tretej strany nastavený v premenných prostredia API (LOGOUT_CALLBACK_URL). Ak URL obsahuje callback (pri odhlásení iniciovanom zo strany ÚPVS), je potrebné spraviť redirect na callback. responses: 302: description: Úspešné presmerovanie na callback URL tretej strany. callbacks: logout_callback: '{$LOGOUT_CALLBACK_URL}': get: responses: 200: description: Úspešné odhlásenie. security: - 'API + OBO Token': [] /api/upvs/assertion: get: tags: [Informácie o prihlásenom používateľovi] summary: Vráti bezpečnostné informácie prihláseného používateľa description: | Vráti bezpečnostné informácie prihláseného používateľa. parameters: - name: Accept in: header required: true schema: type: string format: mime example: application/samlassertion+xml responses: 200: description: Úspešne vrátené bezpečnostné informácie prihláseného používateľa. content: application/samlassertion+xml: schema: type: string format: saml xml: prefix: saml name: Assertion namespace: urn:oasis:names:tc:SAML:2.0:assertion example: ... security: - 'API + OBO Token': [] /api/upvs/identity: get: tags: [Informácie o prihlásenom používateľovi] summary: Vráti identitu prihláseného používateľa description: | Vráti identitu prihláseného používateľa. Pozor, volanie je dostupné len pre OVM. responses: 200: description: Úspešne vrátená identita prihláseného používateľa. content: application/json: schema: oneOf: - $ref: '#/components/schemas/UpvsNaturalPerson' - $ref: '#/components/schemas/UpvsCorporateBody' security: - 'API + OBO Token': [] /api/sktalk/receive: post: tags: [Zasielanie podaní] summary: Odošle správu description: | Odošle SKTalk správu. Za normálnych okolností je potrebné odoslanú správu následne uložiť medzi odoslané správy v schránke. Využite endpoint `api/sktalk/save_to_outbox` alebo `api/sktalk/receive_and_save_to_outbox`. requestBody: required: true content: application/json: schema: type: object properties: message: description: SKTalk správa vo formáte XML. type: string format: xml example: Slovensko.DigitalPozdrav zo Slovensko.DIgital. :) unsigned_zepfzip_objects: description: Nepodpísané dátové objekty v ZEPf. type: array items: description: Objekt podpisu. properties: id: description: Identifikátor objektu. type: string example: Vseobecna_agenda.xml data: description: Dáta objektu. type: string example: Slovensko.DigitalPozdrav zo Slovensko.DIgital. :) unsigned_asic_objects: description: Nepodpísané dátové objekty v ASIC. type: array items: description: Objekt podpisu. properties: id: description: Identifikátor objektu. type: string example: Vseobecna_agenda.xml data: description: Dáta objektu. type: string example: Slovensko.DigitalPozdrav zo Slovensko.DIgital. :) required: - result - description security: - 'API Token': [] /api/mdurz/records: post: tags: [Dlhodobé úložisko] summary: Vloží nový záznam do úložiska description: | Odošle požiadavku na vloženie nového záznamu do úložiska. Do schránky príde odpoveď s SKTalk triedou `MDURZ_INGEST_REPLY_04`. Voči zaslanej požiadavke je možné párovanie cez poskytnutý `request_id`. Volanie automaticky validuje, či je interne používaná správna verzia formulára. Nie je potrebné kontrolovať validitu formulára externe. parameters: - name: request_id in: query required: true description: Identifikátor požiadavky. schema: type: string format: uuid - name: custom_id in: query required: true description: Značka záznamu. schema: type: string - name: title in: query required: true description: Názov záznamu. schema: type: string - name: description in: query required: true description: Popis záznamu. schema: type: string - name: access in: query required: true description: | Indikátor dostupnosti záznamu: - `PUBLIC` verejný, - `PRIVATE` súkromný. schema: type: string enum: [PUBLIC, PRIVATE] - name: retention_period in: query required: true description: | Dĺžka uchovania záznamu: - `R1` uchovanie na 1 rok, - `R2` uchovanie na 2 roky, - `R5` uchovanie na 5 rokov. schema: type: string enum: [R1, R3, R5] requestBody: required: true content: application/json: schema: type: object properties: message_id: type: string format: uuid correlation_id: type: string format: uuid sender_uri: type: string format: uri recipient_uri: type: string format: uri objects: type: array items: $ref: '#/components/schemas/EdeskMessageObject' required: - message_id - correlation_id - sender_uri - recipient_uri - objects responses: 200: description: Úspešné odoslanie požiadavky na vloženie nového záznamu do úložiska. content: application/json: schema: $ref: '#/components/schemas/SktalkReceiveAndSaveToOutboxResult' examples: 'Úspešné odoslanie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutboxWithNoSave' 'Úspešné odoslanie a úspešné uloženie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutbox' 'Úspešné odoslanie a neúspešné uloženie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutboxWithNonZeroSave' 'Neúspešné odoslanie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutboxWithNonZeroReceive' 408: description: Neúspešné odoslanie požiadavky na vloženie nového záznamu do úložiska ak prišlo k vypršaniu času požiadavky na ÚPVS. content: application/json: schema: $ref: '#/components/schemas/SktalkReceiveAndSaveToOutboxResult' examples: 'Úspešné odoslanie a neúspešné uloženie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutboxWithSaveTimeout' 'Neúspešné odoslanie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutboxWithReceiveTimeout' security: - 'API Token': [] /api/mdurz/records/{id}: patch: tags: [Dlhodobé úložisko] summary: Zmení popisné údaje záznamu v úložisku description: | Odošle požiadavku na zmenu popisných údajov záznamu v úložisku. Do schránky príde odpoveď s SKTalk triedou `MDURZ_SET_METADATA_REPLY_04`. Voči zaslanej požiadavke je možné párovanie cez poskytnutý `request_id`. Volanie automaticky validuje, či je interne používaná správna verzia formulára. Nie je potrebné kontrolovať validitu formulára externe. parameters: - name: id in: path required: true description: Identifikátor záznamu v úložisku. schema: type: string format: uuid - name: request_id in: query required: true description: Identifikátor požiadavky. schema: type: string format: uuid - name: custom_id in: query required: true description: Nová značka záznamu. schema: type: string - name: title in: query required: true description: Nový názov záznamu. schema: type: string - name: description in: query required: true description: Nový popis záznamu. schema: type: string - name: access in: query required: true description: | Nový indikátor dostupnosti záznamu: - `PUBLIC` verejný, - `PRIVATE` súkromný. schema: type: string enum: [PUBLIC, PRIVATE] requestBody: required: true content: application/json: schema: type: object properties: message_id: type: string format: uuid correlation_id: type: string format: uuid sender_uri: type: string format: uri recipient_uri: type: string format: uri required: - message_id - correlation_id - sender_uri - recipient_uri responses: 200: description: Úspešné odoslanie požiadavky na zmenu popisných údajov záznamu v úložisku. content: application/json: schema: $ref: '#/components/schemas/SktalkReceiveAndSaveToOutboxResult' examples: 'Úspešné odoslanie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutboxWithNoSave' 'Úspešné odoslanie a úspešné uloženie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutbox' 'Úspešné odoslanie a neúspešné uloženie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutboxWithNonZeroSave' 'Neúspešné odoslanie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutboxWithNonZeroReceive' 408: description: Neúspešné odoslanie požiadavky na zmenu popisných údajov záznamu v úložisku ak prišlo k vypršaniu času požiadavky na ÚPVS. content: application/json: schema: $ref: '#/components/schemas/SktalkReceiveAndSaveToOutboxResult' examples: 'Úspešné odoslanie a neúspešné uloženie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutboxWithSaveTimeout' 'Neúspešné odoslanie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutboxWithReceiveTimeout' security: - 'API Token': [] delete: tags: [Dlhodobé úložisko] summary: Vyradí záznam z úložiska description: | Odošle požiadavku na vyradenie záznamu z úložiska. Do schránky príde odpoveď s SKTalk triedou `MDURZ_CANCEL_PRESERVATION_REPLY_04` obsahujúca uložený záznam. Voči zaslanej požiadavke je možné párovanie cez poskytnutý `request_id`. Volanie automaticky validuje, či je interne používaná správna verzia formulára. Nie je potrebné kontrolovať validitu formulára externe. parameters: - name: id in: path required: true description: Identifikátor záznamu v úložisku. schema: type: string format: uuid - name: request_id in: query required: true description: Identifikátor požiadavky. schema: type: string format: uuid - name: destination in: query required: true description: Cieľ poskytnutia záznamu. schema: type: string enum: [EDESK, NONE] requestBody: required: true content: application/json: schema: type: object properties: message_id: type: string format: uuid correlation_id: type: string format: uuid sender_uri: type: string format: uri recipient_uri: type: string format: uri required: - message_id - correlation_id - sender_uri - recipient_uri responses: 200: description: Úspešné odoslanie požiadavky na vyradenie záznamu z úložiska. content: application/json: schema: $ref: '#/components/schemas/SktalkReceiveAndSaveToOutboxResult' examples: 'Úspešné odoslanie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutboxWithNoSave' 'Úspešné odoslanie a úspešné uloženie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutbox' 'Úspešné odoslanie a neúspešné uloženie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutboxWithNonZeroSave' 'Neúspešné odoslanie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutboxWithNonZeroReceive' 408: description: Neúspešné odoslanie požiadavky na vyradenie záznamu z úložiska ak prišlo k vypršaniu času požiadavky na ÚPVS. content: application/json: schema: $ref: '#/components/schemas/SktalkReceiveAndSaveToOutboxResult' examples: 'Úspešné odoslanie a neúspešné uloženie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutboxWithSaveTimeout' 'Neúspešné odoslanie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutboxWithReceiveTimeout' security: - 'API Token': [] /api/mdurz/records/{id}/extend: patch: tags: [Dlhodobé úložisko] summary: Predĺži dobu uchovania záznamu v úložisku description: | Odošle požiadavku na predĺženie doby uchovania záznamu v úložisku. Do schránky príde odpoveď s SKTalk triedou `MDURZ_EXTEND_PRESERVATION_REPLY_04` obsahujúca uložený záznam. Voči zaslanej požiadavke je možné párovanie cez poskytnutý `request_id`. MDURZ zasiela notifikačné správy o blížiacej sa končicej lehote s SKTalk triedou `MDURZ_EXPIRATION_WARNING_04` a notifikačné správy o expirovanom zázname s SKTalk triedou `MDURZ_EXPIRATION_NOTIFICATION_04`. Volanie automaticky validuje, či je interne používaná správna verzia formulára. Nie je potrebné kontrolovať validitu formulára externe. parameters: - name: id in: path required: true description: Identifikátor záznamu v úložisku. schema: type: string format: uuid - name: request_id in: query required: true description: Identifikátor požiadavky. schema: type: string format: uuid - name: retention_period in: query required: true description: | Dĺžka uchovania záznamu: - `R1` predĺženie o 1 rok, - `R2` predĺženie o 2 roky, - `R5` predĺženie o 5 rokov. schema: type: string enum: [R1, R3, R5] requestBody: required: true content: application/json: schema: type: object properties: message_id: type: string format: uuid correlation_id: type: string format: uuid sender_uri: type: string format: uri recipient_uri: type: string format: uri required: - message_id - correlation_id - sender_uri - recipient_uri responses: 200: description: Úspešné odoslanie požiadavky na predĺženie doby uchovania záznamu v úložisku. content: application/json: schema: $ref: '#/components/schemas/SktalkReceiveAndSaveToOutboxResult' examples: 'Úspešné odoslanie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutboxWithNoSave' 'Úspešné odoslanie a úspešné uloženie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutbox' 'Úspešné odoslanie a neúspešné uloženie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutboxWithNonZeroSave' 'Neúspešné odoslanie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutboxWithNonZeroReceive' 408: description: Neúspešné odoslanie požiadavky na predĺženie doby uchovania záznamu v úložisku ak prišlo k vypršaniu času požiadavky na ÚPVS. content: application/json: schema: $ref: '#/components/schemas/SktalkReceiveAndSaveToOutboxResult' examples: 'Úspešné odoslanie a neúspešné uloženie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutboxWithSaveTimeout' 'Neúspešné odoslanie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutboxWithReceiveTimeout' security: - 'API Token': [] /api/mdurz/records/{id}/disseminate: post: tags: [Dlhodobé úložisko] summary: Získa záznam z úložiska description: | Odošle požiadavku na získanie záznamu z úložiska. Do schránky príde odpoveď s SKTalk triedou `MDURZ_DISSEMINATE_REPLY_04` obsahujúca uložený záznam. Voči zaslanej požiadavke je možné párovanie cez poskytnutý `request_id`. Volanie automaticky validuje, či je interne používaná správna verzia formulára. Nie je potrebné kontrolovať validitu formulára externe. parameters: - name: id in: path required: true description: Identifikátor záznamu v úložisku. schema: type: string format: uuid - name: request_id in: query required: true description: Identifikátor požiadavky. schema: type: string format: uuid - name: destination in: query required: true description: Cieľ poskytnutia záznamu. schema: type: string enum: [EDESK, NONE] requestBody: required: true content: application/json: schema: type: object properties: message_id: type: string format: uuid correlation_id: type: string format: uuid sender_uri: type: string format: uri recipient_uri: type: string format: uri required: - message_id - correlation_id - sender_uri - recipient_uri responses: 200: description: Úspešné odoslanie požiadavky na získanie záznamu z úložiska. content: application/json: schema: $ref: '#/components/schemas/SktalkReceiveAndSaveToOutboxResult' examples: 'Úspešné odoslanie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutboxWithNoSave' 'Úspešné odoslanie a úspešné uloženie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutbox' 'Úspešné odoslanie a neúspešné uloženie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutboxWithNonZeroSave' 'Neúspešné odoslanie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutboxWithNonZeroReceive' 408: description: Neúspešné odoslanie požiadavky na získanie záznamu z úložiska ak prišlo k vypršaniu času požiadavky na ÚPVS. content: application/json: schema: $ref: '#/components/schemas/SktalkReceiveAndSaveToOutboxResult' examples: 'Úspešné odoslanie a neúspešné uloženie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutboxWithSaveTimeout' 'Neúspešné odoslanie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutboxWithReceiveTimeout' security: - 'API Token': [] /api/cuet/documents/publish_document: post: tags: [Centrálna úradná tabuľa (dostupné len pre OVM)] summary: Zverejnení dokument description: | Odošle požiadavku na zverejnenie dokumentu. Do schránky príde odpoveď s SKTalk triedou `CUET_NOTIFY_ENTERING`. Voči zaslanej požiadavke je možné párovanie cez poskytnutý `request_id`. Volanie automaticky validuje, či je interne používaná správna verzia formulára. Nie je potrebné kontrolovať validitu formulára externe. Pozor, volanie je dostupné len pre OVM. parameters: - name: request_id in: query required: true description: Identifikátor požiadavky. schema: type: string format: uuid - name: publisher_uri in: query required: true description: Identifikátor inštitúcie, ktorá je zverejňovateľom dokumentu. schema: type: string format: uri - name: author_uri in: query required: true description: Identifikátor identity, ktorá je autorom dokumentu. schema: type: string format: uri - name: original_id in: query description: Identifikátor dokumentu, ktorý je pridelený autorom. schema: type: string format: uuid - name: name in: query description: Názov dokumentu. required: true schema: type: string - name: abstract in: query description: Abstrakt dokumentu. schema: type: string - name: registry_mark in: query description: Registratúrna značka dokumentu. schema: type: string - name: registry_number in: query description: Číslo registratúrneho záznamu dokumentu. schema: type: string - name: published_from in: query description: Začiatok zverejnenia dokumentu. schema: type: string - name: published_days in: query description: Počet dní počas ktorých má byť dokument zverejnený. schema: type: string requestBody: required: true content: application/json: schema: type: object properties: message_id: type: string format: uuid correlation_id: type: string format: uuid sender_uri: type: string format: uri recipient_uri: type: string format: uri objects: type: array items: $ref: '#/components/schemas/EdeskMessageObject' required: - message_id - correlation_id - sender_uri - recipient_uri - objects responses: 200: description: Úspešné odoslanie požiadavky na zverejnenie dokumentu. content: application/json: schema: $ref: '#/components/schemas/SktalkReceiveAndSaveToOutboxResult' examples: 'Úspešné odoslanie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutboxWithNoSave' 'Úspešné odoslanie a úspešné uloženie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutbox' 'Úspešné odoslanie a neúspešné uloženie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutboxWithNonZeroSave' 'Neúspešné odoslanie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutboxWithNonZeroReceive' 408: description: Neúspešné odoslanie požiadavky na zverejnenie dokumentu ak prišlo k vypršaniu času požiadavky na ÚPVS. content: application/json: schema: $ref: '#/components/schemas/SktalkReceiveAndSaveToOutboxResult' examples: 'Úspešné odoslanie a neúspešné uloženie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutboxWithSaveTimeout' 'Neúspešné odoslanie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutboxWithReceiveTimeout' security: - 'API Token': [] /api/cuet/documents/deliver_by_publishing: post: tags: [Centrálna úradná tabuľa (dostupné len pre OVM)] summary: Doručí dokument zverejnením description: | Odošle požiadavku na doručenie dokumentu zverejnením. Do schránky príde odpoveď s SKTalk triedou `CUET_NOTIFY_DELIVERY`. Voči zaslanej požiadavke je možné párovanie cez poskytnutý `request_id`. Volanie automaticky validuje, či je interne používaná správna verzia formulára. Nie je potrebné kontrolovať validitu formulára externe. Pozor, volanie je dostupné len pre OVM. parameters: - name: request_id in: query required: true description: Identifikátor požiadavky. schema: type: string format: uuid - name: publisher_uri in: query required: true description: Identifikátor inštitúcie, ktorá je zverejňovateľom dokumentu. schema: type: string format: uri - name: author_uri in: query required: true description: Identifikátor identity, ktorá je autorom dokumentu. schema: type: string format: uri - name: original_id in: query description: Identifikátor dokumentu, ktorý je pridelený autorom. schema: type: string format: uuid - name: name in: query required: true description: Názov dokumentu. schema: type: string - name: abstract in: query description: Abstrakt dokumentu. schema: type: string - name: registry_mark in: query description: Registratúrna značka dokumentu. schema: type: string - name: registry_number in: query description: Číslo registratúrneho záznamu dokumentu. schema: type: string - name: published_from in: query description: Začiatok zverejnenia dokumentu. schema: type: string - name: published_days in: query description: Počet dní počas ktorých má byť dokument zverejnený. schema: type: string requestBody: required: true content: application/json: schema: type: object properties: message_id: type: string format: uuid correlation_id: type: string format: uuid sender_uri: type: string format: uri recipient_uri: type: string format: uri objects: type: array items: $ref: '#/components/schemas/EdeskMessageObject' required: - message_id - correlation_id - sender_uri - recipient_uri - objects responses: 200: description: Úspešné odoslanie požiadavky na doručenie dokumentu zverejnením. content: application/json: schema: $ref: '#/components/schemas/SktalkReceiveAndSaveToOutboxResult' examples: 'Úspešné odoslanie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutboxWithNoSave' 'Úspešné odoslanie a úspešné uloženie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutbox' 'Úspešné odoslanie a neúspešné uloženie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutboxWithNonZeroSave' 'Neúspešné odoslanie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutboxWithNonZeroReceive' 408: description: Neúspešné odoslanie požiadavky na doručenie dokumentu zverejnením ak prišlo k vypršaniu času požiadavky na ÚPVS. content: application/json: schema: $ref: '#/components/schemas/SktalkReceiveAndSaveToOutboxResult' examples: 'Úspešné odoslanie a neúspešné uloženie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutboxWithSaveTimeout' 'Neúspešné odoslanie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutboxWithReceiveTimeout' security: - 'API Token': [] /api/cuet/documents/{id}: patch: tags: [Centrálna úradná tabuľa (dostupné len pre OVM)] summary: Zmení dobu zverejnenia dokumentu description: | Odošle požiadavku na zmenu doby zverejnenia dokumentu. Do schránky príde odpoveď s SKTalk triedou `CUET_NOTIFY_REVOCATION`. Voči zaslanej požiadavke je možné párovanie cez poskytnutý `request_id`. Volanie automaticky validuje, či je interne používaná správna verzia formulára. Nie je potrebné kontrolovať validitu formulára externe. Pozor, volanie je dostupné len pre OVM. parameters: - name: id in: path required: true description: Identifikátor dokumentu. schema: type: string - name: request_id in: query required: true description: Identifikátor požiadavky. schema: type: string format: uuid - name: revocation_reason in: query required: true description: Dôvod odvolania zverejňovania. schema: type: string - name: revoked_on in: query required: true description: Dátum ukončenia zverejňovania. schema: type: string format: date requestBody: required: true content: application/json: schema: type: object properties: message_id: type: string format: uuid correlation_id: type: string format: uuid sender_uri: type: string format: uri recipient_uri: type: string format: uri required: - message_id - correlation_id - sender_uri - recipient_uri responses: 200: description: Úspešné odoslanie požiadavky na zmenu doby zverejnenia dokumentu. content: application/json: schema: $ref: '#/components/schemas/SktalkReceiveAndSaveToOutboxResult' examples: 'Úspešné odoslanie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutboxWithNoSave' 'Úspešné odoslanie a úspešné uloženie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutbox' 'Úspešné odoslanie a neúspešné uloženie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutboxWithNonZeroSave' 'Neúspešné odoslanie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutboxWithNonZeroReceive' 408: description: Neúspešné odoslanie požiadavky na zmenu doby zverejnenia dokumentu zverejnením ak prišlo k vypršaniu času požiadavky na ÚPVS. content: application/json: schema: $ref: '#/components/schemas/SktalkReceiveAndSaveToOutboxResult' examples: 'Úspešné odoslanie a neúspešné uloženie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutboxWithSaveTimeout' 'Neúspešné odoslanie': $ref: '#/components/examples/SktalkReceiveAndSaveToOutboxWithReceiveTimeout' security: - 'API Token': [] /api/iam/identities/{id}: get: tags: [Vyhľadávanie identít (dostupné len pre OVM)] summary: Vráti identitu podľa ID description: | Vráti identitu na základe ID identity. Pozor, volanie je dostupné len pre OVM. parameters: - name: id in: path required: true description: ID identity. schema: type: string format: uuid example: 6d9dc77b-70ed-432f-abaa-5de8753c967c responses: 200: description: Úspešne vrátená identita. content: application/json: schema: oneOf: - $ref: '#/components/schemas/UpvsCorporateBody' - $ref: '#/components/schemas/UpvsNaturalPerson' examples: 'Právnická osoba': value: $ref: '#/components/schemas/UpvsCorporateBody/example' 'Fyzická osoba': value: $ref: '#/components/schemas/UpvsNaturalPerson/example' security: - 'API Token': [] /api/iam/identities/lookup: get: tags: [Vyhľadávanie identít (dostupné len pre OVM)] summary: Vráti identitu podľa osobných údajov alebo IČO description: | Vráti identitu na základe osobných údajov alebo IČO. Možné spôsoby vyhľadávania: - IČO (company_registration_number) samostatne, alebo - Všetky tri parametre spoločne: rodné číslo (personal_identification_number), krstné meno (given_name) a priezvisko (family_name) Pozor, volanie je dostupné len pre OVM. parameters: - name: personal_identification_number in: query required: false description: Rodné číslo fyzickej osoby. Vyžadované spolu s given_name a family_name, ak nie je poskytnuté company_registration_number. schema: type: string example: '1234567890' - name: given_name in: query required: false description: Krstné meno fyzickej osoby. Vyžadované spolu s personal_identification_number a family_name, ak nie je poskytnuté company_registration_number. schema: type: string example: 'Ján' - name: family_name in: query required: false description: Priezvisko fyzickej osoby. Vyžadované spolu s personal_identification_number a given_name, ak nie je poskytnuté company_registration_number. schema: type: string example: 'Novák' - name: company_registration_number in: query required: false description: IČO právnickej osoby. Môže byť použité samostatne na vyhľadávanie. schema: type: string example: '12345678' responses: 200: description: Úspešne vrátená identita. content: application/json: schema: oneOf: - $ref: '#/components/schemas/UpvsCorporateBody' - $ref: '#/components/schemas/UpvsNaturalPerson' examples: 'Právnická osoba': value: $ref: '#/components/schemas/UpvsCorporateBody/example' 'Fyzická osoba': value: $ref: '#/components/schemas/UpvsNaturalPerson/example' security: - 'API Token': [] /api/iam/identities/search: post: tags: [Vyhľadávanie identít (dostupné len pre OVM)] summary: Vyhľadá identity podľa kritérií description: | Vyhľadá identity podľa kritérií. Pozor, volanie je dostupné len pre OVM. requestBody: required: true content: application/json: schema: type: object properties: ids: description: ID identít. type: array items: type: string format: uuid example: 6d9dc77b-70ed-432f-abaa-5de8753c967c uris: description: URI identít. type: array items: type: string format: uri example: ico://sk/42156424 en: description: Identifikátor schránky. type: string example: E0000012800 type: description: | Typ identity: - `natural_person` fyzická osoba, - `legal_entity` právnická osoba, - `technical_account` technický účet, - `employee_of_public_administration` zamestnanec verejnej správy, - `institution_of_public_administration` orgán verejnej moci. type: string enum: [natural_person, legal_entity, technical_account, administrator_crap, employee_of_public_administration, institution_of_public_administration, edemocracy_user] email: type: string format: email phone: type: string format: phone address: description: Adresa trvalého pobytu alebo kontaktná adresa. type: object properties: type: description: | Typ adresy: - `contact` kontaktná adresa, - `resident` adresa trvalého pobytu. type: string enum: [contact, resident] country: description: Krajina podľa číselníka ŠÚSR 0086 type: object properties: id: type: string name: type: string district: description: Okres podľa číselníka ŠÚSR 0024. type: object properties: id: type: string name: type: string municipality: description: Obec podľa číselníka ŠÚSR 0025. type: object properties: id: type: string name: type: string street: description: Ulica. type: string building_number: description: Orientačné číslo budovy. type: string registration_number: description: Súpisné číslo budovy. type: integer required: - type legal_entity: description: Právnická osoba. type: object properties: cin: description: IČO. type: integer tin: description: DIČ. type: integer name: description: Názov. type: string # TODO # legal_form: # description: Právna forma podľa číselníka ŠÚSR 0056. # type: integer # example: natural_person: description: Fyzická osoba. type: object properties: # TODO # type: # description: | # Typ fyzickej osoby: # - `` , # - `` . # type: string # enum: [] given_name: description: Meno. Pozri `match`. type: string family_name: description: Priezvisko. Pozri `match`. type: string date_of_birth: description: Dátum narodenia. type: string format: date place_of_birth: description: Miesto narodenia. type: string match: description: Spôsob vyhľadávania atribútov `corporate_body.name`, `natural_person.given_name` a `natural_person.family_name`. type: string enum: [exact, prefix, infix] default: exact page: description: Číslo stránky zoznamu identít. type: integer minimum: 1 default: 1 example: 1 per_page: description: Počet identít na stránke zoznamu. type: integer minimum: 10 maximum: 100 default: 10 example: 10 examples: 'Identity by ID': value: ids: - 6d9dc77b-70ed-432f-abaa-5de8753c967c 'Identity by URI': value: uris: - ico://sk/42156424 'Corporate body by CIN': value: corporate_body: cin: 42156424 'Corporate body by name prefix': value: corporate_body: name: Národná agentúra match: prefix 'Natural person by given name': value: natural_person: given_name: Ján 'Natural person by family name prefix': value: natural_person: family_name: H match: prefix responses: 200: description: Úspešne vyhľadané identity podľa kritérií. content: application/json: schema: type: array items: oneOf: - $ref: '#/components/schemas/UpvsCorporateBody' - $ref: '#/components/schemas/UpvsNaturalPerson' security: - 'API Token': [] /api/cud/authorization_clause: post: tags: [Centrálne úradné doručovanie (dostupné len pre OVM)] summary: Vygeneruje doložku o autorizácii description: | Vygeneruje doložku o autorizácii. Pozor, volanie je dostupné len pre OVM. requestBody: required: true content: application/json: schema: type: object properties: created_by: description: Meno, priezvisko a pracovná pozícia zamestnanca, ktorý generuje doložku o autorizácii. type: string example: Meno priezvisko, odborný referent message_container: description: XML MessageContainer-a s EÚD zakódované pomocou Base64. type: string format: base64 example: PE1lc3NhZ2VDb250YWluZXIgeG1... required: - created_by - message_container responses: 200: description: Úspešne vygenerovaná doložka o autorizácii. content: application/json: schema: type: object properties: authorization_clause: description: Elektronický formulár vytvorenej doložky o autorizácii. type: string format: base64 example: PEF1dGhvcml6YXRpb... metadata_container: description: MetadataContainer, ktorý obsahuje MetadataItem, AuthorizationClauseMetadata. V ňom sú dodatočné informácie o prílohach spomenutých v doložke o autorizácii. type: string format: base64 example: PE1ldGFkYXRhQ29... required: - authorization_clause - metadata_container 422: description: Neúspešný pokus o vygenerovanie doložky o autorizácii, chyba vo vstupných dátach. content: application/json: schema: type: object properties: message: description: Chybová hláška z ÚPVS type: string example: Správa neobsahuje žiadny podpísaný dokument. security: - 'API Token': [] /api/usr: post: tags: [Univerzálne synchrónne rozhranie služieb ÚPVS] summary: Vráti odpoveď synchrónnej služby ÚPVS description: | Vráti odpoveď synchrónnej služby ÚPVS. parameters: - name: Accept in: header required: true schema: type: string format: mime example: application/xml requestBody: required: true content: application/json: schema: type: object properties: service: description: Názov služby. type: string example: DITEC_CEP_PODPISANIE_DOKUMENTOV2_ASSERTIONS request: description: Požiadavka služby vo formáte XML. type: string format: xml example: `, - alebo v URL parametri požiadavky ako `?token=`. Poznámky: - hodnota `exp` sa odporúča nastaviť na čo najkratší možný čas od vytvorenia tokenu, - hodnota `exp` sa kontroluje ako počet sekúnd od 1970-01-01T00:00:00 UTC, - hodnota `jti` sa kontroluje podľa regulárneho výrazu `/\A[0-9a-z\-_]{32,256}\z/i`, - rovnaké `jti` sa nesmie použiť v viac ako jedenkrát počas 5 minút. type: http scheme: bearer bearerFormat: JWT 'API Token': description: | Požaduje API token vytvorený treťou stranou, ktorý: - je zakodovaný algoritmom RS256, - je podpísaný privátnym kľúčom tretej strany, - má nastavený `sub` claim na identifikátor certifikátu, ktorý reprezentuje ÚPVS identitu, - má nastavený `exp` claim na čas expirácie, ktorý vyprší o 5 minút alebo skôr od vytvorenia tokenu, - má nastavený `jti` claim na identifikátor, ktorý je unikátny počas 5 minút. Pre riešenia, ktoré jedným certifikátom zastupujú viacero subjektov je požadovaný API token, ktorý navyše: - má nastavený `obo` claim na UUID identifikátor zastupovanej ÚPVS identity. Príklad `header` segmentu: { "alg": "RS256" } Príklad `payload` segmentu: { "sub": "iscep_00956852_10236", "obo": "28830fdf-58ea-4654-8a2a-b3c3e182b2ee" "exp": 1543437976, "jti": "4dee8618-abbe-4dc3-83ba-e984d1396f9f" } API token musí byť prítomný buď: - v hlavičke požiadavky ako `Authorization: Bearer `, - alebo v URL parametri požiadavky ako `?token=`. Poznámky: - identifikátor `sub` reprezentuje ÚPVS identitu, pre ktorú existuje zaregistrovaný certifikát s týmto identifikátorom, - nepovinný identifikátor `obo` reprezentuje zastupovanú ÚPVS identitu a nastavuje sa iba pre riešenia, ktoré jedným certifikátom zastupujú viacero subjektov pomocou `OnBehalfOfID`, - hodnota `obo` sa kontroluje podľa regulárneho výrazu `/\A[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\z/i`, - hodnota `exp` sa odporúča nastaviť na čo najkratší možný čas od vytvorenia tokenu, - hodnota `exp` sa kontroluje ako počet sekúnd od 1970-01-01T00:00:00 UTC, - hodnota `jti` sa kontroluje podľa regulárneho výrazu `/\A[0-9a-z\-_]{32,256}\z/i`, - rovnaké `jti` sa nesmie použiť viac ako jedenkrát počas 120 minút. type: http scheme: bearer bearerFormat: JWT 'API + OBO Token': description: | Požaduje API token vytvorený treťou stranou, ktorý: - je zakodovaný algoritmom RS256, - je podpísaný privátnym kľúčom tretej strany, - má nastavenú `cty` header na hodnotu `JWT`, - má nastavený `exp` claim na čas expirácie, ktorý vyprší o 5 minút alebo skôr od vytvorenia tokenu, - má nastavený `jti` claim na identifikátor, ktorý je unikátny počas 5 minút, - môže mať nastavený identifikátor `sub`, ktorý reprezentuje ÚPVS identitu, pre ktorú existuje zaregistrovaný certifikát s týmto identifikátorom, - má nastavený `obo` claim na hodnotu OBO tokenu, ktorý je získaný po úspešnom prihlásení. Príklad `header` segmentu: { "alg": "RS256", "cty": "JWT" } Príklad `payload` segmentu: { "exp": 1543437976, "jti": "4dee8618-abbe-4dc3-83ba-e984d1396f9f", "sub": "iscep_00956852_10236", "obo": "eyJhbGciOiJIUzI1NiJ9 ..." } API token musí byť prítomný buď: - v hlavičke požiadavky ako `Authorization: Bearer `, - alebo v URL parametri požiadavky ako `?token=`. Poznámky: - hodnota `exp` sa odporúča nastaviť na čo najkratší možný čas od vytvorenia tokenu, - hodnota `exp` sa kontroluje ako počet sekúnd od 1970-01-01T00:00:00 UTC, - hodnota `jti` sa kontroluje podľa regulárneho výrazu `/\A[0-9a-z\-_]{32,256}\z/i`, - rovnaké `jti` sa nesmie použiť viac ako jedenkrát počas 5 minút. - hodnota nepovinného atribútu `sub` reprezentuje OBO proxy subject (ak atribút nie je prítomný, použije sa hodnota ENV premennej `SSO_PROXY_SUBJECT`). type: http scheme: bearer bearerFormat: JWT