Integracja z e-doręczenia

M8
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 2
0

Witam serdecznie,
mam dwa pytania dotyczące integracji z usługą eDoręczeń.
Łączę się ze środowiskiem INT.

  1. Czy udało się komuś uzyskać odwpowiedź z Discovery API? Strzelam na poniższe endpointy i na każdym z nich w odpowiedzi otrzymuję status 404.

    Kopiuj
    POST /v2/discovery/authorizedAddresses
    POST /v2/discovery
    POST /v2/discoverySmp
    
  2. Czy istnieje możliwość odświeżenia Access Tokena dostępowego, po upływie jego ważności? W odpowiedzi otrzymuję:

    Kopiuj
    {
       access_token: "eyJhbGciOiJSUzI1NiIsInR5cCI......"
       expires_in: 300
       refresh_expires_in: 0
       token_type: "Bearer"
       not-before-policy: 1641287298
       scope: "system-attributes"
    }
    

    Zgodnie ze standardem OIDC, jak rozumiem powinienem otrzymać również refresh_token, jednak nie otrzymuję takiego parametru.

Z góry dzięki za odpowiedź.

OK
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 26
0

Od końca - nie ma refresh tokenów - tak masz rację powinny być - ale PP ma swoje własne standardy.
Nie widziałem takich endpointów - podaj dokumentację w której to znalazłeś. Albo co one zwracają

ja znam tylko takie
GET /{eDeliveryAddress}/messages
POST /{eDeliveryAddress}/messages
GET /{eDeliveryAddress}/messages/{messageId}
DELETE /{eDeliveryAddress}/messages/{messageId}
GET /{eDeliveryAddress}/messages/tasks/{messageTaskId}
GET /{eDeliveryAddress}/messages/tasks/{messageTaskId}/status
GET /{eDeliveryAddress}/drafts
POST /{eDeliveryAddress}/drafts
GET /{eDeliveryAddress}/drafts/{messageId}
PUT /{eDeliveryAddress}/drafts/{messageId}
DELETE /{eDeliveryAddress}/drafts/{messageId}
POST /{eDeliveryAddress}/drafts/send
POST /{eDeliveryAddress}/drafts/{messageId}/attachments
DELETE /{eDeliveryAddress}/drafts/{messageId}/attachments
GET /{eDeliveryAddress}/messages/{messageId}/attachments/{attachmentId}
GET /{eDeliveryAddress}/drafts/{messageId}/attachments/{attachmentId}
DELETE /{eDeliveryAddress}/drafts/{messageId}/attachments/{attachmentId}
GET /{eDeliveryAddress}/threads
GET /{eDeliveryAddress}/threads/{threadId}
GET /{eDeliveryAddress}/messages/{messageId}/evidences
GET /{eDeliveryAddress}/evidences/{messageType}/{evidenceId}
GET /{eDeliveryAddress}/evidences/puhepo/{messageId}
GET /{eDeliveryAddress}/evidences/{messageId}/technical-evidences-file
GET /{eDeliveryAddress}/messages/evidences
GET /{eDeliveryAddress}/messages/evidences/{evidenceId}
GET /{eDeliveryAddress}/settings

Sławek Heciak
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 1
0

Czy na środowisku testowym e-Doręczenia na moim koncie sa jakieś przykładowe wiadomości od instytucji publicznych, które można pobrać tak, żeby przetestować odbieranie wiadomości przez API?

U1
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 1
0

Ktoś testował zarówno User Agent API v2 i v3?
Widzę pewne problemy. W dokumentacji chyba nic na ten temat nie ma.

  1. v2
    GET /{eDeliveryAddress}/messages?format=metadata
    Czy zauważyliście, że trzeba powyższe wywołać 2 razy, żeby zwróciło nowe wiadomości? Drugie wywołanie zwraca tylko te wiadomości, które były na skrzynce podczas pierwszego wywołania (a te które doszły w międzyczasie oznacza jako odebrane? 🤔 ). Jak to rozwiązaliście? Wygląda, że v3 działa prawidłowo w tym przypadku.

  2. v3 pobieranie wiadomości po id.
    Endpoint:
    GET/{eDeliveryAddress}/messages/{messageId}
    format=
    - full (bez pliku)
    - fullExtended (z plikiem)
    .
    Przy pobieraniu wiadomości z dużym załącznikiem zwraca (jakby losowo) albo wiadomość albo 202. Jak do tego podeszliście? Macie jakieś informacje czemu zwraca 202? To z kolei na V2 działa "bezproblemowo".

