11183 lines
418 KiB
JSON
11183 lines
418 KiB
JSON
{
|
||
"openapi": "3.0.4",
|
||
"info": {
|
||
"title": "KSeF API TE",
|
||
"description": "**Wersja API:** 2.0.0 (build 2.0.0-rc5.7-te-20251127.1+390ad3e147d90ab086bf22c3fcd354002449bf11)<br>\n**Klucze publiczne** Ministerstwa Finansów (dla danego środowiska): [Pobierz klucze](#tag/Certyfikaty-klucza-publicznego)<br>\n**Historia zmian:** [Changelog](https://github.com/CIRFMF/ksef-docs/blob/main/api-changelog.md)<br>\n**Rozszerzona dokumentacja API:** [ksef-docs](https://github.com/CIRFMF/ksef-docs/tree/main)\n",
|
||
"version": "v2"
|
||
},
|
||
"paths": {
|
||
"/api/v2/auth/sessions": {
|
||
"get": {
|
||
"tags": [
|
||
"Aktywne sesje"
|
||
],
|
||
"summary": "Pobranie listy aktywnych sesji",
|
||
"description": "Zwraca listę aktywnych sesji uwierzytelnienia.\n\n**Sortowanie:**\n\n- startDate (Desc)\n\n",
|
||
"parameters": [
|
||
{
|
||
"name": "x-continuation-token",
|
||
"in": "header",
|
||
"description": "Token służący do pobrania kolejnej strony wyników.",
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
{
|
||
"name": "pageSize",
|
||
"in": "query",
|
||
"description": "Rozmiar strony wyników.",
|
||
"schema": {
|
||
"maximum": 100,
|
||
"exclusiveMaximum": false,
|
||
"minimum": 10,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 10
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/AuthenticationListResponse"
|
||
},
|
||
"example": {"continuationToken":"W3siY29tcG9zaXRlVG9rZW4iOnsidG9rZW4iOm51bGwsInJhbmdlIjp7Im1pbiI6IjA1QzFFMCIsIm1heCI6IkZGIn19LCJyZXN1bWVWYWx1ZXMiOlsiMjAyNS0xMC0wM1QxMjoxODo0OS4zNDY2ODQ3WiJdLCJyaWQiOiIzeHd0QVBJWDVRRlVoZ0FBQUFBQUJBPT0iLCJza2lwQ291bnQiOjF9XQ==","items":[{"referenceNumber":"20251010-AU-19F5E39000-39B5B182BA-B8","isCurrent":false,"startDate":"2025-10-11T12:23:56.0154302+00:00","authenticationMethod":"QualifiedSeal","status":{"code":200,"description":"Uwierzytelnianie zakończone sukcesem"},"isTokenRedeemed":true,"refreshTokenValidUntil":"2025-11-28T09:22:13.388+00:00"}]}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details | \n|---------------------|-----------------------------------------------------|-------------------------------------------------------------|\n| 21418 | Przekazany token kontynuacji ma nieprawidłowy format. | |\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
],
|
||
"x-sort": [
|
||
{
|
||
"field": "startDate",
|
||
"direction": "Desc"
|
||
}
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/auth/sessions/current": {
|
||
"delete": {
|
||
"tags": [
|
||
"Aktywne sesje"
|
||
],
|
||
"summary": "Unieważnienie aktualnej sesji uwierzytelnienia",
|
||
"description": "Unieważnia sesję powiązaną z tokenem użytym do wywołania tej operacji.\n\nUnieważnienie sesji sprawia, że powiązany z nią refresh token przestaje działać i nie można już za jego pomocą uzyskać kolejnych access tokenów.\n**Aktywne access tokeny działają do czasu minięcia ich termin ważności.**\n\nSposób uwierzytelnienia: `RefreshToken` lub `AccessToken`.",
|
||
"responses": {
|
||
"204": {
|
||
"description": "No Content"
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|-|-|-|\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/auth/sessions/{referenceNumber}": {
|
||
"delete": {
|
||
"tags": [
|
||
"Aktywne sesje"
|
||
],
|
||
"summary": "Unieważnienie sesji uwierzytelnienia",
|
||
"description": "Unieważnia sesję o podanym numerze referencyjnym.\n\nUnieważnienie sesji sprawia, że powiązany z nią refresh token przestaje działać i nie można już za jego pomocą uzyskać kolejnych access tokenów.\n**Aktywne access tokeny działają do czasu minięcia ich termin ważności.**",
|
||
"parameters": [
|
||
{
|
||
"name": "referenceNumber",
|
||
"in": "path",
|
||
"description": "Numer referencyjny sesji uwierzytelnienia.",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReferenceNumber"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"204": {
|
||
"description": "No Content"
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|-|-|-|\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/certificates/limits": {
|
||
"get": {
|
||
"tags": [
|
||
"Certyfikaty"
|
||
],
|
||
"summary": "Pobranie danych o limitach certyfikatów",
|
||
"description": "Zwraca informacje o limitach certyfikatów oraz informacje czy użytkownik może zawnioskować o certyfikat KSeF.",
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CertificateLimitsResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/certificates/enrollments/data": {
|
||
"get": {
|
||
"tags": [
|
||
"Certyfikaty"
|
||
],
|
||
"summary": "Pobranie danych do wniosku certyfikacyjnego",
|
||
"description": "Zwraca dane wymagane do przygotowania wniosku certyfikacyjnego PKCS#10.\n\nDane te są zwracane na podstawie certyfikatu użytego w procesie uwierzytelnienia i identyfikują podmiot, który składa wniosek o certyfikat.\n\n\n> Więcej informacji:\n> - [Pobranie danych do wniosku certyfikacyjnego](https://github.com/CIRFMF/ksef-docs/blob/main/certyfikaty-KSeF.md#2-pobranie-danych-do-wniosku-certyfikacyjnego)\n> - [Przygotowanie wniosku](https://github.com/CIRFMF/ksef-docs/blob/main/certyfikaty-KSeF.md#3-przygotowanie-csr-certificate-signing-request)",
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CertificateEnrollmentDataResponse"
|
||
},
|
||
"example": {"commonName":"Firma Kowalski Certyfikat","countryName":"PL","serialNumber":"ABC123456789","uniqueIdentifier":"d9d22724-4696-460c-9e5e-b9e3aafb0af3","organizationName":"Firma Kowalski Sp. z o.o.","organizationIdentifier":"7762811692"}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|---------------------|-------------------------------------------------------------------------------------------|---------|\n| 25001 | Brak możliwości pobrania danych do CSR dla wykorzystanego sposobu uwierzytelnienia. | |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/certificates/enrollments": {
|
||
"post": {
|
||
"tags": [
|
||
"Certyfikaty"
|
||
],
|
||
"summary": "Wysyłka wniosku certyfikacyjnego",
|
||
"description": "Przyjmuje wniosek certyfikacyjny i rozpoczyna jego przetwarzanie.\n\nDozwolone typy kluczy prywatnych:\n- RSA (OID: 1.2.840.113549.1.1.1), długość klucza równa 2048 bitów,\n- EC (klucze oparte na krzywych eliptycznych, OID: 1.2.840.10045.2.1), krzywa NIST P-256 (secp256r1)\n\nZalecane jest stosowanie kluczy EC.\n\nDozwolone algorytmy podpisu:\n- RSA PKCS#1 v1.5,\n- RSA PSS,\n- ECDSA (format podpisu zgodny z RFC 3279)\n\nDozwolone funkcje skrótu użyte do podpisu CSR:\n- SHA1,\n- SHA256,\n- SHA384,\n- SHA512\n\n> Więcej informacji:\n> - [Wysłanie wniosku certyfikacyjnego](https://github.com/CIRFMF/ksef-docs/blob/main/certyfikaty-KSeF.md#4-wys%C5%82anie-wniosku-certyfikacyjnego)",
|
||
"requestBody": {
|
||
"description": "",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"required": [
|
||
"certificateName",
|
||
"certificateType",
|
||
"csr"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EnrollCertificateRequest"
|
||
}
|
||
]
|
||
},
|
||
"example": {"certificateName":"Certyfikat-Auth-004","certificateType":"Authentication","csr":"MIIDJjCCAd4CAQAwgbAxIjAgBgNVBAMMGUZpcm1hIEtvd2Fsc2tpIENlcnR5ZmlrYXQxIjAgBgNVBAoMGUZpcm1hIEtvd2Fsc2tpIFNwLiB6IG8uby4xEzARBgNVBGEMCjc3NjI4MTE2OTIxCzAJBgNVBAYTAlBMMRUwEwYDVQQFEwxBQkMxMjM0NTY3ODkxLTArBgNVBC0MJGQ5ZDIyNzI0LTQ2OTYtNDYwYy05ZTVlLWI5ZTNhYWZiMGFmMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANZC1hJiB4ZBsxGy/a4yvtOUP0HQxDt7EUZrfKO78+cmI7KCO9aW96yr6O0R928/Y9vmymbgh6KvMUTzZZj24uyxar849O1laor5t8Wv63RDx/I4+9Rt7w+QPPofmpenOokJH+Fm+FDQwo2l07o8SppGfaZpvMak+cDSrh+73wfM37fvPImr9p4ckzzxA9q6f4uoqGqcGSDlSwRjfLQKzWZaEklpZBpY4jeCh54uN3+YLsMQYKdcIbW0Jart1UbwMd/wbHfzFhVmPGOAMMpwVEBw6E4A0CTWIiAX3Alqbx4+IkuqC+gEs3ETTec7eOqhxe9V9cywi7WR+Mz6JO6DJcUCAwEAAaAAMD0GCSqGSIb3DQEBCjAwoA0wCwYJYIZIAWUDBAIBoRowGAYJKoZIhvcNAQEIMAsGCWCGSAFlAwQCAaIDAgEgA4IBAQCJhtF2/2E+JmkWitE/BGbm3NU4fIxr1Z+w0UnHsP+F8n9UDwAnuncG1GH5wZFervldEMooegzEDnYaqxnEUnbZ4wxeAHqpbTZjOOfqrk7o0r66+mXUs5NnyD4M3j3ig98GcvhEdbcNH+RsIwi7FaLNXnOE4SLYL9KvW0geriywWjS+5MmA0Gcn1e4vCD6FeEls8EHzkhrWE+rUsoM5zT2a0OPNXG3fScyOqOZe+OdjT4Y7ScRGy711u3v2X9RoTqQUDfCJ3cob/KRcrzvs1TQVazGZPfcIa6an6SigUvZ7XAMHlUTyOeM4AwKqiEqQ0qfe/HhlDylgZSwulb9u0utT","validFrom":"2025-08-28T09:22:13.388+00:00"}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"202": {
|
||
"description": "Accepted",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/EnrollCertificateResponse"
|
||
},
|
||
"example": {"referenceNumber":"20251010-EH-1B6C9EB000-4B15D3AEB9-89","timestamp":"2025-10-11T12:23:56.0154302+00:00"}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|---------------------|------------------------------------------------------------------------------------------------|---------|\n| 25002 | Brak możliwości złożenia wniosku certyfikacyjnego dla wykorzystanego sposobu uwierzytelnienia. | |\n| 25003 | Dane w CSR nie zgadzają się z danymi w użytym wektorze uwierzytelniającym. | |\n| 25004 | Niepoprawny format CSR lub niepoprawny podpis CSR. | |\n| 25006 | Osiągnięto limit możliwych do złożenia wniosków certyfikacyjnych. | |\n| 25007 | Osiągnięto limit dopuszczalnej liczby posiadanych certyfikatów. | |\n| 25010 | Nieprawidłowy typ lub długość klucza. | |\n| 25011 | Nieprawidłowy algorytm podpisu CSR. | |\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/certificates/enrollments/{referenceNumber}": {
|
||
"get": {
|
||
"tags": [
|
||
"Certyfikaty"
|
||
],
|
||
"summary": "Pobranie statusu przetwarzania wniosku certyfikacyjnego",
|
||
"description": "Zwraca informacje o statusie wniosku certyfikacyjnego.",
|
||
"parameters": [
|
||
{
|
||
"name": "referenceNumber",
|
||
"in": "path",
|
||
"description": "Numer referencyjny wniosku certyfikacyjnego",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReferenceNumber"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CertificateEnrollmentStatusResponse"
|
||
},
|
||
"example": {"requestDate":"2025-10-11T12:23:56.0154302+00:00","status":{"code":100,"description":"Wniosek przyjęty do realizacji"}}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|---------------------|------------------------------------------------------------------------------------------------|---------|\n| 25005 | Wniosek certyfikacyjny o podanym numerze referencyjnym nie istnieje. | |\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/certificates/retrieve": {
|
||
"post": {
|
||
"tags": [
|
||
"Certyfikaty"
|
||
],
|
||
"summary": "Pobranie certyfikatu lub listy certyfikatów",
|
||
"description": "Zwraca certyfikaty o podanych numerach seryjnych w formacie DER zakodowanym w Base64.",
|
||
"requestBody": {
|
||
"description": "",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"required": [
|
||
"certificateSerialNumbers"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/RetrieveCertificatesRequest"
|
||
}
|
||
]
|
||
},
|
||
"example": {"certificateSerialNumbers":["0321C82DA41B4362","0321F21DA462A362"]}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/RetrieveCertificatesResponse"
|
||
},
|
||
"example": {"certificates":[{"certificate":"AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWltcXV5fYGFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6e3x9fn+AgYKDhIWGh4iJiouMjY6PkJGSk5SVlpeYmZqbnJ2en6ChoqOkpaanqKmqq6ytrq+wsbKztLW2t7i5uru8vb6/wMHCw8TFxsfIycrLzM3Oz9DR0tPU1dbX2Nna29zd3t/g4eLj5OXm5+jp6uvs7e7v8PHy8/T19vf4+fr7/P3+/wABAgMEBQYHCAkKCwwNDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicoKSorLC0uLzAxMjM0NTY3ODk6Ozw9Pj9AQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVpbXF1eX2BhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ent8fX5/gIGCg4SFhoeIiYqLjI2Oj5CRkpOUlZaXmJmam5ydnp+goaKjpKWmp6ipqqusra6vsLGys7S1tre4ubq7vL2+v8DBwsPExcbHyMnKy8zNzs/Q0dLT1NXW19jZ2tvc3d7f4OHi4+Tl5ufo6err7O3u7/Dx8vP09fb3+Pn6+/z9/v8AAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2Nzg5Ojs8PT4/QEFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaW1xdXl9gYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXp7fH1+f4CBgoOEhYaHiImKi4yNjo+QkZKTlJWWl5iZmpucnZ6foKGio6SlpqeoqaqrrK2ur7CxsrO0tba3uLm6u7y9vr/AwcLDxMXGx8jJysvMzc7P0NHS09TV1tfY2drb3N3e3+Dh4uPk5ebn6Onq6+zt7u/w8fLz9PX29/j5+vv8/f7/AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWltcXV5fYGFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6e3x9fn+AgYKDhIWGh4iJiouMjY6PkJGSk5SVlpeYmZqbnJ2en6ChoqOkpaanqKmqq6ytrq+wsbKztLW2t7i5uru8vb6/wMHCw8TFxsfIycrLzM3Oz9DR0tPU1dbX2Nna29zd3t/g4eLj5OXm5+jp6uvs7e7v8PHy8/T19vf4+fr7/P3+/w==","certificateName":"Cert 00023","certificateSerialNumber":"0321C82DA41B4362","certificateType":"Authentication"}]}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|-|-|-|\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/certificates/{certificateSerialNumber}/revoke": {
|
||
"post": {
|
||
"tags": [
|
||
"Certyfikaty"
|
||
],
|
||
"summary": "Unieważnienie certyfikatu",
|
||
"description": "Unieważnia certyfikat o podanym numerze seryjnym.",
|
||
"parameters": [
|
||
{
|
||
"name": "certificateSerialNumber",
|
||
"in": "path",
|
||
"description": "Numer seryjny certyfikatu (w formacie szesnastkowym).",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"description": "",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/RevokeCertificateRequest"
|
||
}
|
||
]
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"204": {
|
||
"description": "No Content"
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|---------------------|------------------------------------------------------------------------------------------------|---------|\n| 25008 | Certyfikat o podanym numerze seryjnym nie istnieje. | |\n| 25009 | Nie można odwołać wskazanego certyfikatu, ponieważ jest już odwołany, zablokowany lub nieważny.| |\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/certificates/query": {
|
||
"post": {
|
||
"tags": [
|
||
"Certyfikaty"
|
||
],
|
||
"summary": "Pobranie listy metadanych certyfikatów",
|
||
"description": "Zwraca listę certyfikatów spełniających podane kryteria wyszukiwania.\nW przypadku braku podania kryteriów wyszukiwania zwrócona zostanie nieprzefiltrowana lista.\n\n**Sortowanie:**\n\n- requestDate (Desc)\n\n",
|
||
"parameters": [
|
||
{
|
||
"name": "pageSize",
|
||
"in": "query",
|
||
"description": "Rozmiar strony wyników",
|
||
"schema": {
|
||
"maximum": 50,
|
||
"exclusiveMaximum": false,
|
||
"minimum": 10,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 10
|
||
}
|
||
},
|
||
{
|
||
"name": "pageOffset",
|
||
"in": "query",
|
||
"description": "Numer strony wyników",
|
||
"schema": {
|
||
"minimum": 0,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 0
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"description": "Kryteria filtrowania",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/QueryCertificatesRequest"
|
||
}
|
||
]
|
||
},
|
||
"example": {"type":"Offline","status":"Active"}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/QueryCertificatesResponse"
|
||
},
|
||
"example": {"certificates":[{"certificateSerialNumber":"018209160C631F1E","name":"Certyfikat 1","type":"Authentication","commonName":"Jan Kowalski","status":"Active","subjectIdentifier":{"type":"Nip","value":"1234445678"},"validFrom":"2025-08-24T14:15:22+00:00","validTo":"2027-08-24T14:15:22+00:00","lastUseDate":"2025-08-25T14:15:22+00:00","requestDate":"2025-08-24T14:15:22+00:00"}],"hasMore":false}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|-|-|-|\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
],
|
||
"x-sort": [
|
||
{
|
||
"field": "requestDate",
|
||
"direction": "Desc"
|
||
}
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/security/public-key-certificates": {
|
||
"get": {
|
||
"tags": [
|
||
"Certyfikaty klucza publicznego"
|
||
],
|
||
"summary": "Pobranie certyfikatów",
|
||
"description": "Zwraca informacje o kluczach publicznych używanych do szyfrowania danych przesyłanych do systemu KSeF.",
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/PublicKeyCertificate"
|
||
}
|
||
},
|
||
"example": [{"certificate":"MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwocTwdNgt2+PXJ2fcB7k1kn5eFUTXBeep9pH...","validFrom":"2024-07-11T12:23:56.0154302+00:00","validTo":"2028-07-11T12:23:56.0154302+00:00","usage":["KsefTokenEncryption","SymmetricKeyEncryption"]}]
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/v2/testdata/subject": {
|
||
"post": {
|
||
"tags": [
|
||
"Dane testowe"
|
||
],
|
||
"summary": "Utworzenie podmiotu",
|
||
"description": "Tworzenie nowego podmiotu testowego. W przypadku grupy VAT i JST istnieje możliwość stworzenia jednostek podrzędnych. W wyniku takiego działania w systemie powstanie powiązanie między tymi podmiotami.",
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"required": [
|
||
"subjectNip",
|
||
"subjectType",
|
||
"description"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/SubjectCreateRequest"
|
||
}
|
||
]
|
||
},
|
||
"example": {"subjectNip":"7762811692","subjectType":"EnforcementAuthority","description":"Centrala","createdDate":"2025-08-25T14:15:22+00:00"}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK"
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|---------------------|------------------------------------------------------------|---------|\n| 30001 | Podmiot lub uprawnienie już istnieje. | |\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/v2/testdata/subject/remove": {
|
||
"post": {
|
||
"tags": [
|
||
"Dane testowe"
|
||
],
|
||
"summary": "Usunięcie podmiotu",
|
||
"description": "Usuwanie podmiotu testowego. W przypadku grupy VAT i JST usunięte zostaną również jednostki podrzędne.",
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"required": [
|
||
"subjectNip"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/SubjectRemoveRequest"
|
||
}
|
||
]
|
||
},
|
||
"example": {"subjectNip":"7762811692"}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK"
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|-|-|-|\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/v2/testdata/person": {
|
||
"post": {
|
||
"tags": [
|
||
"Dane testowe"
|
||
],
|
||
"summary": "Utworzenie osoby fizycznej",
|
||
"description": "Tworzenie nowej osoby fizycznej, której system nadaje uprawnienia właścicielskie. Można również określić, czy osoba ta jest komornikiem – wówczas otrzyma odpowiednie uprawnienie egzekucyjne.",
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"required": [
|
||
"nip",
|
||
"pesel",
|
||
"isBailiff",
|
||
"description"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/PersonCreateRequest"
|
||
}
|
||
]
|
||
},
|
||
"example": {"nip":"7762811692","pesel":"15062788702","isBailiff":true,"description":"TestPerson_01","isDeceased":false,"createdDate":"2025-08-25T14:15:22+00:00"}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK"
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|---------------------|------------------------------------------------------------|---------|\n| 30001 | Podmiot lub uprawnienie już istnieje. | |\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/v2/testdata/person/remove": {
|
||
"post": {
|
||
"tags": [
|
||
"Dane testowe"
|
||
],
|
||
"summary": "Usunięcie osoby fizycznej",
|
||
"description": "Usuwanie testowej osoby fizycznej. System automatycznie odbierze jej wszystkie uprawnienia.",
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"required": [
|
||
"nip"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/PersonRemoveRequest"
|
||
}
|
||
]
|
||
},
|
||
"example": {"nip":"7762811692"}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK"
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|-|-|-|\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/v2/testdata/permissions": {
|
||
"post": {
|
||
"tags": [
|
||
"Dane testowe"
|
||
],
|
||
"summary": "Nadanie uprawnień testowemu podmiotowi/osobie fizycznej",
|
||
"description": "Nadawanie uprawnień testowemu podmiotowi lub osobie fizycznej, a także w ich kontekście.",
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"required": [
|
||
"contextIdentifier",
|
||
"authorizedIdentifier",
|
||
"permissions"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/TestDataPermissionsGrantRequest"
|
||
}
|
||
]
|
||
},
|
||
"example": {"contextIdentifier":{"type":"Nip","value":"7762811692"},"authorizedIdentifier":{"type":"Nip","value":"7762811692"},"permissions":[{"description":"Opis testowy","permissionType":"InvoiceRead"}]}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK"
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|-|-|-|\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/v2/testdata/permissions/revoke": {
|
||
"post": {
|
||
"tags": [
|
||
"Dane testowe"
|
||
],
|
||
"summary": "Odebranie uprawnień testowemu podmiotowi/osobie fizycznej",
|
||
"description": "Odbieranie uprawnień nadanych testowemu podmiotowi lub osobie fizycznej, a także w ich kontekście.",
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"required": [
|
||
"contextIdentifier",
|
||
"authorizedIdentifier"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/TestDataPermissionsRevokeRequest"
|
||
}
|
||
]
|
||
},
|
||
"example": {"contextIdentifier":{"type":"Nip","value":"5265877635"},"authorizedIdentifier":{"type":"Nip","value":"7762811692"}}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK"
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|-|-|-|\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/v2/testdata/attachment": {
|
||
"post": {
|
||
"tags": [
|
||
"Dane testowe"
|
||
],
|
||
"summary": "Umożliwienie wysyłania faktur z załącznikiem",
|
||
"description": "Dodaje możliwość wysyłania faktur z załącznikiem przez wskazany podmiot",
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"required": [
|
||
"nip"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/AttachmentPermissionGrantRequest"
|
||
}
|
||
]
|
||
},
|
||
"example": {"nip":"7762811692"}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK"
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|-|-|-|\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/v2/testdata/attachment/revoke": {
|
||
"post": {
|
||
"tags": [
|
||
"Dane testowe"
|
||
],
|
||
"summary": "Odebranie możliwości wysyłania faktur z załącznikiem",
|
||
"description": "Odbiera możliwość wysyłania faktur z załącznikiem przez wskazany podmiot",
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"required": [
|
||
"nip"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/AttachmentPermissionRevokeRequest"
|
||
}
|
||
]
|
||
},
|
||
"example": {"nip":"7762811692"}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK"
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|-|-|-|\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/v2/limits/context": {
|
||
"get": {
|
||
"tags": [
|
||
"Limity i ograniczenia"
|
||
],
|
||
"summary": "Pobranie limitów dla bieżącego kontekstu",
|
||
"description": "Zwraca wartości aktualnie obowiązujących limitów dla bieżącego kontekstu.",
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/EffectiveContextLimits"
|
||
},
|
||
"example": {"onlineSession":{"maxInvoiceSizeInMB":1,"maxInvoiceWithAttachmentSizeInMB":3,"maxInvoices":10000},"batchSession":{"maxInvoiceSizeInMB":1,"maxInvoiceWithAttachmentSizeInMB":3,"maxInvoices":10000}}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/limits/subject": {
|
||
"get": {
|
||
"tags": [
|
||
"Limity i ograniczenia"
|
||
],
|
||
"summary": "Pobranie limitów dla bieżącego podmiotu",
|
||
"description": "Zwraca wartoście aktualnie obowiązujących limitów dla bieżącego podmiotu.",
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/EffectiveSubjectLimits"
|
||
},
|
||
"example": {"enrollment":{"maxEnrollments":6},"certificate":{"maxCertificates":2}}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/rate-limits": {
|
||
"get": {
|
||
"tags": [
|
||
"Limity i ograniczenia"
|
||
],
|
||
"summary": "Pobranie aktualnie obowiązujących limitów API",
|
||
"description": "Zwraca wartości aktualnie obowiązujących limitów ilości żądań przesyłanych do API.",
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/EffectiveApiRateLimits"
|
||
},
|
||
"example": {"onlineSession":{"perSecond":10,"perMinute":30,"perHour":120},"batchSession":{"perSecond":10,"perMinute":20,"perHour":120},"invoiceSend":{"perSecond":10,"perMinute":30,"perHour":180},"invoiceStatus":{"perSecond":30,"perMinute":120,"perHour":720},"sessionList":{"perSecond":5,"perMinute":10,"perHour":60},"sessionInvoiceList":{"perSecond":10,"perMinute":20,"perHour":200},"sessionMisc":{"perSecond":10,"perMinute":120,"perHour":720},"invoiceMetadata":{"perSecond":8,"perMinute":16,"perHour":20},"invoiceExport":{"perSecond":4,"perMinute":8,"perHour":20},"invoiceDownload":{"perSecond":8,"perMinute":16,"perHour":64},"other":{"perSecond":10,"perMinute":30,"perHour":120}}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/testdata/limits/context/session": {
|
||
"post": {
|
||
"tags": [
|
||
"Limity i ograniczenia"
|
||
],
|
||
"summary": "Zmiana limitów sesji dla bieżącego kontekstu",
|
||
"description": "Zmienia wartości aktualnie obowiązujących limitów sesji dla bieżącego kontekstu. **Tylko na środowiskach testowych.**",
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"required": [
|
||
"onlineSession",
|
||
"batchSession"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/SetSessionLimitsRequest"
|
||
}
|
||
]
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK"
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|-|-|-|\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
]
|
||
},
|
||
"delete": {
|
||
"tags": [
|
||
"Limity i ograniczenia"
|
||
],
|
||
"summary": "Przywrócenie domyślnych wartości limitów sesji dla bieżącego kontekstu",
|
||
"description": "Przywraca wartości aktualnie obowiązujących limitów sesji dla bieżącego kontekstu do wartości domyślnych. **Tylko na środowiskach testowych.**",
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK"
|
||
},
|
||
"400": {
|
||
"description": "",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/testdata/limits/subject/certificate": {
|
||
"post": {
|
||
"tags": [
|
||
"Limity i ograniczenia"
|
||
],
|
||
"summary": "Zmiana limitów certyfikatów dla bieżącego podmiotu",
|
||
"description": "Zmienia wartości aktualnie obowiązujących limitów certyfikatów dla bieżącego podmiotu. **Tylko na środowiskach testowych.**",
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/SetSubjectLimitsRequest"
|
||
}
|
||
]
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK"
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|-|-|-|\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
]
|
||
},
|
||
"delete": {
|
||
"tags": [
|
||
"Limity i ograniczenia"
|
||
],
|
||
"summary": "Przywrócenie domyślnych wartości limitów certyfikatów dla bieżącego podmiotu",
|
||
"description": "Przywraca wartości aktualnie obowiązujących limitów certyfikatów dla bieżącego podmiotu do wartości domyślnych. **Tylko na środowiskach testowych.**",
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK"
|
||
},
|
||
"400": {
|
||
"description": "",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/testdata/rate-limits": {
|
||
"post": {
|
||
"tags": [
|
||
"Limity i ograniczenia"
|
||
],
|
||
"summary": "Zmiana limitów API dla bieżącego kontekstu",
|
||
"description": "Zmienia wartości aktualnie obowiązujących limitów żądań przesyłąnych do API dla bieżącego kontekstu. **Tylko na środowiskach testowych.**",
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"required": [
|
||
"rateLimits"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/SetRateLimitsRequest"
|
||
}
|
||
]
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK"
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|-|-|-|\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
]
|
||
},
|
||
"delete": {
|
||
"tags": [
|
||
"Limity i ograniczenia"
|
||
],
|
||
"summary": "Przywrócenie domyślnych wartości limitów API dla bieżącego kontekstu",
|
||
"description": "Przywraca wartości aktualnie obowiązujących limitów żądań przesyłąnych do API dla bieżącego kontekstu do wartości domyślnych. **Tylko na środowiskach testowych.**",
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK"
|
||
},
|
||
"400": {
|
||
"description": "",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/permissions/persons/grants": {
|
||
"post": {
|
||
"tags": [
|
||
"Nadawanie uprawnień"
|
||
],
|
||
"summary": "Nadanie osobom fizycznym uprawnień do pracy w KSeF",
|
||
"description": "Metoda pozwala na nadanie osobie wskazanej w żądaniu uprawnień do pracy w KSeF \nw kontekście bieżącym.\n \nW żądaniu określane są nadawane uprawnienia ze zbioru: \n- **InvoiceWrite** – wystawianie faktur, \n- **InvoiceRead** – przeglądanie faktur, \n- **CredentialsManage** – zarządzanie uprawnieniami, \n- **CredentialsRead** – przeglądanie uprawnień, \n- **Introspection** – przeglądanie historii sesji i generowanie UPO, \n- **SubunitManage** – zarządzanie jednostkami podrzędnymi, \n- **EnforcementOperations** – wykonywanie operacji egzekucyjnych.\n \nMetoda pozwala na wybór dowolnej kombinacji powyższych uprawnień. \nUprawnienie **EnforcementOperations** może być nadane wyłącznie wtedy, \ngdy podmiot kontekstu ma rolę **EnforcementAuthority** (organ egzekucyjny) \nlub **CourtBailiff** (komornik sądowy).\n\n> Więcej informacji:\n> - [Nadawanie uprawnień](https://github.com/CIRFMF/ksef-docs/blob/main/uprawnienia.md#nadawanie-uprawnie%C5%84-osobom-fizycznym-do-pracy-w-ksef)\n\n**Wymagane uprawnienia**: `CredentialsManage`.",
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"required": [
|
||
"subjectIdentifier",
|
||
"permissions",
|
||
"description"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/PersonPermissionsGrantRequest"
|
||
}
|
||
]
|
||
},
|
||
"example": {"subjectIdentifier":{"type":"Pesel","value":"15062788702"},"permissions":["InvoiceRead","InvoiceWrite","Introspection","CredentialsRead"],"description":"Opis uprawnienia"}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"202": {
|
||
"description": "Accepted",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/PermissionsOperationResponse"
|
||
},
|
||
"example": {"referenceNumber":"20250626-EG-333C814000-C529F710D8-D2"}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|-|-|-|\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
],
|
||
"x-required-permissions": [
|
||
"CredentialsManage"
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/permissions/entities/grants": {
|
||
"post": {
|
||
"tags": [
|
||
"Nadawanie uprawnień"
|
||
],
|
||
"summary": "Nadanie podmiotom uprawnień do obsługi faktur",
|
||
"description": "Metoda pozwala na nadanie podmiotowi wskazanemu w żądaniu uprawnień do obsługi faktur podmiotu kontekstu. \nW żądaniu określane są nadawane uprawnienia ze zbioru: \n- **InvoiceWrite** – wystawianie faktur \n- **InvoiceRead** – przeglądanie faktur \n \nMetoda pozwala na wybór dowolnej kombinacji powyższych uprawnień. \nDla każdego uprawnienia może być ustawiona flaga **canDelegate**, mówiąca o możliwości jego dalszego przekazywania poprzez nadawanie w sposób pośredni.\n\n> Więcej informacji:\n> - [Nadawanie uprawnień](https://github.com/CIRFMF/ksef-docs/blob/main/uprawnienia.md#nadanie-podmiotom-uprawnie%C5%84-do-obs%C5%82ugi-faktur)\n\n**Wymagane uprawnienia**: `CredentialsManage`.",
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"required": [
|
||
"subjectIdentifier",
|
||
"permissions",
|
||
"description"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EntityPermissionsGrantRequest"
|
||
}
|
||
]
|
||
},
|
||
"example": {"subjectIdentifier":{"type":"Nip","value":"7762811692"},"permissions":[{"type":"InvoiceRead","canDelegate":true},{"type":"InvoiceWrite","canDelegate":true}],"description":"Opis uprawnienia"}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"202": {
|
||
"description": "Accepted",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/PermissionsOperationResponse"
|
||
},
|
||
"example": {"referenceNumber":"20250626-EG-333C814000-C529F710D8-D2"}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|-|-|-|\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
],
|
||
"x-required-permissions": [
|
||
"CredentialsManage"
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/permissions/authorizations/grants": {
|
||
"post": {
|
||
"tags": [
|
||
"Nadawanie uprawnień"
|
||
],
|
||
"summary": "Nadanie uprawnień podmiotowych",
|
||
"description": "Metoda pozwala na nadanie jednego z uprawnień podmiotowych do obsługi podmiotu kontekstu podmiotowi wskazanemu w żądaniu.\n\n> Więcej informacji:\n> - [Nadawanie uprawnień](https://github.com/CIRFMF/ksef-docs/blob/main/uprawnienia.md#nadanie-uprawnie%C5%84-podmiotowych)\n\n**Wymagane uprawnienia**: `CredentialsManage`.",
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"required": [
|
||
"subjectIdentifier",
|
||
"permission",
|
||
"description"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EntityAuthorizationPermissionsGrantRequest"
|
||
}
|
||
]
|
||
},
|
||
"example": {"subjectIdentifier":{"type":"Nip","value":"7762811692"},"permission":"SelfInvoicing","description":"działanie w imieniu 3393244202 w kontekście 7762811692, Firma sp. z o.o."}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"202": {
|
||
"description": "Accepted",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/PermissionsOperationResponse"
|
||
},
|
||
"example": {"referenceNumber":"20250626-EG-333C814000-C529F710D8-D2"}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|-|-|-|\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
],
|
||
"x-required-permissions": [
|
||
"CredentialsManage"
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/permissions/indirect/grants": {
|
||
"post": {
|
||
"tags": [
|
||
"Nadawanie uprawnień"
|
||
],
|
||
"summary": "Nadanie uprawnień w sposób pośredni",
|
||
"description": "Metoda pozwala na nadanie w sposób pośredni osobie wskazanej w żądaniu uprawnień do obsługi faktur innego podmiotu – klienta. \nMoże to być jedna z możliwości: \n- nadanie uprawnień generalnych – do obsługi wszystkich klientów \n- nadanie uprawnień selektywnych – do obsługi wskazanego klienta \n \nUprawnienie selektywne może być nadane wyłącznie wtedy, gdy klient nadał wcześniej podmiotowi bieżącego kontekstu dowolne uprawnienie z prawem do jego dalszego przekazywania (patrz [POST /api/v2/permissions/entities/grants](/docs/v2/index.html#tag/Nadawanie-uprawnien/paths/~1api~1v2~1permissions~1entities~1grants/post)). \n \nW żądaniu określane są nadawane uprawnienia ze zbioru: \n- **InvoiceWrite** – wystawianie faktur \n- **InvoiceRead** – przeglądanie faktur \n \nMetoda pozwala na wybór dowolnej kombinacji powyższych uprawnień.\n\n> Więcej informacji:\n> - [Nadawanie uprawnień](https://github.com/CIRFMF/ksef-docs/blob/main/uprawnienia.md#nadanie-uprawnie%C5%84-w-spos%C3%B3b-po%C5%9Bredni)\n\n**Wymagane uprawnienia**: `CredentialsManage`.",
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"required": [
|
||
"subjectIdentifier",
|
||
"permissions",
|
||
"description"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/IndirectPermissionsGrantRequest"
|
||
}
|
||
]
|
||
},
|
||
"example": {"subjectIdentifier":{"type":"Pesel","value":"22271569167"},"targetIdentifier":{"type":"Nip","value":"5687926712"},"permissions":["InvoiceWrite","InvoiceRead"],"description":"praca dla klienta 5687926712; uprawniony PESEL: 22271569167, Adam Abacki; pośrednik 3936518395"}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"202": {
|
||
"description": "Accepted",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/PermissionsOperationResponse"
|
||
},
|
||
"example": {"referenceNumber":"20250626-EG-333C814000-C529F710D8-D2"}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|-|-|-|\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
],
|
||
"x-required-permissions": [
|
||
"CredentialsManage"
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/permissions/subunits/grants": {
|
||
"post": {
|
||
"tags": [
|
||
"Nadawanie uprawnień"
|
||
],
|
||
"summary": "Nadanie uprawnień administratora podmiotu podrzędnego",
|
||
"description": "Metoda pozwala na nadanie wskazanemu w żądaniu podmiotowi lub osobie fizycznej uprawnień administratora w kontekście: \n- wskazanego NIP podmiotu podrzędnego – wyłącznie jeżeli podmiot bieżącego kontekstu logowania ma rolę podmiotu nadrzędnego:\n - **LocalGovernmentUnit** \n - **VatGroupUnit** \n- wskazanego lub utworzonego identyfikatora wewnętrznego \n \nWraz z utworzeniem administratora jednostki podrzędnej tworzony jest identyfikator wewnętrzny składający się z numeru NIP podmiotu kontekstu logowania oraz 5 cyfr unikalnie identyfikujących jednostkę wewnętrzną. \nW żądaniu podaje się również nazwę tej jednostki. \n \nUprawnienia administratora jednostki podrzędnej obejmują: \n- **CredentialsManage** – zarządzanie uprawnieniami \n \nMetoda automatycznie nadaje powyższe uprawnienie, bez konieczności podawania go w żądaniu.\n \n> Więcej informacji:\n> - [Nadawanie uprawnień](https://github.com/CIRFMF/ksef-docs/blob/main/uprawnienia.md#nadanie-uprawnie%C5%84-administratora-podmiotu-podrz%C4%99dnego)\n\n**Wymagane uprawnienia**: `SubunitManage`.",
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"required": [
|
||
"subjectIdentifier",
|
||
"contextIdentifier",
|
||
"description"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/SubunitPermissionsGrantRequest"
|
||
}
|
||
]
|
||
},
|
||
"example": {"subjectIdentifier":{"type":"Pesel","value":"15062788702"},"contextIdentifier":{"type":"InternalId","value":"7762811692-12345"},"description":"Opis uprawnienia","subunitName":"Jednostka 014"}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"202": {
|
||
"description": "Accepted",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/PermissionsOperationResponse"
|
||
},
|
||
"example": {"referenceNumber":"20250626-EG-333C814000-C529F710D8-D2"}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|-|-|-|\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
],
|
||
"x-required-permissions": [
|
||
"SubunitManage"
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/permissions/eu-entities/administration/grants": {
|
||
"post": {
|
||
"tags": [
|
||
"Nadawanie uprawnień"
|
||
],
|
||
"summary": "Nadanie uprawnień administratora podmiotu unijnego",
|
||
"description": "Metoda pozwala na nadanie wskazanemu w żądaniu podmiotowi lub osobie fizycznej uprawnień administratora w kontekście złożonym z identyfikatora NIP podmiotu kontekstu bieżącego oraz numeru VAT UE podmiotu unijnego wskazanego w żądaniu. \nWraz z utworzeniem administratora podmiotu unijnego tworzony jest kontekst złożony składający się z numeru NIP podmiotu kontekstu logowania oraz wskazanego numeru identyfikacyjnego VAT UE podmiotu unijnego. \nW żądaniu podaje się również nazwę i adres podmiotu unijnego. \n \nJedynym sposobem identyfikacji uprawnianego jest odcisk palca certyfikatu kwalifikowanego: \n- certyfikat podpisu elektronicznego dla osób fizycznych \n- certyfikat pieczęci elektronicznej dla podmiotów \n \nUprawnienia administratora podmiotu unijnego obejmują: \n- **VatEuManage** – zarządzanie uprawnieniami w ramach podmiotu unijnego \n- **InvoiceWrite** – wystawianie faktur \n- **InvoiceRead** – przeglądanie faktur \n- **Introspection** – przeglądanie historii sesji \n \nMetoda automatycznie nadaje wszystkie powyższe uprawnienia, bez konieczności ich wskazywania w żądaniu.\n \n> Więcej informacji:\n> - [Nadawanie uprawnień](https://github.com/CIRFMF/ksef-docs/blob/main/uprawnienia.md#nadanie-uprawnie%C5%84-administratora-podmiotu-unijnego)\n\n**Wymagane uprawnienia**: `CredentialsManage`.",
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"required": [
|
||
"subjectIdentifier",
|
||
"contextIdentifier",
|
||
"description",
|
||
"euEntityName"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EuEntityAdministrationPermissionsGrantRequest"
|
||
}
|
||
]
|
||
},
|
||
"example": {"subjectIdentifier":{"type":"Fingerprint","value":"CEB3643BAC2C111ADDE971BDA5A80163441867D65389FC0BC0DFF8B4C1CD4E59"},"contextIdentifier":{"type":"NipVatUe","value":"7762811692-DE123456789012"},"description":"Opis uprawnienia","euEntityName":"Firma G.m.b.H."}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"202": {
|
||
"description": "Accepted",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/PermissionsOperationResponse"
|
||
},
|
||
"example": {"referenceNumber":"20250626-EG-333C814000-C529F710D8-D2"}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|-|-|-|\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
],
|
||
"x-required-permissions": [
|
||
"CredentialsManage"
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/permissions/eu-entities/grants": {
|
||
"post": {
|
||
"tags": [
|
||
"Nadawanie uprawnień"
|
||
],
|
||
"summary": "Nadanie uprawnień reprezentanta podmiotu unijnego",
|
||
"description": "Metoda pozwala na nadanie wskazanemu w żądaniu podmiotowi lub osobie fizycznej uprawnień do wystawiania i/lub przeglądania faktur w kontekście złożonym kontekstu bieżącego. \n \nJedynym sposobem identyfikacji uprawnianego jest odcisk palca certyfikatu kwalifikowanego: \n- certyfikat podpisu elektronicznego dla osób fizycznych \n- certyfikat pieczęci elektronicznej dla podmiotów \n \nW żądaniu określane są nadawane uprawnienia ze zbioru: \n- **InvoiceWrite** – wystawianie faktur \n- **InvoiceRead** – przeglądanie faktur \n \nMetoda pozwala na wybór dowolnej kombinacji powyższych uprawnień.\n\n> Więcej informacji:\n> - [Nadawanie uprawnień](https://github.com/CIRFMF/ksef-docs/blob/main/uprawnienia.md#nadanie-uprawnie%C5%84-reprezentanta-podmiotu-unijnego)\n\n**Wymagane uprawnienia**: `VatUeManage`.",
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"required": [
|
||
"subjectIdentifier",
|
||
"permissions",
|
||
"description"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EuEntityPermissionsGrantRequest"
|
||
}
|
||
]
|
||
},
|
||
"example": {"subjectIdentifier":{"type":"Fingerprint","value":"CEB3643BAC2C111ADDE971BDA5A80163441867D65389FC0BC0DFF8B4C1CD4E59"},"permissions":["InvoiceRead","InvoiceWrite"],"description":"Opis uprawnienia"}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"202": {
|
||
"description": "Accepted",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/PermissionsOperationResponse"
|
||
},
|
||
"example": {"referenceNumber":"20250626-EG-333C814000-C529F710D8-D2"}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|-|-|-|\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
],
|
||
"x-required-permissions": [
|
||
"VatUeManage"
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/permissions/common/grants/{permissionId}": {
|
||
"delete": {
|
||
"tags": [
|
||
"Odbieranie uprawnień"
|
||
],
|
||
"summary": "Odebranie uprawnień",
|
||
"description": "Metoda pozwala na odebranie uprawnienia o wskazanym identyfikatorze. \nWymagane jest wcześniejsze odczytanie uprawnień w celu uzyskania \nidentyfikatora uprawnienia, które ma zostać odebrane.\n\n> Więcej informacji:\n> - [Odbieranie uprawnień](https://github.com/CIRFMF/ksef-docs/blob/main/uprawnienia.md#odebranie-uprawnie%C5%84)\n\n**Wymagane uprawnienia**: `CredentialsManage`, `VatUeManage`, `SubunitManage`.",
|
||
"parameters": [
|
||
{
|
||
"name": "permissionId",
|
||
"in": "path",
|
||
"description": "Id uprawnienia.",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/components/schemas/PermissionId"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"202": {
|
||
"description": "Accepted",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/PermissionsOperationResponse"
|
||
},
|
||
"example": {"referenceNumber":"20250626-EG-333C814000-C529F710D8-D2"}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|-|-|-|\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
],
|
||
"x-required-permissions": [
|
||
"CredentialsManage",
|
||
"VatUeManage",
|
||
"SubunitManage"
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/permissions/authorizations/grants/{permissionId}": {
|
||
"delete": {
|
||
"tags": [
|
||
"Odbieranie uprawnień"
|
||
],
|
||
"summary": "Odebranie uprawnień podmiotowych",
|
||
"description": "Metoda pozwala na odebranie uprawnienia podmiotowego o wskazanym identyfikatorze. \nWymagane jest wcześniejsze odczytanie uprawnień w celu uzyskania \nidentyfikatora uprawnienia, które ma zostać odebrane.\n \n> Więcej informacji:\n> - [Odbieranie uprawnień](https://github.com/CIRFMF/ksef-docs/blob/main/uprawnienia.md#odebranie-uprawnie%C5%84-podmiotowych)\n\n**Wymagane uprawnienia**: `CredentialsManage`.",
|
||
"parameters": [
|
||
{
|
||
"name": "permissionId",
|
||
"in": "path",
|
||
"description": "Id uprawnienia.",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/components/schemas/PermissionId"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"202": {
|
||
"description": "Accepted",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/PermissionsOperationResponse"
|
||
},
|
||
"example": {"referenceNumber":"20250626-EG-333C814000-C529F710D8-D2"}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|-|-|-|\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
],
|
||
"x-required-permissions": [
|
||
"CredentialsManage"
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/permissions/operations/{referenceNumber}": {
|
||
"get": {
|
||
"tags": [
|
||
"Operacje"
|
||
],
|
||
"summary": "Pobranie statusu operacji",
|
||
"description": "Zwraca status operacji asynchronicznej związanej z nadaniem lub odebraniem uprawnień.",
|
||
"parameters": [
|
||
{
|
||
"name": "referenceNumber",
|
||
"in": "path",
|
||
"description": "Numer referencyjny operacji nadania lub odbierania uprawnień.",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReferenceNumber"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/PermissionsOperationStatusResponse"
|
||
},
|
||
"example": {"status":{"code":200,"description":"Operacja zakończona sukcesem"}}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|-|-|-|\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/permissions/attachments/status": {
|
||
"get": {
|
||
"tags": [
|
||
"Operacje"
|
||
],
|
||
"summary": "Sprawdzenie statusu zgody na wystawianie faktur z załącznikiem",
|
||
"description": "Sprawdzenie czy obecny kontekst posiada zgodę na wystawianie faktur z załącznikiem.\n\n**Wymagane uprawnienia**: `CredentialsManage`, `CredentialsRead`.",
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CheckAttachmentPermissionStatusResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|-|-|-|\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
],
|
||
"x-required-permissions": [
|
||
"CredentialsManage",
|
||
"CredentialsRead"
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/invoices/ksef/{ksefNumber}": {
|
||
"get": {
|
||
"tags": [
|
||
"Pobieranie faktur"
|
||
],
|
||
"summary": "Pobranie faktury po numerze KSeF",
|
||
"description": "Zwraca fakturę o podanym numerze KSeF.\n\n**Wymagane uprawnienia**: `InvoiceRead`.",
|
||
"parameters": [
|
||
{
|
||
"name": "ksefNumber",
|
||
"in": "path",
|
||
"description": "Numer KSeF faktury.",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/components/schemas/KsefNumber"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/xml": {
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details | \n|---------------|-----------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------|\n| 21164 | Faktura o podanym identyfikatorze nie istnieje. | Faktura o numerze KSeF {ksefNumber} nie została znaleziona. |\n| 21165 | Faktura o podanym numerze KSeF nie jest jeszcze dostępna. | Faktura o numerze KSeF {ksefNumber} została przetworzona, ale nie jest jeszcze dostępna do pobrania. Spróbuj ponownie później. |\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
],
|
||
"x-required-permissions": [
|
||
"InvoiceRead"
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/invoices/query/metadata": {
|
||
"post": {
|
||
"tags": [
|
||
"Pobieranie faktur"
|
||
],
|
||
"summary": "Pobranie listy metadanych faktur",
|
||
"description": "Zwraca metadane faktur spełniających filtry.\n\nLimit techniczny: ≤ 10 000 rekordów na zestaw filtrów, po jego osiągnięciu <b>isTruncated = true</b> i należy ponownie ustawić <b>dateRange</b>, używając ostatniej daty z wyników (tj. ustawić from/to - w zależności od kierunku sortowania, od daty ostatniego zwróconego rekordu) oraz wyzerować <b>pageOffset</b>.\n\n`Do scenariusza przyrostowego należy używać daty PermanentStorage oraz kolejność sortowania Asc`.\n \n<b>Scenariusz pobierania przyrostowego (skrót):</b>\n* Gdy <b>hasMore = false</b>, należy zakończyć,\n* Gdy <b>hasMore = true</b> i <b>isTruncated = false</b>, należy zwiększyć <b>pageOffset</b>,\n* Gdy <b>hasMore = true</b> i <b>isTruncated = true</b>, należy zawęzić <b>dateRange</b> (ustawić from od daty ostatniego rekordu), wyzerować <b>pageOffset</b> i kontynuować\n\n**Sortowanie:**\n\n- permanentStorageDate | invoicingDate | issueDate (Asc | Desc) - pole wybierane na podstawie filtrów\n\n\n\n**Wymagane uprawnienia**: `InvoiceRead`.",
|
||
"parameters": [
|
||
{
|
||
"name": "sortOrder",
|
||
"in": "query",
|
||
"description": "Kolejność sortowania wyników.\n| Wartość | Opis |\n| --- | --- |\n| Asc | Sortowanie rosnąco. |\n| Desc | Sortowanie malejąco. |\n",
|
||
"schema": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/SortOrder"
|
||
}
|
||
],
|
||
"description": "| Wartość | Opis |\n| --- | --- |\n| Asc | Sortowanie rosnąco. |\n| Desc | Sortowanie malejąco. |\n",
|
||
"default": "Asc"
|
||
}
|
||
},
|
||
{
|
||
"name": "pageOffset",
|
||
"in": "query",
|
||
"description": "Indeks pierwszej strony wyników (0 = pierwsza strona).",
|
||
"schema": {
|
||
"minimum": 0,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 0
|
||
}
|
||
},
|
||
{
|
||
"name": "pageSize",
|
||
"in": "query",
|
||
"description": "Rozmiar strony wyników.",
|
||
"schema": {
|
||
"maximum": 250,
|
||
"exclusiveMaximum": false,
|
||
"minimum": 10,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 10
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"description": "Kryteria filtrowania.",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"required": [
|
||
"subjectType",
|
||
"dateRange"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/InvoiceQueryFilters"
|
||
}
|
||
]
|
||
},
|
||
"example": {"subjectType":"Subject1","dateRange":{"dateType":"PermanentStorage","from":"2025-08-28T09:22:13.388+00:00","to":"2025-09-28T09:22:13.388+00:00"},"amount":{"type":"Brutto","from":100.50,"to":250.00},"currencyCodes":["PLN","EUR"],"invoicingMode":"Online","formType":"FA","invoiceTypes":["Vat"],"hasAttachment":true}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/QueryInvoicesMetadataResponse"
|
||
},
|
||
"example": {"hasMore":false,"isTruncated":false,"invoices":[{"ksefNumber":"5555555555-20250828-010080615740-E4","invoiceNumber":"FA/KUDYO1a7dddfe-610e-4843-84ba-6b887e35266e","issueDate":"2025-08-27","invoicingDate":"2025-08-28T09:22:13.388+00:00","acquisitionDate":"2025-08-28T09:22:56.388+00:00","permanentStorageDate":"2025-08-28T09:23:01.388+00:00","seller":{"nip":"5555555555","name":"Test Company 1"},"buyer":{"identifier":{"type":"Nip","value":"7352765225"},"name":"Test Company 4"},"netAmount":35260.63,"grossAmount":43370.57,"vatAmount":8109.94,"currency":"PLN","invoicingMode":"Offline","invoiceType":"Vat","formCode":{"systemCode":"FA (3)","schemaVersion":"1-0E","value":"FA"},"isSelfInvoicing":false,"hasAttachment":false,"invoiceHash":"mkht+3m5trnfxlTYhq3QFn74LkEO69MFNlsMAkCDSPA=","thirdSubjects":[]},{"ksefNumber":"5555555555-20250828-010080615740-E4","invoiceNumber":"5265877635-20250925-010020A0A242-0A","issueDate":"2025-08-28","invoicingDate":"2025-08-28T10:23:13.388+00:00","acquisitionDate":"2025-08-28T10:23:56.388+00:00","permanentStorageDate":"2025-08-28T10:24:01.388+00:00","seller":{"nip":"5555555555","name":"Test Company 1"},"buyer":{"identifier":{"type":"Nip","value":"3225081610"},"name":"Test Company 2"},"netAmount":35260.63,"grossAmount":43370.57,"vatAmount":8109.94,"currency":"PLN","invoicingMode":"Online","invoiceType":"Vat","formCode":{"systemCode":"FA (3)","schemaVersion":"1-0E","value":"FA"},"isSelfInvoicing":false,"hasAttachment":true,"invoiceHash":"o+nMBU8n8TAhy6EjbcdYdHSZVbUspqmCKqOPLhy3zIQ=","thirdSubjects":[{"identifier":{"type":"InternalId","value":"5555555555-12345"},"name":"Wystawca faktury","role":4}]}]}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|-|-|-|\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
],
|
||
"x-sort": [
|
||
{
|
||
"allowedFields": [
|
||
"permanentStorageDate",
|
||
"invoicingDate",
|
||
"issueDate"
|
||
],
|
||
"allowedDirections": [
|
||
"Asc",
|
||
"Desc"
|
||
]
|
||
}
|
||
],
|
||
"x-required-permissions": [
|
||
"InvoiceRead"
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/invoices/exports": {
|
||
"post": {
|
||
"tags": [
|
||
"Pobieranie faktur"
|
||
],
|
||
"summary": "Eksport paczki faktur",
|
||
"description": "Rozpoczyna asynchroniczny proces wyszukiwania faktur w systemie KSeF na podstawie przekazanych filtrów oraz przygotowania ich w formie zaszyfrowanej paczki.\nWymagane jest przekazanie informacji o szyfrowaniu w polu <b>Encryption</b>, które służą do zabezpieczenia przygotowanej paczki z fakturami.\nMaksymalnie można uruchomić 10 równoczesnych eksportów w zalogowanym kontekście.\n \nSystem pobiera faktury rosnąco według daty określonej w filtrze (Invoicing, Issue, PermanentStorage) i dodaje faktury(nazwa pliku: <b>{ksefNumber}.xml</b>) do paczki aż do osiągnięcia jednego z poniższych limitów:\n* Limit liczby faktur: 10 000 sztuk\n* Limit rozmiaru danych(skompresowanych): 1GB\n\nPaczka eksportu zawiera dodatkowy plik z metadanymi faktur w formacie JSON (`_metadata.json`). Zawartość pliku to\nobiekt z tablicą <b>invoices</b>, gdzie każdy element jest obiektem typu <b>InvoiceMetadata</b>\n(taki jak zwracany przez endpoint `POST /invoices/query/metadata`).\n\n<b>Plik z metadanymi(_metadata.json) nie jest wliczany do limitów algorytmu budowania paczki</b>. \n\n`Do realizacji pobierania przyrostowego należy stosować filtrowanie po dacie PermanentStorage`.\n\n**Sortowanie:**\n\n- permanentStorageDate | invoicingDate | issueDate (Asc) - pole wybierane na podstawie filtrów\n\n\n\n**Wymagane uprawnienia**: `InvoiceRead`.",
|
||
"requestBody": {
|
||
"description": "Dane wejściowe określające kryteria i format eksportu paczki faktur.",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"required": [
|
||
"encryption",
|
||
"filters"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/InvoiceExportRequest"
|
||
}
|
||
]
|
||
},
|
||
"example": {"encryption":{"encryptedSymmetricKey":"Rk1Qb1VhVjMyQ3NxQ1h1WlVtZUdHcDJSZ0pTbE5IbWQ=","initializationVector":"c29tZUluaXRWZWN0b3I="},"filters":{"subjectType":"Subject1","dateRange":{"dateType":"Issue","from":"2025-08-28T09:22:13.388+00:00","to":"2025-09-28T09:22:13.388+00:00"}}}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"201": {
|
||
"description": "Created",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExportInvoicesResponse"
|
||
},
|
||
"example": {"referenceNumber":"20251010-EH-1B6C9EB000-4B15D3AEB9-89"}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details | \n|---------------------|-----------------------------------------------------|---------------------------------------------------------------|\n| 21181 | Nieprawidłowe żądanie eksportu faktur. | Nie można wyeksportować paczki faktur dla wybranego podmiotu ({subjecttype}) i zalogowanego identyfikatoru kontekstu ({type}). |\n| 21182 | Osiągnięto limit trwających eksportów. | Dla uwierzytelnionego podmiotu w bieżącym kontekście osiągnięto maksymalny limit {count} równoczesnych eksportów faktur. Spróbuj ponownie później. |\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
],
|
||
"x-sort": [
|
||
{
|
||
"allowedFields": [
|
||
"permanentStorageDate",
|
||
"invoicingDate",
|
||
"issueDate"
|
||
],
|
||
"allowedDirections": "Asc"
|
||
}
|
||
],
|
||
"x-required-permissions": [
|
||
"InvoiceRead"
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/invoices/exports/{referenceNumber}": {
|
||
"get": {
|
||
"tags": [
|
||
"Pobieranie faktur"
|
||
],
|
||
"summary": "Pobranie statusu eksportu paczki faktur",
|
||
"description": "Paczka faktur jest dzielona na części o maksymalnym rozmiarze 50 MB. Każda część jest zaszyfrowana algorytmem AES-256-CBC z dopełnieniem PKCS#7, przy użyciu klucza symetrycznego przekazanego podczas inicjowania eksportu. \n\nW przypadku ucięcia wyniku eksportu z powodu przekroczenia limitów, zwracana jest flaga <b>IsTruncated = true</b> oraz odpowiednia data, którą należy wykorzystać do wykonania kolejnego eksportu, aż do momentu, gdy flaga <b>IsTruncated = false</b>.\n\n**Sortowanie:**\n\n- permanentStorageDate | invoicingDate | issueDate (Asc) - pole wybierane na podstawie filtrów\n\n\n\n**Wymagane uprawnienia**: `InvoiceRead`.",
|
||
"parameters": [
|
||
{
|
||
"name": "referenceNumber",
|
||
"in": "path",
|
||
"description": "Numer referencyjny eksportu faktur.",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReferenceNumber"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/InvoiceExportStatusResponse"
|
||
},
|
||
"example": {"status":{"code":200,"description":"Eksport faktur zakończony sukcesem"},"completedDate":"2025-09-16T16:09:40.901091+00:00","package":{"invoiceCount":10000,"size":22425060,"parts":[{"ordinalNumber":1,"partName":"20250925-EH-2D2C11B000-E9C9ED8340-EE-001.zip.aes","method":"GET","url":"https://ksef-api-storage/storage/00/20250626-eh-2d2c11b000-e9c9ed8340-ee/invoice-part/20250925-EH-2D2C11B000-E9C9ED8340-EE-001.zip.aes?skoid=1ad7cfe8-2cb2-406b-b96c-6eefb55794db&sktid=647754c7-3974-4442-a425-c61341b61c69&skt=2025-06-26T09%3A40%3A54Z&ske=2025-06-26T10%3A10%3A54Z&sks=b&skv=2025-01-05&sv=2025-01-05&se=2025-06-26T10%3A10%3A54Z&sr=b&sp=w&sig=8mKZEU8Reuz%2Fn7wHi4T%2FY8BzLeD5l8bR2xJsBxIgDEY%3D","partSize":22425060,"partHash":"BKH9Uy1CjBFXiQdDUM2CJYk5LxWTm4fE1lljnl83Ajw=","encryptedPartSize":22425072,"encryptedPartHash":"HlvwRLc59EJH7O5GoeHEZxTQO5TJ/WP1QH0aFi4x2Ss=","expirationDate":"2025-09-16T17:09:40.901091+00:00"}],"isTruncated":true,"lastPermanentStorageDate":"2025-09-11T11:40:40.266578+00:00"}}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details | \n|---------------------|-----------------------------------------------------|---------------------------------------------------------------|\n| 21175 | Wynik zapytania o podanym identyfikatorze nie istnieje. | |\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
],
|
||
"x-sort": [
|
||
{
|
||
"allowedFields": [
|
||
"permanentStorageDate",
|
||
"invoicingDate",
|
||
"issueDate"
|
||
],
|
||
"allowedDirections": "Asc"
|
||
}
|
||
],
|
||
"x-required-permissions": [
|
||
"InvoiceRead"
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/sessions": {
|
||
"get": {
|
||
"tags": [
|
||
"Status wysyłki i UPO"
|
||
],
|
||
"summary": "Pobranie listy sesji",
|
||
"description": "Zwraca listę sesji spełniających podane kryteria wyszukiwania.\n\n\n\n**Sortowanie:**\n\n- dateCreated (Desc)\n\n\n**Wymagane uprawnienia**:\n- `Introspection` – pozwala pobrać wszystkie sesje w bieżącym kontekście uwierzytelnienia `(ContextIdentifier)`.\n- `InvoiceWrite` – pozwala pobrać wyłącznie sesje utworzone przez podmiot uwierzytelniający, czyli podmiot inicjujący uwierzytelnienie.",
|
||
"parameters": [
|
||
{
|
||
"name": "pageSize",
|
||
"in": "query",
|
||
"description": "Rozmiar strony.",
|
||
"schema": {
|
||
"maximum": 500,
|
||
"exclusiveMaximum": false,
|
||
"minimum": 10,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 10
|
||
}
|
||
},
|
||
{
|
||
"name": "sessionType",
|
||
"in": "query",
|
||
"description": "Typ sesji.\n| Wartość | Opis |\n| --- | --- |\n| Online | Wysyłka interaktywna (pojedyncze faktury). |\n| Batch | Wysyłka wsadowa (paczka faktur). |\n",
|
||
"required": true,
|
||
"schema": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/SessionType"
|
||
}
|
||
]
|
||
}
|
||
},
|
||
{
|
||
"name": "referenceNumber",
|
||
"in": "query",
|
||
"description": "Numer referencyjny sesji.",
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReferenceNumber"
|
||
}
|
||
},
|
||
{
|
||
"name": "dateCreatedFrom",
|
||
"in": "query",
|
||
"description": "Data utworzenia sesji (od).",
|
||
"schema": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
{
|
||
"name": "dateCreatedTo",
|
||
"in": "query",
|
||
"description": "Data utworzenia sesji (do).",
|
||
"schema": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
{
|
||
"name": "dateClosedFrom",
|
||
"in": "query",
|
||
"description": "Data zamknięcia sesji (od).",
|
||
"schema": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
{
|
||
"name": "dateClosedTo",
|
||
"in": "query",
|
||
"description": "Data zamknięcia sesji (do).",
|
||
"schema": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
{
|
||
"name": "dateModifiedFrom",
|
||
"in": "query",
|
||
"description": "Data ostatniej aktywności (wysyłka faktury lub zmiana statusu) w ramach sesji (od).",
|
||
"schema": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
{
|
||
"name": "dateModifiedTo",
|
||
"in": "query",
|
||
"description": "Data ostatniej aktywności (wysyłka faktury lub zmiana statusu) w ramach sesji (do).",
|
||
"schema": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
{
|
||
"name": "statuses",
|
||
"in": "query",
|
||
"description": "Statusy sesji.\n| Wartość | Opis |\n| --- | --- |\n| InProgress | Sesja aktywna. |\n| Succeeded | Sesja przetworzona poprawnie. W trakcie przetwarzania sesji nie wystąpiły żadne błędy, ale część faktur nadal mogła zostać odrzucona. |\n| Failed | Sesja nie przetworzona z powodu błędów. Na etapie rozpoczynania lub kończenia sesji wystąpiły błędy, które nie pozwoliły na jej poprawne przetworzenie. |\n| Cancelled | Sesja anulowania. Został przekroczony czas na wysyłkę w sesji wsadowej, lub nie przesłano żadnych faktur w sesji interaktywnej. |\n",
|
||
"style": "form",
|
||
"schema": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/CommonSessionStatus"
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"name": "x-continuation-token",
|
||
"in": "header",
|
||
"description": "Token służący do pobrania kolejnej strony wyników.",
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/SessionsQueryResponse"
|
||
},
|
||
"example": {"continuationToken":"W3sidG9rZW4iOiIrUklEOn4zeHd0QU1SM3dYYjRCd0FBQUFBQUNBPT0jUlQ6MSNUUkM6MTAjSVNWOjIjSUVPOjY1NTY3I1FDRjo4I0ZQQzpBZ2dBQUFBQUFDQUFBQVlBQUFBQUlBQUFBQUFBQUFBZ0FBQVVBUEVIQUVGdGdJUUFFUUJBQUJBRUFCQVVoZ1NBQXdBQUFBQWdBQUFHQUhFa0NFQWxnQVFBQUFBQUlBQUFGZ0F5Q0FVZ0VBRC9nRE9BRFlFdWdIcUF5SXBEZ0IrQUJnQUFBQUFnQUFBQ0FPNlYiLCJyYW5nZSI6eyJtaW4iOiIiLCJtYXgiOiIwNUMxREYyQjVGMzU5OCJ9fV0=","sessions":[{"referenceNumber":"20250925-SO-2F67776000-97273B191A-65","status":{"code":200,"description":"Sesja interaktywna przetworzona pomyślnie"},"dateCreated":"2025-09-25T13:48:26.8700925+00:00","dateUpdated":"2025-09-26T02:16:07+00:00","validUntil":"2025-09-26T01:48:26.8700925+00:00","totalInvoiceCount":2,"successfulInvoiceCount":2,"failedInvoiceCount":0},{"referenceNumber":"20250928-SO-494B541000-3AD87C01BA-5D","status":{"code":200,"description":"Sesja interaktywna przetworzona pomyślnie"},"dateCreated":"2025-09-28T21:20:54.5936927+00:00","dateUpdated":"2025-09-29T10:19:28+00:00","validUntil":"2025-09-29T09:20:54.5936927+00:00","totalInvoiceCount":3,"successfulInvoiceCount":3,"failedInvoiceCount":0}]}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details | \n|---------------------|-----------------------------------------------------|-------------------------------------------------------------|\n| 21418 | Przekazany token kontynuacji ma nieprawidłowy format. | |\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
],
|
||
"x-sort": [
|
||
{
|
||
"field": "dateCreated",
|
||
"direction": "Desc"
|
||
}
|
||
],
|
||
"x-required-permissions": [
|
||
"InvoiceWrite",
|
||
"Introspection"
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/sessions/{referenceNumber}": {
|
||
"get": {
|
||
"tags": [
|
||
"Status wysyłki i UPO"
|
||
],
|
||
"summary": "Pobranie statusu sesji",
|
||
"description": "Sprawdza bieżący status sesji o podanym numerze referencyjnym.\n\n**Wymagane uprawnienia**: `InvoiceWrite`, `Introspection`, `PefInvoiceWrite`.",
|
||
"parameters": [
|
||
{
|
||
"name": "referenceNumber",
|
||
"in": "path",
|
||
"description": "Numer referencyjny sesji.",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReferenceNumber"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/SessionStatusResponse"
|
||
},
|
||
"example": {"status":{"code":200,"description":"Sesja interaktywna przetworzona pomyślnie"},"upo":{"pages":[{"referenceNumber":"20250918-EU-2EBD6FA000-242EB9B66D-43","downloadUrl":"https://ksef-test.mf.gov.pl/storage/01/20250918-sb-3789a40000-20373e1269-a3/session-upo/upo_00.xml?sv=2025-01-05&st=2025-09-18T14%3A55%3A50Z&se=2025-09-21T15%3A00%3A50Z&sr=b&sp=r&sig=ZlQO6Xtzu3VQQDwmEMfb0VryMxe9WcUgWtkdiB6X2Qo%3D","downloadUrlExpirationDate":"2025-09-21T15:00:50+00:00"}]},"invoiceCount":10,"successfulInvoiceCount":8,"failedInvoiceCount":2}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details | \n|---------------------|-----------------------------------------------------|-------------------------------------------------------------|\n| 21173 | Brak sesji o wskazanym numerze referencyjnym. | Sesja o numerze referencyjnym {referenceNumber} nie została znaleziona. |\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
],
|
||
"x-required-permissions": [
|
||
"InvoiceWrite",
|
||
"Introspection",
|
||
"PefInvoiceWrite"
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/sessions/{referenceNumber}/invoices": {
|
||
"get": {
|
||
"tags": [
|
||
"Status wysyłki i UPO"
|
||
],
|
||
"summary": "Pobranie faktur sesji",
|
||
"description": "Zwraca listę faktur przesłanych w sesji wraz z ich statusami, oraz informacje na temat ilości poprawnie i niepoprawnie przetworzonych faktur.\n\n**Wymagane uprawnienia**: `InvoiceWrite`, `Introspection`, `PefInvoiceWrite`.",
|
||
"parameters": [
|
||
{
|
||
"name": "x-continuation-token",
|
||
"in": "header",
|
||
"description": "Token służący do pobrania kolejnej strony wyników.",
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
{
|
||
"name": "referenceNumber",
|
||
"in": "path",
|
||
"description": "Numer referencyjny sesji.",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReferenceNumber"
|
||
}
|
||
},
|
||
{
|
||
"name": "pageSize",
|
||
"in": "query",
|
||
"description": "Rozmiar strony wyników.",
|
||
"schema": {
|
||
"maximum": 500,
|
||
"exclusiveMaximum": false,
|
||
"minimum": 10,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 10
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/SessionInvoicesResponse"
|
||
},
|
||
"example": {"continuationToken":"W34idG9rZW4iOiIrUklEOn4xUE5BQU5hcXJVOUFBQUFBQUFBQUFBPT0jUlQ6MSNUUkM6MTAjSVNWOjIjSUVPOjY1NTY3I1FDRjo4I0ZQQzpBVUFBQUFBQUFBQUFRZ0FBQUFBQUFBQT0iLCJyYW5nZSI6eyJtaW4iOiIiLCJtYXgiOiJGRiJ9fV0=","invoices":[{"ordinalNumber":1,"invoiceNumber":"FA/XPWIC-7900685789/06/2025","ksefNumber":"5265877635-20250626-010080DD2B5E-26","referenceNumber":"20250918-EE-2F15D39000-242207E5C4-1B","invoiceHash":"mkht+3m5trnfxlTYhq3QFn74LkEO69MFNlsMAkCDSPA=","acquisitionDate":"2025-09-18T12:24:16.0154302+00:00","invoicingDate":"2025-09-18T12:23:56.0154302+00:00","permanentStorageDate":"2025-09-18T12:24:01.0154302+00:00","upoDownloadUrl":"https://ksef-test.mf.gov.pl/storage/01/20250918-SB-3789A40000-20373E1269-A3/invoice-upo/upo_5265877635-20250626-010080DD2B5E-26.xml?sv=2025-01-05&st=2025-09-18T14%3A49%3A20Z&se=2025-09-21T14%3A54%3A20Z&sr=b&sp=r&sig=%2BUWFPA10gS580VhngGKW%2FZiOOtiHPOiTyMlxhG6ZvWs%3D","upoDownloadUrlExpirationDate":"2025-09-21T14:54:20+00:00","status":{"code":200,"description":"Sukces"}},{"ordinalNumber":2,"referenceNumber":"20250918-EE-2F20AD2000-242386DF86-52","invoiceHash":"mkht+3m5trnfxlTYhq3QFn74LkEO69MFNlsMAkCDSPA=","invoicingDate":"2025-09-18T12:23:56.0154302+00:00","status":{"code":440,"description":"Duplikat faktury","details":["Duplikat faktury. Faktura o numerze KSeF: 5265877635-20250626-010080DD2B5E-26 została już prawidłowo przesłana do systemu w sesji: 20250626-SO-2F14610000-242991F8C9-B4"]}}]}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details | \n|---------------------|-----------------------------------------------------|-------------------------------------------------------------|\n| 21173 | Brak sesji o wskazanym numerze referencyjnym. | Sesja o numerze referencyjnym {referenceNumber} nie została znaleziona. |\n| 21418 | Przekazany token kontynuacji ma nieprawidłowy format. | |\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
],
|
||
"x-required-permissions": [
|
||
"InvoiceWrite",
|
||
"Introspection",
|
||
"PefInvoiceWrite"
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/sessions/{referenceNumber}/invoices/{invoiceReferenceNumber}": {
|
||
"get": {
|
||
"tags": [
|
||
"Status wysyłki i UPO"
|
||
],
|
||
"summary": "Pobranie statusu faktury z sesji",
|
||
"description": "Zwraca fakturę przesłaną w sesji wraz ze statusem.\n\n**Wymagane uprawnienia**: `InvoiceWrite`, `Introspection`, `PefInvoiceWrite`.",
|
||
"parameters": [
|
||
{
|
||
"name": "referenceNumber",
|
||
"in": "path",
|
||
"description": "Numer referencyjny sesji.",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReferenceNumber"
|
||
}
|
||
},
|
||
{
|
||
"name": "invoiceReferenceNumber",
|
||
"in": "path",
|
||
"description": "Numer referencyjny faktury.",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReferenceNumber"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/SessionInvoiceStatusResponse"
|
||
},
|
||
"example": {"ordinalNumber":2,"referenceNumber":"20250626-EE-2F20AD2000-242386DF86-52","invoicingDate":"2025-07-11T12:23:56.0154302+00:00","status":{"code":440,"description":"Duplikat faktury","details":["Duplikat faktury. Faktura o numerze KSeF: 5265877635-20250626-010080DD2B5E-26 została już prawidłowo przesłana do systemu w sesji: 20250626-SO-2F14610000-242991F8C9-B4"]}}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|-|-|-|\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
],
|
||
"x-required-permissions": [
|
||
"InvoiceWrite",
|
||
"Introspection",
|
||
"PefInvoiceWrite"
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/sessions/{referenceNumber}/invoices/failed": {
|
||
"get": {
|
||
"tags": [
|
||
"Status wysyłki i UPO"
|
||
],
|
||
"summary": "Pobranie niepoprawnie przetworzonych faktur sesji",
|
||
"description": "Zwraca listę niepoprawnie przetworzonych faktur przesłanych w sesji wraz z ich statusami.\n\n**Wymagane uprawnienia**: `InvoiceWrite`, `Introspection`, `PefInvoiceWrite`.",
|
||
"parameters": [
|
||
{
|
||
"name": "x-continuation-token",
|
||
"in": "header",
|
||
"description": "Token służący do pobrania kolejnej strony wyników.",
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
{
|
||
"name": "referenceNumber",
|
||
"in": "path",
|
||
"description": "Numer referencyjny sesji.",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReferenceNumber"
|
||
}
|
||
},
|
||
{
|
||
"name": "pageSize",
|
||
"in": "query",
|
||
"description": "Rozmiar strony wyników.",
|
||
"schema": {
|
||
"maximum": 500,
|
||
"exclusiveMaximum": false,
|
||
"minimum": 10,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 10
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/SessionInvoicesResponse"
|
||
},
|
||
"example": {"continuationToken":"...","invoices":[{"ordinalNumber":2,"referenceNumber":"20250626-EE-2F20AD2000-242386DF86-52","invoiceHash":"mkht+3m5trnfxlTYhq3QFn74LkEO69MFNlsMAkCDSPA=","invoiceFileName":"invoice1.xml","invoicingDate":"2025-07-11T12:23:56.0154302+00:00","status":{"code":440,"description":"Duplikat faktury","details":["Duplikat faktury. Faktura o numerze KSeF: 5265877635-20250626-010080DD2B5E-26 została już prawidłowo przesłana do systemu w sesji: 20250626-SO-2F14610000-242991F8C9-B4"]}}]}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details | \n|---------------------|-----------------------------------------------------|-------------------------------------------------------------|\n| 21173 | Brak sesji o wskazanym numerze referencyjnym. | Sesja o numerze referencyjnym {referenceNumber} nie została znaleziona. |\n| 21418 | Przekazany token kontynuacji ma nieprawidłowy format. | |\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
],
|
||
"x-required-permissions": [
|
||
"InvoiceWrite",
|
||
"Introspection",
|
||
"PefInvoiceWrite"
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/sessions/{referenceNumber}/invoices/ksef/{ksefNumber}/upo": {
|
||
"get": {
|
||
"tags": [
|
||
"Status wysyłki i UPO"
|
||
],
|
||
"summary": "Pobranie UPO faktury z sesji na podstawie numeru KSeF",
|
||
"description": "Zwraca UPO faktury przesłanego w sesji na podstawie jego numeru KSeF.\n\n**Wymagane uprawnienia**: `InvoiceWrite`, `Introspection`, `PefInvoiceWrite`.",
|
||
"parameters": [
|
||
{
|
||
"name": "referenceNumber",
|
||
"in": "path",
|
||
"description": "Numer referencyjny sesji.",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReferenceNumber"
|
||
}
|
||
},
|
||
{
|
||
"name": "ksefNumber",
|
||
"in": "path",
|
||
"description": "Numer KSeF faktury.",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/components/schemas/KsefNumber"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/xml": {
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details | \n|---------------------|-----------------------------------------------------|----------------------------------------------------------------------------------------------------------------|\n| 21178 | Nie znaleziono UPO dla podanych kryteriów. | UPO o numerze KSeF {ksefNumber} i numerze referencyjnym sesji {referenceNumber} nie zostało znalezione. |\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
],
|
||
"x-required-permissions": [
|
||
"InvoiceWrite",
|
||
"Introspection",
|
||
"PefInvoiceWrite"
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/sessions/{referenceNumber}/invoices/{invoiceReferenceNumber}/upo": {
|
||
"get": {
|
||
"tags": [
|
||
"Status wysyłki i UPO"
|
||
],
|
||
"summary": "Pobranie UPO faktury z sesji na podstawie numeru referencyjnego faktury",
|
||
"description": "Zwraca UPO faktury przesłanego w sesji na podstawie jego numeru KSeF.\n\n**Wymagane uprawnienia**: `InvoiceWrite`, `Introspection`, `PefInvoiceWrite`.",
|
||
"parameters": [
|
||
{
|
||
"name": "referenceNumber",
|
||
"in": "path",
|
||
"description": "Numer referencyjny sesji.",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReferenceNumber"
|
||
}
|
||
},
|
||
{
|
||
"name": "invoiceReferenceNumber",
|
||
"in": "path",
|
||
"description": "Numer referencyjny faktury.",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReferenceNumber"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/xml": {
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|-|-|-|\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
],
|
||
"x-required-permissions": [
|
||
"InvoiceWrite",
|
||
"Introspection",
|
||
"PefInvoiceWrite"
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/sessions/{referenceNumber}/upo/{upoReferenceNumber}": {
|
||
"get": {
|
||
"tags": [
|
||
"Status wysyłki i UPO"
|
||
],
|
||
"summary": "Pobranie UPO dla sesji",
|
||
"description": "Zwraca XML zawierający zbiorcze UPO dla sesji.\n\n**Wymagane uprawnienia**: `InvoiceWrite`, `Introspection`, `PefInvoiceWrite`.",
|
||
"parameters": [
|
||
{
|
||
"name": "referenceNumber",
|
||
"in": "path",
|
||
"description": "Numer referencyjny sesji.",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReferenceNumber"
|
||
}
|
||
},
|
||
{
|
||
"name": "upoReferenceNumber",
|
||
"in": "path",
|
||
"description": "Numer referencyjny UPO.",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReferenceNumber"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/xml": {
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details | \n|---------------------|-----------------------------------------------------|----------------------------------------------------------------------------------------------------------------|\n| 21173 | Brak sesji o wskazanym numerze referencyjnym. | Sesja o numerze referencyjnym {referenceNumber} nie została znaleziona. |\n| 21178 | Nie znaleziono UPO dla podanych kryteriów. | UPO o numerze referencyjnym {referenceNumber} dla sesji {referenceNumber} nie zostało znalezione. |\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
],
|
||
"x-required-permissions": [
|
||
"InvoiceWrite",
|
||
"Introspection",
|
||
"PefInvoiceWrite"
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/tokens": {
|
||
"post": {
|
||
"tags": [
|
||
"Tokeny KSeF"
|
||
],
|
||
"summary": "Wygenerowanie nowego tokena",
|
||
"description": "Zwraca token, który może być użyty do uwierzytelniania się w KSeF.\n\nToken może być generowany tylko w kontekście NIP lub identyfikatora wewnętrznego. Jest zwracany tylko raz. Zaczyna być aktywny w momencie gdy jego status zmieni się na `Active`.",
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"required": [
|
||
"permissions",
|
||
"description"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/GenerateTokenRequest"
|
||
}
|
||
]
|
||
},
|
||
"example": {"permissions":["InvoiceRead","InvoiceWrite"],"description":"Wystawianie i przeglądanie faktur."}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"202": {
|
||
"description": "Accepted",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/GenerateTokenResponse"
|
||
},
|
||
"example": {"referenceNumber":"20251010-EC-1DCE3E3000-12ECB5B36E-45","token":"20251010-EC-1DCE3E3000-12ECB5B36E-45|internalId-5265877635-12345|919f704466624ce29cd5ac7b65ded5e7cccc112eee314f2aaa76e02cd16df7b9"}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|---------------------|------------------------------------------------------------|---------|\n| 26001 | Nie można nadać tokenowi uprawnień których nie posiadasz. | Informacja o brakujących uprawnieniach. |\n| 26002 | Nie można wygenerować tokena dla obecnego typu kontekstu. | Informacja o aktualnym i dozwolonych typach kontekstu. |\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
]
|
||
},
|
||
"get": {
|
||
"tags": [
|
||
"Tokeny KSeF"
|
||
],
|
||
"summary": "Pobranie listy wygenerowanych tokenów",
|
||
"description": "\n\n**Sortowanie:**\n\n- dateCreated (Desc)\n\n",
|
||
"parameters": [
|
||
{
|
||
"name": "status",
|
||
"in": "query",
|
||
"description": "Status tokenów do zwrócenia. W przypadku braku parametru zwracane są wszystkie tokeny. Parametr można przekazać wielokrotnie.\n| Wartość | Opis |\n| --- | --- |\n| Pending | Token został utworzony ale jest jeszcze w trakcie aktywacji i nadawania uprawnień. Nie może być jeszcze wykorzystywany do uwierzytelniania. |\n| Active | Token jest aktywny i może być wykorzystywany do uwierzytelniania. |\n| Revoking | Token jest w trakcie unieważniania. Nie może już być wykorzystywany do uwierzytelniania. |\n| Revoked | Token został unieważniony i nie może być wykorzystywany do uwierzytelniania. |\n| Failed | Nie udało się aktywować tokena. Należy wygenerować nowy token, obecny nie może być wykorzystywany do uwierzytelniania. |\n",
|
||
"style": "form",
|
||
"schema": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/AuthenticationTokenStatus"
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"name": "description",
|
||
"in": "query",
|
||
"description": "Umożliwia filtrowanie tokenów po opisie. Wartość parametru jest wyszukiwana w opisie tokena (operacja nie rozróżnia wielkości liter). Należy podać co najmniej 3 znaki.",
|
||
"schema": {
|
||
"minLength": 3,
|
||
"type": "string"
|
||
}
|
||
},
|
||
{
|
||
"name": "authorIdentifier",
|
||
"in": "query",
|
||
"description": "Umożliwia filtrowanie tokenów po ich twórcy. Wartość parametru jest wyszukiwana w identyfikatorze (operacja nie rozróżnia wielkości liter). Należy podać co najmniej 3 znaki.",
|
||
"schema": {
|
||
"minLength": 3,
|
||
"type": "string"
|
||
}
|
||
},
|
||
{
|
||
"name": "authorIdentifierType",
|
||
"in": "query",
|
||
"description": "Umożliwia filtrowanie tokenów po ich twórcy. Wartość parametru określa typ identyfikatora w którym będzie wyszukiwany ciąg znaków przekazany w parametrze `authorIdentifier`.\n| Wartość | Opis |\n| --- | --- |\n| Nip | NIP. |\n| Pesel | PESEL. |\n| Fingerprint | Odcisk palca certyfikatu. |\n",
|
||
"schema": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/TokenAuthorIdentifierType"
|
||
}
|
||
]
|
||
}
|
||
},
|
||
{
|
||
"name": "pageSize",
|
||
"in": "query",
|
||
"description": "Rozmiar strony wyników.",
|
||
"schema": {
|
||
"maximum": 100,
|
||
"exclusiveMaximum": false,
|
||
"minimum": 10,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 10
|
||
}
|
||
},
|
||
{
|
||
"name": "x-continuation-token",
|
||
"in": "header",
|
||
"description": "Token służący do pobrania kolejnej strony wyników.",
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/QueryTokensResponse"
|
||
},
|
||
"example": {"continuationToken":"W3sidG9rZW4iOiIrUklEOn4zeHd0QUlqZUc5VkhCQUFBQUFBQUJBPT0jUlQ6MSNUUkM6MTAjSVNWOjIjSUVPOjY1NTY3I1FDRjo4I0ZQQzpBZ2dBQUFBQUFCQUFBQUFBQUFBQUVBQUFBQUFBQUFBUUFBQUVBRWVFMllFPSIsInJhbmdlIjp7Im1pbiI6IjA1QzFERjIxOUY5OTIwIiwibWF4IjoiRkYifX1d","tokens":[{"referenceNumber":"20251001-EC-2DD3AFF000-A6B7F19A95-11","authorIdentifier":{"type":"Nip","value":"5265877635"},"contextIdentifier":{"type":"Nip","value":"5265877635"},"description":"Wystawianie i przeglądanie faktur.","requestedPermissions":["InvoiceRead","InvoiceWrite"],"dateCreated":"2025-10-01T13:20:52.9919681+00:00","status":"Active","statusDetails":[]}]}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details | \n|---------------------|-----------------------------------------------------|-------------------------------------------------------------|\n| 21418 | Przekazany token kontynuacji ma nieprawidłowy format. | |\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
],
|
||
"x-sort": [
|
||
{
|
||
"field": "dateCreated",
|
||
"direction": "Desc"
|
||
}
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/tokens/{referenceNumber}": {
|
||
"get": {
|
||
"tags": [
|
||
"Tokeny KSeF"
|
||
],
|
||
"summary": "Pobranie statusu tokena",
|
||
"parameters": [
|
||
{
|
||
"name": "referenceNumber",
|
||
"in": "path",
|
||
"description": "Numer referencyjny tokena KSeF.",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReferenceNumber"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TokenStatusResponse"
|
||
},
|
||
"example": {"referenceNumber":"20251001-EC-220B0CE000-E228129563-96","authorIdentifier":{"type":"Nip","value":"7762811692"},"contextIdentifier":{"type":"Nip","value":"5265877635"},"description":"Wystawianie i przeglądanie faktur.","requestedPermissions":["InvoiceWrite","InvoiceRead"],"dateCreated":"2025-07-11T12:23:56.0154302+00:00","lastUseDate":"2025-07-11T12:23:56.0154302+00:00","status":"Pending","statusDetails":[]}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|-|-|-|\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
]
|
||
},
|
||
"delete": {
|
||
"tags": [
|
||
"Tokeny KSeF"
|
||
],
|
||
"summary": "Unieważnienie tokena",
|
||
"description": "Unieważniony token nie pozwoli już na uwierzytelnienie się za jego pomocą. Unieważnienie nie może zostać cofnięte.",
|
||
"parameters": [
|
||
{
|
||
"name": "referenceNumber",
|
||
"in": "path",
|
||
"description": "Numer referencyjny tokena KSeF.",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReferenceNumber"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"204": {
|
||
"description": "No Content"
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|-|-|-|\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/peppol/query": {
|
||
"get": {
|
||
"tags": [
|
||
"Usługi Peppol"
|
||
],
|
||
"summary": "Pobranie listy dostawców usług Peppol",
|
||
"description": "Zwraca listę dostawców usług Peppol zarejestrowanych w systemie.\n\n**Sortowanie:**\n\n- dateCreated (Desc)\n\n",
|
||
"parameters": [
|
||
{
|
||
"name": "pageOffset",
|
||
"in": "query",
|
||
"description": "Numer strony wyników.",
|
||
"schema": {
|
||
"minimum": 0,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 0
|
||
}
|
||
},
|
||
{
|
||
"name": "pageSize",
|
||
"in": "query",
|
||
"description": "Rozmiar strony wyników.",
|
||
"schema": {
|
||
"maximum": 100,
|
||
"exclusiveMaximum": false,
|
||
"minimum": 10,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 10
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/QueryPeppolProvidersResponse"
|
||
},
|
||
"example": {"peppolProviders":[{"id":"P123456789","name":"Dostawca usług Peppol","dateCreated":"2025-07-11T12:23:56.0154302+00:00"}],"hasMore":false}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|-|-|-|\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
}
|
||
},
|
||
"x-sort": [
|
||
{
|
||
"field": "dateCreated",
|
||
"direction": "Desc"
|
||
}
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/auth/challenge": {
|
||
"post": {
|
||
"tags": [
|
||
"Uzyskiwanie dostępu"
|
||
],
|
||
"summary": "Inicjalizacja uwierzytelnienia",
|
||
"description": "Generuje unikalny challenge wymagany w kolejnym kroku operacji uwierzytelnienia.",
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/AuthenticationChallengeResponse"
|
||
},
|
||
"example": {"challenge":"20250514-CR-226FB7B000-3ACF9BE4C0-10","timestamp":"2025-07-11T12:23:56.0154302+00:00"}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/v2/auth/xades-signature": {
|
||
"post": {
|
||
"tags": [
|
||
"Uzyskiwanie dostępu"
|
||
],
|
||
"summary": "Uwierzytelnienie z wykorzystaniem podpisu XAdES",
|
||
"description": "Rozpoczyna operację uwierzytelniania za pomocą dokumentu XML podpisanego podpisem elektronicznym XAdES.\n\n> Więcej informacji:\n> - [Przygotowanie dokumentu XML](https://github.com/CIRFMF/ksef-docs/blob/main/uwierzytelnianie.md#1-przygotowanie-dokumentu-xml-authtokenrequest)\n> - [Podpis dokumentu XML](https://github.com/CIRFMF/ksef-docs/blob/main/uwierzytelnianie.md#2-podpisanie-dokumentu-xades)\n> - [Schemat XSD](/docs/v2/schemas/authv2.xsd)",
|
||
"parameters": [
|
||
{
|
||
"name": "verifyCertificateChain",
|
||
"in": "query",
|
||
"description": "Wymuszenie weryfikacji zaufania łańcucha certyfikatu wraz ze sprawdzeniem statusu certyfikatu (OCSP/CRL) na środowiskach które umożliwiają wykorzystanie samodzielnie wygenerowanych certyfikatów.",
|
||
"schema": {
|
||
"type": "boolean"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/xml": {
|
||
"schema": {
|
||
"type": "string"
|
||
},
|
||
"example": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<AuthTokenRequest xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns=\"http://ksef.mf.gov.pl/auth/token/2.0\">\n <Challenge>20250625-CR-20F5EE4000-DA48AE4124-46</Challenge>\n <ContextIdentifier>\n <Nip>5265877635</Nip>\n </ContextIdentifier>\n <SubjectIdentifierType>certificateSubject</SubjectIdentifierType>\n <ds:Signature xmlns:ds=\"http://www.w3.org/2000/09/xmldsig#\" Id=\"Signature-9707709\">\n <!-- Tu powinien być podpis XAdES -->\n </ds:Signature>\n</AuthTokenRequest>"
|
||
}
|
||
},
|
||
"required": true
|
||
},
|
||
"responses": {
|
||
"202": {
|
||
"description": "Accepted",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/AuthenticationInitResponse"
|
||
},
|
||
"example": {"referenceNumber":"20250514-AU-2DFC46C000-3AC6D5877F-D4","authenticationToken":{"token":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0b2tlbi10eXBlIjoiT3BlcmF0aW9uVG9rZW4iLCJvcGVyYXRpb24tcmVmZXJlbmNlLW51bWJlciI6IjIwMjUwNTE0LUFVLTJERkM0NkMwMDAtM0FDNkQ1ODc3Ri1ENCIsImV4cCI6MTc0NzIzMTcxOSwiaWF0IjoxNzQ3MjI5MDE5LCJpc3MiOiJrc2VmLWFwaS10aSIsImF1ZCI6ImtzZWYtYXBpLXRpIn0.rtRcV2mR9SiuJwpQaQHsbAXvvVsdNKG4DJsdiJctIeU","validUntil":"2025-07-11T12:23:56.0154302+00:00"}}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": " | ExceptionCode | ExceptionDescription | Details | \n|---------------------|---------------------------------------------------------------------|-------------------------------------------------------------|\n| 21001 | Nieczytelna treść. | |\n| 21111 | Nieprawidłowe wyzwanie autoryzacyjne. | |\n| 21115 | Nieprawidłowy certyfikat. | |\n| 21117 | Nieprawidłowy identyfikator podmiotu dla wskazanego typu kontekstu. | |\n| 21217 | Nieprawidłowe kodowanie znaków. | |\n| 21401 | Dokument nie jest zgodny ze schemą (xsd). | {treść błędu walidacji} |\n| 21406 | Konflikt podpisu i typu uwierzytelnienia. | |\n| 9101 | Nieprawidłowy dokument. | |\n| 9102 | Brak podpisu. | |\n| 9103 | Przekroczona liczba dozwolonych podpisów. | |\n| 9105 | Nieprawidłowy podpis. | |\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/v2/auth/ksef-token": {
|
||
"post": {
|
||
"tags": [
|
||
"Uzyskiwanie dostępu"
|
||
],
|
||
"summary": "Uwierzytelnienie z wykorzystaniem tokena KSeF",
|
||
"description": "Rozpoczyna operację uwierzytelniania z wykorzystaniem wcześniej wygenerowanego tokena KSeF.\n\nToken KSeF wraz z timestampem ze wcześniej wygenerowanego challenge'a (w formacie ```token|timestamp```) powinien zostać zaszyfrowany dedykowanym do tego celu kluczem publicznym.\n- Timestamp powinien zostać przekazany jako **liczba milisekund od 1 stycznia 1970 roku (Unix timestamp)**.\n- Algorytm szyfrowania: **RSA-OAEP (z użyciem SHA-256 jako funkcji skrótu)**.",
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"required": [
|
||
"challenge",
|
||
"contextIdentifier",
|
||
"encryptedToken"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/InitTokenAuthenticationRequest"
|
||
}
|
||
]
|
||
},
|
||
"example": {"challenge":"20250625-CR-2FDC223000-C2BFC98A9C-4E","contextIdentifier":{"type":"Nip","value":"5265877635"},"encryptedToken":"..."}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"202": {
|
||
"description": "Accepted",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/AuthenticationInitResponse"
|
||
},
|
||
"example": {"referenceNumber":"20250514-AU-2DFC46C000-3AC6D5877F-D4","authenticationToken":{"token":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0b2tlbi10eXBlIjoiT3BlcmF0aW9uVG9rZW4iLCJvcGVyYXRpb24tcmVmZXJlbmNlLW51bWJlciI6IjIwMjUwNTE0LUFVLTJERkM0NkMwMDAtM0FDNkQ1ODc3Ri1ENCIsImV4cCI6MTc0NzIzMTcxOSwiaWF0IjoxNzQ3MjI5MDE5LCJpc3MiOiJrc2VmLWFwaS10aSIsImF1ZCI6ImtzZWYtYXBpLXRpIn0.rtRcV2mR9SiuJwpQaQHsbAXvvVsdNKG4DJsdiJctIeU","validUntil":"2025-07-11T12:23:56.0154302+00:00"}}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|-|-|-|\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/v2/auth/{referenceNumber}": {
|
||
"get": {
|
||
"tags": [
|
||
"Uzyskiwanie dostępu"
|
||
],
|
||
"summary": "Pobranie statusu uwierzytelniania",
|
||
"description": "Sprawdza bieżący status operacji uwierzytelniania dla podanego tokena.\n\nSposób uwierzytelnienia: `AuthenticationToken` otrzymany przy rozpoczęciu operacji uwierzytelniania.",
|
||
"parameters": [
|
||
{
|
||
"name": "referenceNumber",
|
||
"in": "path",
|
||
"description": "Numer referencyjny tokena otrzymanego przy inicjalizacji operacji uwierzytelniania.",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReferenceNumber"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/AuthenticationOperationStatusResponse"
|
||
},
|
||
"examples": {
|
||
"Kod 100 | Uwierzytelnianie w toku": {
|
||
"value": {"startDate":"0001-01-01T00:00:00+00:00","authenticationMethod":"Token","status":{"code":100,"description":"Uwierzytelnianie w toku"}}
|
||
},
|
||
"Kod 200 | Uwierzytelnianie zakończone sukcesem": {
|
||
"value": {"startDate":"0001-01-01T00:00:00+00:00","authenticationMethod":"Token","status":{"code":200,"description":"Uwierzytelnianie zakończone sukcesem"}}
|
||
},
|
||
"Kod 400 | Uwierzytelnianie zakończone niepowodzeniem | Nieważny certyfikat": {
|
||
"value": {"startDate":"0001-01-01T00:00:00+00:00","authenticationMethod":"Token","status":{"code":400,"description":"Uwierzytelnianie zakończone niepowodzeniem","details":["Nieważny certyfikat."]}}
|
||
},
|
||
"Kod 400 | Uwierzytelnianie zakończone niepowodzeniem | Błąd weryfikacji łańcucha certyfikatów": {
|
||
"value": {"startDate":"0001-01-01T00:00:00+00:00","authenticationMethod":"Token","status":{"code":400,"description":"Uwierzytelnianie zakończone niepowodzeniem","details":["Błąd weryfikacji łańcucha certyfikatów."]}}
|
||
},
|
||
"Kod 400 | Uwierzytelnianie zakończone niepowodzeniem | Niezaufany łańcuch certyfikatów": {
|
||
"value": {"startDate":"0001-01-01T00:00:00+00:00","authenticationMethod":"Token","status":{"code":400,"description":"Uwierzytelnianie zakończone niepowodzeniem","details":["Niezaufany łańcuch certyfikatów."]}}
|
||
},
|
||
"Kod 400 | Uwierzytelnianie zakończone niepowodzeniem | Certyfikat odwołany": {
|
||
"value": {"startDate":"0001-01-01T00:00:00+00:00","authenticationMethod":"Token","status":{"code":400,"description":"Uwierzytelnianie zakończone niepowodzeniem","details":["Certyfikat odwołany."]}}
|
||
},
|
||
"Kod 400 | Uwierzytelnianie zakończone niepowodzeniem | Niepoprawny certyfikat": {
|
||
"value": {"startDate":"0001-01-01T00:00:00+00:00","authenticationMethod":"Token","status":{"code":400,"description":"Uwierzytelnianie zakończone niepowodzeniem","details":["Niepoprawny certyfikat."]}}
|
||
},
|
||
"Kod 500 | Nieznany błąd": {
|
||
"value": {"startDate":"0001-01-01T00:00:00+00:00","authenticationMethod":"Token","status":{"code":500,"description":"Nieznany błąd ({statusCode})"}}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/auth/token/redeem": {
|
||
"post": {
|
||
"tags": [
|
||
"Uzyskiwanie dostępu"
|
||
],
|
||
"summary": "Pobranie tokenów dostępowych",
|
||
"description": "Pobiera parę tokenów (access token i refresh token) wygenerowanych w ramach pozytywnie zakończonego procesu uwierzytelniania.\n**Tokeny można pobrać tylko raz.**\n\nSposób uwierzytelnienia: `AuthenticationToken` otrzymany przy rozpoczęciu operacji uwierzytelniania.",
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/AuthenticationTokensResponse"
|
||
},
|
||
"example": {"accessToken":{"token":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0b2tlbi10eXBlIjoiQ29udGV4dFRva2VuIiwiY29udGV4dC1pZGVudGlmaWVyLXR5cGUiOiJOaXAiLCJjb250ZXh0LWlkZW50aWZpZXItdmFsdWUiOiIzNzU2OTc3MDQ5IiwiYXV0aGVudGljYXRpb24tbWV0aG9kIjoiUXVhbGlmaWVkU2VhbCIsInN1YmplY3QtZGV0YWlscyI6IntcIlN1YmplY3RJZGVudGlmaWVyXCI6e1wiVHlwZVwiOlwiTmlwXCIsXCJWYWx1ZVwiOlwiMzc1Njk3NzA0OVwifX0iLCJleHAiOjE3NDcyMjAxNDksImlhdCI6MTc0NzIxOTI0OSwiaXNzIjoia3NlZi1hcGktdGkiLCJhdWQiOiJrc2VmLWFwaS10aSJ9.R_3_R2PbdCk8T4WP_0XGOO1iVNu2ugNxmkDvsD0soIE","validUntil":"2025-07-11T12:23:56.0154302+00:00"},"refreshToken":{"token":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0b2tlbi10eXBlIjoiQ29udGV4dFRva2VuIiwiY29udGV4dC1pZGVudGlmaWVyLXR5cGUiOiJOaXAiLCJjb250ZXh0LWlkZW50aWZpZXItdmFsdWUiOiIzNzU2OTc3MDQ5IiwiYXV0aGVudGljYXRpb24tbWV0aG9kIjoiUXVhbGlmaWVkU2VhbCIsInN1YmplY3QtZGV0YWlscyI6IntcIlN1YmplY3RJZGVudGlmaWVyXCI6e1wiVHlwZVwiOlwiTmlwXCIsXCJWYWx1ZVwiOlwiMzc1Njk3NzA0OVwifX0iLCJleHAiOjE3NDcyMjAxNDksImlhdCI6MTc0NzIxOTI0OSwiaXNzIjoia3NlZi1hcGktdGkiLCJhdWQiOiJrc2VmLWFwaS10aSJ9.R_3_R2PbdCk8T4WP_0XGOO1iVNu2ugNxmkDvsD0soIE","validUntil":"2025-07-11T12:23:56.0154302+00:00"}}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/auth/token/refresh": {
|
||
"post": {
|
||
"tags": [
|
||
"Uzyskiwanie dostępu"
|
||
],
|
||
"summary": "Odświeżenie tokena dostępowego",
|
||
"description": "Generuje nowy token dostępu na podstawie ważnego refresh tokena.\n\nSposób uwierzytelnienia: `RefreshToken`.",
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/AuthenticationTokenRefreshResponse"
|
||
},
|
||
"example": {"accessToken":{"token":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0b2tlbi10eXBlIjoiQ29udGV4dFRva2VuIiwiY29udGV4dC1pZGVudGlmaWVyLXR5cGUiOiJOaXAiLCJjb250ZXh0LWlkZW50aWZpZXItdmFsdWUiOiIzNzU2OTc3MDQ5IiwiYXV0aGVudGljYXRpb24tbWV0aG9kIjoiUXVhbGlmaWVkU2VhbCIsInN1YmplY3QtZGV0YWlscyI6IntcIlN1YmplY3RJZGVudGlmaWVyXCI6e1wiVHlwZVwiOlwiTmlwXCIsXCJWYWx1ZVwiOlwiMzc1Njk3NzA0OVwifX0iLCJleHAiOjE3NDcyMjAxNDksImlhdCI6MTc0NzIxOTI0OSwiaXNzIjoia3NlZi1hcGktdGkiLCJhdWQiOiJrc2VmLWFwaS10aSJ9.R_3_R2PbdCk8T4WP_0XGOO1iVNu2ugNxmkDvsD0soIE","validUntil":"2025-07-11T12:23:56.0154302+00:00"}}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details | \n|---------------------|-----------------------------------------------------|-----------------------------------------------------------------------------|\n| 21304 | Brak uwierzytelnienia. | Operacja uwierzytelniania o numerze referencyjnym {referenceNumber} nie została znaleziona. |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/sessions/online": {
|
||
"post": {
|
||
"tags": [
|
||
"Wysyłka interaktywna"
|
||
],
|
||
"summary": "Otwarcie sesji interaktywnej",
|
||
"description": "Otwiera sesję do wysyłki pojedynczych faktur. Należy przekazać schemat wysyłanych faktur oraz informacje o kluczu używanym do szyfrowania.\n\n> Więcej informacji:\n> - [Otwarcie sesji interaktywnej](https://github.com/CIRFMF/ksef-docs/blob/main/sesja-interaktywna.md#1-otwarcie-sesji)\n> - [Klucz publiczny Ministersta Finansów](/docs/v2/index.html#tag/Certyfikaty-klucza-publicznego)\n\n**Wymagane uprawnienia**: `InvoiceWrite`, `PefInvoiceWrite`.",
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"required": [
|
||
"formCode",
|
||
"encryption"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/OpenOnlineSessionRequest"
|
||
}
|
||
]
|
||
},
|
||
"example": {"formCode":{"systemCode":"FA (3)","schemaVersion":"1-0E","value":"FA"},"encryption":{"encryptedSymmetricKey":"bdUVjqLj+y2q6aBUuLxxXYAMqeDuIBRTyr+hB96DaWKaGzuVHw9p+Nk9vhzgF/Q5cavK2k6eCh6SdsrWI0s9mFFj4A4UJtsyD8Dn3esLfUZ5A1juuG3q3SBi/XOC/+9W+0T/KdwdE393mbiUNyx1K/0bw31vKJL0COeJIDP7usAMDl42/H1TNvkjk+8iZ80V0qW7D+RZdz+tdiY1xV0f2mfgwJ46V0CpZ+sB9UAssRj+eVffavJ0TOg2b5JaBxE8MCAvrF6rO5K4KBjUmoy7PP7g1qIbm8xI2GO0KnfPOO5OWj8rsotRwBgu7x19Ine3qYUvuvCZlXRGGZ5NHIzWPM4O74+gNalaMgFCsmv8mMhETSU4SfAGmJr9edxPjQSbgD5i2X4eDRDMwvyaAa7CP1b2oICju+0L7Fywd2ZtUcr6El++eTVoi8HYsTArntET++gULT7XXjmb8e3O0nxrYiYsE9GMJ7HBGv3NOoJ1NTm3a7U6+c0ZJiBVLvn6xXw10LQX243xH+ehsKo6djQJKYtqcNPaXtCwM1c9RrsOx/wRXyWCtTffqLiaR0LbYvfMJAcEWceG+RaeAx4p37OiQqdJypd6LAv9/0ECWK8Bip8yyoA+0EYiAJb9YuDz2YlQX9Mx9E9FzFIAsgEQ2w723HZYWgPywLb+dlsum4lTZKQ=","initializationVector":"OmtDQdl6vkOI1GLKZSjgEg=="}}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"201": {
|
||
"description": "Created",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/OpenOnlineSessionResponse"
|
||
},
|
||
"example": {"referenceNumber":"20250625-SO-2C3E6C8000-B675CF5D68-07","validUntil":"2025-07-11T12:23:56.0154302+00:00"}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|-|-|-|\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
],
|
||
"x-required-permissions": [
|
||
"InvoiceWrite",
|
||
"PefInvoiceWrite"
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/sessions/online/{referenceNumber}/invoices": {
|
||
"post": {
|
||
"tags": [
|
||
"Wysyłka interaktywna"
|
||
],
|
||
"summary": "Wysłanie faktury",
|
||
"description": "Przyjmuje zaszyfrowaną fakturę oraz jej metadane i rozpoczyna jej przetwarzanie.\n\n> Więcej informacji:\n> - [Wysłanie faktury](https://github.com/CIRFMF/ksef-docs/blob/main/sesja-interaktywna.md#2-wys%C5%82anie-faktury)\n\n**Wymagane uprawnienia**: `InvoiceWrite`, `PefInvoiceWrite`.",
|
||
"parameters": [
|
||
{
|
||
"name": "referenceNumber",
|
||
"in": "path",
|
||
"description": "Numer referencyjny sesji",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReferenceNumber"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"description": "Dane faktury",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"required": [
|
||
"invoiceHash",
|
||
"invoiceSize",
|
||
"encryptedInvoiceHash",
|
||
"encryptedInvoiceSize",
|
||
"encryptedInvoiceContent"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/SendInvoiceRequest"
|
||
}
|
||
]
|
||
},
|
||
"example": {"invoiceHash":"EbrK4cOSjW4hEpJaHU71YXSOZZmqP5++dK9nLgTzgV4=","invoiceSize":6480,"encryptedInvoiceHash":"miYb1z3Ljw5VucTZslv3Tlt+V/EK1V8Q8evD8HMQ0dc=","encryptedInvoiceSize":6496,"encryptedInvoiceContent":"...","offlineMode":false}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"202": {
|
||
"description": "Accepted",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/SendInvoiceResponse"
|
||
},
|
||
"example": {"referenceNumber":"20250625-EE-319D7EE000-B67F415CDC-2C"}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details | \n|---------------------|-----------------------------------------------------|------------------------------------------------------------------------------------------------------------|\n| 21173 | Brak sesji o wskazanym numerze referencyjnym. | Sesja o numerze referencyjnym {referenceNumber} nie została odnaleziona. |\n| 21155 | Przekroczono dozwoloną liczbę faktur w sesji. | Sesja o numerze referencyjnym {referenceNumber} osiągnęła dozwolony limit liczby faktur {invoiceLimit}. |\n| 21180 | Status sesji nie pozwala na wykonanie operacji. | Status sesji {code} uniemożliwia wysyłkę faktur. |\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
],
|
||
"x-required-permissions": [
|
||
"InvoiceWrite",
|
||
"PefInvoiceWrite"
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/sessions/online/{referenceNumber}/close": {
|
||
"post": {
|
||
"tags": [
|
||
"Wysyłka interaktywna"
|
||
],
|
||
"summary": "Zamknięcie sesji interaktywnej",
|
||
"description": "Zamyka sesję interaktywną i rozpoczyna generowanie zbiorczego UPO dla sesji.\n\n**Wymagane uprawnienia**: `InvoiceWrite`, `PefInvoiceWrite`.",
|
||
"parameters": [
|
||
{
|
||
"name": "referenceNumber",
|
||
"in": "path",
|
||
"description": "Numer referencyjny sesji",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReferenceNumber"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"204": {
|
||
"description": "No Content"
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details | \n|---------------------|-----------------------------------------------------|----------------------------------------------------------------------------|\n| 21173 | Brak sesji o wskazanym numerze referencyjnym. | Sesja o numerze referencyjnym {referenceNumber} nie została odnaleziona. |\n| 21180 | Status sesji nie pozwala na wykonanie operacji. | Status sesji {code} uniemożliwia jej zamknięcie. |\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
],
|
||
"x-required-permissions": [
|
||
"InvoiceWrite",
|
||
"PefInvoiceWrite"
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/sessions/batch": {
|
||
"post": {
|
||
"tags": [
|
||
"Wysyłka wsadowa"
|
||
],
|
||
"summary": "Otwarcie sesji wsadowej",
|
||
"description": "Otwiera sesję do wysyłki wsadowej faktur. Należy przekazać schemat wysyłanych faktur, informacje o paczce faktur oraz informacje o kluczu używanym do szyfrowania.\n\n> Więcej informacji:\n> - [Przygotwanie paczki faktur](https://github.com/CIRFMF/ksef-docs/blob/main/sesja-wsadowa.md)\n> - [Klucz publiczny Ministersta Finansów](/docs/v2/index.html#tag/Certyfikaty-klucza-publicznego)\n\n**Wymagane uprawnienia**: `InvoiceWrite`.",
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"required": [
|
||
"formCode",
|
||
"batchFile",
|
||
"encryption"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/OpenBatchSessionRequest"
|
||
}
|
||
]
|
||
},
|
||
"example": {"formCode":{"systemCode":"FA (2)","schemaVersion":"1-0E","value":"FA"},"batchFile":{"fileSize":16037,"fileHash":"WO86CC+1Lef11wEosItld/NPwxGN8tobOMLqk9PQjgs=","fileParts":[{"ordinalNumber":1,"fileSize":16048,"fileHash":"23ZyDAN0H/+yhC/En2xbNfF0tajAWSfejDaXD7fc2AE="}]},"encryption":{"encryptedSymmetricKey":"bYqmPAglF01AxZim4oNa+1NerhZYfFgLMnvksBprUur1aesQ0Y5jsmOIfCrozfMkF2tjdO+uOsBg4FPlDgjChwN2/tz2Hqwtxq3RkTr1SjY4x8jxJFpPedcS7EI+XO8C+i9mLj7TFx9p/bg07yM9vHtMAk5b88Ay9Qc3+T5Ch1DM2ClR3sVu2DqdlKzmbINY+rhfGtXn58Qo0XRyESGgc6M0iTZVBRPuPXLnD8a1KpOneCpNzLwxgT6Ei3ivLOpPWT53PxkRTaQ8puj6CIiCKo4FHQzHuI/NmrAhYU7TkNm2kymP/OxBgWdg3XB74tqNFfT8RZN1bZXuPhBidDOqa+xsqY3E871FSDmQwZf58HmoNl31XNvpnryiRGfnAISt+m+ELqgksAresVu6E9poUL1yiff+IOHSZABoYpNiqwnbT8qyW1uk8lKLyFVFu+kOsbzBk1OWWHqSkNFDaznDa2MKjHonOXI0uyKaKWvoBFC4dWN1PVumfpSSFAeYgNpAyVrZdcVOuiliEWepTDjGzJoOafTvwr5za2S6B5bPECDpX7JXazV7Olkq7ezG0w8y3olx+0C+NHoCk8B5/cm4gtVHTgKjiLSGpKJVOJABLXFkOyIOjbQsVe4ryX0Qy+SfL7JIQvTWvM5xkCoOMbzLdMo9tNo5qE34sguFI+lIevY=","initializationVector":"jWpJLNBHJ5pQEGCBglmIAw=="},"offlineMode":false}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"201": {
|
||
"description": "Created",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/OpenBatchSessionResponse"
|
||
},
|
||
"example": {"referenceNumber":"20250626-SB-213D593000-4DE10D80A5-E9","partUploadRequests":[{"ordinalNumber":1,"method":"PUT","url":"https://ksef-api-storage/storage/00/20250626-sb-213d593000-4de10d80a5-e9/batch-parts/1?skoid=1ad7cfe8-2cb2-406b-b96c-6eefb55794db&sktid=647754c7-3974-4442-a425-c61341b61c69&skt=2025-06-26T09%3A40%3A54Z&ske=2025-06-26T10%3A10%3A54Z&sks=b&skv=2025-01-05&sv=2025-01-05&se=2025-06-26T10%3A10%3A54Z&sr=b&sp=w&sig=8mKZEU8Reuz%2Fn7wHi4T%2FY8BzLeD5l8bR2xJsBxIgDEY%3D","headers":{"x-ms-blob-type":"BlockBlob"}}]}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details | \n|---------------------|-----------------------------------------------------|---------------------------------------------------------------------------|\n| 21157 | Nieprawidłowy rozmiar części pakietu. | {treść błędu walidacji} | \n| 21161 | Przekroczono dozwoloną liczbę części pakietu. | {treść błędu walidacji} |\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
],
|
||
"x-required-permissions": [
|
||
"InvoiceWrite"
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/sessions/batch/{referenceNumber}/close": {
|
||
"post": {
|
||
"tags": [
|
||
"Wysyłka wsadowa"
|
||
],
|
||
"summary": "Zamknięcie sesji wsadowej",
|
||
"description": "Zamyka sesję wsadową, rozpoczyna procesowanie paczki faktur i generowanie UPO dla prawidłowych faktur oraz zbiorczego UPO dla sesji.\n\n**Wymagane uprawnienia**: `InvoiceWrite`.",
|
||
"parameters": [
|
||
{
|
||
"name": "referenceNumber",
|
||
"in": "path",
|
||
"description": "Numer referencyjny sesji",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReferenceNumber"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"204": {
|
||
"description": "No Content"
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details | \n|---------------------|-----------------------------------------------------|---------------------------------------------------------------------------|\n| 21157 | Nieprawidłowy rozmiar części pakietu. | Zadeklarowany rozmiar części '{ordinalNumber}' nie zgadza się z rzeczywistym. | \n| 21173 | Brak sesji o wskazanym numerze referencyjnym. | Sesja o numerze referencyjnym {referenceNumber} nie została znaleziona. |\n| 21180 | Status sesji nie pozwala na wykonanie operacji. | Status sesji {code} uniemożliwia jej zamknięcie. |\n| 21205 | Pakiet nie może być pusty. | Nie przesłano zadeklarowanej '{ordinalNumber}' części pliku. |\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
],
|
||
"x-required-permissions": [
|
||
"InvoiceWrite"
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/permissions/query/personal/grants": {
|
||
"post": {
|
||
"tags": [
|
||
"Wyszukiwanie nadanych uprawnień"
|
||
],
|
||
"summary": "Pobranie listy własnych uprawnień",
|
||
"description": " Metoda pozwala na odczytanie własnych uprawnień uwierzytelnionego klienta API w bieżącym kontekście logowania. \n\n W odpowiedzi przekazywane są następujące uprawnienia: \n - nadane w sposób bezpośredni w bieżącym kontekście \n - nadane przez podmiot nadrzędny \n - nadane w sposób pośredni, jeżeli podmiot kontekstu logowania jest w uprawnieniu pośrednikiem lub podmiotem docelowym \n - nadane podmiotowi do obsługi faktur przez inny podmiot, jeśli podmiot uwierzytelniony ma w bieżącym kontekście uprawnienia właścicielskie \n\n Uprawnienia zwracane przez operację obejmują: \n - **CredentialsManage** – zarządzanie uprawnieniami \n - **CredentialsRead** – przeglądanie uprawnień \n - **InvoiceWrite** – wystawianie faktur \n - **InvoiceRead** – przeglądanie faktur \n - **Introspection** – przeglądanie historii sesji \n - **SubunitManage** – zarządzanie podmiotami podrzędnymi \n - **EnforcementOperations** – wykonywanie operacji egzekucyjnych \n - **VatEuManage** – zarządzanie uprawnieniami w ramach podmiotu unijnego \n\n Odpowiedź może być filtrowana na podstawie następujących parametrów: \n - **contextIdentifier** – identyfikator podmiotu, który nadał uprawnienie do obsługi faktur \n - **targetIdentifier** – identyfikator podmiotu docelowego dla uprawnień nadanych pośrednio \n - **permissionTypes** – lista rodzajów wyszukiwanych uprawnień \n - **permissionState** – status uprawnienia \n\n#### Stronicowanie wyników\nZapytanie zwraca **jedną stronę wyników** o numerze i rozmiarze podanym w ścieżce.\n- Przy pierwszym wywołaniu należy ustawić parametr `pageOffset = 0`. \n- Jeżeli dostępna jest kolejna strona wyników, w odpowiedzi pojawi się flaga **`hasMore`**. \n- W takim przypadku można wywołać zapytanie ponownie z kolejnym numerem strony.\n\n > Więcej informacji:\n > - [Pobieranie listy uprawnień](https://github.com/CIRFMF/ksef-docs/blob/main/uprawnienia.md#pobranie-listy-w%C5%82asnych-uprawnie%C5%84)\n\n**Sortowanie:**\n\n- startDate (Desc)\n\n",
|
||
"parameters": [
|
||
{
|
||
"name": "pageOffset",
|
||
"in": "query",
|
||
"description": "Numer strony wyników.",
|
||
"schema": {
|
||
"minimum": 0,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 0
|
||
}
|
||
},
|
||
{
|
||
"name": "pageSize",
|
||
"in": "query",
|
||
"description": "Rozmiar strony wyników.",
|
||
"schema": {
|
||
"maximum": 100,
|
||
"exclusiveMaximum": false,
|
||
"minimum": 10,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 10
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/PersonalPermissionsQueryRequest"
|
||
}
|
||
]
|
||
},
|
||
"example": {"contextIdentifier":{"type":"Nip","value":"3568707925"},"permissionTypes":["InvoiceWrite"],"permissionState":"Active"}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/QueryPersonalPermissionsResponse"
|
||
},
|
||
"example": {"permissions":[{"id":"0c9a72e8-f344-457f-9c16-7c640eb60242","contextIdentifier":{"type":"Nip","value":"3568707925"},"authorizedIdentifier":{"type":"Nip","value":"5247677742"},"permissionScope":"InvoiceWrite","description":"Opis uprawnienia","permissionState":"Active","startDate":"2025-06-22T10:41:11+00:00","canDelegate":false}],"hasMore":false}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|-|-|-|\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
],
|
||
"x-sort": [
|
||
{
|
||
"field": "startDate",
|
||
"direction": "Desc"
|
||
}
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/permissions/query/persons/grants": {
|
||
"post": {
|
||
"tags": [
|
||
"Wyszukiwanie nadanych uprawnień"
|
||
],
|
||
"summary": "Pobranie listy uprawnień do pracy w KSeF nadanych osobom fizycznym lub podmiotom",
|
||
"description": " Metoda pozwala na odczytanie uprawnień nadanych osobie fizycznej lub podmiotowi. \n Lista pobranych uprawnień może być dwóch rodzajów: \n - Lista wszystkich uprawnień obowiązujących w bieżącym kontekście logowania (używana, gdy administrator chce przejrzeć uprawnienia wszystkich użytkowników w bieżącym kontekście) \n - Lista wszystkich uprawnień nadanych w bieżącym kontekście przez uwierzytelnionego klienta API (używana, gdy administrator chce przejrzeć listę nadanych przez siebie uprawnień w bieżącym kontekście) \n\n Dla pierwszej listy (obowiązujących uprawnień) w odpowiedzi przekazywane są: \n - osoby i podmioty mogące pracować w bieżącym kontekście z wyjątkiem osób uprawnionych w sposób pośredni \n - osoby uprawnione w sposób pośredni przez podmiot bieżącego kontekstu \n\n Dla drugiej listy (nadanych uprawnień) w odpowiedzi przekazywane są: \n - uprawnienia nadane w sposób bezpośredni do pracy w bieżącym kontekście lub w kontekście jednostek podrzędnych \n - uprawnienia nadane w sposób pośredni do obsługi klientów podmiotu bieżącego kontekstu \n\n Uprawnienia zwracane przez operację obejmują: \n - **CredentialsManage** – zarządzanie uprawnieniami \n - **CredentialsRead** – przeglądanie uprawnień \n - **InvoiceWrite** – wystawianie faktur \n - **InvoiceRead** – przeglądanie faktur \n - **Introspection** – przeglądanie historii sesji \n - **SubunitManage** – zarządzanie podmiotami podrzędnymi \n - **EnforcementOperations** – wykonywanie operacji egzekucyjnych \n\n Odpowiedź może być filtrowana na podstawie parametrów: \n - **authorIdentifier** – identyfikator osoby, która nadała uprawnienie \n - **authorizedIdentifier** – identyfikator osoby lub podmiotu uprawnionego \n - **targetIdentifier** – identyfikator podmiotu docelowego dla uprawnień nadanych pośrednio \n - **permissionTypes** – lista rodzajów wyszukiwanych uprawnień \n - **permissionState** – status uprawnienia \n - **queryType** – typ zapytania określający, która z dwóch list ma zostać zwrócona \n\n#### Stronicowanie wyników\nZapytanie zwraca **jedną stronę wyników** o numerze i rozmiarze podanym w ścieżce.\n- Przy pierwszym wywołaniu należy ustawić parametr `pageOffset = 0`. \n- Jeżeli dostępna jest kolejna strona wyników, w odpowiedzi pojawi się flaga **`hasMore`**. \n- W takim przypadku można wywołać zapytanie ponownie z kolejnym numerem strony.\n\n > Więcej informacji:\n > - [Pobieranie listy uprawnień](https://github.com/CIRFMF/ksef-docs/blob/main/uprawnienia.md#pobranie-listy-uprawnie%C5%84-do-pracy-w-ksef-nadanych-osobom-fizycznym-lub-podmiotom)\n\n**Sortowanie:**\n\n- startDate (Desc)\n\n\n\n**Wymagane uprawnienia**: `CredentialsManage`, `CredentialsRead`, `SubunitManage`.",
|
||
"parameters": [
|
||
{
|
||
"name": "pageOffset",
|
||
"in": "query",
|
||
"description": "Numer strony wyników.",
|
||
"schema": {
|
||
"minimum": 0,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 0
|
||
}
|
||
},
|
||
{
|
||
"name": "pageSize",
|
||
"in": "query",
|
||
"description": "Rozmiar strony wyników.",
|
||
"schema": {
|
||
"maximum": 100,
|
||
"exclusiveMaximum": false,
|
||
"minimum": 10,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 10
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"required": [
|
||
"queryType"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/PersonPermissionsQueryRequest"
|
||
}
|
||
]
|
||
},
|
||
"example": {"authorIdentifier":{"type":"Nip","value":"7762811692"},"permissionTypes":["CredentialsManage","CredentialsRead","InvoiceWrite"],"permissionState":"Active","queryType":"PermissionsInCurrentContext"}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/QueryPersonPermissionsResponse"
|
||
},
|
||
"example": {"permissions":[{"id":"0c9a72e8-f344-457f-9c16-7c640eb60242","authorizedIdentifier":{"type":"Nip","value":"7762811692"},"targetIdentifier":{"type":"Nip","value":"9786214922"},"authorIdentifier":{"type":"Pesel","value":"15062788702"},"permissionScope":"InvoiceWrite","description":"praca dla klienta 9786214922; uprawniony NIP: 7762811692, Adam Abacki; pośrednik 3936518395","permissionState":"Active","startDate":"2025-06-22T10:41:11+00:00","canDelegate":false}],"hasMore":false}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|-|-|-|\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
],
|
||
"x-sort": [
|
||
{
|
||
"field": "startDate",
|
||
"direction": "Desc"
|
||
}
|
||
],
|
||
"x-required-permissions": [
|
||
"CredentialsManage",
|
||
"CredentialsRead",
|
||
"SubunitManage"
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/permissions/query/subunits/grants": {
|
||
"post": {
|
||
"tags": [
|
||
"Wyszukiwanie nadanych uprawnień"
|
||
],
|
||
"summary": "Pobranie listy uprawnień administratorów jednostek i podmiotów podrzędnych",
|
||
"description": " Metoda pozwala na odczytanie uprawnień do zarządzania uprawnieniami nadanych administratorom: \n - jednostek podrzędnych identyfikowanych identyfikatorem wewnętrznym \n - podmiotów podrzędnych (podrzędnych JST lub członków grupy VAT) identyfikowanych przez NIP \n\n Lista zwraca wyłącznie uprawnienia do zarządzania uprawnieniami nadane z kontekstu bieżącego (z podmiotu nadrzędnego). \n Nie są odczytywane uprawnienia nadane przez administratorów jednostek podrzędnych wewnątrz tych jednostek. \n\n Odpowiedź może być filtrowana na podstawie parametru: \n - **subunitIdentifier** – identyfikator jednostki lub podmiotu podrzędnego \n\n#### Stronicowanie wyników\nZapytanie zwraca **jedną stronę wyników** o numerze i rozmiarze podanym w ścieżce.\n- Przy pierwszym wywołaniu należy ustawić parametr `pageOffset = 0`. \n- Jeżeli dostępna jest kolejna strona wyników, w odpowiedzi pojawi się flaga **`hasMore`**. \n- W takim przypadku można wywołać zapytanie ponownie z kolejnym numerem strony.\n\n > Więcej informacji:\n > - [Pobieranie listy uprawnień](https://github.com/CIRFMF/ksef-docs/blob/main/uprawnienia.md#pobranie-listy-uprawnie%C5%84-administrator%C3%B3w-jednostek-i-podmiot%C3%B3w-podrz%C4%99dnych)\n\n**Sortowanie:**\n\n- startDate (Desc)\n\n\n\n**Wymagane uprawnienia**: `CredentialsManage`, `CredentialsRead`, `SubunitManage`.",
|
||
"parameters": [
|
||
{
|
||
"name": "pageOffset",
|
||
"in": "query",
|
||
"description": "Numer strony wyników.",
|
||
"schema": {
|
||
"minimum": 0,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 0
|
||
}
|
||
},
|
||
{
|
||
"name": "pageSize",
|
||
"in": "query",
|
||
"description": "Rozmiar strony wyników.",
|
||
"schema": {
|
||
"maximum": 100,
|
||
"exclusiveMaximum": false,
|
||
"minimum": 10,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 10
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/SubunitPermissionsQueryRequest"
|
||
}
|
||
]
|
||
},
|
||
"example": {"subunitIdentifier":{"type":"InternalId","value":"7762811692-12345"}}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/QuerySubunitPermissionsResponse"
|
||
},
|
||
"example": {"permissions":[{"id":"0c9a72e8-f344-457f-9c16-7c640eb60242","authorizedIdentifier":{"type":"Fingerprint","value":"CEB3643BAC2C111ADDE971BDA5A80163441867D65389FC0BC0DFF8B4C1CD4E59"},"subunitIdentifier":{"type":"InternalId","value":"7762811692-12345"},"authorIdentifier":{"type":"Pesel","value":"15062788702"},"permissionScope":"CredentialsManage","description":"Opis uprawnienia","startDate":"2025-06-22T10:41:11+00:00"}],"hasMore":false}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|-|-|-|\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
],
|
||
"x-sort": [
|
||
{
|
||
"field": "startDate",
|
||
"direction": "Desc"
|
||
}
|
||
],
|
||
"x-required-permissions": [
|
||
"CredentialsManage",
|
||
"CredentialsRead",
|
||
"SubunitManage"
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/permissions/query/entities/roles": {
|
||
"get": {
|
||
"tags": [
|
||
"Wyszukiwanie nadanych uprawnień"
|
||
],
|
||
"summary": "Pobranie listy ról podmiotu",
|
||
"description": " Metoda pozwala na **odczytanie listy ról podmiotu bieżącego kontekstu logowania**.\n\n#### Role podmiotów zwracane przez operację:\n- **CourtBailiff** – komornik sądowy \n- **EnforcementAuthority** – organ egzekucyjny \n- **LocalGovernmentUnit** – nadrzędna JST \n- **LocalGovernmentSubUnit** – podrzędne JST \n- **VatGroupUnit** – grupa VAT \n- **VatGroupSubUnit** – członek grupy VAT\n\n#### Stronicowanie wyników\nZapytanie zwraca **jedną stronę wyników** o numerze i rozmiarze podanym w ścieżce.\n- Przy pierwszym wywołaniu należy ustawić parametr `pageOffset = 0`. \n- Jeżeli dostępna jest kolejna strona wyników, w odpowiedzi pojawi się flaga **`hasMore`**. \n- W takim przypadku można wywołać zapytanie ponownie z kolejnym numerem strony.\n \n > Więcej informacji:\n > - [Pobieranie listy ról](https://github.com/CIRFMF/ksef-docs/blob/main/uprawnienia.md#pobranie-listy-r%C3%B3l-podmiotu)\n\n**Sortowanie:**\n\n- startDate (Desc)\n\n\n\n**Wymagane uprawnienia**: `CredentialsManage`, `CredentialsRead`.",
|
||
"parameters": [
|
||
{
|
||
"name": "pageOffset",
|
||
"in": "query",
|
||
"description": "Numer strony wyników.",
|
||
"schema": {
|
||
"minimum": 0,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 0
|
||
}
|
||
},
|
||
{
|
||
"name": "pageSize",
|
||
"in": "query",
|
||
"description": "Rozmiar strony wyników.",
|
||
"schema": {
|
||
"maximum": 100,
|
||
"exclusiveMaximum": false,
|
||
"minimum": 10,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 10
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/QueryEntityRolesResponse"
|
||
},
|
||
"example": {"roles":[{"role":"EnforcementAuthority","description":"Organ egzekucyjny","startDate":"2025-06-22T10:41:11+00:00"}],"hasMore":false}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|-|-|-|\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
],
|
||
"x-sort": [
|
||
{
|
||
"field": "startDate",
|
||
"direction": "Desc"
|
||
}
|
||
],
|
||
"x-required-permissions": [
|
||
"CredentialsManage",
|
||
"CredentialsRead"
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/permissions/query/subordinate-entities/roles": {
|
||
"post": {
|
||
"tags": [
|
||
"Wyszukiwanie nadanych uprawnień"
|
||
],
|
||
"summary": "Pobranie listy podmiotów podrzędnych",
|
||
"description": " Metoda pozwala na odczytanie listy podmiotów podrzędnych, \n jeżeli podmiot bieżącego kontekstu ma rolę podmiotu nadrzędnego:\n - **nadrzędna JST** – odczytywane są podrzędne JST, \n - **grupa VAT** – odczytywane są podmioty będące członkami grupy VAT.\n\n Role podmiotów zwracane przez operację obejmują: \n - **LocalGovernmentSubUnit** – podrzędne JST, \n - **VatGroupSubUnit** – członek grupy VAT.\n\n Odpowiedź może być filtrowana według parametru: \n - **subordinateEntityIdentifier** – identyfikator podmiotu podrzędnego.\n\n#### Stronicowanie wyników\nZapytanie zwraca **jedną stronę wyników** o numerze i rozmiarze podanym w ścieżce.\n- Przy pierwszym wywołaniu należy ustawić parametr `pageOffset = 0`. \n- Jeżeli dostępna jest kolejna strona wyników, w odpowiedzi pojawi się flaga **`hasMore`**. \n- W takim przypadku można wywołać zapytanie ponownie z kolejnym numerem strony.\n \n > Więcej informacji:\n > - [Pobieranie listy podmiotów podrzędnych](https://github.com/CIRFMF/ksef-docs/blob/main/uprawnienia.md#pobranie-listy-podmiot%C3%B3w-podrz%C4%99dnych)\n\n**Sortowanie:**\n\n- startDate (Desc)\n\n\n\n**Wymagane uprawnienia**: `CredentialsManage`, `CredentialsRead`, `SubunitManage`.",
|
||
"parameters": [
|
||
{
|
||
"name": "pageOffset",
|
||
"in": "query",
|
||
"description": "Numer strony wyników.",
|
||
"schema": {
|
||
"minimum": 0,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 0
|
||
}
|
||
},
|
||
{
|
||
"name": "pageSize",
|
||
"in": "query",
|
||
"description": "Rozmiar strony wyników.",
|
||
"schema": {
|
||
"maximum": 100,
|
||
"exclusiveMaximum": false,
|
||
"minimum": 10,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 10
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/SubordinateEntityRolesQueryRequest"
|
||
}
|
||
]
|
||
},
|
||
"example": {"subordinateEntityIdentifier":{"type":"Nip","value":"7762811692"}}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/QuerySubordinateEntityRolesResponse"
|
||
},
|
||
"example": {"roles":[{"subordinateEntityIdentifier":{"type":"Nip","value":"7762811692"},"role":"VatGroupSubUnit","description":"Członek grupy VAT 8373740478","startDate":"2025-06-22T10:41:11+00:00"}],"hasMore":false}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|-|-|-|\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
],
|
||
"x-sort": [
|
||
{
|
||
"field": "startDate",
|
||
"direction": "Desc"
|
||
}
|
||
],
|
||
"x-required-permissions": [
|
||
"CredentialsManage",
|
||
"CredentialsRead",
|
||
"SubunitManage"
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/permissions/query/authorizations/grants": {
|
||
"post": {
|
||
"tags": [
|
||
"Wyszukiwanie nadanych uprawnień"
|
||
],
|
||
"summary": "Pobranie listy uprawnień podmiotowych do obsługi faktur",
|
||
"description": " Metoda pozwala na odczytanie uprawnień podmiotowych: \n - otrzymanych przez podmiot bieżącego kontekstu \n - nadanych przez podmiot bieżącego kontekstu \n\n Wybór listy nadanych lub otrzymanych uprawnień odbywa się przy użyciu parametru **queryType**. \n\n Uprawnienia zwracane przez operację obejmują: \n - **SelfInvoicing** – wystawianie faktur w trybie samofakturowania \n - **TaxRepresentative** – wykonywanie operacji przedstawiciela podatkowego \n - **RRInvoicing** – wystawianie faktur VAT RR \n - **PefInvoicing** – wystawianie faktur PEF \n\n Odpowiedź może być filtrowana na podstawie następujących parametrów: \n - **authorizingIdentifier** – identyfikator podmiotu uprawniającego (stosowane przy queryType = Received) \n - **authorizedIdentifier** – identyfikator podmiotu uprawnionego (stosowane przy queryType = Granted) \n - **permissionTypes** – lista rodzajów wyszukiwanych uprawnień \n\n#### Stronicowanie wyników\nZapytanie zwraca **jedną stronę wyników** o numerze i rozmiarze podanym w ścieżce.\n- Przy pierwszym wywołaniu należy ustawić parametr `pageOffset = 0`. \n- Jeżeli dostępna jest kolejna strona wyników, w odpowiedzi pojawi się flaga **`hasMore`**. \n- W takim przypadku można wywołać zapytanie ponownie z kolejnym numerem strony.\n\n > Więcej informacji:\n > - [Pobieranie listy uprawnień](https://github.com/CIRFMF/ksef-docs/blob/main/uprawnienia.md#pobranie-listy-uprawnie%C5%84-podmiotowych-do-obs%C5%82ugi-faktur)\n\n**Sortowanie:**\n\n- startDate (Desc)\n\n\n\n**Wymagane uprawnienia**: `CredentialsManage`, `CredentialsRead`.",
|
||
"parameters": [
|
||
{
|
||
"name": "pageOffset",
|
||
"in": "query",
|
||
"description": "Numer strony wyników.",
|
||
"schema": {
|
||
"minimum": 0,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 0
|
||
}
|
||
},
|
||
{
|
||
"name": "pageSize",
|
||
"in": "query",
|
||
"description": "Rozmiar strony wyników.",
|
||
"schema": {
|
||
"maximum": 100,
|
||
"exclusiveMaximum": false,
|
||
"minimum": 10,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 10
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"required": [
|
||
"queryType"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EntityAuthorizationPermissionsQueryRequest"
|
||
}
|
||
]
|
||
},
|
||
"example": {"authorizedIdentifier":{"type":"Nip","value":"7762811692"},"queryType":"Granted","permissionTypes":["SelfInvoicing","TaxRepresentative","RRInvoicing"]}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/QueryEntityAuthorizationPermissionsResponse"
|
||
},
|
||
"example": {"authorizationGrants":[{"id":"0c9a72e8-f344-457f-9c16-7c640eb60242","authorIdentifier":{"type":"Pesel","value":"15062788702"},"authorizedEntityIdentifier":{"type":"Nip","value":"7762811692"},"authorizingEntityIdentifier":{"type":"Nip","value":"1134256681"},"authorizationScope":"SelfInvoicing","description":"Uprawnienie podmiotowe do samofakturowania","startDate":"2025-06-22T10:41:11+00:00"}],"hasMore":false}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|-|-|-|\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
],
|
||
"x-sort": [
|
||
{
|
||
"field": "startDate",
|
||
"direction": "Desc"
|
||
}
|
||
],
|
||
"x-required-permissions": [
|
||
"CredentialsManage",
|
||
"CredentialsRead"
|
||
]
|
||
}
|
||
},
|
||
"/api/v2/permissions/query/eu-entities/grants": {
|
||
"post": {
|
||
"tags": [
|
||
"Wyszukiwanie nadanych uprawnień"
|
||
],
|
||
"summary": "Pobranie listy uprawnień administratorów lub reprezentantów podmiotów unijnych uprawnionych do samofakturowania",
|
||
"description": " Metoda pozwala na odczytanie uprawnień administratorów lub reprezentantów podmiotów unijnych: \n - Jeżeli kontekstem logowania jest NIP, możliwe jest odczytanie uprawnień administratorów podmiotów unijnych powiązanych z podmiotem bieżącego kontekstu, czyli takich, dla których pierwszy człon kontekstu złożonego jest równy NIP-owi kontekstu logowania. \n - Jeżeli kontekst logowania jest złożony (NIP-VAT UE), możliwe jest pobranie wszystkich uprawnień administratorów i reprezentantów podmiotu w bieżącym kontekście złożonym. \n\n Uprawnienia zwracane przez operację obejmują: \n - **VatUeManage** – zarządzanie uprawnieniami w ramach podmiotu unijnego \n - **InvoiceWrite** – wystawianie faktur \n - **InvoiceRead** – przeglądanie faktur \n - **Introspection** – przeglądanie historii sesji \n\n Odpowiedź może być filtrowana na podstawie następujących parametrów: \n - **vatUeIdentifier** – identyfikator podmiotu unijnego \n - **authorizedFingerprintIdentifier** – odcisk palca certyfikatu uprawnionej osoby lub podmiotu \n - **permissionTypes** – lista rodzajów wyszukiwanych uprawnień \n\n#### Stronicowanie wyników\nZapytanie zwraca **jedną stronę wyników** o numerze i rozmiarze podanym w ścieżce.\n- Przy pierwszym wywołaniu należy ustawić parametr `pageOffset = 0`. \n- Jeżeli dostępna jest kolejna strona wyników, w odpowiedzi pojawi się flaga **`hasMore`**. \n- W takim przypadku można wywołać zapytanie ponownie z kolejnym numerem strony.\n \n > Więcej informacji:\n > - [Pobieranie listy uprawnień](https://github.com/CIRFMF/ksef-docs/blob/main/uprawnienia.md#pobranie-listy-uprawnie%C5%84-administrator%C3%B3w-lub-reprezentant%C3%B3w-podmiot%C3%B3w-unijnych-uprawnionych-do-samofakturowania)\n\n**Sortowanie:**\n\n- startDate (Desc)\n\n\n\n**Wymagane uprawnienia**: `CredentialsManage`, `CredentialsRead`, `VatUeManage`.",
|
||
"parameters": [
|
||
{
|
||
"name": "pageOffset",
|
||
"in": "query",
|
||
"description": "Numer strony wyników.",
|
||
"schema": {
|
||
"minimum": 0,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 0
|
||
}
|
||
},
|
||
{
|
||
"name": "pageSize",
|
||
"in": "query",
|
||
"description": "Rozmiar strony wyników.",
|
||
"schema": {
|
||
"maximum": 100,
|
||
"exclusiveMaximum": false,
|
||
"minimum": 10,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 10
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EuEntityPermissionsQueryRequest"
|
||
}
|
||
]
|
||
},
|
||
"example": {"vatUeIdentifier":"DE123456789012","permissionTypes":["VatUeManage","Introspection"]}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/QueryEuEntityPermissionsResponse"
|
||
},
|
||
"example": {"permissions":[{"id":"0c9a72e8-f344-457f-9c16-7c640eb60242","authorIdentifier":{"type":"Pesel","value":"15062788702"},"vatUeIdentifier":"DE123456789012","euEntityName":"Podmiot unijny","authorizedFingerprintIdentifier":"CEB3643BAC2C111ADDE971BDA5A80163441867D65389FC0BC0DFF8B4C1CD4E59","permissionScope":"VatUeManage","description":"Opis uprawnienia","startDate":"2025-06-22T10:41:11+00:00"}],"hasMore":false}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "| ExceptionCode | ExceptionDescription | Details |\n|-|-|-|\n| 21405 | Błąd walidacji danych wejściowych. | {treść błędu z walidatora} |",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExceptionResponse"
|
||
}
|
||
}
|
||
},
|
||
"x-summary": "Bad Request"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
],
|
||
"x-sort": [
|
||
{
|
||
"field": "startDate",
|
||
"direction": "Desc"
|
||
}
|
||
],
|
||
"x-required-permissions": [
|
||
"CredentialsManage",
|
||
"CredentialsRead",
|
||
"VatUeManage"
|
||
]
|
||
}
|
||
}
|
||
},
|
||
"components": {
|
||
"schemas": {
|
||
"AllowedIps": {
|
||
"type": "object",
|
||
"properties": {
|
||
"ip4Addresses": {
|
||
"type": "array",
|
||
"items": {
|
||
"pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)\\.?\\b){4}$",
|
||
"type": "string"
|
||
},
|
||
"description": "Lista adresów IPv4 w notacji dziesiętnej kropkowanej, np. `192.168.0.10`.",
|
||
"nullable": true
|
||
},
|
||
"ip4Ranges": {
|
||
"type": "array",
|
||
"items": {
|
||
"pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)\\.?\\b){4}-((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)\\.?\\b){4}$",
|
||
"type": "string"
|
||
},
|
||
"description": "Lista adresów IPv4 podana w formie zakresu początek–koniec, oddzielonego pojedynczym myślnikiem, np. `10.0.0.1–10.0.0.254`.",
|
||
"nullable": true
|
||
},
|
||
"ip4Masks": {
|
||
"type": "array",
|
||
"items": {
|
||
"pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)\\.?\\b){4}\\/(0|[1-9]|1[0-9]|2[0-9]|3[0-2])$",
|
||
"type": "string"
|
||
},
|
||
"description": "Lista adresów IPv4 w notacji CIDR, np. `172.16.0.0/16`.",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"AmountType": {
|
||
"enum": [
|
||
"Brutto",
|
||
"Netto",
|
||
"Vat"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"ApiRateLimitValuesOverride": {
|
||
"required": [
|
||
"perHour",
|
||
"perMinute",
|
||
"perSecond"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"perSecond": {
|
||
"type": "integer",
|
||
"description": "Limit na sekundę.",
|
||
"format": "int32"
|
||
},
|
||
"perMinute": {
|
||
"type": "integer",
|
||
"description": "Limit na minutę.",
|
||
"format": "int32"
|
||
},
|
||
"perHour": {
|
||
"type": "integer",
|
||
"description": "Limit na godzinę.",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"ApiRateLimitsOverride": {
|
||
"required": [
|
||
"batchSession",
|
||
"invoiceDownload",
|
||
"invoiceExport",
|
||
"invoiceMetadata",
|
||
"invoiceSend",
|
||
"invoiceStatus",
|
||
"onlineSession",
|
||
"other",
|
||
"sessionInvoiceList",
|
||
"sessionList",
|
||
"sessionMisc"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"onlineSession": {
|
||
"required": [
|
||
"perSecond",
|
||
"perMinute",
|
||
"perHour"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/ApiRateLimitValuesOverride"
|
||
}
|
||
],
|
||
"description": "Limity dla otwierania/zamykania sesji interaktywnych."
|
||
},
|
||
"batchSession": {
|
||
"required": [
|
||
"perSecond",
|
||
"perMinute",
|
||
"perHour"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/ApiRateLimitValuesOverride"
|
||
}
|
||
],
|
||
"description": "Limity dla otwierania/zamykania sesji wsadowych."
|
||
},
|
||
"invoiceSend": {
|
||
"required": [
|
||
"perSecond",
|
||
"perMinute",
|
||
"perHour"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/ApiRateLimitValuesOverride"
|
||
}
|
||
],
|
||
"description": "Limity dla wysyłki faktur."
|
||
},
|
||
"invoiceStatus": {
|
||
"required": [
|
||
"perSecond",
|
||
"perMinute",
|
||
"perHour"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/ApiRateLimitValuesOverride"
|
||
}
|
||
],
|
||
"description": "Limity dla pobierania statusu faktury z sesji."
|
||
},
|
||
"sessionList": {
|
||
"required": [
|
||
"perSecond",
|
||
"perMinute",
|
||
"perHour"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/ApiRateLimitValuesOverride"
|
||
}
|
||
],
|
||
"description": "Limity dla pobierania listy sesji."
|
||
},
|
||
"sessionInvoiceList": {
|
||
"required": [
|
||
"perSecond",
|
||
"perMinute",
|
||
"perHour"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/ApiRateLimitValuesOverride"
|
||
}
|
||
],
|
||
"description": "Limity dla pobierania listy faktur w sesji."
|
||
},
|
||
"sessionMisc": {
|
||
"required": [
|
||
"perSecond",
|
||
"perMinute",
|
||
"perHour"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/ApiRateLimitValuesOverride"
|
||
}
|
||
],
|
||
"description": "Limity dla pozostałych operacji w ramach sesji."
|
||
},
|
||
"invoiceMetadata": {
|
||
"required": [
|
||
"perSecond",
|
||
"perMinute",
|
||
"perHour"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/ApiRateLimitValuesOverride"
|
||
}
|
||
],
|
||
"description": "Limity dla pobierania metadanych faktur."
|
||
},
|
||
"invoiceExport": {
|
||
"required": [
|
||
"perSecond",
|
||
"perMinute",
|
||
"perHour"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/ApiRateLimitValuesOverride"
|
||
}
|
||
],
|
||
"description": "Limity dla eksportu paczku faktur."
|
||
},
|
||
"invoiceDownload": {
|
||
"required": [
|
||
"perSecond",
|
||
"perMinute",
|
||
"perHour"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/ApiRateLimitValuesOverride"
|
||
}
|
||
],
|
||
"description": "Limity dla pobierania faktur po numerze KSeF."
|
||
},
|
||
"other": {
|
||
"required": [
|
||
"perSecond",
|
||
"perMinute",
|
||
"perHour"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/ApiRateLimitValuesOverride"
|
||
}
|
||
],
|
||
"description": "Limity dla pozostałych operacji API."
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"AttachmentPermissionGrantRequest": {
|
||
"required": [
|
||
"nip"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"nip": {
|
||
"$ref": "#/components/schemas/Nip"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"AttachmentPermissionRevokeRequest": {
|
||
"required": [
|
||
"nip"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"nip": {
|
||
"$ref": "#/components/schemas/Nip"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"AuthenticationChallengeResponse": {
|
||
"required": [
|
||
"challenge",
|
||
"timestamp"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"challenge": {
|
||
"$ref": "#/components/schemas/Challenge"
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "Czas wygenerowania challenge-a.",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"AuthenticationContextIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"type": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/AuthenticationContextIdentifierType"
|
||
}
|
||
],
|
||
"description": "Typ identyfikatora"
|
||
},
|
||
"value": {
|
||
"type": "string",
|
||
"description": "Wartość identyfikatora"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"AuthenticationContextIdentifierType": {
|
||
"enum": [
|
||
"Nip",
|
||
"InternalId",
|
||
"NipVatUe",
|
||
"PeppolId"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"AuthenticationInitResponse": {
|
||
"required": [
|
||
"authenticationToken",
|
||
"referenceNumber"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"referenceNumber": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/ReferenceNumber"
|
||
}
|
||
],
|
||
"description": "Numer referencyjny sesji uwierzytelnienia."
|
||
},
|
||
"authenticationToken": {
|
||
"required": [
|
||
"token",
|
||
"validUntil"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/TokenInfo"
|
||
}
|
||
],
|
||
"description": "Token operacji uwierzytelnienia."
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"AuthenticationListItem": {
|
||
"required": [
|
||
"authenticationMethod",
|
||
"referenceNumber",
|
||
"startDate",
|
||
"status"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"startDate": {
|
||
"type": "string",
|
||
"description": "Data rozpoczęcia operacji uwierzytelnienia.",
|
||
"format": "date-time"
|
||
},
|
||
"authenticationMethod": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/AuthenticationMethod"
|
||
}
|
||
],
|
||
"description": "Metoda uwierzytelnienia.\n| Wartość | Opis |\n| --- | --- |\n| Token | Token KSeF. |\n| TrustedProfile | Profil Zaufany. |\n| InternalCertificate | Certyfikat KSeF. |\n| QualifiedSignature | Podpis kwalifikowany. |\n| QualifiedSeal | Pieczęć kwalifikowana. |\n| PersonalSignature | Podpis osobisty. |\n| PeppolSignature | Podpis dostawcy uslug Peppol. |\n"
|
||
},
|
||
"status": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/StatusInfo"
|
||
}
|
||
],
|
||
"description": "Informacje o aktualnym statusie.\n| Code | Description | Details |\n| --- | --- | --- |\n| 100 | Uwierzytelnianie w toku | - |\n| 200 | Uwierzytelnianie zakończone sukcesem | - |\n| 415 | Uwierzytelnianie zakończone niepowodzeniem | Brak przypisanych uprawnień |\n| 425 | Uwierzytelnienie unieważnione | Uwierzytelnienie i powiązane refresh tokeny zostały unieważnione przez użytkownika |\n| 450 | Uwierzytelnianie zakończone niepowodzeniem z powodu błędnego tokenu | Nieprawidłowy token |\n| 450 | Uwierzytelnianie zakończone niepowodzeniem z powodu błędnego tokenu | Nieprawidłowy czas tokena |\n| 450 | Uwierzytelnianie zakończone niepowodzeniem z powodu błędnego tokenu | Token unieważniony |\n| 450 | Uwierzytelnianie zakończone niepowodzeniem z powodu błędnego tokenu | Token nieaktywny |\n| 460 | Uwierzytelnianie zakończone niepowodzeniem z powodu błędu certyfikatu | Nieważny certyfikat |\n| 460 | Uwierzytelnianie zakończone niepowodzeniem z powodu błędu certyfikatu | Błąd weryfikacji łańcucha certyfikatów |\n| 460 | Uwierzytelnianie zakończone niepowodzeniem z powodu błędu certyfikatu | Niezaufany łańcuch certyfikatów |\n| 460 | Uwierzytelnianie zakończone niepowodzeniem z powodu błędu certyfikatu | Certyfikat odwołany |\n| 460 | Uwierzytelnianie zakończone niepowodzeniem z powodu błędu certyfikatu | Niepoprawny certyfikat |\n| 470 | Uwierzytelnianie zakończone niepowodzeniem | Próba wykorzystania metod autoryzacyjnych osoby zmarłej |\n| 500 | Nieznany błąd | - |\n| 550 | Operacja została anulowana przez system | Przetwarzanie zostało przerwane z przyczyn wewnętrznych systemu. Spróbuj ponownie |"
|
||
},
|
||
"isTokenRedeemed": {
|
||
"type": "boolean",
|
||
"description": "Czy został już wydany refresh token powiązany z danym uwierzytelnieniem.",
|
||
"nullable": true
|
||
},
|
||
"lastTokenRefreshDate": {
|
||
"type": "string",
|
||
"description": "Data ostatniego odświeżenia tokena.",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"refreshTokenValidUntil": {
|
||
"type": "string",
|
||
"description": "Termin ważności refresh tokena (o ile nie zostanie wcześniej unieważniony).",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"referenceNumber": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/ReferenceNumber"
|
||
}
|
||
],
|
||
"description": "Numer referencyjny sesji uwierzytelnienia."
|
||
},
|
||
"isCurrent": {
|
||
"type": "boolean",
|
||
"description": "Czy sesja jest powiązana z aktualnie używanym tokenem.",
|
||
"readOnly": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"AuthenticationListResponse": {
|
||
"required": [
|
||
"items"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"continuationToken": {
|
||
"type": "string",
|
||
"description": "Token służący do pobrania kolejnej strony wyników. Jeśli jest pusty, to nie ma kolejnych stron.",
|
||
"nullable": true
|
||
},
|
||
"items": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/AuthenticationListItem"
|
||
},
|
||
"description": "Lista sesji uwierzytelniania."
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"AuthenticationMethod": {
|
||
"enum": [
|
||
"Token",
|
||
"TrustedProfile",
|
||
"InternalCertificate",
|
||
"QualifiedSignature",
|
||
"QualifiedSeal",
|
||
"PersonalSignature",
|
||
"PeppolSignature"
|
||
],
|
||
"type": "string",
|
||
"description": "Metoda uwierzytelnienia.\n| Wartość | Opis |\n| --- | --- |\n| Token | Token KSeF. |\n| TrustedProfile | Profil Zaufany. |\n| InternalCertificate | Certyfikat KSeF. |\n| QualifiedSignature | Podpis kwalifikowany. |\n| QualifiedSeal | Pieczęć kwalifikowana. |\n| PersonalSignature | Podpis osobisty. |\n| PeppolSignature | Podpis dostawcy uslug Peppol. |\n"
|
||
},
|
||
"AuthenticationOperationStatusResponse": {
|
||
"required": [
|
||
"authenticationMethod",
|
||
"startDate",
|
||
"status"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"startDate": {
|
||
"type": "string",
|
||
"description": "Data rozpoczęcia operacji uwierzytelnienia.",
|
||
"format": "date-time"
|
||
},
|
||
"authenticationMethod": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/AuthenticationMethod"
|
||
}
|
||
],
|
||
"description": "Metoda uwierzytelnienia.\n| Wartość | Opis |\n| --- | --- |\n| Token | Token KSeF. |\n| TrustedProfile | Profil Zaufany. |\n| InternalCertificate | Certyfikat KSeF. |\n| QualifiedSignature | Podpis kwalifikowany. |\n| QualifiedSeal | Pieczęć kwalifikowana. |\n| PersonalSignature | Podpis osobisty. |\n| PeppolSignature | Podpis dostawcy uslug Peppol. |\n"
|
||
},
|
||
"status": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/StatusInfo"
|
||
}
|
||
],
|
||
"description": "Informacje o aktualnym statusie.\n| Code | Description | Details |\n| --- | --- | --- |\n| 100 | Uwierzytelnianie w toku | - |\n| 200 | Uwierzytelnianie zakończone sukcesem | - |\n| 415 | Uwierzytelnianie zakończone niepowodzeniem | Brak przypisanych uprawnień |\n| 425 | Uwierzytelnienie unieważnione | Uwierzytelnienie i powiązane refresh tokeny zostały unieważnione przez użytkownika |\n| 450 | Uwierzytelnianie zakończone niepowodzeniem z powodu błędnego tokenu | Nieprawidłowy token |\n| 450 | Uwierzytelnianie zakończone niepowodzeniem z powodu błędnego tokenu | Nieprawidłowy czas tokena |\n| 450 | Uwierzytelnianie zakończone niepowodzeniem z powodu błędnego tokenu | Token unieważniony |\n| 450 | Uwierzytelnianie zakończone niepowodzeniem z powodu błędnego tokenu | Token nieaktywny |\n| 460 | Uwierzytelnianie zakończone niepowodzeniem z powodu błędu certyfikatu | Nieważny certyfikat |\n| 460 | Uwierzytelnianie zakończone niepowodzeniem z powodu błędu certyfikatu | Błąd weryfikacji łańcucha certyfikatów |\n| 460 | Uwierzytelnianie zakończone niepowodzeniem z powodu błędu certyfikatu | Niezaufany łańcuch certyfikatów |\n| 460 | Uwierzytelnianie zakończone niepowodzeniem z powodu błędu certyfikatu | Certyfikat odwołany |\n| 460 | Uwierzytelnianie zakończone niepowodzeniem z powodu błędu certyfikatu | Niepoprawny certyfikat |\n| 470 | Uwierzytelnianie zakończone niepowodzeniem | Próba wykorzystania metod autoryzacyjnych osoby zmarłej |\n| 500 | Nieznany błąd | - |\n| 550 | Operacja została anulowana przez system | Przetwarzanie zostało przerwane z przyczyn wewnętrznych systemu. Spróbuj ponownie |"
|
||
},
|
||
"isTokenRedeemed": {
|
||
"type": "boolean",
|
||
"description": "Czy został już wydany refresh token powiązany z danym uwierzytelnieniem.",
|
||
"nullable": true
|
||
},
|
||
"lastTokenRefreshDate": {
|
||
"type": "string",
|
||
"description": "Data ostatniego odświeżenia tokena.",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"refreshTokenValidUntil": {
|
||
"type": "string",
|
||
"description": "Termin ważności refresh tokena (o ile nie zostanie wcześniej unieważniony).",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"AuthenticationTokenRefreshResponse": {
|
||
"required": [
|
||
"accessToken"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"accessToken": {
|
||
"required": [
|
||
"token",
|
||
"validUntil"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/TokenInfo"
|
||
}
|
||
],
|
||
"description": "Token dostępu, którego należy używać w wywołaniach chronionych zasobów API."
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"AuthenticationTokenStatus": {
|
||
"enum": [
|
||
"Pending",
|
||
"Active",
|
||
"Revoking",
|
||
"Revoked",
|
||
"Failed"
|
||
],
|
||
"type": "string",
|
||
"description": "| Wartość | Opis |\n| --- | --- |\n| Pending | Token został utworzony ale jest jeszcze w trakcie aktywacji i nadawania uprawnień. Nie może być jeszcze wykorzystywany do uwierzytelniania. |\n| Active | Token jest aktywny i może być wykorzystywany do uwierzytelniania. |\n| Revoking | Token jest w trakcie unieważniania. Nie może już być wykorzystywany do uwierzytelniania. |\n| Revoked | Token został unieważniony i nie może być wykorzystywany do uwierzytelniania. |\n| Failed | Nie udało się aktywować tokena. Należy wygenerować nowy token, obecny nie może być wykorzystywany do uwierzytelniania. |\n"
|
||
},
|
||
"AuthenticationTokensResponse": {
|
||
"required": [
|
||
"accessToken",
|
||
"refreshToken"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"accessToken": {
|
||
"required": [
|
||
"token",
|
||
"validUntil"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/TokenInfo"
|
||
}
|
||
],
|
||
"description": "Token dostępu."
|
||
},
|
||
"refreshToken": {
|
||
"required": [
|
||
"token",
|
||
"validUntil"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/TokenInfo"
|
||
}
|
||
],
|
||
"description": "Token umożliwiający odświeżenie tokenu dostępu.\n> Więcej informacji:\n> - [Odświeżanie tokena](https://github.com/CIRFMF/ksef-docs/blob/main/uwierzytelnianie.md#od%C5%9Bwie%C5%BCenie-tokena-accesstoken)"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"AuthorizationPolicy": {
|
||
"type": "object",
|
||
"properties": {
|
||
"allowedIps": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/AllowedIps"
|
||
}
|
||
],
|
||
"description": "Lista dozwolonych adresów IP.",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"BatchFileInfo": {
|
||
"required": [
|
||
"fileHash",
|
||
"fileParts",
|
||
"fileSize"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"fileSize": {
|
||
"maximum": 5000000000,
|
||
"exclusiveMaximum": false,
|
||
"minimum": 1,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"description": "Rozmiar pliku paczki w bajtach. Maksymalny rozmiar paczki to 5GB.",
|
||
"format": "int64"
|
||
},
|
||
"fileHash": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/Sha256HashBase64"
|
||
}
|
||
],
|
||
"description": "Skrót SHA256 pliku paczki, zakodowany w formacie Base64."
|
||
},
|
||
"fileParts": {
|
||
"maxItems": 50,
|
||
"minItems": 1,
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/BatchFilePartInfo"
|
||
},
|
||
"description": "Informacje o częściach pliku paczki. Maksymalna liczba części to 50. Maksymalny dozwolony rozmiar części przed zaszyfrowaniem to 100MB."
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"BatchFilePartInfo": {
|
||
"required": [
|
||
"fileHash",
|
||
"fileSize",
|
||
"ordinalNumber"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"ordinalNumber": {
|
||
"minimum": 1,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"description": "Numer sekwencyjny części pliku paczki.",
|
||
"format": "int32"
|
||
},
|
||
"fileName": {
|
||
"maxLength": 100,
|
||
"type": "string",
|
||
"description": "Nazwa części pliku paczki.",
|
||
"nullable": true,
|
||
"deprecated": true,
|
||
"x-removal-date": "2025-12-07"
|
||
},
|
||
"fileSize": {
|
||
"minimum": 1,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"description": "Rozmiar zaszyfrowanej części pliku paczki w bajtach.",
|
||
"format": "int64"
|
||
},
|
||
"fileHash": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/Sha256HashBase64"
|
||
}
|
||
],
|
||
"description": "Skrót SHA256 zaszyfrowanej części pliku paczki, zakodowany w formacie Base64."
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"BatchSessionContextLimitsOverride": {
|
||
"required": [
|
||
"maxInvoices",
|
||
"maxInvoiceSizeInMB",
|
||
"maxInvoiceWithAttachmentSizeInMB"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"maxInvoiceSizeInMB": {
|
||
"maximum": 5,
|
||
"exclusiveMaximum": false,
|
||
"minimum": 0,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"description": "Maksymalny rozmiar faktury w MB.",
|
||
"format": "int32"
|
||
},
|
||
"maxInvoiceWithAttachmentSizeInMB": {
|
||
"maximum": 10,
|
||
"exclusiveMaximum": false,
|
||
"minimum": 0,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"description": "Maksymalny rozmiar faktury z załącznikiem w MB.",
|
||
"format": "int32"
|
||
},
|
||
"maxInvoices": {
|
||
"maximum": 100000,
|
||
"exclusiveMaximum": false,
|
||
"minimum": 0,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"description": "Maksymalna ilość faktur które można przesłać w pojedynczej sesji.",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"BatchSessionEffectiveContextLimits": {
|
||
"required": [
|
||
"maxInvoices",
|
||
"maxInvoiceSizeInMB",
|
||
"maxInvoiceWithAttachmentSizeInMB"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"maxInvoiceSizeInMB": {
|
||
"minimum": 0,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"description": "Maksymalny rozmiar faktury w MB.",
|
||
"format": "int32"
|
||
},
|
||
"maxInvoiceWithAttachmentSizeInMB": {
|
||
"minimum": 0,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"description": "Maksymalny rozmiar faktury z załącznikiem w MB.",
|
||
"format": "int32"
|
||
},
|
||
"maxInvoices": {
|
||
"minimum": 0,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"description": "Maksymalna ilość faktur które można przesłać w pojedynczej sesji.",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"BuyerIdentifierType": {
|
||
"enum": [
|
||
"None",
|
||
"Other",
|
||
"Nip",
|
||
"VatUe"
|
||
],
|
||
"type": "string",
|
||
"description": "| Wartość | Opis |\n| --- | --- |\n| None | Brak identyfikatora nabywcy |\n| Other | Inny identyfikator |\n| Nip | 10 cyfrowy numer NIP |\n| VatUe | Identyfikator VAT UE podmiotu unijnego |\n"
|
||
},
|
||
"CertificateEffectiveSubjectLimits": {
|
||
"type": "object",
|
||
"properties": {
|
||
"maxCertificates": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"CertificateEnrollmentDataResponse": {
|
||
"required": [
|
||
"commonName",
|
||
"countryName"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"commonName": {
|
||
"type": "string",
|
||
"description": "Nazwa powszechna."
|
||
},
|
||
"countryName": {
|
||
"type": "string",
|
||
"description": "Kraj, kod ISO 3166."
|
||
},
|
||
"givenName": {
|
||
"type": "string",
|
||
"description": "Imię.",
|
||
"nullable": true
|
||
},
|
||
"surname": {
|
||
"type": "string",
|
||
"description": "Nazwisko.",
|
||
"nullable": true
|
||
},
|
||
"serialNumber": {
|
||
"type": "string",
|
||
"description": "Numer seryjny podmiotu.",
|
||
"nullable": true
|
||
},
|
||
"uniqueIdentifier": {
|
||
"type": "string",
|
||
"description": "Unikalny identyfikator.",
|
||
"nullable": true
|
||
},
|
||
"organizationName": {
|
||
"type": "string",
|
||
"description": "Nazwa organizacji.",
|
||
"nullable": true
|
||
},
|
||
"organizationIdentifier": {
|
||
"type": "string",
|
||
"description": "Identyfikator organizacji.",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"CertificateEnrollmentStatusResponse": {
|
||
"required": [
|
||
"requestDate",
|
||
"status"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"requestDate": {
|
||
"type": "string",
|
||
"description": "Data złożenia wniosku certyfikacyjnego.",
|
||
"format": "date-time"
|
||
},
|
||
"status": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/StatusInfo"
|
||
}
|
||
],
|
||
"description": "Informacje o aktualnym statusie.\n| Code | Description | Details |\n| --- | --- | --- |\n| 100 | Wniosek przyjęty do realizacji | - |\n| 200 | Wniosek obsłużony (certyfikat wygenerowany) | - |\n| 400 | Wniosek odrzucony | Klucz publiczny został już certyfikowany przez inny podmiot. |\n| 400 | Wniosek odrzucony | Osiągnięto dopuszczalny limit posiadanych certyfikatów. |\n| 500 | Nieznany błąd | - |\n| 550 | Operacja została anulowana przez system | Przetwarzanie zostało przerwane z przyczyn wewnętrznych systemu. Spróbuj ponownie |"
|
||
},
|
||
"certificateSerialNumber": {
|
||
"type": "string",
|
||
"description": "Numer seryjny wygenerowanego certyfikatu (w formacie szesnastkowym). \nZwracany w przypadku prawidłowego przeprocesowania wniosku certyfikacyjnego.",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"CertificateLimit": {
|
||
"required": [
|
||
"limit",
|
||
"remaining"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"remaining": {
|
||
"type": "integer",
|
||
"description": "Pozostała wartość limitu.",
|
||
"format": "int32"
|
||
},
|
||
"limit": {
|
||
"type": "integer",
|
||
"description": "Maksymalna liczba zasobów dozwolona w ramach limitu.",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"CertificateLimitsResponse": {
|
||
"required": [
|
||
"canRequest",
|
||
"certificate",
|
||
"enrollment"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"canRequest": {
|
||
"type": "boolean",
|
||
"description": "Flaga informująca czy uwierzytelniony podmiot może złożyć nowy wniosek o certyfikat.",
|
||
"readOnly": true
|
||
},
|
||
"enrollment": {
|
||
"required": [
|
||
"remaining",
|
||
"limit"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/CertificateLimit"
|
||
}
|
||
],
|
||
"description": "Informacje o limitach związanych z liczbą możliwych do złożenia wniosków certyfikacyjnych."
|
||
},
|
||
"certificate": {
|
||
"required": [
|
||
"remaining",
|
||
"limit"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/CertificateLimit"
|
||
}
|
||
],
|
||
"description": "Informacje o limitach dotyczących liczby aktywnych certyfikatów wydanych dla danego podmiotu."
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "Informacje o limitach wniosków oraz certyfikatów dla uwierzytelnionego podmiotu."
|
||
},
|
||
"CertificateListItem": {
|
||
"required": [
|
||
"certificateSerialNumber",
|
||
"commonName",
|
||
"name",
|
||
"requestDate",
|
||
"status",
|
||
"subjectIdentifier",
|
||
"type",
|
||
"validFrom",
|
||
"validTo"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"certificateSerialNumber": {
|
||
"type": "string",
|
||
"description": "Numer seryjny certyfikatu (w formacie szesnastkowym)."
|
||
},
|
||
"name": {
|
||
"maxLength": 100,
|
||
"type": "string",
|
||
"description": "Nazwa własna certyfikatu."
|
||
},
|
||
"type": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/KsefCertificateType"
|
||
}
|
||
],
|
||
"description": "Typ certyfikatu.\n| Wartość | Opis |\n| --- | --- |\n| Authentication | Certyfikat używany do uwierzytelnienia w systemie. |\n| Offline | Certyfikat używany wyłącznie do potwierdzania autentyczności wystawcy i integralności faktury w trybie offline |\n"
|
||
},
|
||
"commonName": {
|
||
"type": "string",
|
||
"description": "Nazwa powszechna (CN) podmiotu, dla którego wystawiono certyfikat."
|
||
},
|
||
"status": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/CertificateListItemStatus"
|
||
}
|
||
],
|
||
"description": "Status certyfikatu.\n| Wartość | Opis |\n| --- | --- |\n| Active | Certyfikat jest aktywny i może zostać użyty do uwierzytelnienia lub realizacji operacji w trybie offline (w zależności od typu certyfikatu). |\n| Blocked | Certyfikat został zablokowany i nie może zostać użyty do uwierzytelnienia i realizacji operacji w trybie offline. Status przejściowy do czasu zakończenia procesu unieważniania. |\n| Revoked | Certyfikat został unieważniony i nie może zostać użyty do uwierzytelnienia i realizacji operacji w trybie offline. |\n| Expired | Certyfikat wygasł i nie może zostać użyty do uwierzytelnienia i realizacji operacji w trybie offline. |\n"
|
||
},
|
||
"subjectIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/CertificateSubjectIdentifier"
|
||
}
|
||
],
|
||
"description": "Identyfikator podmiotu, dla którego wystawiono certyfikat."
|
||
},
|
||
"validFrom": {
|
||
"type": "string",
|
||
"description": "Data rozpoczęcia ważności certyfikatu.",
|
||
"format": "date-time"
|
||
},
|
||
"validTo": {
|
||
"type": "string",
|
||
"description": "Data wygaśnięcia certyfikatu.",
|
||
"format": "date-time"
|
||
},
|
||
"lastUseDate": {
|
||
"type": "string",
|
||
"description": "Data ostatniego użycia certyfikatu.",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"requestDate": {
|
||
"type": "string",
|
||
"description": "Data złożenia wniosku certyfikacyjnego.",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"CertificateListItemStatus": {
|
||
"enum": [
|
||
"Active",
|
||
"Blocked",
|
||
"Revoked",
|
||
"Expired"
|
||
],
|
||
"type": "string",
|
||
"description": "| Wartość | Opis |\n| --- | --- |\n| Active | Certyfikat jest aktywny i może zostać użyty do uwierzytelnienia lub realizacji operacji w trybie offline (w zależności od typu certyfikatu). |\n| Blocked | Certyfikat został zablokowany i nie może zostać użyty do uwierzytelnienia i realizacji operacji w trybie offline. Status przejściowy do czasu zakończenia procesu unieważniania. |\n| Revoked | Certyfikat został unieważniony i nie może zostać użyty do uwierzytelnienia i realizacji operacji w trybie offline. |\n| Expired | Certyfikat wygasł i nie może zostać użyty do uwierzytelnienia i realizacji operacji w trybie offline. |\n"
|
||
},
|
||
"CertificateRevocationReason": {
|
||
"enum": [
|
||
"Unspecified",
|
||
"Superseded",
|
||
"KeyCompromise"
|
||
],
|
||
"type": "string",
|
||
"description": "| Wartość | Opis |\n| --- | --- |\n| Unspecified | Nieokreślony. |\n| Superseded | Certyfikat został zastąpiony przez inny. |\n| KeyCompromise | Klucz prywatny powiązany z certyfikatem został skompromitowany. |\n"
|
||
},
|
||
"CertificateSubjectIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"type": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/CertificateSubjectIdentifierType"
|
||
}
|
||
],
|
||
"description": "Typ identyfikatora."
|
||
},
|
||
"value": {
|
||
"type": "string",
|
||
"description": "Wartość identyfikatora."
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "Identyfikator podmiotu dla którego wystawiono certyfikat.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |\n| Pesel | 11 cyfrowy numer PESEL |\n| Fingerprint | Odcisk palca certyfikatu |"
|
||
},
|
||
"CertificateSubjectIdentifierType": {
|
||
"enum": [
|
||
"Nip",
|
||
"Pesel",
|
||
"Fingerprint"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"CertificateSubjectLimitsOverride": {
|
||
"type": "object",
|
||
"properties": {
|
||
"maxCertificates": {
|
||
"minimum": 0,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"Challenge": {
|
||
"maxLength": 36,
|
||
"minLength": 36,
|
||
"type": "string",
|
||
"description": "Unikalny challenge."
|
||
},
|
||
"CheckAttachmentPermissionStatusResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"isAttachmentAllowed": {
|
||
"type": "boolean",
|
||
"description": "Informacja czy Podmiot ma obecnie możliwość dodawania Załączników do Faktur"
|
||
},
|
||
"revokedDate": {
|
||
"type": "string",
|
||
"description": "Data i czas zakończenia możliwość dodawania przez Podmiot Załączników do Faktur.\nBrak podanej daty oznacza bezterminową możliwość dodawania Załączników do Faktur",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"CommonSessionStatus": {
|
||
"enum": [
|
||
"InProgress",
|
||
"Succeeded",
|
||
"Failed",
|
||
"Cancelled"
|
||
],
|
||
"type": "string",
|
||
"description": "| Wartość | Opis |\n| --- | --- |\n| InProgress | Sesja aktywna. |\n| Succeeded | Sesja przetworzona poprawnie. W trakcie przetwarzania sesji nie wystąpiły żadne błędy, ale część faktur nadal mogła zostać odrzucona. |\n| Failed | Sesja nie przetworzona z powodu błędów. Na etapie rozpoczynania lub kończenia sesji wystąpiły błędy, które nie pozwoliły na jej poprawne przetworzenie. |\n| Cancelled | Sesja anulowania. Został przekroczony czas na wysyłkę w sesji wsadowej, lub nie przesłano żadnych faktur w sesji interaktywnej. |\n"
|
||
},
|
||
"CurrencyCode": {
|
||
"enum": [
|
||
"AED",
|
||
"AFN",
|
||
"ALL",
|
||
"AMD",
|
||
"ANG",
|
||
"AOA",
|
||
"ARS",
|
||
"AUD",
|
||
"AWG",
|
||
"AZN",
|
||
"BAM",
|
||
"BBD",
|
||
"BDT",
|
||
"BGN",
|
||
"BHD",
|
||
"BIF",
|
||
"BMD",
|
||
"BND",
|
||
"BOB",
|
||
"BOV",
|
||
"BRL",
|
||
"BSD",
|
||
"BTN",
|
||
"BWP",
|
||
"BYN",
|
||
"BZD",
|
||
"CAD",
|
||
"CDF",
|
||
"CHE",
|
||
"CHF",
|
||
"CHW",
|
||
"CLF",
|
||
"CLP",
|
||
"CNY",
|
||
"COP",
|
||
"COU",
|
||
"CRC",
|
||
"CUC",
|
||
"CUP",
|
||
"CVE",
|
||
"CZK",
|
||
"DJF",
|
||
"DKK",
|
||
"DOP",
|
||
"DZD",
|
||
"EGP",
|
||
"ERN",
|
||
"ETB",
|
||
"EUR",
|
||
"FJD",
|
||
"FKP",
|
||
"GBP",
|
||
"GEL",
|
||
"GGP",
|
||
"GHS",
|
||
"GIP",
|
||
"GMD",
|
||
"GNF",
|
||
"GTQ",
|
||
"GYD",
|
||
"HKD",
|
||
"HNL",
|
||
"HRK",
|
||
"HTG",
|
||
"HUF",
|
||
"IDR",
|
||
"ILS",
|
||
"IMP",
|
||
"INR",
|
||
"IQD",
|
||
"IRR",
|
||
"ISK",
|
||
"JEP",
|
||
"JMD",
|
||
"JOD",
|
||
"JPY",
|
||
"KES",
|
||
"KGS",
|
||
"KHR",
|
||
"KMF",
|
||
"KPW",
|
||
"KRW",
|
||
"KWD",
|
||
"KYD",
|
||
"KZT",
|
||
"LAK",
|
||
"LBP",
|
||
"LKR",
|
||
"LRD",
|
||
"LSL",
|
||
"LYD",
|
||
"MAD",
|
||
"MDL",
|
||
"MGA",
|
||
"MKD",
|
||
"MMK",
|
||
"MNT",
|
||
"MOP",
|
||
"MRU",
|
||
"MUR",
|
||
"MVR",
|
||
"MWK",
|
||
"MXN",
|
||
"MXV",
|
||
"MYR",
|
||
"MZN",
|
||
"NAD",
|
||
"NGN",
|
||
"NIO",
|
||
"NOK",
|
||
"NPR",
|
||
"NZD",
|
||
"OMR",
|
||
"PAB",
|
||
"PEN",
|
||
"PGK",
|
||
"PHP",
|
||
"PKR",
|
||
"PLN",
|
||
"PYG",
|
||
"QAR",
|
||
"RON",
|
||
"RSD",
|
||
"RUB",
|
||
"RWF",
|
||
"SAR",
|
||
"SBD",
|
||
"SCR",
|
||
"SDG",
|
||
"SEK",
|
||
"SGD",
|
||
"SHP",
|
||
"SLL",
|
||
"SOS",
|
||
"SRD",
|
||
"SSP",
|
||
"STN",
|
||
"SVC",
|
||
"SYP",
|
||
"SZL",
|
||
"THB",
|
||
"TJS",
|
||
"TMT",
|
||
"TND",
|
||
"TOP",
|
||
"TRY",
|
||
"TTD",
|
||
"TWD",
|
||
"TZS",
|
||
"UAH",
|
||
"UGX",
|
||
"USD",
|
||
"USN",
|
||
"UYI",
|
||
"UYU",
|
||
"UYW",
|
||
"UZS",
|
||
"VES",
|
||
"VND",
|
||
"VUV",
|
||
"WST",
|
||
"XAF",
|
||
"XAG",
|
||
"XAU",
|
||
"XBA",
|
||
"XBB",
|
||
"XBC",
|
||
"XBD",
|
||
"XCD",
|
||
"XCG",
|
||
"XDR",
|
||
"XOF",
|
||
"XPD",
|
||
"XPF",
|
||
"XPT",
|
||
"XSU",
|
||
"XUA",
|
||
"XXX",
|
||
"YER",
|
||
"ZAR",
|
||
"ZMW",
|
||
"ZWL"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"EffectiveApiRateLimitValues": {
|
||
"required": [
|
||
"perHour",
|
||
"perMinute",
|
||
"perSecond"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"perSecond": {
|
||
"type": "integer",
|
||
"description": "Limit na sekundę.",
|
||
"format": "int32"
|
||
},
|
||
"perMinute": {
|
||
"type": "integer",
|
||
"description": "Limit na minutę.",
|
||
"format": "int32"
|
||
},
|
||
"perHour": {
|
||
"type": "integer",
|
||
"description": "Limit na godzinę.",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"EffectiveApiRateLimits": {
|
||
"required": [
|
||
"batchSession",
|
||
"invoiceDownload",
|
||
"invoiceExport",
|
||
"invoiceMetadata",
|
||
"invoiceSend",
|
||
"invoiceStatus",
|
||
"onlineSession",
|
||
"other",
|
||
"sessionInvoiceList",
|
||
"sessionList",
|
||
"sessionMisc"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"onlineSession": {
|
||
"required": [
|
||
"perSecond",
|
||
"perMinute",
|
||
"perHour"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EffectiveApiRateLimitValues"
|
||
}
|
||
],
|
||
"description": "Limity dla otwierania/zamykania sesji interaktywnych."
|
||
},
|
||
"batchSession": {
|
||
"required": [
|
||
"perSecond",
|
||
"perMinute",
|
||
"perHour"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EffectiveApiRateLimitValues"
|
||
}
|
||
],
|
||
"description": "Limity dla otwierania/zamykania sesji wsadowych."
|
||
},
|
||
"invoiceSend": {
|
||
"required": [
|
||
"perSecond",
|
||
"perMinute",
|
||
"perHour"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EffectiveApiRateLimitValues"
|
||
}
|
||
],
|
||
"description": "Limity dla wysyłki faktur."
|
||
},
|
||
"invoiceStatus": {
|
||
"required": [
|
||
"perSecond",
|
||
"perMinute",
|
||
"perHour"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EffectiveApiRateLimitValues"
|
||
}
|
||
],
|
||
"description": "Limity dla pobierania statusu faktury z sesji."
|
||
},
|
||
"sessionList": {
|
||
"required": [
|
||
"perSecond",
|
||
"perMinute",
|
||
"perHour"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EffectiveApiRateLimitValues"
|
||
}
|
||
],
|
||
"description": "Limity dla pobierania listy sesji."
|
||
},
|
||
"sessionInvoiceList": {
|
||
"required": [
|
||
"perSecond",
|
||
"perMinute",
|
||
"perHour"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EffectiveApiRateLimitValues"
|
||
}
|
||
],
|
||
"description": "Limity dla pobierania listy faktur w sesji."
|
||
},
|
||
"sessionMisc": {
|
||
"required": [
|
||
"perSecond",
|
||
"perMinute",
|
||
"perHour"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EffectiveApiRateLimitValues"
|
||
}
|
||
],
|
||
"description": "Limity dla pozostałych operacji w ramach sesji."
|
||
},
|
||
"invoiceMetadata": {
|
||
"required": [
|
||
"perSecond",
|
||
"perMinute",
|
||
"perHour"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EffectiveApiRateLimitValues"
|
||
}
|
||
],
|
||
"description": "Limity dla pobierania metadanych faktur."
|
||
},
|
||
"invoiceExport": {
|
||
"required": [
|
||
"perSecond",
|
||
"perMinute",
|
||
"perHour"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EffectiveApiRateLimitValues"
|
||
}
|
||
],
|
||
"description": "Limity dla eksportu paczku faktur."
|
||
},
|
||
"invoiceDownload": {
|
||
"required": [
|
||
"perSecond",
|
||
"perMinute",
|
||
"perHour"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EffectiveApiRateLimitValues"
|
||
}
|
||
],
|
||
"description": "Limity dla pobierania faktur po numerze KSeF."
|
||
},
|
||
"other": {
|
||
"required": [
|
||
"perSecond",
|
||
"perMinute",
|
||
"perHour"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EffectiveApiRateLimitValues"
|
||
}
|
||
],
|
||
"description": "Limity dla pozostałych operacji API."
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"EffectiveContextLimits": {
|
||
"required": [
|
||
"batchSession",
|
||
"onlineSession"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"onlineSession": {
|
||
"required": [
|
||
"maxInvoiceSizeInMB",
|
||
"maxInvoiceWithAttachmentSizeInMB",
|
||
"maxInvoices"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/OnlineSessionEffectiveContextLimits"
|
||
}
|
||
],
|
||
"description": "Limity dla sesji interaktywnych."
|
||
},
|
||
"batchSession": {
|
||
"required": [
|
||
"maxInvoiceSizeInMB",
|
||
"maxInvoiceWithAttachmentSizeInMB",
|
||
"maxInvoices"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/BatchSessionEffectiveContextLimits"
|
||
}
|
||
],
|
||
"description": "Limity dla sesji wsadowych."
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"EffectiveSubjectLimits": {
|
||
"type": "object",
|
||
"properties": {
|
||
"enrollment": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EnrollmentEffectiveSubjectLimits"
|
||
}
|
||
],
|
||
"nullable": true
|
||
},
|
||
"certificate": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/CertificateEffectiveSubjectLimits"
|
||
}
|
||
],
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"EncryptionInfo": {
|
||
"required": [
|
||
"encryptedSymmetricKey",
|
||
"initializationVector"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"encryptedSymmetricKey": {
|
||
"type": "string",
|
||
"description": "Klucz symetryczny o długości 32 bajtów, zaszyfrowany algorytmem RSA (Padding: OAEP z SHA-256), zakodowany w formacie Base64.\n\n[Klucz publiczny Ministersta Finansów](/docs/v2/index.html#tag/Certyfikaty-klucza-publicznego)",
|
||
"format": "byte"
|
||
},
|
||
"initializationVector": {
|
||
"type": "string",
|
||
"description": "Wektor inicjalizujący (IV) o długości 16 bajtów, używany do szyfrowania symetrycznego, zakodowany w formacie Base64.",
|
||
"format": "byte"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"EnrollCertificateRequest": {
|
||
"required": [
|
||
"certificateName",
|
||
"certificateType",
|
||
"csr"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"certificateName": {
|
||
"maxLength": 100,
|
||
"minLength": 5,
|
||
"pattern": "^[a-zA-Z0-9_\\-\\ ąćęłńóśźżĄĆĘŁŃÓŚŹŻ]+$",
|
||
"type": "string",
|
||
"description": "Nazwa własna certyfikatu."
|
||
},
|
||
"certificateType": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/KsefCertificateType"
|
||
}
|
||
],
|
||
"description": "Typ certyfikatu.\n| Wartość | Opis |\n| --- | --- |\n| Authentication | Certyfikat używany do uwierzytelnienia w systemie. |\n| Offline | Certyfikat używany wyłącznie do potwierdzania autentyczności wystawcy i integralności faktury w trybie offline |\n"
|
||
},
|
||
"csr": {
|
||
"type": "string",
|
||
"description": "Wniosek certyfikacyjny PKCS#10 (CSR) w formacie DER zakodowany w Base64.",
|
||
"format": "byte"
|
||
},
|
||
"validFrom": {
|
||
"type": "string",
|
||
"description": "Data rozpoczęcia ważności certyfikatu.\nJeśli nie zostanie podana, certyfikat będzie ważny od momentu jego wystawienia.",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"EnrollCertificateResponse": {
|
||
"required": [
|
||
"referenceNumber",
|
||
"timestamp"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"referenceNumber": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/ReferenceNumber"
|
||
}
|
||
],
|
||
"description": "Numer referencyjny wniosku certyfikacyjnego."
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "Data złożenia wniosku certyfikacyjnego.",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"EnrollmentEffectiveSubjectLimits": {
|
||
"type": "object",
|
||
"properties": {
|
||
"maxEnrollments": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"EnrollmentSubjectLimitsOverride": {
|
||
"type": "object",
|
||
"properties": {
|
||
"maxEnrollments": {
|
||
"minimum": 0,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"EntityAuthorizationGrant": {
|
||
"required": [
|
||
"authorizationScope",
|
||
"authorizedEntityIdentifier",
|
||
"authorizingEntityIdentifier",
|
||
"description",
|
||
"id",
|
||
"startDate"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/PermissionId"
|
||
}
|
||
],
|
||
"description": "Identyfikator uprawnienia."
|
||
},
|
||
"authorIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EntityAuthorizationsAuthorIdentifier"
|
||
}
|
||
],
|
||
"description": "Identyfikator osoby nadającej uprawnienie.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |\n| Pesel | 11 cyfrowy numer PESEL |\n| Fingerprint | Odcisk palca certyfikatu |",
|
||
"nullable": true
|
||
},
|
||
"authorizedEntityIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EntityAuthorizationsAuthorizedEntityIdentifier"
|
||
}
|
||
],
|
||
"description": "Identyfikator podmiotu uprawnionego.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |\n| PeppolId | Identyfikator dostawcy usług Peppol |"
|
||
},
|
||
"authorizingEntityIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EntityAuthorizationsAuthorizingEntityIdentifier"
|
||
}
|
||
],
|
||
"description": "Identyfikator podmiotu uprawniającego.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |"
|
||
},
|
||
"authorizationScope": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/InvoicePermissionType"
|
||
}
|
||
],
|
||
"description": "Rodzaj uprawnienia."
|
||
},
|
||
"description": {
|
||
"maxLength": 256,
|
||
"minLength": 5,
|
||
"type": "string",
|
||
"description": "Opis uprawnienia."
|
||
},
|
||
"startDate": {
|
||
"type": "string",
|
||
"description": "Data rozpoczęcia obowiązywania uprawnienia.",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"EntityAuthorizationPermissionType": {
|
||
"enum": [
|
||
"SelfInvoicing",
|
||
"RRInvoicing",
|
||
"TaxRepresentative",
|
||
"PefInvoicing"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"EntityAuthorizationPermissionsGrantRequest": {
|
||
"required": [
|
||
"description",
|
||
"permission",
|
||
"subjectIdentifier"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"subjectIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EntityAuthorizationPermissionsSubjectIdentifier"
|
||
}
|
||
],
|
||
"description": "Identyfikator podmiotu uprawnianego.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |\n| PeppolId | Identyfikator dostawcy usług Peppol |"
|
||
},
|
||
"permission": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EntityAuthorizationPermissionType"
|
||
}
|
||
],
|
||
"description": "Rodzaj uprawnienia."
|
||
},
|
||
"description": {
|
||
"maxLength": 256,
|
||
"minLength": 5,
|
||
"type": "string",
|
||
"description": "Opis uprawnienia"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"EntityAuthorizationPermissionsQueryRequest": {
|
||
"required": [
|
||
"queryType"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"authorizingIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EntityAuthorizationsAuthorizingEntityIdentifier"
|
||
}
|
||
],
|
||
"description": "Identyfikator podmiotu uprawniającego.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |",
|
||
"nullable": true
|
||
},
|
||
"authorizedIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EntityAuthorizationsAuthorizedEntityIdentifier"
|
||
}
|
||
],
|
||
"description": "Identyfikator podmiotu uprawnionego.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |\n| PeppolId | Identyfikator dostawcy usług Peppol |",
|
||
"nullable": true
|
||
},
|
||
"queryType": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/QueryType"
|
||
}
|
||
],
|
||
"description": "Typ zapytania.\n| Type | Value |\n| --- | --- |\n| Granted | Uprawnienia nadane innym podmiotom |\n| Received | Uprawnienia otrzymane od innych podmiotów |"
|
||
},
|
||
"permissionTypes": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/InvoicePermissionType"
|
||
},
|
||
"description": "Lista rodzajów wyszukiwanych uprawnień.",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"EntityAuthorizationPermissionsSubjectIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"type": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EntityAuthorizationPermissionsSubjectIdentifierType"
|
||
}
|
||
],
|
||
"description": "Typ identyfikatora."
|
||
},
|
||
"value": {
|
||
"type": "string",
|
||
"description": "Wartość identyfikatora."
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "Identyfikator podmiotu uprawnianego.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |\n| PeppolId | Identyfikator dostawcy usług Peppol |"
|
||
},
|
||
"EntityAuthorizationPermissionsSubjectIdentifierType": {
|
||
"enum": [
|
||
"Nip",
|
||
"PeppolId"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"EntityAuthorizationsAuthorIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"type": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EntityAuthorizationsAuthorIdentifierType"
|
||
}
|
||
],
|
||
"description": "Typ identyfikatora."
|
||
},
|
||
"value": {
|
||
"type": "string",
|
||
"description": "Wartość identyfikatora."
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "Identyfikator osoby nadającej uprawnienie.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |\n| Pesel | 11 cyfrowy numer PESEL |\n| Fingerprint | Odcisk palca certyfikatu |"
|
||
},
|
||
"EntityAuthorizationsAuthorIdentifierType": {
|
||
"enum": [
|
||
"Nip",
|
||
"Pesel",
|
||
"Fingerprint"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"EntityAuthorizationsAuthorizedEntityIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"type": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EntityAuthorizationsAuthorizedEntityIdentifierType"
|
||
}
|
||
],
|
||
"description": "Typ identyfikatora."
|
||
},
|
||
"value": {
|
||
"type": "string",
|
||
"description": "Wartość identyfikatora."
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "Identyfikator podmiotu uprawnionego.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |\n| PeppolId | Identyfikator dostawcy usług Peppol |"
|
||
},
|
||
"EntityAuthorizationsAuthorizedEntityIdentifierType": {
|
||
"enum": [
|
||
"Nip",
|
||
"PeppolId"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"EntityAuthorizationsAuthorizingEntityIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"type": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EntityAuthorizationsAuthorizingEntityIdentifierType"
|
||
}
|
||
],
|
||
"description": "Typ identyfikatora."
|
||
},
|
||
"value": {
|
||
"type": "string",
|
||
"description": "Wartość identyfikatora."
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "Identyfikator podmiotu uprawniającego.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |"
|
||
},
|
||
"EntityAuthorizationsAuthorizingEntityIdentifierType": {
|
||
"enum": [
|
||
"Nip"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"EntityPermission": {
|
||
"required": [
|
||
"type"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"type": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EntityPermissionType"
|
||
}
|
||
],
|
||
"description": "Rodzaj uprawnienia."
|
||
},
|
||
"canDelegate": {
|
||
"type": "boolean",
|
||
"description": "Flaga pozwalająca na pośrednie przekazywanie danego uprawnienia"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"EntityPermissionType": {
|
||
"enum": [
|
||
"InvoiceWrite",
|
||
"InvoiceRead"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"EntityPermissionsGrantRequest": {
|
||
"required": [
|
||
"description",
|
||
"permissions",
|
||
"subjectIdentifier"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"subjectIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EntityPermissionsSubjectIdentifier"
|
||
}
|
||
],
|
||
"description": "Identyfikator podmiotu.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |"
|
||
},
|
||
"permissions": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/EntityPermission"
|
||
},
|
||
"description": "Lista nadawanych uprawnień. Każda wartość może wystąpić tylko raz."
|
||
},
|
||
"description": {
|
||
"maxLength": 256,
|
||
"minLength": 5,
|
||
"type": "string",
|
||
"description": "Opis uprawnienia"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"EntityPermissionsSubjectIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"type": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EntityPermissionsSubjectIdentifierType"
|
||
}
|
||
],
|
||
"description": "Typ identyfikatora."
|
||
},
|
||
"value": {
|
||
"type": "string",
|
||
"description": "Wartość identyfikatora."
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "Identyfikator podmiotu.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |"
|
||
},
|
||
"EntityPermissionsSubjectIdentifierType": {
|
||
"enum": [
|
||
"Nip"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"EntityPermissionsSubordinateEntityIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"type": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EntityPermissionsSubordinateEntityIdentifierType"
|
||
}
|
||
],
|
||
"description": "Typ identyfikatora."
|
||
},
|
||
"value": {
|
||
"type": "string",
|
||
"description": "Wartość identyfikatora."
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "Identyfikator podmiotu podrzędnego.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |"
|
||
},
|
||
"EntityPermissionsSubordinateEntityIdentifierType": {
|
||
"enum": [
|
||
"Nip"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"EntityRole": {
|
||
"required": [
|
||
"description",
|
||
"role",
|
||
"startDate"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"parentEntityIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EntityRolesParentEntityIdentifier"
|
||
}
|
||
],
|
||
"description": "Identyfikator podmiotu nadrzędnego.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |",
|
||
"nullable": true
|
||
},
|
||
"role": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EntityRoleType"
|
||
}
|
||
],
|
||
"description": "Typ roli - powiązania z podmiotem nadrzędnym."
|
||
},
|
||
"description": {
|
||
"maxLength": 256,
|
||
"minLength": 5,
|
||
"type": "string",
|
||
"description": "Opis roli."
|
||
},
|
||
"startDate": {
|
||
"type": "string",
|
||
"description": "Data rozpoczęcia obowiązywania roli.",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"EntityRoleType": {
|
||
"enum": [
|
||
"CourtBailiff",
|
||
"EnforcementAuthority",
|
||
"LocalGovernmentUnit",
|
||
"LocalGovernmentSubUnit",
|
||
"VatGroupUnit",
|
||
"VatGroupSubUnit"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"EntityRolesParentEntityIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"type": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EntityRolesParentEntityIdentifierType"
|
||
}
|
||
],
|
||
"description": "Typ identyfikatora."
|
||
},
|
||
"value": {
|
||
"type": "string",
|
||
"description": "Wartość identyfikatora."
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "Identyfikator podmiotu nadrzędnego.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |"
|
||
},
|
||
"EntityRolesParentEntityIdentifierType": {
|
||
"enum": [
|
||
"Nip"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"EuEntityAdministrationPermissionsContextIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"type": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EuEntityAdministrationPermissionsContextIdentifierType"
|
||
}
|
||
],
|
||
"description": "Typ identyfikatora."
|
||
},
|
||
"value": {
|
||
"type": "string",
|
||
"description": "Wartość identyfikatora."
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "Identyfikator kontekstu złożonego.\n| Type | Value |\n| --- | --- |\n| NipVatUe | Dwuczłonowy identyfikator składający się z numeru NIP i numeru VAT-UE: `{nip}-{vat_ue}` |"
|
||
},
|
||
"EuEntityAdministrationPermissionsContextIdentifierType": {
|
||
"enum": [
|
||
"NipVatUe"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"EuEntityAdministrationPermissionsGrantRequest": {
|
||
"required": [
|
||
"contextIdentifier",
|
||
"description",
|
||
"euEntityName",
|
||
"subjectIdentifier"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"subjectIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EuEntityAdministrationPermissionsSubjectIdentifier"
|
||
}
|
||
],
|
||
"description": "Identyfikator podmiotu uprawnionego.\n| Type | Value |\n| --- | --- |\n| Fingerprint | Odcisk palca certyfikatu |"
|
||
},
|
||
"contextIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EuEntityAdministrationPermissionsContextIdentifier"
|
||
}
|
||
],
|
||
"description": "Identyfikator kontekstu złożonego.\n| Type | Value |\n| --- | --- |\n| NipVatUe | Dwuczłonowy identyfikator składający się z numeru NIP i numeru VAT-UE: `{nip}-{vat_ue}` |"
|
||
},
|
||
"description": {
|
||
"maxLength": 256,
|
||
"minLength": 5,
|
||
"type": "string",
|
||
"description": "Opis uprawnienia"
|
||
},
|
||
"euEntityName": {
|
||
"maxLength": 256,
|
||
"minLength": 5,
|
||
"type": "string",
|
||
"description": "Nazwa i adres podmiotu unijnego w formacie: \n`{euSubjectName}, {euSubjectAddress}`"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"EuEntityAdministrationPermissionsSubjectIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"type": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EuEntityAdministrationPermissionsSubjectIdentifierType"
|
||
}
|
||
],
|
||
"description": "Typ identyfikatora."
|
||
},
|
||
"value": {
|
||
"type": "string",
|
||
"description": "Wartość identyfikatora."
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "Identyfikator podmiotu uprawnionego.\n| Type | Value |\n| --- | --- |\n| Fingerprint | Odcisk palca certyfikatu |"
|
||
},
|
||
"EuEntityAdministrationPermissionsSubjectIdentifierType": {
|
||
"enum": [
|
||
"Fingerprint"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"EuEntityPermission": {
|
||
"required": [
|
||
"authorIdentifier",
|
||
"authorizedFingerprintIdentifier",
|
||
"description",
|
||
"euEntityName",
|
||
"id",
|
||
"permissionScope",
|
||
"startDate",
|
||
"vatUeIdentifier"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/PermissionId"
|
||
}
|
||
],
|
||
"description": "Identyfikator uprawnienia."
|
||
},
|
||
"authorIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EuEntityPermissionsAuthorIdentifier"
|
||
}
|
||
],
|
||
"description": "Identyfikator uprawniającego.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |\n| Pesel | 11 cyfrowy numer PESEL |\n| Fingerprint | Odcisk palca certyfikatu |"
|
||
},
|
||
"vatUeIdentifier": {
|
||
"type": "string",
|
||
"description": "Identyfikator podmiotu unijnego."
|
||
},
|
||
"euEntityName": {
|
||
"maxLength": 256,
|
||
"minLength": 5,
|
||
"type": "string",
|
||
"description": "Nazwa podmiotu unijnego."
|
||
},
|
||
"authorizedFingerprintIdentifier": {
|
||
"type": "string",
|
||
"description": "Uprawniony odcisk palca certyfikatu."
|
||
},
|
||
"permissionScope": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EuEntityPermissionsQueryPermissionType"
|
||
}
|
||
],
|
||
"description": "Uprawnienie."
|
||
},
|
||
"description": {
|
||
"maxLength": 256,
|
||
"minLength": 5,
|
||
"type": "string",
|
||
"description": "Opis uprawnienia."
|
||
},
|
||
"startDate": {
|
||
"type": "string",
|
||
"description": "Data rozpoczęcia obowiązywania uprawnienia.",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"EuEntityPermissionType": {
|
||
"enum": [
|
||
"InvoiceWrite",
|
||
"InvoiceRead"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"EuEntityPermissionsAuthorIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"type": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EuEntityPermissionsAuthorIdentifierType"
|
||
}
|
||
],
|
||
"description": "Typ identyfikatora."
|
||
},
|
||
"value": {
|
||
"type": "string",
|
||
"description": "Wartość identyfikatora."
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "Identyfikator uprawniającego.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |\n| Pesel | 11 cyfrowy numer PESEL |\n| Fingerprint | Odcisk palca certyfikatu |"
|
||
},
|
||
"EuEntityPermissionsAuthorIdentifierType": {
|
||
"enum": [
|
||
"Nip",
|
||
"Pesel",
|
||
"Fingerprint"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"EuEntityPermissionsGrantRequest": {
|
||
"required": [
|
||
"description",
|
||
"permissions",
|
||
"subjectIdentifier"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"subjectIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EuEntityPermissionsSubjectIdentifier"
|
||
}
|
||
],
|
||
"description": "Identyfikator podmiotu uprawnianego.\n| Type | Value |\n| --- | --- |\n| Fingerprint | Odcisk palca certyfikatu |"
|
||
},
|
||
"permissions": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/EuEntityPermissionType"
|
||
},
|
||
"description": "Lista nadawanych uprawnień. Każda wartość może wystąpić tylko raz."
|
||
},
|
||
"description": {
|
||
"maxLength": 256,
|
||
"minLength": 5,
|
||
"type": "string",
|
||
"description": "Opis uprawnienia"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"EuEntityPermissionsQueryPermissionType": {
|
||
"enum": [
|
||
"VatUeManage",
|
||
"InvoiceWrite",
|
||
"InvoiceRead",
|
||
"Introspection"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"EuEntityPermissionsQueryRequest": {
|
||
"type": "object",
|
||
"properties": {
|
||
"vatUeIdentifier": {
|
||
"pattern": "^(ATU\\d{8}|BE[01]{1}\\d{9}|BG\\d{9,10}|CY\\d{8}[A-Z]|CZ\\d{8,10}|DE\\d{9}|DK\\d{8}|EE\\d{9}|EL\\d{9}|ES([A-Z]\\d{8}|\\d{8}[A-Z]|[A-Z]\\d{7}[A-Z])|FI\\d{8}|FR[A-Z0-9]{2}\\d{9}|HR\\d{11}|HU\\d{8}|IE(\\d{7}[A-Z]{2}|\\d[A-Z0-9+*]\\d{5}[A-Z])|IT\\d{11}|LT(\\d{9}|\\d{12})|LU\\d{8}|LV\\d{11}|MT\\d{8}|NL[A-Z0-9+*]{12}|PT\\d{9}|RO\\d{2,10}|SE\\d{12}|SI\\d{8}|SK\\d{10}|XI((\\d{9}|\\d{12})|(GD|HA)\\d{3}))$",
|
||
"type": "string",
|
||
"description": "Wartość identyfikatora (numeru identyfikacyjnego VAT) podmiotu unijnego.",
|
||
"nullable": true
|
||
},
|
||
"authorizedFingerprintIdentifier": {
|
||
"pattern": "^[0-9A-F]{64}$",
|
||
"type": "string",
|
||
"description": "Odcisk palca certyfikatu kwalifikowanego uprawnionego.",
|
||
"nullable": true
|
||
},
|
||
"permissionTypes": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/EuEntityPermissionsQueryPermissionType"
|
||
},
|
||
"description": "Lista rodzajów wyszukiwanych uprawnień.",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"EuEntityPermissionsSubjectIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"type": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EuEntityPermissionsSubjectIdentifierType"
|
||
}
|
||
],
|
||
"description": "Typ identyfikatora."
|
||
},
|
||
"value": {
|
||
"type": "string",
|
||
"description": "Wartość identyfikatora."
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "Identyfikator podmiotu uprawnianego.\n| Type | Value |\n| --- | --- |\n| Fingerprint | Odcisk palca certyfikatu |"
|
||
},
|
||
"EuEntityPermissionsSubjectIdentifierType": {
|
||
"enum": [
|
||
"Fingerprint"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"ExceptionDetails": {
|
||
"type": "object",
|
||
"properties": {
|
||
"exceptionCode": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"exceptionDescription": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"details": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
},
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"ExceptionInfo": {
|
||
"type": "object",
|
||
"properties": {
|
||
"exceptionDetailList": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/ExceptionDetails"
|
||
},
|
||
"nullable": true
|
||
},
|
||
"referenceNumber": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/ReferenceNumber"
|
||
}
|
||
],
|
||
"nullable": true
|
||
},
|
||
"serviceCode": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"serviceCtx": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"serviceName": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"ExceptionResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"exception": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/ExceptionInfo"
|
||
}
|
||
],
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"example": {
|
||
"Exception": {
|
||
"ExceptionDetailList": [
|
||
{
|
||
"ExceptionCode": 12345,
|
||
"ExceptionDescription": "Opis błędu.",
|
||
"Details": [
|
||
"Opcjonalne dodatkowe szczegóły błędu."
|
||
]
|
||
}
|
||
],
|
||
"ReferenceNumber": "a1b2c3d4-e5f6-4789-ab12-cd34ef567890",
|
||
"ServiceCode": "00-c02cc3747020c605be02159bf3324f0e-eee7647dc67aa74a-00",
|
||
"ServiceCtx": "srvABCDA",
|
||
"ServiceName": "Undefined",
|
||
"Timestamp": "2025-10-11T12:23:56.0154302"
|
||
}
|
||
}
|
||
},
|
||
"ExportInvoicesResponse": {
|
||
"required": [
|
||
"referenceNumber"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"referenceNumber": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/ReferenceNumber"
|
||
}
|
||
],
|
||
"description": "Numer referencyjny eksportu faktur."
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"FormCode": {
|
||
"required": [
|
||
"schemaVersion",
|
||
"systemCode",
|
||
"value"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"systemCode": {
|
||
"type": "string",
|
||
"description": "Kod systemowy"
|
||
},
|
||
"schemaVersion": {
|
||
"type": "string",
|
||
"description": "Wersja schematu"
|
||
},
|
||
"value": {
|
||
"type": "string",
|
||
"description": "Wartość"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"GenerateTokenRequest": {
|
||
"required": [
|
||
"description",
|
||
"permissions"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"permissions": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/TokenPermissionType"
|
||
},
|
||
"description": "Uprawnienia przypisane tokenowi."
|
||
},
|
||
"description": {
|
||
"maxLength": 256,
|
||
"minLength": 5,
|
||
"type": "string",
|
||
"description": "Opis tokena."
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"GenerateTokenResponse": {
|
||
"required": [
|
||
"referenceNumber",
|
||
"token"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"referenceNumber": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/ReferenceNumber"
|
||
}
|
||
],
|
||
"description": "Numer referencyjny tokena KSeF."
|
||
},
|
||
"token": {
|
||
"maxLength": 160,
|
||
"type": "string",
|
||
"description": "Token KSeF."
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"IndirectPermissionType": {
|
||
"enum": [
|
||
"InvoiceRead",
|
||
"InvoiceWrite"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"IndirectPermissionsGrantRequest": {
|
||
"required": [
|
||
"description",
|
||
"permissions",
|
||
"subjectIdentifier"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"subjectIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/IndirectPermissionsSubjectIdentifier"
|
||
}
|
||
],
|
||
"description": "Identyfikator osoby fizycznej.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |\n| Pesel | 11 cyfrowy numer PESEL |\n| Fingerprint | Odcisk palca certyfikatu |"
|
||
},
|
||
"targetIdentifier": {
|
||
"required": [
|
||
"type"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/IndirectPermissionsTargetIdentifier"
|
||
}
|
||
],
|
||
"description": "Identyfikator kontekstu klienta. Nie przekazanie identyfikatora oznacza, że uprawnienie nadane w sposób pośredni jest typu generalnego.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |\n| AllPartners | Identyfikator oznaczający, że uprawnienie nadane w sposób pośredni jest typu generalnego |\n| InternalId | Dwuczłonowy identyfikator składający się z numeru NIP i 5 cyfr: `{nip}-{5_cyfr}` |",
|
||
"nullable": true
|
||
},
|
||
"permissions": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/IndirectPermissionType"
|
||
},
|
||
"description": "Lista nadawanych uprawnień. Każda wartość może wystąpić tylko raz."
|
||
},
|
||
"description": {
|
||
"maxLength": 256,
|
||
"minLength": 5,
|
||
"type": "string",
|
||
"description": "Opis uprawnienia"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"IndirectPermissionsSubjectIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"type": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/IndirectPermissionsSubjectIdentifierType"
|
||
}
|
||
],
|
||
"description": "Typ identyfikatora."
|
||
},
|
||
"value": {
|
||
"type": "string",
|
||
"description": "Wartość identyfikatora."
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "Identyfikator osoby fizycznej.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |\n| Pesel | 11 cyfrowy numer PESEL |\n| Fingerprint | Odcisk palca certyfikatu |"
|
||
},
|
||
"IndirectPermissionsSubjectIdentifierType": {
|
||
"enum": [
|
||
"Nip",
|
||
"Pesel",
|
||
"Fingerprint"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"IndirectPermissionsTargetIdentifier": {
|
||
"required": [
|
||
"type"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"type": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/IndirectPermissionsTargetIdentifierType"
|
||
}
|
||
],
|
||
"description": "Typ identyfikatora."
|
||
},
|
||
"value": {
|
||
"type": "string",
|
||
"description": "Wartość identyfikatora. W przypadku typu AllPartners należy pozostawić puste. W pozostałych przypadkach pole jest wymagane.",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "Identyfikator kontekstu klienta. Nie przekazanie identyfikatora oznacza, że uprawnienie nadane w sposób pośredni jest typu generalnego.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |\n| AllPartners | Identyfikator oznaczający, że uprawnienie nadane w sposób pośredni jest typu generalnego |\n| InternalId | Dwuczłonowy identyfikator składający się z numeru NIP i 5 cyfr: `{nip}-{5_cyfr}` |"
|
||
},
|
||
"IndirectPermissionsTargetIdentifierType": {
|
||
"enum": [
|
||
"Nip",
|
||
"AllPartners",
|
||
"InternalId"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"InitTokenAuthenticationRequest": {
|
||
"required": [
|
||
"challenge",
|
||
"contextIdentifier",
|
||
"encryptedToken"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"challenge": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/Challenge"
|
||
}
|
||
],
|
||
"description": "Wygenerowany wcześniej challenge."
|
||
},
|
||
"contextIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/AuthenticationContextIdentifier"
|
||
}
|
||
],
|
||
"description": "Indentyfikator kontekstu do którego następuje uwierzytelnienie."
|
||
},
|
||
"encryptedToken": {
|
||
"type": "string",
|
||
"description": "Zaszyfrowany token wraz z timestampem z challenge'a, w formacie `token|timestamp`.",
|
||
"format": "byte"
|
||
},
|
||
"authorizationPolicy": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/AuthorizationPolicy"
|
||
}
|
||
],
|
||
"description": "Polityka autoryzacji żądań przy każdym użyciu tokena dostępu.",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"InternalId": {
|
||
"maxLength": 16,
|
||
"minLength": 16,
|
||
"pattern": "^[1-9]((\\d[1-9])|([1-9]\\d))\\d{7}-\\d{5}$",
|
||
"type": "string",
|
||
"description": "Identyfikator wewnętrzny, składający się z numeru NIP i 5 cyfr."
|
||
},
|
||
"InvoiceExportRequest": {
|
||
"required": [
|
||
"encryption",
|
||
"filters"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"encryption": {
|
||
"required": [
|
||
"encryptedSymmetricKey",
|
||
"initializationVector"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EncryptionInfo"
|
||
}
|
||
],
|
||
"description": "Informacje wymagane do zaszyfrowania wyniku zapytania."
|
||
},
|
||
"filters": {
|
||
"required": [
|
||
"subjectType",
|
||
"dateRange"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/InvoiceQueryFilters"
|
||
}
|
||
],
|
||
"description": "Zestaw filtrów do wyszukiwania faktur."
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"InvoiceExportStatusResponse": {
|
||
"required": [
|
||
"status"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"status": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/StatusInfo"
|
||
}
|
||
],
|
||
"description": "Status eksportu.\n\n| Code | Description | Details |\n| --- | --- | --- |\n| 100 | Eksport faktur w toku | - |\n| 200 | Eksport faktur zakończony sukcesem | - |\n| 210 | Eksport faktur wygasł i nie jest już dostępny do pobrania | - |\n| 415 | Błąd odszyfrowania dostarczonego klucza | - |\n| 500 | Nieznany błąd ({statusCode}) | - |\n| 550 | Operacja została anulowana przez system | Przetwarzanie zostało przerwane z przyczyn wewnętrznych systemu. Spróbuj ponownie |"
|
||
},
|
||
"completedDate": {
|
||
"type": "string",
|
||
"description": "Data zakończenia przetwarzania żądania eksportu faktur.",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"packageExpirationDate": {
|
||
"type": "string",
|
||
"description": "Data wygaśnięcia paczki faktur przygotowanej do pobrania.\nPo upływie tej daty paczka nie będzie już dostępna do pobrania.",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"package": {
|
||
"required": [
|
||
"invoiceCount",
|
||
"size",
|
||
"parts",
|
||
"isTruncated"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/InvoicePackage"
|
||
}
|
||
],
|
||
"description": "Dane paczki faktur przygotowanej do pobrania.",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"InvoiceMetadata": {
|
||
"required": [
|
||
"acquisitionDate",
|
||
"buyer",
|
||
"currency",
|
||
"formCode",
|
||
"grossAmount",
|
||
"hasAttachment",
|
||
"invoiceHash",
|
||
"invoiceNumber",
|
||
"invoiceType",
|
||
"invoicingDate",
|
||
"invoicingMode",
|
||
"isSelfInvoicing",
|
||
"issueDate",
|
||
"ksefNumber",
|
||
"netAmount",
|
||
"permanentStorageDate",
|
||
"seller",
|
||
"vatAmount"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"ksefNumber": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/KsefNumber"
|
||
}
|
||
],
|
||
"description": "Numer KSeF faktury."
|
||
},
|
||
"invoiceNumber": {
|
||
"maxLength": 256,
|
||
"type": "string",
|
||
"description": "Numer faktury nadany przez wystawcę."
|
||
},
|
||
"issueDate": {
|
||
"type": "string",
|
||
"description": "Data wystawienia faktury.",
|
||
"format": "date"
|
||
},
|
||
"invoicingDate": {
|
||
"type": "string",
|
||
"description": "Data przyjęcia faktury w systemie KSeF (do dalszego przetwarzania).",
|
||
"format": "date-time"
|
||
},
|
||
"acquisitionDate": {
|
||
"type": "string",
|
||
"description": "Data nadania numeru KSeF.",
|
||
"format": "date-time"
|
||
},
|
||
"permanentStorageDate": {
|
||
"type": "string",
|
||
"description": "Data trwałego zapisu faktury w repozytorium systemu KSeF.",
|
||
"format": "date-time"
|
||
},
|
||
"seller": {
|
||
"required": [
|
||
"nip"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/InvoiceMetadataSeller"
|
||
}
|
||
],
|
||
"description": "Dane identyfikujące sprzedawcę."
|
||
},
|
||
"buyer": {
|
||
"required": [
|
||
"identifier"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/InvoiceMetadataBuyer"
|
||
}
|
||
],
|
||
"description": "Dane identyfikujące nabywcę."
|
||
},
|
||
"netAmount": {
|
||
"type": "number",
|
||
"description": "Łączna kwota netto.",
|
||
"format": "double"
|
||
},
|
||
"grossAmount": {
|
||
"type": "number",
|
||
"description": "Łączna kwota brutto.",
|
||
"format": "double"
|
||
},
|
||
"vatAmount": {
|
||
"type": "number",
|
||
"description": "Łączna kwota VAT.",
|
||
"format": "double"
|
||
},
|
||
"currency": {
|
||
"maxLength": 3,
|
||
"minLength": 3,
|
||
"type": "string",
|
||
"description": "Kod waluty."
|
||
},
|
||
"invoicingMode": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/InvoicingMode"
|
||
}
|
||
],
|
||
"description": "Tryb fakturowania (online/offline)."
|
||
},
|
||
"invoiceType": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/InvoiceType"
|
||
}
|
||
],
|
||
"description": "Rodzaj faktury.\n| Wartość | Opis |\n| --- | --- |\n| Vat | (FA) Podstawowa |\n| Zal | (FA) Zaliczkowa |\n| Kor | (FA) Korygująca |\n| Roz | (FA) Rozliczeniowa |\n| Upr | (FA) Uproszczona |\n| KorZal | (FA) Korygująca fakturę zaliczkową |\n| KorRoz | (FA) Korygująca fakturę rozliczeniową |\n| VatPef | (PEF) Podstawowowa |\n| VatPefSp | (PEF) Specjalizowana |\n| KorPef | (PEF) Korygująca |\n| VatRr | (RR) Podstawowa |\n| KorVatRr | (RR) Korygująca |\n"
|
||
},
|
||
"formCode": {
|
||
"required": [
|
||
"systemCode",
|
||
"schemaVersion",
|
||
"value"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/FormCode"
|
||
}
|
||
],
|
||
"description": "Struktura dokumentu faktury.\n\nObsługiwane schematy:\n| SystemCode | SchemaVersion | Value |\n| --- | --- | --- |\n| FA (2) | 1-0E | FA |\n| FA (3) | 1-0E | FA |\n| PEF (3) | 2-1 | PEF |\n| PEF_KOR (3) | 2-1 | PEF |\n"
|
||
},
|
||
"isSelfInvoicing": {
|
||
"type": "boolean",
|
||
"description": "Czy faktura została wystawiona w trybie samofakturowania."
|
||
},
|
||
"hasAttachment": {
|
||
"type": "boolean",
|
||
"description": "Określa, czy faktura posiada załącznik."
|
||
},
|
||
"invoiceHash": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/Sha256HashBase64"
|
||
}
|
||
],
|
||
"description": "Skrót SHA256 faktury."
|
||
},
|
||
"hashOfCorrectedInvoice": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/Sha256HashBase64"
|
||
}
|
||
],
|
||
"description": "Skrót SHA256 korygowanej faktury.",
|
||
"nullable": true
|
||
},
|
||
"thirdSubjects": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/InvoiceMetadataThirdSubject"
|
||
},
|
||
"description": "Lista podmiotów trzecich.",
|
||
"nullable": true
|
||
},
|
||
"authorizedSubject": {
|
||
"required": [
|
||
"nip",
|
||
"role"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/InvoiceMetadataAuthorizedSubject"
|
||
}
|
||
],
|
||
"description": "Podmiot upoważniony.",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"InvoiceMetadataAuthorizedSubject": {
|
||
"required": [
|
||
"nip",
|
||
"role"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"nip": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/Nip"
|
||
}
|
||
],
|
||
"description": "Nip podmiotu upoważnionego"
|
||
},
|
||
"name": {
|
||
"maxLength": 512,
|
||
"type": "string",
|
||
"description": "Nazwa podmiotu upoważnionego.",
|
||
"nullable": true
|
||
},
|
||
"role": {
|
||
"type": "integer",
|
||
"description": "Rola podmiotu upoważnionego.\n| Wartość | Opis |\n| ---- | --- |\n| 1 | Organ egzekucyjny - w przypadku, o którym mowa w art. 106c pkt 1 ustawy |\n| 2 | Komornik sądowy - w przypadku, o którym mowa w art. 106c pkt 2 ustawy |\n| 3 | Przedstawiciel podatkowy - w przypadku gdy na fakturze występują dane przedstawiciela podatkowego, o którym mowa w art. 18a - 18d ustawy |",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"InvoiceMetadataBuyer": {
|
||
"required": [
|
||
"identifier"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"identifier": {
|
||
"required": [
|
||
"type"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/InvoiceMetadataBuyerIdentifier"
|
||
}
|
||
],
|
||
"description": "Identyfikator nabywcy.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |\n| VatUe | Identyfikator VAT UE podmiotu unijnego |\n| Other | Inny identyfikator|\n| None | Brak identyfikatora nabywcy |"
|
||
},
|
||
"name": {
|
||
"maxLength": 512,
|
||
"type": "string",
|
||
"description": "Nazwa nabywcy.",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"InvoiceMetadataBuyerIdentifier": {
|
||
"required": [
|
||
"type"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"type": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/BuyerIdentifierType"
|
||
}
|
||
],
|
||
"description": "Typ identyfikatora nabywcy.\n| Wartość | Opis |\n| --- | --- |\n| None | Brak identyfikatora nabywcy |\n| Other | Inny identyfikator |\n| Nip | 10 cyfrowy numer NIP |\n| VatUe | Identyfikator VAT UE podmiotu unijnego |\n"
|
||
},
|
||
"value": {
|
||
"type": "string",
|
||
"description": "Wartośc identyfikatora nabywcy.",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"InvoiceMetadataSeller": {
|
||
"required": [
|
||
"nip"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"nip": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/Nip"
|
||
}
|
||
],
|
||
"description": "Nip sprzedawcy."
|
||
},
|
||
"name": {
|
||
"maxLength": 512,
|
||
"type": "string",
|
||
"description": "Nazwa sprzedawcy.",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"InvoiceMetadataThirdSubject": {
|
||
"required": [
|
||
"identifier",
|
||
"role"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"identifier": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/InvoiceMetadataThirdSubjectIdentifier"
|
||
}
|
||
]
|
||
},
|
||
"name": {
|
||
"maxLength": 512,
|
||
"type": "string",
|
||
"description": "Nazwa podmiotu trzeciego.",
|
||
"nullable": true
|
||
},
|
||
"role": {
|
||
"type": "integer",
|
||
"description": "Rola podmiotu trzeciego.\n| Wartość | Opis |\n| ---- | --- |\n| 0 | Inna rola |\n| 1 | Faktor - w przypadku gdy na fakturze występują dane faktora |\n| 2 | Odbiorca - w przypadku gdy na fakturze występują dane jednostek wewnętrznych, oddziałów, wyodrębnionych w ramach nabywcy, które same nie stanowią nabywcy w rozumieniu ustawy |\n| 3 | Podmiot pierwotny - w przypadku gdy na fakturze występują dane podmiotu będącego w stosunku do podatnika podmiotem przejętym lub przekształconym, który dokonywał dostawy lub świadczył usługę. Z wyłączeniem przypadków, o których mowa w art. 106j ust.2 pkt 3 ustawy, gdy dane te wykazywane są w części Podmiot1K |\n| 4 | Dodatkowy nabywca - w przypadku gdy na fakturze występują dane kolejnych (innych niż wymieniony w części Podmiot2) nabywców |\n| 5 | Wystawca faktury - w przypadku gdy na fakturze występują dane podmiotu wystawiającego fakturę w imieniu podatnika. Nie dotyczy przypadku, gdy wystawcą faktury jest nabywca |\n| 6 | Dokonujący płatności - w przypadku gdy na fakturze występują dane podmiotu regulującego zobowiązanie w miejsce nabywcy |\n| 7 | Jednostka samorządu terytorialnego - wystawca |\n| 8 | Jednostka samorządu terytorialnego - odbiorca |\n| 9 | Członek grupy VAT - wystawca |\n| 10 | Członek grupy VAT - odbiorca |\n| 11 | Pracownik |",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"InvoiceMetadataThirdSubjectIdentifier": {
|
||
"required": [
|
||
"type"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"type": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/ThirdSubjectIdentifierType"
|
||
}
|
||
],
|
||
"description": "Typ identyfikatora podmiotu trzeciego.\n| Wartość | Opis |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |\n| InternalId | Identyfikator wewnętrzny, składający się z numeru NIP i 5 cyfr. |\n| VatUe | Identyfikator VAT UE podmiotu unijnego |\n| Other | Inny identyfikator |\n| None | Brak identyfikatora podmiotu trzeciego |\n"
|
||
},
|
||
"value": {
|
||
"type": "string",
|
||
"description": "Wartość identyfikatora podmiotu trzeciego.",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"InvoicePackage": {
|
||
"required": [
|
||
"invoiceCount",
|
||
"isTruncated",
|
||
"parts",
|
||
"size"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"invoiceCount": {
|
||
"maximum": 10000,
|
||
"exclusiveMaximum": false,
|
||
"minimum": 0,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"description": "Łączna liczba faktur w paczce.",
|
||
"format": "int64"
|
||
},
|
||
"size": {
|
||
"minimum": 0,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"description": "Rozmiar paczki w bajtach.",
|
||
"format": "int64"
|
||
},
|
||
"parts": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/InvoicePackagePart"
|
||
},
|
||
"description": "Lista dostępnych części paczki do pobrania."
|
||
},
|
||
"isTruncated": {
|
||
"type": "boolean",
|
||
"description": "Określa, czy wynik eksportu został ucięty z powodu przekroczenia limitu liczby faktur lub wielkości paczki."
|
||
},
|
||
"lastIssueDate": {
|
||
"type": "string",
|
||
"description": "Data wystawienia ostatniej faktury ujętej w paczce.\nPole występuje wyłącznie wtedy, gdy paczka została ucięta i eksport był filtrowany po typie daty `Issue`.",
|
||
"format": "date",
|
||
"nullable": true
|
||
},
|
||
"lastInvoicingDate": {
|
||
"type": "string",
|
||
"description": "Data przyjęcia ostatniej faktury ujętej w paczce.\nPole występuje wyłącznie wtedy, gdy paczka została ucięta i eksport był filtrowany po typie daty `Invoicing`.",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"lastPermanentStorageDate": {
|
||
"type": "string",
|
||
"description": "Data trwałego zapisu ostatniej faktury ujętej w paczce.\nPole występuje wyłącznie wtedy, gdy paczka została ucięta i eksport był filtrowany po typie daty `PermanentStorage`.",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"InvoicePackagePart": {
|
||
"required": [
|
||
"encryptedPartHash",
|
||
"encryptedPartSize",
|
||
"expirationDate",
|
||
"method",
|
||
"ordinalNumber",
|
||
"partHash",
|
||
"partName",
|
||
"partSize",
|
||
"url"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"ordinalNumber": {
|
||
"minimum": 1,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"description": "Numer sekwencyjny pliku części paczki.",
|
||
"format": "int32"
|
||
},
|
||
"partName": {
|
||
"maxLength": 100,
|
||
"type": "string",
|
||
"description": "Nazwa pliku części paczki."
|
||
},
|
||
"method": {
|
||
"type": "string",
|
||
"description": "Metoda HTTP, której należy użyć przy pobieraniu pliku."
|
||
},
|
||
"url": {
|
||
"type": "string",
|
||
"description": "Adres URL, pod który należy wysłać żądanie pobrania części paczki.\nLink jest generowany dynamicznie w momencie odpytania o status operacji eksportu.\nNie podlega limitom API i nie wymaga przesyłania tokenu dostępowego przy pobraniu.",
|
||
"format": "uri"
|
||
},
|
||
"partSize": {
|
||
"minimum": 1,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"description": "Rozmiar części paczki w bajtach.",
|
||
"format": "int64"
|
||
},
|
||
"partHash": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/Sha256HashBase64"
|
||
}
|
||
],
|
||
"description": "Skrót SHA256 pliku części paczki, zakodowany w formacie Base64."
|
||
},
|
||
"encryptedPartSize": {
|
||
"minimum": 1,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"description": "Rozmiar zaszyfrowanej części paczki w bajtach.",
|
||
"format": "int64"
|
||
},
|
||
"encryptedPartHash": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/Sha256HashBase64"
|
||
}
|
||
],
|
||
"description": "Skrót SHA256 zaszyfrowanej części paczki, zakodowany w formacie Base64."
|
||
},
|
||
"expirationDate": {
|
||
"type": "string",
|
||
"description": "Data i godzina wygaśnięcia linku umożliwiającego pobranie części paczki.\nPo upływie tego momentu link przestaje być aktywny.",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"InvoicePermissionType": {
|
||
"enum": [
|
||
"SelfInvoicing",
|
||
"TaxRepresentative",
|
||
"RRInvoicing",
|
||
"PefInvoicing"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"InvoiceQueryAmount": {
|
||
"required": [
|
||
"type"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"type": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/AmountType"
|
||
}
|
||
]
|
||
},
|
||
"from": {
|
||
"type": "number",
|
||
"format": "double",
|
||
"nullable": true
|
||
},
|
||
"to": {
|
||
"type": "number",
|
||
"format": "double",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"InvoiceQueryBuyerIdentifier": {
|
||
"required": [
|
||
"type"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"type": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/BuyerIdentifierType"
|
||
}
|
||
],
|
||
"description": "Typ identyfikatora nabywcy.\n| Wartość | Opis |\n| --- | --- |\n| None | Brak identyfikatora nabywcy |\n| Other | Inny identyfikator |\n| Nip | 10 cyfrowy numer NIP |\n| VatUe | Identyfikator VAT UE podmiotu unijnego |\n"
|
||
},
|
||
"value": {
|
||
"type": "string",
|
||
"description": "Wartość identyfikatora nabywcy (exact match).",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"InvoiceQueryDateRange": {
|
||
"required": [
|
||
"dateType",
|
||
"from"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"dateType": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/InvoiceQueryDateType"
|
||
}
|
||
],
|
||
"description": "Typ daty, według której ma być zastosowany zakres.\n| Wartość | Opis |\n| --- | --- |\n| Issue | Data wystawienia faktury. |\n| Invoicing | Data przyjęcia faktury w systemie KSeF (do dalszego przetwarzania). |\n| PermanentStorage | Data trwałego zapisu faktury w repozytorium systemu KSeF. |\n"
|
||
},
|
||
"from": {
|
||
"type": "string",
|
||
"description": "Data początkowa zakresu(UTC).",
|
||
"format": "date-time"
|
||
},
|
||
"to": {
|
||
"type": "string",
|
||
"description": "Data końcowa zakresu(UTC). Jeśli nie zostanie podana, przyjmowana jest bieżąca data i czas w UTC.",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"InvoiceQueryDateType": {
|
||
"enum": [
|
||
"Issue",
|
||
"Invoicing",
|
||
"PermanentStorage"
|
||
],
|
||
"type": "string",
|
||
"description": "| Wartość | Opis |\n| --- | --- |\n| Issue | Data wystawienia faktury. |\n| Invoicing | Data przyjęcia faktury w systemie KSeF (do dalszego przetwarzania). |\n| PermanentStorage | Data trwałego zapisu faktury w repozytorium systemu KSeF. |\n"
|
||
},
|
||
"InvoiceQueryFilters": {
|
||
"required": [
|
||
"dateRange",
|
||
"subjectType"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"subjectType": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/InvoiceQuerySubjectType"
|
||
}
|
||
],
|
||
"description": "Typ podmiotu, którego dotyczą kryteria filtrowania metadanych faktur.\nOkreśla kontekst, w jakim przeszukiwane są dane.\n| Wartość | Opis |\n| --- | --- |\n| Subject1 | Podmiot 1 - sprzedawca |\n| Subject2 | Podmiot 2 - nabywca |\n| Subject3 | Podmiot 3 |\n| SubjectAuthorized | Podmiot upoważniony |\n"
|
||
},
|
||
"dateRange": {
|
||
"required": [
|
||
"dateType",
|
||
"from"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/InvoiceQueryDateRange"
|
||
}
|
||
],
|
||
"description": "Typ i zakres dat, według którego mają być filtrowane faktury. Dozwolony maksymalny okres wynosi 2 lata."
|
||
},
|
||
"ksefNumber": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/KsefNumber"
|
||
}
|
||
],
|
||
"description": "Numer KSeF faktury (exact match).",
|
||
"nullable": true
|
||
},
|
||
"invoiceNumber": {
|
||
"maxLength": 256,
|
||
"type": "string",
|
||
"description": "Numer faktury nadany przez wystawcę (exact match).",
|
||
"nullable": true
|
||
},
|
||
"amount": {
|
||
"required": [
|
||
"type"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/InvoiceQueryAmount"
|
||
}
|
||
],
|
||
"description": "Filtr kwotowy – brutto, netto lub VAT (z wartością).",
|
||
"nullable": true
|
||
},
|
||
"sellerNip": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/Nip"
|
||
}
|
||
],
|
||
"description": "Nip sprzedawcy (exact match).",
|
||
"nullable": true
|
||
},
|
||
"buyerIdentifier": {
|
||
"required": [
|
||
"type"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/InvoiceQueryBuyerIdentifier"
|
||
}
|
||
],
|
||
"description": "Identyfikator nabywcy.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |\n| VatUe | Identyfikator VAT UE podmiotu unijnego. |\n| Other | Inny identyfikator|\n| None | Brak identyfikatora nabywcy |",
|
||
"nullable": true
|
||
},
|
||
"currencyCodes": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/CurrencyCode"
|
||
},
|
||
"description": "Kody walut.",
|
||
"nullable": true
|
||
},
|
||
"invoicingMode": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/InvoicingMode"
|
||
}
|
||
],
|
||
"description": "Tryb wystawienia faktury: online lub offline.",
|
||
"nullable": true
|
||
},
|
||
"isSelfInvoicing": {
|
||
"type": "boolean",
|
||
"description": "Czy faktura została wystawiona w trybie samofakturowania.",
|
||
"nullable": true
|
||
},
|
||
"formType": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/InvoiceQueryFormType"
|
||
}
|
||
],
|
||
"description": "Typ dokumentu.\n| Wartość | Opis |\n| --- | --- |\n| FA | Faktura VAT |\n| PEF | Faktura PEF |\n| RR | Faktura RR |\n",
|
||
"nullable": true
|
||
},
|
||
"invoiceTypes": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/InvoiceType"
|
||
},
|
||
"description": "Rodzaje faktur.\n| Wartość | Opis |\n| --- | --- |\n| Vat | (FA) Podstawowa |\n| Zal | (FA) Zaliczkowa |\n| Kor | (FA) Korygująca |\n| Roz | (FA) Rozliczeniowa |\n| Upr | (FA) Uproszczona |\n| KorZal | (FA) Korygująca fakturę zaliczkową |\n| KorRoz | (FA) Korygująca fakturę rozliczeniową |\n| VatPef | (PEF) Podstawowowa |\n| VatPefSp | (PEF) Specjalizowana |\n| KorPef | (PEF) Korygująca |\n| VatRr | (RR) Podstawowa |\n| KorVatRr | (RR) Korygująca |\n",
|
||
"nullable": true
|
||
},
|
||
"hasAttachment": {
|
||
"type": "boolean",
|
||
"description": "Czy faktura ma załącznik.",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"InvoiceQueryFormType": {
|
||
"enum": [
|
||
"FA",
|
||
"PEF",
|
||
"RR"
|
||
],
|
||
"type": "string",
|
||
"description": "| Wartość | Opis |\n| --- | --- |\n| FA | Faktura VAT |\n| PEF | Faktura PEF |\n| RR | Faktura RR |\n"
|
||
},
|
||
"InvoiceQuerySubjectType": {
|
||
"enum": [
|
||
"Subject1",
|
||
"Subject2",
|
||
"Subject3",
|
||
"SubjectAuthorized"
|
||
],
|
||
"type": "string",
|
||
"description": "| Wartość | Opis |\n| --- | --- |\n| Subject1 | Podmiot 1 - sprzedawca |\n| Subject2 | Podmiot 2 - nabywca |\n| Subject3 | Podmiot 3 |\n| SubjectAuthorized | Podmiot upoważniony |\n"
|
||
},
|
||
"InvoiceType": {
|
||
"enum": [
|
||
"Vat",
|
||
"Zal",
|
||
"Kor",
|
||
"Roz",
|
||
"Upr",
|
||
"KorZal",
|
||
"KorRoz",
|
||
"VatPef",
|
||
"VatPefSp",
|
||
"KorPef",
|
||
"VatRr",
|
||
"KorVatRr"
|
||
],
|
||
"type": "string",
|
||
"description": "| Wartość | Opis |\n| --- | --- |\n| Vat | (FA) Podstawowa |\n| Zal | (FA) Zaliczkowa |\n| Kor | (FA) Korygująca |\n| Roz | (FA) Rozliczeniowa |\n| Upr | (FA) Uproszczona |\n| KorZal | (FA) Korygująca fakturę zaliczkową |\n| KorRoz | (FA) Korygująca fakturę rozliczeniową |\n| VatPef | (PEF) Podstawowowa |\n| VatPefSp | (PEF) Specjalizowana |\n| KorPef | (PEF) Korygująca |\n| VatRr | (RR) Podstawowa |\n| KorVatRr | (RR) Korygująca |\n"
|
||
},
|
||
"InvoicingMode": {
|
||
"enum": [
|
||
"Online",
|
||
"Offline"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"KsefCertificateType": {
|
||
"enum": [
|
||
"Authentication",
|
||
"Offline"
|
||
],
|
||
"type": "string",
|
||
"description": "| Wartość | Opis |\n| --- | --- |\n| Authentication | Certyfikat używany do uwierzytelnienia w systemie. |\n| Offline | Certyfikat używany wyłącznie do potwierdzania autentyczności wystawcy i integralności faktury w trybie offline |\n"
|
||
},
|
||
"KsefNumber": {
|
||
"maxLength": 36,
|
||
"minLength": 35,
|
||
"pattern": "^([1-9](\\d[1-9]|[1-9]\\d)\\d{7})-(20[2-9][0-9]|2[1-9]\\d{2}|[3-9]\\d{3})(0[1-9]|1[0-2])(0[1-9]|[12]\\d|3[01])-([0-9A-F]{6})-?([0-9A-F]{6})-([0-9A-F]{2})$",
|
||
"type": "string",
|
||
"description": "Numer KSeF o długości 35 znaków jest akceptowany, by zachować kompatybilność wsteczna z KSeF 1.0. W KSeF 2.0 numery są generowane wyłącznie w formacie 36-znakowym."
|
||
},
|
||
"Nip": {
|
||
"maxLength": 10,
|
||
"minLength": 10,
|
||
"pattern": "^[1-9]((\\d[1-9])|([1-9]\\d))\\d{7}$",
|
||
"type": "string",
|
||
"description": "10 cyfrowy numer NIP."
|
||
},
|
||
"NipVatUe": {
|
||
"pattern": "^[1-9]((\\d[1-9])|([1-9]\\d))\\d{7}-(ATU\\d{8}|BE[01]{1}\\d{9}|BG\\d{9,10}|CY\\d{8}[A-Z]|CZ\\d{8,10}|DE\\d{9}|DK\\d{8}|EE\\d{9}|EL\\d{9}|ES([A-Z]\\d{8}|\\d{8}[A-Z]|[A-Z]\\d{7}[A-Z])|FI\\d{8}|FR[A-Z0-9]{2}\\d{9}|HR\\d{11}|HU\\d{8}|IE(\\d{7}[A-Z]{2}|\\d[A-Z0-9+*]\\d{5}[A-Z])|IT\\d{11}|LT(\\d{9}|\\d{12})|LU\\d{8}|LV\\d{11}|MT\\d{8}|NL[A-Z0-9+*]{12}|PT\\d{9}|RO\\d{2,10}|SE\\d{12}|SI\\d{8}|SK\\d{10}|XI((\\d{9}|\\d{12})|(GD|HA)\\d{3}))$",
|
||
"type": "string",
|
||
"description": "Identyfikator złożony, czyli dwuczłonowy identyfikator składający się z nr NIP podmiotu polskiego oraz numeru VAT UE podmiotu unijnego."
|
||
},
|
||
"OnlineSessionContextLimitsOverride": {
|
||
"required": [
|
||
"maxInvoices",
|
||
"maxInvoiceSizeInMB",
|
||
"maxInvoiceWithAttachmentSizeInMB"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"maxInvoiceSizeInMB": {
|
||
"maximum": 5,
|
||
"exclusiveMaximum": false,
|
||
"minimum": 0,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"description": "Maksymalny rozmiar faktury w MB.",
|
||
"format": "int32"
|
||
},
|
||
"maxInvoiceWithAttachmentSizeInMB": {
|
||
"maximum": 10,
|
||
"exclusiveMaximum": false,
|
||
"minimum": 0,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"description": "Maksymalny rozmiar faktury z załącznikiem w MB.",
|
||
"format": "int32"
|
||
},
|
||
"maxInvoices": {
|
||
"maximum": 100000,
|
||
"exclusiveMaximum": false,
|
||
"minimum": 0,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"description": "Maksymalna ilość faktur które można przesłać w pojedynczej sesji.",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"OnlineSessionEffectiveContextLimits": {
|
||
"required": [
|
||
"maxInvoices",
|
||
"maxInvoiceSizeInMB",
|
||
"maxInvoiceWithAttachmentSizeInMB"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"maxInvoiceSizeInMB": {
|
||
"minimum": 0,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"description": "Maksymalny rozmiar faktury w MB.",
|
||
"format": "int32"
|
||
},
|
||
"maxInvoiceWithAttachmentSizeInMB": {
|
||
"minimum": 0,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"description": "Maksymalny rozmiar faktury z załącznikiem w MB.",
|
||
"format": "int32"
|
||
},
|
||
"maxInvoices": {
|
||
"minimum": 0,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"description": "Maksymalna ilość faktur które można przesłać w pojedynczej sesji.",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"OpenBatchSessionRequest": {
|
||
"required": [
|
||
"batchFile",
|
||
"encryption",
|
||
"formCode"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"formCode": {
|
||
"required": [
|
||
"systemCode",
|
||
"schemaVersion",
|
||
"value"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/FormCode"
|
||
}
|
||
],
|
||
"description": "Schemat faktur wysyłanych w ramach sesji.\n\nObsługiwane schematy:\n| SystemCode | SchemaVersion | Value |\n| --- | --- | --- |\n| FA (2) | 1-0E | FA |\n| FA (3) | 1-0E | FA |\n"
|
||
},
|
||
"batchFile": {
|
||
"required": [
|
||
"fileSize",
|
||
"fileHash",
|
||
"fileParts"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/BatchFileInfo"
|
||
}
|
||
],
|
||
"description": "Informacje o przesyłanej paczce faktur."
|
||
},
|
||
"encryption": {
|
||
"required": [
|
||
"encryptedSymmetricKey",
|
||
"initializationVector"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EncryptionInfo"
|
||
}
|
||
],
|
||
"description": "Symetryczny klucz szyfrujący plik paczki, zaszyfrowany kluczem publicznym Ministerstwa Finansów."
|
||
},
|
||
"offlineMode": {
|
||
"type": "boolean",
|
||
"description": "Określa, czy podatnik deklaruje tryb fakurowania \"offline\" dla dokumentów przesyłanych w sesji wsadowej.",
|
||
"default": false
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"OpenBatchSessionResponse": {
|
||
"required": [
|
||
"partUploadRequests",
|
||
"referenceNumber"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"referenceNumber": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/ReferenceNumber"
|
||
}
|
||
],
|
||
"description": "Numer referencyjny sesji."
|
||
},
|
||
"partUploadRequests": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/PartUploadRequest"
|
||
},
|
||
"description": "Dane wymagane do poprawnego przesłania poszczególnych części pliku paczki faktur.\n\nKażdą część pliku paczki zadeklarowaną w <b>fileParts</b> należy przesłać zgodnie z odpowiadającym jej obiektem w <b>partUploadRequests</b>.\nŁącznikiem pomiędzy deklaracją a instrukcją wysyłki jest pole <b>ordinalNumber</b>.\n\nDla każdej części należy:\n* zastosować metodę HTTP wskazaną w <b>method</b>,\n* ustawić adres z <b>url</b>,\n* dołączyć nagłówki z <b>headers</b>,\n* dołączyć treść części pliku w korpusie żądania.\n\n`Uwaga: nie należy dodawać do nagłówków token dostępu (accessToken).`\n \nKażdą część przesyła się oddzielnym żądaniem HTTP.Zwracane kody odpowiedzi:\n * <b>201</b> – poprawne przyjęcie pliku,\n * <b>400</b> – błędne dane,\n * <b>401</b> – nieprawidłowe uwierzytelnienie,\n * <b>403</b> – brak uprawnień do zapisu (np.upłynął czas na zapis)."
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"OpenOnlineSessionRequest": {
|
||
"required": [
|
||
"encryption",
|
||
"formCode"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"formCode": {
|
||
"required": [
|
||
"systemCode",
|
||
"schemaVersion",
|
||
"value"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/FormCode"
|
||
}
|
||
],
|
||
"description": "Schemat faktur wysyłanych w ramach sesji.\n\nObsługiwane schematy:\n| SystemCode | SchemaVersion | Value |\n| --- | --- | --- |\n| FA (2) | 1-0E | FA |\n| FA (3) | 1-0E | FA |\n| PEF (3) | 2-1 | PEF |\n| PEF_KOR (3) | 2-1 | PEF |\n"
|
||
},
|
||
"encryption": {
|
||
"required": [
|
||
"encryptedSymmetricKey",
|
||
"initializationVector"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EncryptionInfo"
|
||
}
|
||
],
|
||
"description": "Symetryczny klucz szyfrujący pliki XML, zaszyfrowany kluczem publicznym Ministerstwa Finansów."
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"OpenOnlineSessionResponse": {
|
||
"required": [
|
||
"referenceNumber",
|
||
"validUntil"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"referenceNumber": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/ReferenceNumber"
|
||
}
|
||
],
|
||
"description": "Numer referencyjny sesji."
|
||
},
|
||
"validUntil": {
|
||
"type": "string",
|
||
"description": "Termin ważności sesji. Po jego upływie sesja zostanie automatycznie zamknięta.",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"PartUploadRequest": {
|
||
"required": [
|
||
"headers",
|
||
"method",
|
||
"ordinalNumber",
|
||
"url"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"ordinalNumber": {
|
||
"minimum": 1,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"description": "Numer sekwencyjny części pliku paczki.",
|
||
"format": "int32"
|
||
},
|
||
"method": {
|
||
"type": "string",
|
||
"description": "Metoda HTTP, której należy użyć przy wysyłce części pliku paczki."
|
||
},
|
||
"url": {
|
||
"type": "string",
|
||
"description": "Adres pod który należy wysłać część pliku paczki.",
|
||
"format": "uri"
|
||
},
|
||
"headers": {
|
||
"type": "object",
|
||
"additionalProperties": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"description": "Nagłówki, których należy użyć przy wysyłce części pliku paczki."
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"PeppolId": {
|
||
"maxLength": 9,
|
||
"minLength": 9,
|
||
"pattern": "^P[A-Z]{2}[0-9]{6}$",
|
||
"type": "string",
|
||
"description": "Identyfikator dostawcy usług Peppol."
|
||
},
|
||
"PeppolProvider": {
|
||
"required": [
|
||
"dateCreated",
|
||
"id",
|
||
"name"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/PeppolId"
|
||
}
|
||
],
|
||
"description": "Identyfikator dostawcy usług Peppol."
|
||
},
|
||
"name": {
|
||
"maxLength": 256,
|
||
"type": "string",
|
||
"description": "Nazwa dostawcy usług Peppol."
|
||
},
|
||
"dateCreated": {
|
||
"type": "string",
|
||
"description": "Data rejestracji dostawcy usług Peppol w systemie.",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"PermissionId": {
|
||
"maxLength": 36,
|
||
"minLength": 36,
|
||
"type": "string",
|
||
"description": "Techniczny identyfikator nadanego uprawnienia – wymagany m.in. przy operacjach odbierania."
|
||
},
|
||
"PermissionState": {
|
||
"enum": [
|
||
"Active",
|
||
"Inactive"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"PermissionsOperationResponse": {
|
||
"required": [
|
||
"referenceNumber"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"referenceNumber": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/ReferenceNumber"
|
||
}
|
||
],
|
||
"description": "Numer referencyjny operacji nadania lub odbierania uprawnień."
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"PermissionsOperationStatusResponse": {
|
||
"required": [
|
||
"status"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"status": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/StatusInfo"
|
||
}
|
||
],
|
||
"description": "Informacje o aktualnym statusie.\n| Code | Description | Details |\n| --- | --- | --- |\n| 100 | Operacja przyjęta do realizacji | - |\n| 200 | Operacja zakończona sukcesem | - |\n| 400 | Operacja zakończona niepowodzeniem | - |\n| 410 | Podane identyfikatory są niezgodne lub pozostają w niewłaściwej relacji | - |\n| 420 | Użyte poświadczenia nie mają uprawnień do wykonania tej operacji | - |\n| 430 | Kontekst identyfikatora nie odpowiada wymaganej roli lub uprawnieniom | - |\n| 440 | Operacja niedozwolona dla wskazanych powiązań identyfikatorów | - |\n| 450 | Operacja niedozwolona dla wskazanego identyfikatora lub jego typu | - |\n| 500 | Nieznany błąd | - |\n| 550 | Operacja została anulowana przez system | Przetwarzanie zostało przerwane z przyczyn wewnętrznych systemu. Spróbuj ponownie później. |"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"PersonCreateRequest": {
|
||
"required": [
|
||
"description",
|
||
"isBailiff",
|
||
"nip",
|
||
"pesel"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"nip": {
|
||
"$ref": "#/components/schemas/Nip"
|
||
},
|
||
"pesel": {
|
||
"$ref": "#/components/schemas/Pesel"
|
||
},
|
||
"isBailiff": {
|
||
"type": "boolean"
|
||
},
|
||
"description": {
|
||
"maxLength": 256,
|
||
"minLength": 5,
|
||
"type": "string"
|
||
},
|
||
"isDeceased": {
|
||
"type": "boolean"
|
||
},
|
||
"createdDate": {
|
||
"type": "string",
|
||
"description": "W przypadku wielokrotnego tworzenia danych testowych z tym samym identyfikatorem nie można podawać daty wcześniejszej ani takiej samej jak poprzednia.",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"PersonPermission": {
|
||
"required": [
|
||
"authorIdentifier",
|
||
"authorizedIdentifier",
|
||
"canDelegate",
|
||
"description",
|
||
"id",
|
||
"permissionScope",
|
||
"permissionState",
|
||
"startDate"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/PermissionId"
|
||
}
|
||
],
|
||
"description": "Identyfikator uprawnienia."
|
||
},
|
||
"authorizedIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/PersonPermissionsAuthorizedIdentifier"
|
||
}
|
||
],
|
||
"description": "Identyfikator osoby lub podmiotu uprawnionego.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |\n| Pesel | 11 cyfrowy numer PESEL |\n| Fingerprint | Odcisk palca certyfikatu |"
|
||
},
|
||
"contextIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/PersonPermissionsContextIdentifier"
|
||
}
|
||
],
|
||
"description": "Identyfikator kontekstu uprawnienia (dla uprawnień nadanych administratorom jednostek podrzędnych).\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |\n| InternalId | Dwuczłonowy identyfikator składający się z numeru NIP i 5 cyfr: `{nip}-{5_cyfr}` |",
|
||
"nullable": true
|
||
},
|
||
"targetIdentifier": {
|
||
"required": [
|
||
"type"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/PersonPermissionsTargetIdentifier"
|
||
}
|
||
],
|
||
"description": "Identyfikator podmiotu docelowego dla uprawnień nadanych pośrednio.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |\n| AllPartners | Identyfikator oznaczający, że uprawnienie nadane w sposób pośredni jest typu generalnego |\n| InternalId | Dwuczłonowy identyfikator składający się z numeru NIP i 5 cyfr: `{nip}-{5_cyfr}` |",
|
||
"nullable": true
|
||
},
|
||
"authorIdentifier": {
|
||
"required": [
|
||
"type"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/PersonPermissionsAuthorIdentifier"
|
||
}
|
||
],
|
||
"description": "Identyfikator osoby lub podmiotu nadającego uprawnienie.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |\n| Pesel | 11 cyfrowy numer PESEL |\n| Fingerprint | Odcisk palca certyfikatu |\n| System | Identyfikator systemowy KSeF |"
|
||
},
|
||
"permissionScope": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/PersonPermissionScope"
|
||
}
|
||
],
|
||
"description": "Rodzaj uprawnienia."
|
||
},
|
||
"description": {
|
||
"maxLength": 256,
|
||
"minLength": 5,
|
||
"type": "string",
|
||
"description": "Opis uprawnienia."
|
||
},
|
||
"permissionState": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/PermissionState"
|
||
}
|
||
],
|
||
"description": "Stan uprawnienia."
|
||
},
|
||
"startDate": {
|
||
"type": "string",
|
||
"description": "Data rozpoczęcia obowiązywania uprawnienia.",
|
||
"format": "date-time"
|
||
},
|
||
"canDelegate": {
|
||
"type": "boolean",
|
||
"description": "Flaga określająca, czy uprawnienie ma być możliwe do dalszego przekazywania."
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"PersonPermissionScope": {
|
||
"enum": [
|
||
"CredentialsManage",
|
||
"CredentialsRead",
|
||
"InvoiceWrite",
|
||
"InvoiceRead",
|
||
"Introspection",
|
||
"SubunitManage",
|
||
"EnforcementOperations"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"PersonPermissionType": {
|
||
"enum": [
|
||
"CredentialsManage",
|
||
"CredentialsRead",
|
||
"InvoiceWrite",
|
||
"InvoiceRead",
|
||
"Introspection",
|
||
"SubunitManage",
|
||
"EnforcementOperations"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"PersonPermissionsAuthorIdentifier": {
|
||
"required": [
|
||
"type"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"type": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/PersonPermissionsAuthorIdentifierType"
|
||
}
|
||
],
|
||
"description": "Typ identyfikatora."
|
||
},
|
||
"value": {
|
||
"type": "string",
|
||
"description": "Wartość identyfikatora. W przypadku typu System należy pozostawić puste. W pozostałych przypadkach pole jest wymagane.",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "Identyfikator osoby lub podmiotu nadającego uprawnienie.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |\n| Pesel | 11 cyfrowy numer PESEL |\n| Fingerprint | Odcisk palca certyfikatu |\n| System | Identyfikator systemowy KSeF |"
|
||
},
|
||
"PersonPermissionsAuthorIdentifierType": {
|
||
"enum": [
|
||
"Nip",
|
||
"Pesel",
|
||
"Fingerprint",
|
||
"System"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"PersonPermissionsAuthorizedIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"type": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/PersonPermissionsAuthorizedIdentifierType"
|
||
}
|
||
],
|
||
"description": "Typ identyfikatora."
|
||
},
|
||
"value": {
|
||
"type": "string",
|
||
"description": "Wartość identyfikatora."
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "Identyfikator osoby lub podmiotu uprawnionego.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |\n| Pesel | 11 cyfrowy numer PESEL |\n| Fingerprint | Odcisk palca certyfikatu |"
|
||
},
|
||
"PersonPermissionsAuthorizedIdentifierType": {
|
||
"enum": [
|
||
"Nip",
|
||
"Pesel",
|
||
"Fingerprint"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"PersonPermissionsContextIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"type": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/PersonPermissionsContextIdentifierType"
|
||
}
|
||
],
|
||
"description": "Typ identyfikatora."
|
||
},
|
||
"value": {
|
||
"type": "string",
|
||
"description": "Wartość identyfikatora."
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "Identyfikator kontekstu uprawnienia (dla uprawnień nadanych administratorom jednostek podrzędnych).\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |\n| InternalId | Dwuczłonowy identyfikator składający się z numeru NIP i 5 cyfr: `{nip}-{5_cyfr}` |"
|
||
},
|
||
"PersonPermissionsContextIdentifierType": {
|
||
"enum": [
|
||
"Nip",
|
||
"InternalId"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"PersonPermissionsGrantRequest": {
|
||
"required": [
|
||
"description",
|
||
"permissions",
|
||
"subjectIdentifier"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"subjectIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/PersonPermissionsSubjectIdentifier"
|
||
}
|
||
],
|
||
"description": "Identyfikator osoby fizycznej.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |\n| Pesel | 11 cyfrowy numer PESEL |\n| Fingerprint | Odcisk palca certyfikatu |"
|
||
},
|
||
"permissions": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/PersonPermissionType"
|
||
},
|
||
"description": "Lista nadawanych uprawnień. Każda wartość może wystąpić tylko raz."
|
||
},
|
||
"description": {
|
||
"maxLength": 256,
|
||
"minLength": 5,
|
||
"type": "string",
|
||
"description": "Opis uprawnienia"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"PersonPermissionsQueryRequest": {
|
||
"required": [
|
||
"queryType"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"authorIdentifier": {
|
||
"required": [
|
||
"type"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/PersonPermissionsAuthorIdentifier"
|
||
}
|
||
],
|
||
"description": "Identyfikator osoby lub podmiotu nadającego uprawnienie.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |\n| Pesel | 11 cyfrowy numer PESEL |\n| Fingerprint | Odcisk palca certyfikatu |\n| System | Identyfikator systemowy KSeF |",
|
||
"nullable": true
|
||
},
|
||
"authorizedIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/PersonPermissionsAuthorizedIdentifier"
|
||
}
|
||
],
|
||
"description": "Identyfikator osoby lub podmiotu uprawnionego.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |\n| Pesel | 11 cyfrowy numer PESEL |\n| Fingerprint | Odcisk palca certyfikatu |",
|
||
"nullable": true
|
||
},
|
||
"contextIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/PersonPermissionsContextIdentifier"
|
||
}
|
||
],
|
||
"description": "Identyfikator kontekstu uprawnienia (dla uprawnień nadanych administratorom jednostek podrzędnych).\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |\n| InternalId | Dwuczłonowy identyfikator składający się z numeru NIP i 5 cyfr: `{nip}-{5_cyfr}` |",
|
||
"nullable": true
|
||
},
|
||
"targetIdentifier": {
|
||
"required": [
|
||
"type"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/PersonPermissionsTargetIdentifier"
|
||
}
|
||
],
|
||
"description": "Identyfikator podmiotu docelowego dla uprawnień nadanych pośrednio.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |\n| AllPartners | Identyfikator oznaczający, że uprawnienie nadane w sposób pośredni jest typu generalnego |\n| InternalId | Dwuczłonowy identyfikator składający się z numeru NIP i 5 cyfr: `{nip}-{5_cyfr}` |",
|
||
"nullable": true
|
||
},
|
||
"permissionTypes": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/PersonPermissionType"
|
||
},
|
||
"description": "Lista rodzajów wyszukiwanych uprawnień.",
|
||
"nullable": true
|
||
},
|
||
"permissionState": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/PermissionState"
|
||
}
|
||
],
|
||
"description": "Stan uprawnienia. \n| Type | Value |\n| --- | --- |\n| Active | Uprawnienia aktywne |\n| Inactive | Uprawnienia nieaktywne, nadane w sposób poœredni |",
|
||
"nullable": true
|
||
},
|
||
"queryType": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/PersonPermissionsQueryType"
|
||
}
|
||
],
|
||
"description": "Typ zapytania.\n| Type | Value |\n| --- | --- |\n| PermissionsInCurrentContext | Lista uprawnień obowiązujących w bieżącym kontekście |\n| PermissionsGrantedInCurrentContext | Lista uprawmoeń nadanych w bieżącym kontekście |"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"PersonPermissionsQueryType": {
|
||
"enum": [
|
||
"PermissionsInCurrentContext",
|
||
"PermissionsGrantedInCurrentContext"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"PersonPermissionsSubjectIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"type": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/PersonPermissionsSubjectIdentifierType"
|
||
}
|
||
],
|
||
"description": "Typ identyfikatora."
|
||
},
|
||
"value": {
|
||
"type": "string",
|
||
"description": "Wartość identyfikatora."
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "Identyfikator osoby fizycznej.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |\n| Pesel | 11 cyfrowy numer PESEL |\n| Fingerprint | Odcisk palca certyfikatu |"
|
||
},
|
||
"PersonPermissionsSubjectIdentifierType": {
|
||
"enum": [
|
||
"Nip",
|
||
"Pesel",
|
||
"Fingerprint"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"PersonPermissionsTargetIdentifier": {
|
||
"required": [
|
||
"type"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"type": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/PersonPermissionsTargetIdentifierType"
|
||
}
|
||
],
|
||
"description": "Typ identyfikatora."
|
||
},
|
||
"value": {
|
||
"type": "string",
|
||
"description": "Wartość identyfikatora. W przypadku typu AllPartners należy pozostawić puste. W pozostałych przypadkach pole jest wymagane.",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "Identyfikator podmiotu docelowego dla uprawnień nadanych pośrednio.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |\n| AllPartners | Identyfikator oznaczający, że uprawnienie nadane w sposób pośredni jest typu generalnego |\n| InternalId | Dwuczłonowy identyfikator składający się z numeru NIP i 5 cyfr: `{nip}-{5_cyfr}` |"
|
||
},
|
||
"PersonPermissionsTargetIdentifierType": {
|
||
"enum": [
|
||
"Nip",
|
||
"AllPartners",
|
||
"InternalId"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"PersonRemoveRequest": {
|
||
"required": [
|
||
"nip"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"nip": {
|
||
"$ref": "#/components/schemas/Nip"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"PersonalPermission": {
|
||
"required": [
|
||
"canDelegate",
|
||
"description",
|
||
"id",
|
||
"permissionScope",
|
||
"permissionState",
|
||
"startDate"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/PermissionId"
|
||
}
|
||
],
|
||
"description": "Identyfikator uprawnienia."
|
||
},
|
||
"contextIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/PersonalPermissionsContextIdentifier"
|
||
}
|
||
],
|
||
"description": "Identyfikator kontekstu podmiotu, który nadał uprawnienia do obsługi faktur.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |",
|
||
"nullable": true
|
||
},
|
||
"authorizedIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/PersonalPermissionsAuthorizedIdentifier"
|
||
}
|
||
],
|
||
"description": "Identyfikator podmiotu uprawnionego, jeżeli jest inny niż identyfikator uwierzytelnionego klienta API.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |",
|
||
"nullable": true
|
||
},
|
||
"targetIdentifier": {
|
||
"required": [
|
||
"type"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/PersonalPermissionsTargetIdentifier"
|
||
}
|
||
],
|
||
"description": "Identyfikator podmiotu docelowego dla uprawnień selektywnych nadanych pośrednio.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |\n| AllPartners | Identyfikator oznaczający, że wyszukiwanie dotyczy uprawnień generalnych nadanych w sposób pośredni |\n| InternalId | Dwuczłonowy identyfikator składający się z numeru NIP i 5 cyfr: `{nip}-{5_cyfr}` |",
|
||
"nullable": true
|
||
},
|
||
"permissionScope": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/PersonalPermissionScope"
|
||
}
|
||
],
|
||
"description": "Rodzaj uprawnienia."
|
||
},
|
||
"description": {
|
||
"maxLength": 256,
|
||
"minLength": 5,
|
||
"type": "string",
|
||
"description": "Opis uprawnienia."
|
||
},
|
||
"permissionState": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/PermissionState"
|
||
}
|
||
],
|
||
"description": "Stan uprawnienia."
|
||
},
|
||
"startDate": {
|
||
"type": "string",
|
||
"description": "Data rozpoczęcia obowiązywania uprawnienia.",
|
||
"format": "date-time"
|
||
},
|
||
"canDelegate": {
|
||
"type": "boolean",
|
||
"description": "Flaga określająca, czy uprawnienie ma być możliwe do dalszego przekazywania."
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"PersonalPermissionScope": {
|
||
"enum": [
|
||
"CredentialsManage",
|
||
"CredentialsRead",
|
||
"InvoiceWrite",
|
||
"InvoiceRead",
|
||
"Introspection",
|
||
"SubunitManage",
|
||
"EnforcementOperations",
|
||
"VatUeManage"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"PersonalPermissionType": {
|
||
"enum": [
|
||
"CredentialsManage",
|
||
"CredentialsRead",
|
||
"InvoiceWrite",
|
||
"InvoiceRead",
|
||
"Introspection",
|
||
"SubunitManage",
|
||
"EnforcementOperations",
|
||
"VatUeManage"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"PersonalPermissionsAuthorizedIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"type": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/PersonalPermissionsAuthorizedIdentifierType"
|
||
}
|
||
],
|
||
"description": "Typ identyfikatora."
|
||
},
|
||
"value": {
|
||
"type": "string",
|
||
"description": "Wartość identyfikatora."
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "Identyfikator podmiotu uprawnionego, jeżeli jest inny niż identyfikator uwierzytelnionego klienta API.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |"
|
||
},
|
||
"PersonalPermissionsAuthorizedIdentifierType": {
|
||
"enum": [
|
||
"Nip",
|
||
"Pesel",
|
||
"Fingerprint"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"PersonalPermissionsContextIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"type": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/PersonalPermissionsContextIdentifierType"
|
||
}
|
||
],
|
||
"description": "Typ identyfikatora."
|
||
},
|
||
"value": {
|
||
"type": "string",
|
||
"description": "Wartość identyfikatora."
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "Identyfikator kontekstu podmiotu, który nadał uprawnienia do obsługi faktur.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |"
|
||
},
|
||
"PersonalPermissionsContextIdentifierType": {
|
||
"enum": [
|
||
"Nip",
|
||
"InternalId"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"PersonalPermissionsQueryRequest": {
|
||
"type": "object",
|
||
"properties": {
|
||
"contextIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/PersonalPermissionsContextIdentifier"
|
||
}
|
||
],
|
||
"description": "Identyfikator kontekstu podmiotu, który nadał uprawnienia do obsługi faktur.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |",
|
||
"nullable": true
|
||
},
|
||
"targetIdentifier": {
|
||
"required": [
|
||
"type"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/PersonalPermissionsTargetIdentifier"
|
||
}
|
||
],
|
||
"description": "Identyfikator podmiotu docelowego dla uprawnień selektywnych nadanych pośrednio.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |\n| AllPartners | Identyfikator oznaczający, że wyszukiwanie dotyczy uprawnień generalnych nadanych w sposób pośredni |\n| InternalId | Dwuczłonowy identyfikator składający się z numeru NIP i 5 cyfr: `{nip}-{5_cyfr}` |",
|
||
"nullable": true
|
||
},
|
||
"permissionTypes": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/PersonalPermissionType"
|
||
},
|
||
"description": "Lista rodzajów wyszukiwanych uprawnień.",
|
||
"nullable": true
|
||
},
|
||
"permissionState": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/PermissionState"
|
||
}
|
||
],
|
||
"description": "Stan uprawnienia. \n| Type | Value |\n| --- | --- |\n| Active | Uprawnienia aktywne |\n| Inactive | Uprawnienia nieaktywne |",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"PersonalPermissionsTargetIdentifier": {
|
||
"required": [
|
||
"type"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"type": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/PersonalPermissionsTargetIdentifierType"
|
||
}
|
||
],
|
||
"description": "Typ identyfikatora."
|
||
},
|
||
"value": {
|
||
"type": "string",
|
||
"description": "Wartość identyfikatora. W przypadku typu AllPartners należy pozostawić puste. W pozostałych przypadkach pole jest wymagane.",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "Identyfikator podmiotu docelowego dla uprawnień selektywnych nadanych pośrednio.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |\n| AllPartners | Identyfikator oznaczający, że wyszukiwanie dotyczy uprawnień generalnych nadanych w sposób pośredni |\n| InternalId | Dwuczłonowy identyfikator składający się z numeru NIP i 5 cyfr: `{nip}-{5_cyfr}` |"
|
||
},
|
||
"PersonalPermissionsTargetIdentifierType": {
|
||
"enum": [
|
||
"Nip",
|
||
"AllPartners",
|
||
"InternalId"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"Pesel": {
|
||
"maxLength": 11,
|
||
"minLength": 11,
|
||
"pattern": "^\\d{2}(?:0[1-9]|1[0-2]|2[1-9]|3[0-2]|4[1-9]|5[0-2]|6[1-9]|7[0-2]|8[1-9]|9[0-2])\\d{7}$",
|
||
"type": "string",
|
||
"description": "11 cyfrowy numer PESEL."
|
||
},
|
||
"PublicKeyCertificate": {
|
||
"required": [
|
||
"certificate",
|
||
"usage",
|
||
"validFrom",
|
||
"validTo"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"certificate": {
|
||
"type": "string",
|
||
"description": "Certyfikat klucza publicznego w formacie DER zakodowany w Base64."
|
||
},
|
||
"validFrom": {
|
||
"type": "string",
|
||
"description": "Data początku obowiązywania certyfikatu.",
|
||
"format": "date-time"
|
||
},
|
||
"validTo": {
|
||
"type": "string",
|
||
"description": "Data końca obowiązywania certyfikatu.",
|
||
"format": "date-time"
|
||
},
|
||
"usage": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/PublicKeyCertificateUsage"
|
||
},
|
||
"description": "Operacje do których może być używany certyfikat.\n| Wartość | Opis |\n| --- | --- |\n| KsefTokenEncryption | Szyfrowanie tokenów KSeF przesyłanych w trakcie procesu uwierzytelniania. |\n| SymmetricKeyEncryption | Szyfrowanie klucza symetrycznego wykorzystywanego do szyfrowania przesyłanych faktur. |\n"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"PublicKeyCertificateUsage": {
|
||
"enum": [
|
||
"KsefTokenEncryption",
|
||
"SymmetricKeyEncryption"
|
||
],
|
||
"type": "string",
|
||
"description": "| Wartość | Opis |\n| --- | --- |\n| KsefTokenEncryption | Szyfrowanie tokenów KSeF przesyłanych w trakcie procesu uwierzytelniania. |\n| SymmetricKeyEncryption | Szyfrowanie klucza symetrycznego wykorzystywanego do szyfrowania przesyłanych faktur. |\n"
|
||
},
|
||
"QueryCertificatesRequest": {
|
||
"type": "object",
|
||
"properties": {
|
||
"certificateSerialNumber": {
|
||
"type": "string",
|
||
"description": "Numer seryjny certyfikatu. Wyszukiwanie odbywa się na zasadzie dokładnego dopasowania (exact match).",
|
||
"nullable": true
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"description": "Nazwa własna certyfikatu. Wyszukiwanie jest częściowe, czyli zwracane są certyfikaty, których nazwa zawiera podany ciąg znaków (contains).",
|
||
"nullable": true
|
||
},
|
||
"type": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/KsefCertificateType"
|
||
}
|
||
],
|
||
"description": "Typ certyfikatu KSeF.\n| Wartość | Opis |\n| --- | --- |\n| Authentication | Certyfikat używany do uwierzytelnienia w systemie. |\n| Offline | Certyfikat używany wyłącznie do potwierdzania autentyczności wystawcy i integralności faktury w trybie offline |\n",
|
||
"nullable": true
|
||
},
|
||
"status": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/CertificateListItemStatus"
|
||
}
|
||
],
|
||
"description": "Status certyfikatu.\n| Wartość | Opis |\n| --- | --- |\n| Active | Certyfikat jest aktywny i może zostać użyty do uwierzytelnienia lub realizacji operacji w trybie offline (w zależności od typu certyfikatu). |\n| Blocked | Certyfikat został zablokowany i nie może zostać użyty do uwierzytelnienia i realizacji operacji w trybie offline. Status przejściowy do czasu zakończenia procesu unieważniania. |\n| Revoked | Certyfikat został unieważniony i nie może zostać użyty do uwierzytelnienia i realizacji operacji w trybie offline. |\n| Expired | Certyfikat wygasł i nie może zostać użyty do uwierzytelnienia i realizacji operacji w trybie offline. |\n",
|
||
"nullable": true
|
||
},
|
||
"expiresAfter": {
|
||
"type": "string",
|
||
"description": "Filtruje certyfikaty, które wygasają po podanej dacie.",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"QueryCertificatesResponse": {
|
||
"required": [
|
||
"certificates",
|
||
"hasMore"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"certificates": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/CertificateListItem"
|
||
},
|
||
"description": "Lista certyfikatów spełniających kryteria wyszukiwania."
|
||
},
|
||
"hasMore": {
|
||
"type": "boolean",
|
||
"description": "Flaga informująca o dostępności kolejnej strony wyników."
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"QueryEntityAuthorizationPermissionsResponse": {
|
||
"required": [
|
||
"authorizationGrants",
|
||
"hasMore"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"authorizationGrants": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/EntityAuthorizationGrant"
|
||
},
|
||
"description": "Lista odczytanych uprawnień."
|
||
},
|
||
"hasMore": {
|
||
"type": "boolean",
|
||
"description": "Flaga informująca o dostępności kolejnej strony wyników."
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"QueryEntityRolesResponse": {
|
||
"required": [
|
||
"hasMore",
|
||
"roles"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"roles": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/EntityRole"
|
||
},
|
||
"description": "Lista odczytanych ról podmiotu."
|
||
},
|
||
"hasMore": {
|
||
"type": "boolean",
|
||
"description": "Flaga informująca o dostępności kolejnej strony wyników."
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"QueryEuEntityPermissionsResponse": {
|
||
"required": [
|
||
"hasMore",
|
||
"permissions"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"permissions": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/EuEntityPermission"
|
||
},
|
||
"description": "Lista odczytanych uprawnień."
|
||
},
|
||
"hasMore": {
|
||
"type": "boolean",
|
||
"description": "Flaga informująca o dostępności kolejnej strony wyników."
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"QueryInvoicesMetadataResponse": {
|
||
"required": [
|
||
"hasMore",
|
||
"invoices",
|
||
"isTruncated"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"hasMore": {
|
||
"type": "boolean",
|
||
"description": "Określa, czy istnieją kolejne wyniki zapytania."
|
||
},
|
||
"isTruncated": {
|
||
"type": "boolean",
|
||
"description": "Określa, czy osiągnięto maksymalny dopuszczalny zakres wyników zapytania (10 000)."
|
||
},
|
||
"invoices": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/InvoiceMetadata"
|
||
},
|
||
"description": "Lista faktur spełniających kryteria."
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"QueryPeppolProvidersResponse": {
|
||
"required": [
|
||
"hasMore",
|
||
"peppolProviders"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"peppolProviders": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/PeppolProvider"
|
||
},
|
||
"description": "Lista dostawców usług Peppol."
|
||
},
|
||
"hasMore": {
|
||
"type": "boolean",
|
||
"description": "Flaga informująca o dostępności kolejnej strony wyników."
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"QueryPersonPermissionsResponse": {
|
||
"required": [
|
||
"hasMore",
|
||
"permissions"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"permissions": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/PersonPermission"
|
||
},
|
||
"description": "Lista odczytanych uprawnień."
|
||
},
|
||
"hasMore": {
|
||
"type": "boolean",
|
||
"description": "Flaga informująca o dostępności kolejnej strony wyników."
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"QueryPersonalPermissionsResponse": {
|
||
"required": [
|
||
"hasMore",
|
||
"permissions"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"permissions": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/PersonalPermission"
|
||
},
|
||
"description": "Lista odczytanych uprawnień."
|
||
},
|
||
"hasMore": {
|
||
"type": "boolean",
|
||
"description": "Flaga informująca o dostępności kolejnej strony wyników."
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"QuerySubordinateEntityRolesResponse": {
|
||
"required": [
|
||
"hasMore",
|
||
"roles"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"roles": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/SubordinateEntityRole"
|
||
},
|
||
"description": "Lista odczytanych podmiotów podrzędnych i ich ról."
|
||
},
|
||
"hasMore": {
|
||
"type": "boolean",
|
||
"description": "Flaga informująca o dostępności kolejnej strony wyników."
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"QuerySubunitPermissionsResponse": {
|
||
"required": [
|
||
"hasMore",
|
||
"permissions"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"permissions": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/SubunitPermission"
|
||
},
|
||
"description": "Lista odczytanych uprawnień."
|
||
},
|
||
"hasMore": {
|
||
"type": "boolean",
|
||
"description": "Flaga informująca o dostępności kolejnej strony wyników."
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"QueryTokensResponse": {
|
||
"required": [
|
||
"tokens"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"continuationToken": {
|
||
"type": "string",
|
||
"description": "Token służący do pobrania kolejnej strony wyników. Jeśli jest pusty, to nie ma kolejnych stron.",
|
||
"nullable": true
|
||
},
|
||
"tokens": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/QueryTokensResponseItem"
|
||
},
|
||
"description": "Lista tokenów uwierzytelniających."
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"QueryTokensResponseItem": {
|
||
"required": [
|
||
"authorIdentifier",
|
||
"contextIdentifier",
|
||
"dateCreated",
|
||
"description",
|
||
"referenceNumber",
|
||
"requestedPermissions",
|
||
"status"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"referenceNumber": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/ReferenceNumber"
|
||
}
|
||
],
|
||
"description": "Numer referencyjny tokena KSeF."
|
||
},
|
||
"authorIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/TokenAuthorIdentifierTypeIdentifier"
|
||
}
|
||
],
|
||
"description": "Identyfikator osoby która wygenerowała token."
|
||
},
|
||
"contextIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/TokenContextIdentifierTypeIdentifier"
|
||
}
|
||
],
|
||
"description": "Identyfikator kontekstu, w którym został wygenerowany token i do którego daje dostęp."
|
||
},
|
||
"description": {
|
||
"maxLength": 256,
|
||
"minLength": 5,
|
||
"type": "string",
|
||
"description": "Opis tokena."
|
||
},
|
||
"requestedPermissions": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/TokenPermissionType"
|
||
},
|
||
"description": "Uprawnienia przypisane tokenowi."
|
||
},
|
||
"dateCreated": {
|
||
"type": "string",
|
||
"description": "Data i czas utworzenia tokena.",
|
||
"format": "date-time"
|
||
},
|
||
"lastUseDate": {
|
||
"type": "string",
|
||
"description": "Data ostatniego użycia tokena.",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"status": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/AuthenticationTokenStatus"
|
||
}
|
||
],
|
||
"description": "Status tokena.\n| Wartość | Opis |\n| --- | --- |\n| Pending | Token został utworzony ale jest jeszcze w trakcie aktywacji i nadawania uprawnień. Nie może być jeszcze wykorzystywany do uwierzytelniania. |\n| Active | Token jest aktywny i może być wykorzystywany do uwierzytelniania. |\n| Revoking | Token jest w trakcie unieważniania. Nie może już być wykorzystywany do uwierzytelniania. |\n| Revoked | Token został unieważniony i nie może być wykorzystywany do uwierzytelniania. |\n| Failed | Nie udało się aktywować tokena. Należy wygenerować nowy token, obecny nie może być wykorzystywany do uwierzytelniania. |\n"
|
||
},
|
||
"statusDetails": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
},
|
||
"description": "Dodatkowe informacje na temat statusu, zwracane w przypadku błędów.",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"QueryType": {
|
||
"enum": [
|
||
"Granted",
|
||
"Received"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"ReferenceNumber": {
|
||
"maxLength": 36,
|
||
"minLength": 36,
|
||
"type": "string",
|
||
"description": "Numer referencyjny."
|
||
},
|
||
"RetrieveCertificatesListItem": {
|
||
"required": [
|
||
"certificate",
|
||
"certificateName",
|
||
"certificateSerialNumber",
|
||
"certificateType"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"certificate": {
|
||
"type": "string",
|
||
"description": "Certyfikat w formacie DER zakodowany w Base64.",
|
||
"format": "byte"
|
||
},
|
||
"certificateName": {
|
||
"type": "string",
|
||
"description": "Nazwa własna certyfikatu."
|
||
},
|
||
"certificateSerialNumber": {
|
||
"type": "string",
|
||
"description": "Numer seryjny certyfikatu."
|
||
},
|
||
"certificateType": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/KsefCertificateType"
|
||
}
|
||
],
|
||
"description": "Typ certyfikatu.\n| Wartość | Opis |\n| --- | --- |\n| Authentication | Certyfikat używany do uwierzytelnienia w systemie. |\n| Offline | Certyfikat używany wyłącznie do potwierdzania autentyczności wystawcy i integralności faktury w trybie offline |\n"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"RetrieveCertificatesRequest": {
|
||
"required": [
|
||
"certificateSerialNumbers"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"certificateSerialNumbers": {
|
||
"maxItems": 10,
|
||
"minItems": 1,
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
},
|
||
"description": "Numery seryjne certyfikatów do pobrania."
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"RetrieveCertificatesResponse": {
|
||
"required": [
|
||
"certificates"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"certificates": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/RetrieveCertificatesListItem"
|
||
},
|
||
"description": "Pobrane certyfikaty."
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"RevokeCertificateRequest": {
|
||
"type": "object",
|
||
"properties": {
|
||
"revocationReason": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/CertificateRevocationReason"
|
||
}
|
||
],
|
||
"description": "Powód unieważnienia certyfikatu.\n| Wartość | Opis |\n| --- | --- |\n| Unspecified | Nieokreślony. |\n| Superseded | Certyfikat został zastąpiony przez inny. |\n| KeyCompromise | Klucz prywatny powiązany z certyfikatem został skompromitowany. |\n",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"SendInvoiceRequest": {
|
||
"required": [
|
||
"encryptedInvoiceContent",
|
||
"encryptedInvoiceHash",
|
||
"encryptedInvoiceSize",
|
||
"invoiceHash",
|
||
"invoiceSize"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"invoiceHash": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/Sha256HashBase64"
|
||
}
|
||
],
|
||
"description": "Skrót SHA256 oryginalnej faktury, zakodowany w formacie Base64."
|
||
},
|
||
"invoiceSize": {
|
||
"minimum": 1,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"description": "Rozmiar oryginalnej faktury w bajtach. Maksymalny rozmiar zależy od limitów ustawionych dla uwierzytelnionego kontekstu.",
|
||
"format": "int64"
|
||
},
|
||
"encryptedInvoiceHash": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/Sha256HashBase64"
|
||
}
|
||
],
|
||
"description": "Skrót SHA256 zaszyfrowanej faktury, zakodowany w formacie Base64."
|
||
},
|
||
"encryptedInvoiceSize": {
|
||
"minimum": 1,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"description": "Rozmiar zaszyfrowanej faktury w bajtach.",
|
||
"format": "int64"
|
||
},
|
||
"encryptedInvoiceContent": {
|
||
"type": "string",
|
||
"description": "Faktura zaszyfrowana algorytmem AES-256-CBC z dopełnianiem PKCS#7 (kluczem przekazanym przy otwarciu sesji), zakodowana w formacie Base64.",
|
||
"format": "byte"
|
||
},
|
||
"offlineMode": {
|
||
"type": "boolean",
|
||
"description": "Określa, czy podatnik deklaruje tryb fakturowania \"offline\" dla przesyłanego dokumentu.",
|
||
"default": false
|
||
},
|
||
"hashOfCorrectedInvoice": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/Sha256HashBase64"
|
||
}
|
||
],
|
||
"description": "Skrót SHA256 korygowanej faktury, zakodowany w formacie Base64. Wymagany przy wysyłaniu korekty technicznej faktury.",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"SendInvoiceResponse": {
|
||
"required": [
|
||
"referenceNumber"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"referenceNumber": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/ReferenceNumber"
|
||
}
|
||
],
|
||
"description": "Numer referencyjny faktury."
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"SessionInvoiceStatusResponse": {
|
||
"required": [
|
||
"invoiceHash",
|
||
"invoicingDate",
|
||
"ordinalNumber",
|
||
"referenceNumber",
|
||
"status"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"ordinalNumber": {
|
||
"minimum": 1,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"description": "Numer sekwencyjny faktury w ramach sesji.",
|
||
"format": "int32"
|
||
},
|
||
"invoiceNumber": {
|
||
"maxLength": 256,
|
||
"type": "string",
|
||
"description": "Numer faktury.",
|
||
"nullable": true
|
||
},
|
||
"ksefNumber": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/KsefNumber"
|
||
}
|
||
],
|
||
"description": "Numer KSeF.",
|
||
"nullable": true
|
||
},
|
||
"referenceNumber": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/ReferenceNumber"
|
||
}
|
||
],
|
||
"description": "Numer referencyjny faktury."
|
||
},
|
||
"invoiceHash": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/Sha256HashBase64"
|
||
}
|
||
],
|
||
"description": "Skrót SHA256 faktury, zakodowany w formacie Base64."
|
||
},
|
||
"invoiceFileName": {
|
||
"maxLength": 128,
|
||
"type": "string",
|
||
"description": "Nazwa pliku faktury (zwracana dla faktur wysyłanych wsadowo).",
|
||
"nullable": true
|
||
},
|
||
"acquisitionDate": {
|
||
"type": "string",
|
||
"description": "Data nadania numeru KSeF.",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"invoicingDate": {
|
||
"type": "string",
|
||
"description": "Data przyjęcia faktury w systemie KSeF (do dalszego przetwarzania).",
|
||
"format": "date-time"
|
||
},
|
||
"permanentStorageDate": {
|
||
"type": "string",
|
||
"description": "Data trwałego zapisu faktury w repozytorium KSeF. Wartość uzupełniana asynchronicznie w momencie trwałego zapisu; zawsze późniejsza niż <b>acquisitionDate</b>. Podczas sprawdzania statusu może być jeszcze niedostępna.",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"upoDownloadUrl": {
|
||
"type": "string",
|
||
"description": "Adres do pobrania UPO. Link generowany jest przy każdym odpytaniu o status. \nDostęp odbywa się metodą `HTTP GET` i <b>nie należy</b> wysyłać tokenu dostępowego. \nLink nie podlega limitom API i wygasa po określonym czasie w `UpoDownloadUrlExpirationDate`.",
|
||
"format": "uri",
|
||
"nullable": true
|
||
},
|
||
"upoDownloadUrlExpirationDate": {
|
||
"type": "string",
|
||
"description": "Data i godzina wygaśnięcia adresu. Po tej dacie link `UpoDownloadUrl` nie będzie już aktywny.",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"invoicingMode": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/InvoicingMode"
|
||
}
|
||
],
|
||
"description": "Tryb fakturowania (online/offline).",
|
||
"nullable": true
|
||
},
|
||
"status": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/StatusInfo"
|
||
}
|
||
],
|
||
"description": "Status faktury.\n\n| Code | Description | Details |\n| --- | --- | --- |\n| 100 | Faktura przyjęta do dalszego przetwarzania | - |\n| 150 | Trwa przetwarzanie | - |\n| 200 | Sukces | - |\n| 405 | Przetwarzanie anulowane z powodu błędu sesji | - |\n| 410 | Nieprawidłowy zakres uprawnień | - |\n| 415 | Brak możliwości wysyłania faktury z załącznikiem | - |\n| 430 | Błąd weryfikacji pliku faktury | - |\n| 435 | Błąd odszyfrowania pliku | - |\n| 440 | Duplikat faktury | - |\n| 450 | Błąd weryfikacji semantyki dokumentu faktury | - |\n| 500 | Nieznany błąd ({statusCode}) | - |\n| 550 | Operacja została anulowana przez system | Przetwarzanie zostało przerwane z przyczyn wewnętrznych systemu. Spróbuj ponownie |"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"SessionInvoicesResponse": {
|
||
"required": [
|
||
"invoices"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"continuationToken": {
|
||
"type": "string",
|
||
"description": "Token służący do pobrania kolejnej strony wyników. Jeśli jest pusty, to nie ma kolejnych stron.",
|
||
"nullable": true
|
||
},
|
||
"invoices": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/SessionInvoiceStatusResponse"
|
||
},
|
||
"description": "Lista pobranych faktur."
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"SessionStatusResponse": {
|
||
"required": [
|
||
"status"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"status": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/StatusInfo"
|
||
}
|
||
],
|
||
"description": "Informacje o aktualnym statusie.\n \nSesja wsadowa:\n| Code | Description | Details |\n| --- | --- | --- |\n| 100 | Sesja wsadowa rozpoczęta | - |\n| 150 | Trwa przetwarzanie | - |\n| 200 | Sesja wsadowa przetworzona pomyślnie | - |\n| 405 | Błąd weryfikacji poprawności dostarczonych elementów paczki | - |\n| 415 | Błąd odszyfrowania dostarczonego klucza | - |\n| 420 | Przekroczony limit faktur w sesji | - |\n| 430 | Błąd dekompresji pierwotnego archiwum | - |\n| 435 | Błąd odszyfrowania zaszyfrowanych części archiwum | - |\n| 440 | Sesja anulowana | Przekroczono czas wysyłki |\n| 440 | Sesja anulowana | Nie przesłano faktur |\n| 445 | Błąd weryfikacji, brak poprawnych faktur | - |\n| 500 | Nieznany błąd ({statusCode}) | - |\n\nSesja interaktywna:\n| Code | Description | Details |\n| --- | --- | --- |\n| 100 | Sesja interaktywna otwarta | - |\n| 170 | Sesja interaktywna zamknięta | - |\n| 200 | Sesja interaktywna przetworzona pomyślnie | - |\n| 415 | Błąd odszyfrowania dostarczonego klucza | - |\n| 440 | Sesja anulowana | Nie przesłano faktur |\n| 445 | Błąd weryfikacji, brak poprawnych faktur | - |\n| * | description missing | - |"
|
||
},
|
||
"validUntil": {
|
||
"type": "string",
|
||
"description": "Termin ważności sesji. Po jego upływie sesja zostanie automatycznie zamknięta.",
|
||
"format": "date-time",
|
||
"nullable": true,
|
||
"readOnly": true
|
||
},
|
||
"upo": {
|
||
"required": [
|
||
"pages"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/UpoResponse"
|
||
}
|
||
],
|
||
"description": "Informacja o UPO sesyjnym, zwracana gdy sesja została zamknięta i UPO zostało wygenerowane.",
|
||
"nullable": true
|
||
},
|
||
"invoiceCount": {
|
||
"minimum": 0,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"description": "Liczba przyjętych faktur w ramach sesji.",
|
||
"format": "int32",
|
||
"nullable": true
|
||
},
|
||
"successfulInvoiceCount": {
|
||
"minimum": 0,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"description": "Liczba faktur przeprocesowanych w ramach sesji z sukcesem .",
|
||
"format": "int32",
|
||
"nullable": true
|
||
},
|
||
"failedInvoiceCount": {
|
||
"minimum": 0,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"description": "Liczba faktur przeprocesowanych w ramach sesji z błędem.",
|
||
"format": "int32",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"SessionType": {
|
||
"enum": [
|
||
"Online",
|
||
"Batch"
|
||
],
|
||
"type": "string",
|
||
"description": "| Wartość | Opis |\n| --- | --- |\n| Online | Wysyłka interaktywna (pojedyncze faktury). |\n| Batch | Wysyłka wsadowa (paczka faktur). |\n"
|
||
},
|
||
"SessionsQueryResponse": {
|
||
"required": [
|
||
"sessions"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"continuationToken": {
|
||
"type": "string",
|
||
"description": "Token służący do pobrania kolejnej strony wyników. Jeśli jest pusty, to nie ma kolejnych stron.",
|
||
"nullable": true
|
||
},
|
||
"sessions": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/SessionsQueryResponseItem"
|
||
},
|
||
"description": "Lista sesji."
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"SessionsQueryResponseItem": {
|
||
"required": [
|
||
"dateCreated",
|
||
"dateUpdated",
|
||
"failedInvoiceCount",
|
||
"referenceNumber",
|
||
"status",
|
||
"successfulInvoiceCount",
|
||
"totalInvoiceCount"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"referenceNumber": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/ReferenceNumber"
|
||
}
|
||
],
|
||
"description": "Numer referencyjny sesji."
|
||
},
|
||
"status": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/StatusInfo"
|
||
}
|
||
],
|
||
"description": "Status sesji."
|
||
},
|
||
"dateCreated": {
|
||
"type": "string",
|
||
"description": "Data utworzenia sesji.",
|
||
"format": "date-time"
|
||
},
|
||
"dateUpdated": {
|
||
"type": "string",
|
||
"description": "Data ostatniej aktywności w ramach sesji.",
|
||
"format": "date-time"
|
||
},
|
||
"validUntil": {
|
||
"type": "string",
|
||
"description": "Termin ważności sesji. Po jego upływie sesja interaktywna zostanie automatycznie zamknięta.",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"totalInvoiceCount": {
|
||
"minimum": 0,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"description": "Łączna liczba faktur (uwzględnia również te w trakcie przetwarzania).",
|
||
"format": "int32"
|
||
},
|
||
"successfulInvoiceCount": {
|
||
"minimum": 0,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"description": "Liczba poprawnie przetworzonych faktur.",
|
||
"format": "int32"
|
||
},
|
||
"failedInvoiceCount": {
|
||
"minimum": 0,
|
||
"exclusiveMinimum": false,
|
||
"type": "integer",
|
||
"description": "Liczba błędnie przetworzonych faktur.",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"SetRateLimitsRequest": {
|
||
"required": [
|
||
"rateLimits"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"rateLimits": {
|
||
"required": [
|
||
"onlineSession",
|
||
"batchSession",
|
||
"invoiceSend",
|
||
"invoiceStatus",
|
||
"sessionList",
|
||
"sessionInvoiceList",
|
||
"sessionMisc",
|
||
"invoiceMetadata",
|
||
"invoiceExport",
|
||
"invoiceDownload",
|
||
"other"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/ApiRateLimitsOverride"
|
||
}
|
||
],
|
||
"description": "Limity dla ilości żądań do API."
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"SetSessionLimitsRequest": {
|
||
"required": [
|
||
"batchSession",
|
||
"onlineSession"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"onlineSession": {
|
||
"required": [
|
||
"maxInvoiceSizeInMB",
|
||
"maxInvoiceWithAttachmentSizeInMB",
|
||
"maxInvoices"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/OnlineSessionContextLimitsOverride"
|
||
}
|
||
],
|
||
"description": "Limity dla sesji interaktywnych."
|
||
},
|
||
"batchSession": {
|
||
"required": [
|
||
"maxInvoiceSizeInMB",
|
||
"maxInvoiceWithAttachmentSizeInMB",
|
||
"maxInvoices"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/BatchSessionContextLimitsOverride"
|
||
}
|
||
],
|
||
"description": "Limity dla sesji wsadowych."
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"SetSubjectLimitsRequest": {
|
||
"type": "object",
|
||
"properties": {
|
||
"subjectIdentifierType": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/SubjectIdentifierType"
|
||
}
|
||
]
|
||
},
|
||
"enrollment": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EnrollmentSubjectLimitsOverride"
|
||
}
|
||
],
|
||
"nullable": true
|
||
},
|
||
"certificate": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/CertificateSubjectLimitsOverride"
|
||
}
|
||
],
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"Sha256HashBase64": {
|
||
"maxLength": 44,
|
||
"minLength": 44,
|
||
"type": "string",
|
||
"description": "SHA-256 w Base64.",
|
||
"format": "byte"
|
||
},
|
||
"SortOrder": {
|
||
"enum": [
|
||
"Asc",
|
||
"Desc"
|
||
],
|
||
"type": "string",
|
||
"description": "| Wartość | Opis |\n| --- | --- |\n| Asc | Sortowanie rosnąco. |\n| Desc | Sortowanie malejąco. |\n"
|
||
},
|
||
"StatusInfo": {
|
||
"required": [
|
||
"code",
|
||
"description"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "Kod statusu",
|
||
"format": "int32"
|
||
},
|
||
"description": {
|
||
"minLength": 1,
|
||
"type": "string",
|
||
"description": "Opis statusu"
|
||
},
|
||
"details": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
},
|
||
"description": "Dodatkowe szczegóły statusu",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"SubjectCreateRequest": {
|
||
"required": [
|
||
"description",
|
||
"subjectNip",
|
||
"subjectType"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"subjectNip": {
|
||
"$ref": "#/components/schemas/Nip"
|
||
},
|
||
"subjectType": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/SubjectType"
|
||
}
|
||
]
|
||
},
|
||
"subunits": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/Subunit"
|
||
},
|
||
"nullable": true
|
||
},
|
||
"description": {
|
||
"maxLength": 256,
|
||
"minLength": 5,
|
||
"type": "string"
|
||
},
|
||
"createdDate": {
|
||
"type": "string",
|
||
"description": "W przypadku wielokrotnego tworzenia danych testowych z tym samym identyfikatorem nie można podawać daty wcześniejszej ani takiej samej jak poprzednia.",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"SubjectIdentifierType": {
|
||
"enum": [
|
||
"Nip",
|
||
"Pesel",
|
||
"Fingerprint",
|
||
"Token"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"SubjectRemoveRequest": {
|
||
"required": [
|
||
"subjectNip"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"subjectNip": {
|
||
"$ref": "#/components/schemas/Nip"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"SubjectType": {
|
||
"enum": [
|
||
"EnforcementAuthority",
|
||
"VatGroup",
|
||
"JST"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"SubordinateEntityRole": {
|
||
"required": [
|
||
"description",
|
||
"role",
|
||
"startDate",
|
||
"subordinateEntityIdentifier"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"subordinateEntityIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/SubordinateRoleSubordinateEntityIdentifier"
|
||
}
|
||
],
|
||
"description": "Identyfikator podmiotu podrzędnego.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |"
|
||
},
|
||
"role": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/SubordinateEntityRoleType"
|
||
}
|
||
],
|
||
"description": "Typ roli - powiązania z podmiotem nadrzędnym."
|
||
},
|
||
"description": {
|
||
"maxLength": 256,
|
||
"minLength": 5,
|
||
"type": "string",
|
||
"description": "Opis powiązania."
|
||
},
|
||
"startDate": {
|
||
"type": "string",
|
||
"description": "Data rozpoczęcia obowiązywania powiązania.",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"SubordinateEntityRoleType": {
|
||
"enum": [
|
||
"LocalGovernmentSubUnit",
|
||
"VatGroupSubUnit"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"SubordinateEntityRolesQueryRequest": {
|
||
"type": "object",
|
||
"properties": {
|
||
"subordinateEntityIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/EntityPermissionsSubordinateEntityIdentifier"
|
||
}
|
||
],
|
||
"description": "Identyfikator podmiotu podrzędnego.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"SubordinateRoleSubordinateEntityIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"type": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/SubordinateRoleSubordinateEntityIdentifierType"
|
||
}
|
||
],
|
||
"description": "Typ identyfikatora."
|
||
},
|
||
"value": {
|
||
"type": "string",
|
||
"description": "Wartość identyfikatora."
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "Identyfikator podmiotu podrzędnego.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |"
|
||
},
|
||
"SubordinateRoleSubordinateEntityIdentifierType": {
|
||
"enum": [
|
||
"Nip"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"Subunit": {
|
||
"required": [
|
||
"description",
|
||
"subjectNip"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"subjectNip": {
|
||
"$ref": "#/components/schemas/Nip"
|
||
},
|
||
"description": {
|
||
"maxLength": 256,
|
||
"minLength": 5,
|
||
"type": "string"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"SubunitPermission": {
|
||
"required": [
|
||
"authorIdentifier",
|
||
"authorizedIdentifier",
|
||
"description",
|
||
"id",
|
||
"permissionScope",
|
||
"startDate",
|
||
"subunitIdentifier"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/PermissionId"
|
||
}
|
||
],
|
||
"description": "Identyfikator uprawnienia."
|
||
},
|
||
"authorizedIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/SubunitPermissionsAuthorizedIdentifier"
|
||
}
|
||
],
|
||
"description": "Identyfikator uprawnionego.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |\n| Pesel | 11 cyfrowy numer PESEL |\n| Fingerprint | Odcisk palca certyfikatu |"
|
||
},
|
||
"subunitIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/SubunitPermissionsSubunitIdentifier"
|
||
}
|
||
],
|
||
"description": "Identyfikator jednostki lub podmiotu podrzędnego.\n| Type | Value |\n| --- | --- |\n| InternalId | Dwuczłonowy identyfikator składający się z numeru NIP i 5 cyfr: `{nip}-{5_cyfr}` |\n| Nip | 10 cyfrowy numer NIP |"
|
||
},
|
||
"authorIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/SubunitPermissionsAuthorIdentifier"
|
||
}
|
||
],
|
||
"description": "Identyfikator uprawniającego.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |\n| Pesel | 11 cyfrowy numer PESEL |\n| Fingerprint | Odcisk palca certyfikatu |"
|
||
},
|
||
"permissionScope": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/SubunitPermissionScope"
|
||
}
|
||
],
|
||
"description": "Rodzaj uprawnienia."
|
||
},
|
||
"description": {
|
||
"maxLength": 256,
|
||
"minLength": 5,
|
||
"type": "string",
|
||
"description": "Opis uprawnienia."
|
||
},
|
||
"subunitName": {
|
||
"maxLength": 256,
|
||
"minLength": 5,
|
||
"type": "string",
|
||
"description": "Nazwa jednostki podrzędnej.",
|
||
"nullable": true
|
||
},
|
||
"startDate": {
|
||
"type": "string",
|
||
"description": "Data rozpoczęcia obowiązywania uprawnienia.",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"SubunitPermissionScope": {
|
||
"enum": [
|
||
"CredentialsManage"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"SubunitPermissionsAuthorIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"type": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/SubunitPermissionsAuthorIdentifierType"
|
||
}
|
||
],
|
||
"description": "Typ identyfikatora."
|
||
},
|
||
"value": {
|
||
"type": "string",
|
||
"description": "Wartość identyfikatora."
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "Identyfikator uprawniającego.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |\n| Pesel | 11 cyfrowy numer PESEL |\n| Fingerprint | Odcisk palca certyfikatu |"
|
||
},
|
||
"SubunitPermissionsAuthorIdentifierType": {
|
||
"enum": [
|
||
"Nip",
|
||
"Pesel",
|
||
"Fingerprint"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"SubunitPermissionsAuthorizedIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"type": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/SubunitPermissionsSubjectIdentifierType"
|
||
}
|
||
],
|
||
"description": "Typ identyfikatora."
|
||
},
|
||
"value": {
|
||
"type": "string",
|
||
"description": "Wartość identyfikatora."
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "Identyfikator uprawnionego.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |\n| Pesel | 11 cyfrowy numer PESEL |\n| Fingerprint | Odcisk palca certyfikatu |"
|
||
},
|
||
"SubunitPermissionsContextIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"type": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/SubunitPermissionsContextIdentifierType"
|
||
}
|
||
],
|
||
"description": "Typ identyfikatora."
|
||
},
|
||
"value": {
|
||
"type": "string",
|
||
"description": "Wartość identyfikatora."
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "Identyfikator podmiotu podrzędnego.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |\n| InternalId | Dwuczłonowy identyfikator składający się z numeru NIP i 5 cyfr: `{nip}-{5_cyfr}` |"
|
||
},
|
||
"SubunitPermissionsContextIdentifierType": {
|
||
"enum": [
|
||
"InternalId",
|
||
"Nip"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"SubunitPermissionsGrantRequest": {
|
||
"required": [
|
||
"contextIdentifier",
|
||
"description",
|
||
"subjectIdentifier"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"subjectIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/SubunitPermissionsSubjectIdentifier"
|
||
}
|
||
],
|
||
"description": "Identyfikator podmiotu lub osoby fizycznej.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |\n| Pesel | 11 cyfrowy numer PESEL |\n| Fingerprint | Odcisk palca certyfikatu |"
|
||
},
|
||
"contextIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/SubunitPermissionsContextIdentifier"
|
||
}
|
||
],
|
||
"description": "Identyfikator podmiotu podrzędnego.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |\n| InternalId | Dwuczłonowy identyfikator składający się z numeru NIP i 5 cyfr: `{nip}-{5_cyfr}` |"
|
||
},
|
||
"description": {
|
||
"maxLength": 256,
|
||
"minLength": 5,
|
||
"type": "string",
|
||
"description": "Opis uprawnienia"
|
||
},
|
||
"subunitName": {
|
||
"maxLength": 256,
|
||
"minLength": 5,
|
||
"type": "string",
|
||
"description": "Nazwa jednostki podrzędnej. W przypadku jednostki podrzędnej z identyfikatorem wewnętrznym pole jest wymagane.",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"SubunitPermissionsQueryRequest": {
|
||
"type": "object",
|
||
"properties": {
|
||
"subunitIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/SubunitPermissionsSubunitIdentifier"
|
||
}
|
||
],
|
||
"description": "Identyfikator jednostki lub podmiotu podrzędnego.\n| Type | Value |\n| --- | --- |\n| InternalId | Dwuczłonowy identyfikator składający się z numeru NIP i 5 cyfr: `{nip}-{5_cyfr}` |\n| Nip | 10 cyfrowy numer NIP |",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"SubunitPermissionsSubjectIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"type": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/SubunitPermissionsSubjectIdentifierType"
|
||
}
|
||
],
|
||
"description": "Typ identyfikatora."
|
||
},
|
||
"value": {
|
||
"type": "string",
|
||
"description": "Wartość identyfikatora."
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "Identyfikator podmiotu lub osoby fizycznej.\n| Type | Value |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |\n| Pesel | 11 cyfrowy numer PESEL |\n| Fingerprint | Odcisk palca certyfikatu |"
|
||
},
|
||
"SubunitPermissionsSubjectIdentifierType": {
|
||
"enum": [
|
||
"Nip",
|
||
"Pesel",
|
||
"Fingerprint"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"SubunitPermissionsSubunitIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"type": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/SubunitPermissionsSubunitIdentifierType"
|
||
}
|
||
],
|
||
"description": "Typ identyfikatora."
|
||
},
|
||
"value": {
|
||
"type": "string",
|
||
"description": "Wartość identyfikatora."
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "Identyfikator jednostki lub podmiotu podrzędnego.\n| Type | Value |\n| --- | --- |\n| InternalId | Dwuczłonowy identyfikator składający się z numeru NIP i 5 cyfr: `{nip}-{5_cyfr}` |\n| Nip | 10 cyfrowy numer NIP |"
|
||
},
|
||
"SubunitPermissionsSubunitIdentifierType": {
|
||
"enum": [
|
||
"InternalId",
|
||
"Nip"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"TestDataAuthorizedIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"type": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/TestDataAuthorizedIdentifierType"
|
||
}
|
||
]
|
||
},
|
||
"value": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"TestDataAuthorizedIdentifierType": {
|
||
"enum": [
|
||
"Nip",
|
||
"Pesel",
|
||
"Fingerprint"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"TestDataContextIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"type": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/TestDataContextIdentifierType"
|
||
}
|
||
]
|
||
},
|
||
"value": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"TestDataContextIdentifierType": {
|
||
"enum": [
|
||
"Nip"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"TestDataPermission": {
|
||
"required": [
|
||
"description",
|
||
"permissionType"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"description": {
|
||
"maxLength": 256,
|
||
"minLength": 5,
|
||
"type": "string"
|
||
},
|
||
"permissionType": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/TestDataPermissionType"
|
||
}
|
||
]
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"TestDataPermissionType": {
|
||
"enum": [
|
||
"InvoiceRead",
|
||
"InvoiceWrite",
|
||
"Introspection",
|
||
"CredentialsRead",
|
||
"CredentialsManage",
|
||
"EnforcementOperations",
|
||
"SubunitManage"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"TestDataPermissionsGrantRequest": {
|
||
"required": [
|
||
"authorizedIdentifier",
|
||
"contextIdentifier",
|
||
"permissions"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"contextIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/TestDataContextIdentifier"
|
||
}
|
||
]
|
||
},
|
||
"authorizedIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/TestDataAuthorizedIdentifier"
|
||
}
|
||
]
|
||
},
|
||
"permissions": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/TestDataPermission"
|
||
}
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"TestDataPermissionsRevokeRequest": {
|
||
"required": [
|
||
"authorizedIdentifier",
|
||
"contextIdentifier"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"contextIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/TestDataContextIdentifier"
|
||
}
|
||
]
|
||
},
|
||
"authorizedIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/TestDataAuthorizedIdentifier"
|
||
}
|
||
]
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"ThirdSubjectIdentifierType": {
|
||
"enum": [
|
||
"Nip",
|
||
"InternalId",
|
||
"VatUe",
|
||
"Other",
|
||
"None"
|
||
],
|
||
"type": "string",
|
||
"description": "| Wartość | Opis |\n| --- | --- |\n| Nip | 10 cyfrowy numer NIP |\n| InternalId | Identyfikator wewnętrzny, składający się z numeru NIP i 5 cyfr. |\n| VatUe | Identyfikator VAT UE podmiotu unijnego |\n| Other | Inny identyfikator |\n| None | Brak identyfikatora podmiotu trzeciego |\n"
|
||
},
|
||
"TokenAuthorIdentifierType": {
|
||
"enum": [
|
||
"Nip",
|
||
"Pesel",
|
||
"Fingerprint"
|
||
],
|
||
"type": "string",
|
||
"description": "| Wartość | Opis |\n| --- | --- |\n| Nip | NIP. |\n| Pesel | PESEL. |\n| Fingerprint | Odcisk palca certyfikatu. |\n"
|
||
},
|
||
"TokenAuthorIdentifierTypeIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"type": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/TokenAuthorIdentifierType"
|
||
}
|
||
],
|
||
"description": "Typ identyfikatora.\n| Wartość | Opis |\n| --- | --- |\n| Nip | NIP. |\n| Pesel | PESEL. |\n| Fingerprint | Odcisk palca certyfikatu. |\n"
|
||
},
|
||
"value": {
|
||
"type": "string",
|
||
"description": "Wartość identyfikatora."
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"TokenContextIdentifierType": {
|
||
"enum": [
|
||
"Nip",
|
||
"InternalId",
|
||
"NipVatUe",
|
||
"PeppolId"
|
||
],
|
||
"type": "string",
|
||
"description": "| Wartość | Opis |\n| --- | --- |\n| Nip | NIP. |\n| InternalId | Identyfikator wewnętrzny. |\n| NipVatUe | Dwuczłonowy identyfikator składający się z numeru NIP i numeru VAT-UE: `{nip}-{vat_ue}`. |\n| PeppolId | Identyfikator dostawcy usług Peppol. |\n"
|
||
},
|
||
"TokenContextIdentifierTypeIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"type": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/TokenContextIdentifierType"
|
||
}
|
||
],
|
||
"description": "Typ identyfikatora.\n| Wartość | Opis |\n| --- | --- |\n| Nip | NIP. |\n| InternalId | Identyfikator wewnętrzny. |\n| NipVatUe | Dwuczłonowy identyfikator składający się z numeru NIP i numeru VAT-UE: `{nip}-{vat_ue}`. |\n| PeppolId | Identyfikator dostawcy usług Peppol. |\n"
|
||
},
|
||
"value": {
|
||
"type": "string",
|
||
"description": "Wartość identyfikatora."
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"TokenInfo": {
|
||
"required": [
|
||
"token",
|
||
"validUntil"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"token": {
|
||
"type": "string",
|
||
"description": "Token w formacie JWT."
|
||
},
|
||
"validUntil": {
|
||
"type": "string",
|
||
"description": "Data ważności tokena.",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"TokenPermissionType": {
|
||
"enum": [
|
||
"InvoiceRead",
|
||
"InvoiceWrite",
|
||
"CredentialsRead",
|
||
"CredentialsManage",
|
||
"SubunitManage",
|
||
"EnforcementOperations"
|
||
],
|
||
"type": "string"
|
||
},
|
||
"TokenStatusResponse": {
|
||
"required": [
|
||
"authorIdentifier",
|
||
"contextIdentifier",
|
||
"dateCreated",
|
||
"description",
|
||
"referenceNumber",
|
||
"requestedPermissions",
|
||
"status"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"referenceNumber": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/ReferenceNumber"
|
||
}
|
||
],
|
||
"description": "Numer referencyjny tokena KSeF."
|
||
},
|
||
"authorIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/TokenAuthorIdentifierTypeIdentifier"
|
||
}
|
||
],
|
||
"description": "Identyfikator osoby która wygenerowała token."
|
||
},
|
||
"contextIdentifier": {
|
||
"required": [
|
||
"type",
|
||
"value"
|
||
],
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/TokenContextIdentifierTypeIdentifier"
|
||
}
|
||
],
|
||
"description": "Identyfikator kontekstu, w którym został wygenerowany token i do którego daje dostęp."
|
||
},
|
||
"description": {
|
||
"maxLength": 256,
|
||
"minLength": 5,
|
||
"type": "string",
|
||
"description": "Opis tokena."
|
||
},
|
||
"requestedPermissions": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/TokenPermissionType"
|
||
},
|
||
"description": "Uprawnienia przypisane tokenowi."
|
||
},
|
||
"dateCreated": {
|
||
"type": "string",
|
||
"description": "Data i czas utworzenia tokena.",
|
||
"format": "date-time"
|
||
},
|
||
"lastUseDate": {
|
||
"type": "string",
|
||
"description": "Data ostatniego użycia tokena.",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"status": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/AuthenticationTokenStatus"
|
||
}
|
||
],
|
||
"description": "Status tokena.\n| Wartość | Opis |\n| --- | --- |\n| Pending | Token został utworzony ale jest jeszcze w trakcie aktywacji i nadawania uprawnień. Nie może być jeszcze wykorzystywany do uwierzytelniania. |\n| Active | Token jest aktywny i może być wykorzystywany do uwierzytelniania. |\n| Revoking | Token jest w trakcie unieważniania. Nie może już być wykorzystywany do uwierzytelniania. |\n| Revoked | Token został unieważniony i nie może być wykorzystywany do uwierzytelniania. |\n| Failed | Nie udało się aktywować tokena. Należy wygenerować nowy token, obecny nie może być wykorzystywany do uwierzytelniania. |\n"
|
||
},
|
||
"statusDetails": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
},
|
||
"description": "Dodatkowe informacje na temat statusu, zwracane w przypadku błędów.",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"UpoPageResponse": {
|
||
"required": [
|
||
"downloadUrl",
|
||
"downloadUrlExpirationDate",
|
||
"referenceNumber"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"referenceNumber": {
|
||
"allOf": [
|
||
{
|
||
"$ref": "#/components/schemas/ReferenceNumber"
|
||
}
|
||
],
|
||
"description": "Numer referencyjny strony UPO."
|
||
},
|
||
"downloadUrl": {
|
||
"type": "string",
|
||
"description": "Adres do pobrania strony UPO. Link generowany jest przy każdym odpytaniu o status. \nDostęp odbywa się metodą `HTTP GET` i <b>nie należy</b> wysyłać tokenu dostępowego. \nLink nie podlega limitom API i wygasa po określonym czasie w `DownloadUrlExpirationDate`.",
|
||
"format": "uri"
|
||
},
|
||
"downloadUrlExpirationDate": {
|
||
"type": "string",
|
||
"description": "Data i godzina wygaśnięcia adresu. Po tej dacie link `DownloadUrl` nie będzie już aktywny.",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"UpoResponse": {
|
||
"required": [
|
||
"pages"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"pages": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/UpoPageResponse"
|
||
},
|
||
"description": "Lista stron UPO."
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
}
|
||
},
|
||
"securitySchemes": {
|
||
"Bearer": {
|
||
"type": "http",
|
||
"description": "Token dostępu uzyskany w wyniku operacji uwierzytelnienia.",
|
||
"scheme": "Bearer",
|
||
"bearerFormat": "JWT"
|
||
},
|
||
"SessionToken": {
|
||
"type": "apiKey",
|
||
"name": "SessionToken",
|
||
"in": "header"
|
||
}
|
||
}
|
||
},
|
||
"tags": [
|
||
{
|
||
"name": "Uzyskiwanie dostępu",
|
||
"description": "Uwierzytelnianie w systemie KSeF API 2.0 jest obowiązkowym etapem, który należy wykonać przed dostępem do chronionych zasobów systemu. Proces ten oparty jest na **uzyskaniu tokenu dostępu** (```accessToken```) w formacie ```JWT```, który następnie wykorzystywany jest do autoryzacji operacji API.\n\n> Więcej informacji:\n> - [Uwierzytelnianie](https://github.com/CIRFMF/ksef-docs/blob/main/uwierzytelnianie.md)"
|
||
},
|
||
{
|
||
"name": "Aktywne sesje"
|
||
},
|
||
{
|
||
"name": "Limity i ograniczenia"
|
||
},
|
||
{
|
||
"name": "Certyfikaty klucza publicznego"
|
||
},
|
||
{
|
||
"name": "Wysyłka interaktywna"
|
||
},
|
||
{
|
||
"name": "Wysyłka wsadowa",
|
||
"description": ""
|
||
},
|
||
{
|
||
"name": "Status wysyłki i UPO"
|
||
},
|
||
{
|
||
"name": "Pobieranie faktur"
|
||
},
|
||
{
|
||
"name": "Nadawanie uprawnień"
|
||
},
|
||
{
|
||
"name": "Odbieranie uprawnień"
|
||
},
|
||
{
|
||
"name": "Wyszukiwanie nadanych uprawnień"
|
||
},
|
||
{
|
||
"name": "Operacje"
|
||
},
|
||
{
|
||
"name": "Certyfikaty",
|
||
"description": "Certyfikat KSeF to cyfrowe poświadczenie tożsamości podmiotu, wydawane przez system KSeF na wniosek uwierzytelnionego podmiotu. \nCertyfikat ten może być wykorzystywany do:\n\n- uwierzytelniania się w systemie KSeF,\n- realizacji operacji w trybie offline, w tym wystawiania faktur bezpośrednio w aplikacji użytkownika.\n\n**Uwaga**: Wnioskowanie o certyfikat KSeF jest możliwe wyłącznie po uwierzytelnieniu z wykorzystaniem podpisu (XAdES). Uwierzytelnienie przy użyciu tokenu systemowego KSeF nie pozwala na złożenie wniosku."
|
||
},
|
||
{
|
||
"name": "Tokeny KSeF",
|
||
"description": "Token KSeF to unikalny, generowany identyfikator uwierzytelniający, który — na równi z [kwalifikowanym podpisem elektronicznym](https://github.com/CIRFMF/ksef-docs/blob/main/uwierzytelnianie.md#21-uwierzytelnianie-kwalifikowanym-podpisem-elektronicznym) — umożliwia [uwierzytelnienie](https://github.com/CIRFMF/ksef-docs/blob/main/uwierzytelnianie.md#22-uwierzytelnianie-tokenem-ksef) się do API KSeF.\n\nToken KSeF jest wydawany z niezmiennym zestawem uprawnień określonych przy jego tworzeniu; każda modyfikacja tych uprawnień wymaga wygenerowania nowego tokena.\n> **Uwaga!** <br>\n> Token KSeF pełni rolę **poufnego sekretu** uwierzytelniającego — należy przechowywać go wyłącznie w zaufanym i bezpiecznym magazynie.\n\nWięcej informacji:\n- [Token KSeF](https://github.com/CIRFMF/ksef-docs/blob/main/tokeny-ksef.md)\n"
|
||
},
|
||
{
|
||
"name": "Usługi Peppol",
|
||
"description": ""
|
||
},
|
||
{
|
||
"name": "Dane testowe",
|
||
"description": "API służy do tworzenia i zarządzania danymi testowymi, takimi jak podmioty, osoby fizyczne oraz uprawnienia. Możliwe do utworzenia podmioty to: organ egzekucyjny, grupa VAT oraz jednostki samorządu terytorialnego. W przypadku osób fizycznych można określić, czy dana osoba jest komornikiem. Funkcjonalność nadawania i odbierania uprawnień ma na celu odwzorowanie działania formularza ZAW-FA w środowisku testowym.\n\nWięcej informacji:\n- [Scenariusze testowe](https://github.com/CIRFMF/ksef-docs/blob/main/dane-testowe-scenariusze.md)"
|
||
}
|
||
],
|
||
"x-tagGroups": [
|
||
{
|
||
"name": "Uwierzytelnianie",
|
||
"tags": [
|
||
"Uzyskiwanie dostępu",
|
||
"Aktywne sesje"
|
||
]
|
||
},
|
||
{
|
||
"name": "Limity i ograniczenia",
|
||
"tags": [
|
||
"Limity i ograniczenia"
|
||
]
|
||
},
|
||
{
|
||
"name": "Szyfrowanie danych",
|
||
"tags": [
|
||
"Certyfikaty klucza publicznego"
|
||
]
|
||
},
|
||
{
|
||
"name": "Faktury",
|
||
"tags": [
|
||
"Wysyłka interaktywna",
|
||
"Wysyłka wsadowa",
|
||
"Status wysyłki i UPO",
|
||
"Pobieranie faktur"
|
||
]
|
||
},
|
||
{
|
||
"name": "Uprawnienia",
|
||
"tags": [
|
||
"Nadawanie uprawnień",
|
||
"Odbieranie uprawnień",
|
||
"Wyszukiwanie nadanych uprawnień",
|
||
"Operacje"
|
||
]
|
||
},
|
||
{
|
||
"name": "Certyfikaty",
|
||
"tags": [
|
||
"Certyfikaty"
|
||
]
|
||
},
|
||
{
|
||
"name": "Tokeny KSeF",
|
||
"tags": [
|
||
"Tokeny KSeF"
|
||
]
|
||
},
|
||
{
|
||
"name": "Usługi Peppol",
|
||
"tags": [
|
||
"Usługi Peppol"
|
||
]
|
||
},
|
||
{
|
||
"name": "Dane testowe",
|
||
"tags": [
|
||
"Dane testowe"
|
||
]
|
||
}
|
||
]
|
||
}
|