TO
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 24
0

Przepraszam za głupie pytanie: co trzeba zrobić, żeby któryś z adresów *.edoreczenia.gov.pl działał?
Choćby nawet takie "nietechniczne" jak np
https://int.edoreczenia.gov.pl/aktualnosci
https://int.edoreczenia.gov.pl/dokumentacja

Jeśli dobrze rozumiem, to muszę poczekać aż szefostwo wyśle zgłoszenie i odblokują dostęp z mojego IP?

JM
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 3
0

Mam pytanie, próbuje uruchomić sie na prodzie, i tak jak wcześniejszych tematach mamy do wyboru autentykacje po SSL lub po podpisie kwalifikowanym (pieczęcią), o ile w pierwszym przypadku mam klucz prywatny o tyle przy pieczeci nie wyciągne klucza prywatnego, jak wiec zatem stworzyc autentykacje zeby otrzymac token dostępowy z systemu ? czy ktoś już próbował odpalić rozwiązanie na PROD edoręczeń ?

JM
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 3
0

Czy za każdym razem jeżeli coś chce wysłać/ odebrać itd. musze tworzyć nowy token JWT i przekazywać cały czas ten klucz prywatny? Nie mogę go wygenerować raz i używać non stop do autentykacji?

OK
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 26
0

Niestety PP - nie wpadła na pomysł refresh token - co raczej jest typowe w standardzie tokeów - po pierwszej autentykacji token ma czas życia - przez chyba 5 minut możesz go używać ile chcesz - potem musisz ponownie sie zalogować

OK
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 26
0

Jeśli pobieracie nowe wiadomości w trybie metadata - czy przychodzą wam z statusem "messageType": "Stub" - niby to jest tylko dla draftów - ale mi w normalnych wiadomościach zaczeło to przychodzić

OK
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 26
0

Ale to wprowadza sporo zmian w systemie - zamiast pobrać fullextended i mieć pełną wiadomość załączniki i dowody - teraz trzeba to oddzielnie pobierać - ehhh ta poczta

RO
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 1
0

Mam pytanie, jak wysyłacie hybrydę z adresem zagranicznym? Czy tam coś trzeba zrobić inaczej niż w krajowych? Pole country jest obowiązkowe, ale klient nie ma w swojej bazie wypełnionego kraju, jeśli adres jest polski, więc dla krajowych podawałem "POLSKA" i wszystko poszło ładnie. Ale klient ma też adresy zagraniczne i przy tych ma wypełnione pole kraj, ale podawanie tego jako country nie zadziałało. Nie widziałem jeszcze logów błędów, ale chciałbym się przygotować zawczasu, więc proszę o wskazówkę.

RE
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 1
0

Cześć, odpaliłem integrację z eDoręczeniami na PRODzie i mam dwa pytania:

  1. Czy też wykonujecie zapytania do BAE przez SEAPI v2 podając kategorię, senderEda i np. tylko imię, nazwisko i pesel dla podmiotów fizycznych? Widzę już przypadki nieodnalezienia podmiotów, które technicznie istnieją, ale np. mają tylko regon wprowadzony. Czy o coś powinienem rozszerzyć wyszukiwanie bo nie ukrywam, że w przypadku jak ktoś na przykład zmieni nazwisko, a w systemie zostanie stare no to moja implementacja wyszukiwarki traci sens ponieważ nie można ufać wynikom.
  2. Jak rozwiązaliście problem wysyłki wiadomości bez draft'ów? Generalnie po zaPOSTowaniu w responsie nie ma MessageId przesyłki, ja to obszedłem poprzez nadanie własnego ThreadId, a następnie odpytuję UAAPI (edit: v3) o pierwszą przesyłkę w wątku i odzyskuję MessageId. Nie jestem pewien tego rozwiązania.
JM
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 3
0

A czy ktoś z was sprawdzał jak pobierać wiadomości np z epoleconego ? ADE jest to samo tylko jakby inny typ skrzynki ?

OK
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 26
0

Wysyłające edoręczenie za pomocą api v3 - w zwrotce dostajemy messageTaskId . Czy ktoś wie jak pozyskać normalne messageID (id edoręczenia) ?

OK
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 26
0

Wysyłam edoręczenie - po 1 sekundzie sprawdzam status wysłanej wiadomości - od razu dostaję opened => true, status => "Doręczona" Też tak macie ? - bo wygląda na to że wiadomość jest od razu dostarczona i odebrana ?

OK
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 26
0

Jak sobie poradziliście z pobieraniem dowodów dla przychodzących przychodzą w kratkę raz 1 raz 4, dla wychodzących zazwyczaj 6 od razu a 7 po odebraniu.

TO
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 24
0

Do czego służy w UserAgent pole "timestamp"? Niby można po nim sortować GET Messages, ale nie można po nim filtrować, więc jest bezużyteczne.
No chyba, że będziemy filtrować po stronie odbiorcy co jest mniej sensowne w kontekście ilości przesyłanych danych.
Czy pobieracie jakoś wiadomości przyrostowo bez usuwania ich z serwera eDoręczeń?

TO
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 24
0

KURDE! Jak to działa?
Załóżmy, że oprócz Poczty Polskiej jest 2 komercyjnych dostawców kwalifikowanej usługi RDE (DURDE): A i B.

  1. Czy jako firma mam tylko jeden adres ADE u wszystkich DURDE?
  2. Czy u każdego dostawcy jest osobna skrzynka odbiorcza, czy są one jakoś agregowane?
  3. Jeśli kontrahent ma umowę z DURDE A, a ja mam umowę z DURDE B, to możemy wymieniać wiadomości RDE?
  4. Teoretycznie mogę mieć kilka adresów ADE (jako firma, jako kancelaria, ???) do których będzie dostęp przez system EZD. Czy do każdego adresu ADE muszę tworzyć nowy klucz prywatny, nową nazwę systemu, nowy CSR?

Przepraszam, jeśli pytania są głupie :)

L2
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 11
0

Cześć,

czy mogę prosić o pomoc w wysyłce plików większych niż 15Mb. W dokumentacji jest niby opisane, że powinno to działać do 500Mb. Na testowych eDoreczeniach z GUI, też da się załączyć prawidłowo plik > 15Mb, a nie rozumiem dlaczego nie mogę tego zrobić z integracji. Dostaję ciąglę komunikat "Message size exceeds max size specified in parameter: SD_MAX_MESSAGE_SIZE 15,728,640". Czy ktoś z Was wie jak podejść do tematu ?

E5
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 9
0

Witam,
W jaki sposób poradziliście sobie z pobieraniem nowych e-doręczeń ze skrzynki do systemu integrowanego (chodzi o e-doręczenia otrzymane)? Parametr isOpened nie wydaje się odpowiednim ze względu na fakt, iż e-doręczenie może zostać otwarte inną aplikacją (np. przez aplikację rządową). Zatem dobrym podejściem wydaje się bazować na datach i sortowaniem po datach podczas pobierania zawartości skrzynki. Z dat mamy do wyboru: submissionDate, eventDate oraz receiptDate. ReceiptDate odpada dla pobierania nowych, ponieważ jest to data otrzymania. EventDate jest to bliżej nieokreślona data zdarzenia, nie znalazłem informacji jednoznacznej co dokładnie oznacza ta data (jeżeli ktoś ma taką informację, przydatnym będzie wiedzieć na co wskazuje). Zatem zostaje submissionDate, jednak z nią jest taki problem, że od jakiegoś czasu -wcześniej nie było tego problemu- nie występuje ona dla wszystkich E-doręczeń, ale nie znalazłem analogii dla których występuje, a dla których nie. Albo jest to chwilowy problem albo coś w API uległo zmianie. Macie inne podejścia, które się sprawdzają lub też zauważyliście problem z submissionDate?

KU
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 23
0

Cześć
Wiecie może jak ograć wysyłke masową? chodzi mi o wysyłanie masowych wiadomosci przez api

L2
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 11
0

Czy ktoś może podrzucić przykład wykorzystania attachments/upload ? Dostaję ciągle 500 z eDoreczeń, bez dokładnego komunikatu

KU
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 23
0

Cześć Grupa, spotkał sie ktoś może z takim przypadkiem ze na srodowisku testowym wszystko przechdziło poprawnie, chodzi o autoryzacje. Na produkcji wywala cały czas błąd 401 {
"error": "invalid_client",
"error_description": "Invalid client or Invalid client credentials"
}. Dane dostałem na pewno dobre. Tak tworze jwt :

var signingCredentials = new SigningCredentials(signingKey, SecurityAlgorithms.RsaSha256);
var descriptor = new SecurityTokenDescriptor
{
Subject = new ClaimsIdentity(new List<Claim> {
new Claim("aud", "https://ow.edoreczenia.gov.pl/auth/realms/EDOR"),
new Claim("exp", expirationTime.ToUnixTimeSeconds().ToString()),
new Claim("iat", now.ToUnixTimeSeconds().ToString()),
new Claim("iss", adressSystem),
new Claim("jti", Guid.NewGuid().ToString()),
new Claim("nbf", now.ToUnixTimeSeconds().ToString()),
new Claim("sub", $"{addrEmailFromWeb}.SYSTEM.{systemName}"),

            }),
            SigningCredentials = signingCredentials

        }; 
        
        a tu wysyłam  https://ow.edoreczenia.gov.pl/auth/realms/EDOR/protocol/openid-connect/token takie cos :             
        
        string endpoint = $"?login_hint={addrEmailFromWeb}";
        string client_assertion_type = "urn:ietf:params:oauth:client-assertion-type:jwt-bearer";
        string grant_type = "client_credentials";
        string client_assertion = token;



        var content = new FormUrlEncodedContent(new Dictionary<string, string>
        {
            {"client_assertion_type", client_assertion_type},
            {"grant_type", grant_type},
            {"client_assertion", client_assertion},
        });

          Wydaje mi sie że wszystko jest robione poprawnie????
OK
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 26
0

Działa wam na środowisku testowym pobieranie nowych wiadomości ?

H1
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 16
0

Pobieranie wiadomości działa na V3. Czy ktoś wysyłał wiadomość typu electronic i poratuje przykładowym jsonem ?

OK
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 26
0

Czy ktoś wie na 100% co oznaczają te daty gdy pobieram wiadomość lub jak je należy rozumieć ?
"timestamp": "2025-06-27T15:52:07.972Z",
"submissionDate": "2025-06-27T12:54:21.491Z",
"eventDate": "2025-06-27T12:54:26.082Z"

OK
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 26
0

przy wysyłaniu zdarza wam się dostać kod błędu 100 ???

KU
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 23
0

Cześć
Mam pytanie gdzie umiescic api key, jak chce sie zautryzować na srodowisko przedprodukcjne i produkcyjne, czy to moze byc ten sam api key? tak generuje certyfikat potem public key i pfx: openssl req -new -keyout mykey.key -subj '/CN=Jan Kowalski/SN=Kowalski/GN=Jan/O=Testowa firma/C=PL/L=Mazowieckie/serialNumber=NIP-1801908070/description=Jan Kowalski NIP-1801908070' -out mycsr.csr
gdzie ten api key umiescic?

TO
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 24
0

Głupie pytanie dot. wdrożenia produkcyjnego.
Szef kupił pieczęć kwalifikowaną i dodał system EZD na stronie eDoręczeń.
I co dalej? Skąd mam wziąć klucz prywatny do tworzenia tokena JWT? Wcześniej na środowisku testowym generowałem go sobie w openssl.

KA
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 1
0

Cześć,
Mam problem z pobieraniem wiadomości produkcyjnie, podmiot publiczny. Nieważne czy pobieram listę wiadomości z parametrem submissionDate czy receiptDate, ciągle mam niezaciągnięte wiadomości. Nawet robię margines - 30 minut jeszcze odejmuję od ostatniej daty synchronizacji, job chodzi co 5 minut i i tak się pojawiają braki. Ktoś miał podobny problem? Dajcie znać jaki wy macie mechanizm zaciągania nowych wiadomości do systemu. Używacie powiadomień?

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.