openapi: 3.0.3 info: termsOfService: https://selfcare.notifichedigitali.it/termini-di-servizio x-api-id: api-external-b2b-pa title: 'Piattaforma Notifiche: API B2B per le Pubbliche Amministrazioni' x-summary: 'Piattaforma Notifiche: API B2B per le Pubbliche Amministrazioni' version: 1.0.0 description: >- ## Abstract API utilizzate dalle pubbliche amministrazioni per __inviare richieste di notifiche__ e __ottenere informazioni in modalità pull__ sullo stato della _"richiesta di notifica"_ (accettata o rifiutata) e, in caso di richiesta accettata, sulle comunicazioni effettuate, o solo tentate, nei confronti dei destinatari della notifica. ## Operazioni utilizzate, in sequenza temporale
Invio notifica


#### 3. Verifica accettazione richiesta di invio notifica Per questa verifica possono essere utilizzate due modalità: 1. __richiesta puntuale__: consigliato solo ai fini di test 2. __lettura da stream configurato__: consigliato per ambienti di produzione La differenza tra le due modalità è nell'interazione e nell'efficienza. Con la modalità _"richiesta puntuale"_ è necessaria l'invocazione per ogni notifica, mentre con la modalità _"stream"_ è possibile avere gli aggiornamenti di stato di più notifiche con una sola invocazione. #### 3.1 Richiesta puntuale di verifica accettazione Questa modalità è resa disponibile solo ai fini di test o di eventuali operazioni di allineamento. Richiede l'invio di una richiesta per ogni notifica. Se il passo (2) avviene con successo si utilizza l'operazione [getNotificationRequestStatus](#/SenderReadB2B/retrieveNotificationRequestStatusV23) per ottenere informazioni riguardo allo stato della "richiesta di invio di notifica".
Nel campo _notificationRequestStatus_ sarà indicato:
>\- WAITING: se la validazione è ancora in corso.
\- ACCEPTED: se richiesta di notifica accettata, lo _IUN_ è valorizzato.
\- REFUSED: se richiesta di notifica rifiutata, è valorizzato il campo _errors_.



#### 3.2 Richiesta avanzamento via "stream" di verifica di accettazione Questa è la modalità consigliata. Per essere utilizzata è necessaria un'operazione preliminare tramite la chiamata alla API [createEventStream](https://petstore.swagger.io/?url=https%3A%2F%2Fraw.githubusercontent.com%2Fpagopa%2Fpn-delivery-push%2Fmain%2Fdocs%2Fopenapi%2Fapi-external-b2b-webhook.yaml#/Streams/createEventStream) per configurare uno "stream" che registri il cambio di stato della notifica con il seguente payload:

`` { "title": "NotificationAccepted", "eventType": "STATUS", "filterValues": [ "ACCEPTED" ] } ``

Successivamente si possono ottenere i dati richiamando la API [consumeEventStream](https://petstore.swagger.io/?url=https%3A%2F%2Fraw.githubusercontent.com%2Fpagopa%2Fpn-delivery-push%2Fmain%2Fdocs%2Fopenapi%2Fapi-external-b2b-webhook.yaml#/Events/consumeEventStream) __NOTA__ saranno disponibili i dati di cambiamento di stato occorsi solo successivamente alla configurazione dello stream.



### Ciclo di vita della notifica lato mittente #### 1. Caricamento dei documenti della notifica Prima di invocare la richiesta di notifica è necessario caricare i documenti della notifica (documenti e bollettini/metadata di pagamento). [Schema Metadata F24](#/components/schemas/F24Metadata) #### 1.a. Richiesta presigned Url Invocare l'operazione [presignedUploadRequest](#/NewNotification/presignedUploadRequest) con cui prenotare il caricamento. Possono essere effettuate un massimo di 15 prenotazioni di caricamento per ogni richiesta.
In risposta si ottengono le seguenti informazioni:
\- httpMethod
\- secret
\- url
L'url restituito ha una validità di 1h.
#### 1.b Upload documenti della notifica Per ogni documento utilizzare un richiesta HTTP con metodo _httpMethod_ (POST o PUT) all'url indicato dal campo _url_.
In tale richiesta vanno aggiunti i seguenti header:
\- _content-type_: valorizzato come il campo "contentType" della richiesta di cui al punto (1.a)
\- _x-amz-meta-secret_: valorizzato con il valore del campo "secret" della risposta di cui al punto (1.a)
\- _trailer_: valorizzato con ```x-amz-checksum-sha256```
\- _x-amz-checksum-sha256_: valorizzato con il checksum sha256, codificato in base 64, del contenuto binario del file che verrà caricato. (__N.B.__ questo è un trailer HTTP non un header). Vedi [HTTP Trailer](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Trailer)
__NOTA:__ se l'operazione di upload è stata eseguita con successo, si otterrà come risposta _status 200 OK_.
Nell'header di questa risposta, si otterrà il campo __x-amz-version-id__ che dovrà essere utilizzato durante
l'inserimento della notifica, nel campo ref.__versionToken__ in corrispondenza del documento ad esso associato.


#### 2. Richiesta di invio della notifica Per effettuare una richiesta di invio notifica, invocare l'operazione [sendNewNotification](#/NewNotification/sendNewNotificationV21) valorizzando il campo payments (scegliendo in base alla tipologia di file caricato F24/pagoPa) e il campo documents utilizzando i riferimenti dei file caricati in precedenza nel seguente:
- digests.sha256 : SHA256 associato all'allegato caricato - contentType : in caso la tipologia dell'allegato fosse documento e avviso di pagamento dovrà essere popolato con "application/pdf" in caso di F24 invece dovrà contenere "application/json" - ref.key: key ottenuta nella response della chiamata [presignedUploadRequest](#/NewNotification/presignedUploadRequest) - ref.versionToken: valore dell'header x-amz-version-id ottenuto dalla response in fase di upload dell'allegato ad esso associato.
Nel caso si voglia valorizzare il campo payments con un bolletino di pagamento pagoPa oltre al riferimento al file tramite la sezione pagoPaForm con le indicazioni riportate sopra, sono da valorizzare i campi noticeCode "codice avviso pagoPA" ,univoco, di pagamento del sistema pagoPA utilizzato , usato per pagamento online; creditorTaxId: codice fiscale dell'ente a cui fa riferimento il "codice avviso pagoPA"; il campo applyCost: flag per indicare se l'avviso pagoPA deve contenere i costi di notifica e il campo
Nel caso,invece, nel campo payments si voglia valorizzare un pagamento F24,oltre al riferimento al file caricato tramite la sezione metadataAttachment con le indicazioni riportate sopra, sono da valorizzare i campi title: titolo del documento pdf da mostrare all'utente e applyCost: flag per indicare se il modello F24 deve contenere i costi di notifica.


Verifica accettazione richiesta
### 4. Monitorare l'avanzamento di una notifica Per questa verifica possono essere utilizzate due modalità: 1. __monitoraggio puntuale__: consigliato solo ai fini di test 2. __monitoraggio tramite stream__: consigliato per ambienti di produzione #### 4.1 Monitoraggio puntuale Se la "richiesta di invio di notifica" passa le validazioni viene trasformata in "notifica" . Sarà possibile identificarla dallo IUN restituito dall'operazione [getNotificationRequestStatus](#/SenderReadB2B/retrieveNotificationRequestStatusV23).
A questo punto, si potranno utilizzare l'operazione _GET /delivery/v2.4/notifications/sent/{iun}_ per ottenere i dettagli della notifica, la _timeline_ che dettaglia il perfezionamento della notifica per il mittente e l'avanzamento delle comunicazioni nei confronti dei destinatari. #### 4.2 Monitoraggio tramite stream Questa è la modalità consigliata in produzione. Per essere utilizzata è necessaria un'operazione preliminare tramite la chiamata alla API [createEventStream](#/Streams/createEventStream) per configurare uno "stream" che registri il cambio di stato della notifica con il seguente payload di esempio:

`` { "title": "NotificationAccepted", "eventType": "STATUS" } ``

che permette di monitorare gli eventi di tipo "STATO". Successivamente si può ottenere il dettaglio della stream appena creata chiamando la API [getEventStream](https://petstore.swagger.io/?url=https%3A%2F%2Fraw.githubusercontent.com%2Fpagopa%2Fpn-delivery-push%2Fdevelop%2Fdocs%2Fopenapi%2Fapi-external-b2b-webhook.yaml#/Streams/getEventStream), mentre si possono ottenere i dati degli eventi richiamando la API [consumeEventStream](https://petstore.swagger.io/?url=https%3A%2F%2Fraw.githubusercontent.com%2Fpagopa%2Fpn-delivery-push%2Fdevelop%2Fdocs%2Fopenapi%2Fapi-external-b2b-webhook.yaml#/Events/consumeEventStream) ``

che permette di monitorare gli eventi di tipo "STATO". Successivamente si può ottenere il dettaglio dello stream appena creato chiamando la API [getEventStream](#/Streams/getEventStream)), mentre si possono ottenere i dati degli eventi richiamando la API [consumeEventStream](#/Streams/consumeEventStream) __NOTA__ saranno disponibili i dati di cambiamento di stato occorsi solo successivamente alla configurazione dello stream.
### 5. Download dei Legal Facts É possibile scaricare le Attestazioni Opponibili a Terzi e gli altri documenti conservati da Piattaforma Notifiche attraverso il servizio di [download Legal Fact](#/LegalFacts/downloadLegalFactById) passando all'interno del path lo Iun, il legalFactType ed il legalFactId; si otterrà nella response un link che permette di scaricare il documento richiesto.
Per ottenere il legalFactType ed il legalFactId bisogna chiamare il servizio di [lettura dettaglio notifica](#/SenderReadB2B/retrieveSentNotificationV21) con lo {Iun} della notifica di interesse: all'interno del campo timeline della response è possibile trovare l'elenco degli eventi di quella notifica ed i legalFactType e legalFactId in corrispondenza degli eventi che generano documenti.
AMBIENTI


# Piattaforma Notifiche: API B2B avanzamento notifiche I mittenti di notifiche possono seguire il loro flusso di avanzamento in modo automatico. Tramite la configurazione di flussi (stream) è possibile ottenere, in modo massivo, le informazioni informazioni relative a: - cambiamento di stato delle notifiche - inserimento di elementi di timeline delle notifiche É possibile definire fino ad un __massimo di 10 configurazioni di flussi attive per singola PA__. __NOTA__: i flussi riportano gli eventi occorsi dal momento della loro creazione, non quelli precedenti. Per cui si consiglia di creare i flussi di interesse per il mittente prima dell'invio delle notifiche di cui si vogliono ottenere gli aggiornamenti. ## Filtraggio degli eventi La configurazione del flusso può prevedere un filtro per ricevere per ricevere solo alcuni cambiamenti di stato o determinati eventi di timeline di interesse per il mittente.
__NEWS V2.3__: dalla versione 2.3 è possibile utilizzare il placeholder __DEFAULT__ per ottenere SOLO gli eventi di timeline di maggior rilievo; evitando di ricevere anche gli eventi interni del workflow che non hanno ripercussione o informazioni utili per il mittente. | Fase del workflow | Categoria eventi | |-------------------|------------------| | Eventi di validazione | REQUEST_REFUSED, REQUEST_ACCEPTED | | Eventi del workflow digitale | SEND_DIGITAL_DOMICILE, SEND_DIGITAL_FEEDBACK, DIGITAL_SUCCESS_WORKFLOW, DIGITAL_FAILURE_WORKFLOW, SEND_SIMPLE_REGISTERED_LETTER, SIMPLE_REGISTERED_LETTER_PROGRESS | | Eventi del workflow analogico | SEND_ANALOG_DOMICILE ,SEND_ANALOG_PROGRESS, SEND_ANALOG_FEEDBACK, ANALOG_SUCCESS_WORKFLOW, ANALOG_FAILURE_WORKFLOW, COMPLETELY_UNREACHABLE | | Eventi di chiusura del workflow | REFINEMENT, NOTIFICATION_VIEWED, NOTIFICATION_CANCELLED | | Altri eventi | NOTIFICATION_RADD_RETRIEVED | Il placeholder __DEFAULT__ può essere usato assieme ad altri eventi di timeline, ad esempio il filtro "DEFAULT,SEND_COURTESY_MESSAGE" permetterà di ricevere anche gli eventi relativi agli invii dei messaggi di cortesia, oltre che a tutti quelli di maggior rilievo. ### Filtri applicabili ai flussi di cambiamento di stato della notifica Gli stati della notifica che possono essere inseriti come __filterValues__ sono i seguenti: Stati - v1: - __ACCEPTED__: L'ente ha depositato la notifica con successo. - __REFUSED__: Notifica rifiutata a seguito della validazione. - __DELIVERING__: L'invio della notifica è in corso. - __DELIVERED__: La notifica è stata consegnata a tutti i destinatari. - __VIEWED__: Il destinatario ha letto la notifica entro il termine stabilito. - __EFFECTIVE_DATE__: Il destinatario non ha letto la notifica entro il termine stabilito. - __UNREACHABLE__: Il destinatario non è reperibile. - __CANCELLED__: L'ente ha annullato l'invio della notifica. ### Filtri applicabili ai flussi di eventi di timeline Le categorie degli eventi di timeline che possono essere inseriti come __filterValues__ sono i seguenti:
Eventi di timeline - v1 | Categoria | Descrizione | |-----------|-------------| |__SENDER_ACK_CREATION_REQUEST__ | Invio della richiesta di creazione dell'atto opponibile a terzi di presa in carico per il mittente a safe storage | |__VALIDATE_NORMALIZE_ADDRESSES_REQUEST__ | Invio della richiesta di validazione e normalizzazione indirizzi fisici presenti nella richiesta di notifica | |__NORMALIZED_ADDRESS__ | Ricezione esito normalizzazione indirizzo | |__REQUEST_ACCEPTED__ | Richiesta di notifica accettata a seguito dei controlli di validazione. | |__AAR_CREATION_REQUEST__ | Invio della richiesta di creazione dell'AAR (Avviso di Avvenuta Ricezione) a safe storage | |__SEND_COURTESY_MESSAGE__ | Invio di un messaggio di cortesia. | |__GET_ADDRESS__ | Disponibilità dell’indirizzo specifico (domicilio digitale di piattaforma, domicilio digitale speciale, domicilio digitale generale, indirizzo fisico sulla notifica o sui registri nazionali). | |__PUBLIC_REGISTRY_CALL__ | Richiesta ai registri pubblici per ottenere domicilio digitale generale o per ottenere indirizzo fisico da ANPR, da registro della imprese, da anagrafe tributaria. | |__PUBLIC_REGISTRY_RESPONSE__ | Ricevuta la risposta dei registri pubblici. | |__SCHEDULE_ANALOG_WORKFLOW__ | Pianificazione del workflow per invio cartaceo | |__SCHEDULE_DIGITAL_WORKFLOW__ | Pianificazione del workflow per invio digitale (PEC) del secondo tentativo in caso di fallimento del primo. | |__PREPARE_DIGITAL_DOMICILE__ | Preparazione per l’invio dell’avviso digitale.Va a valutare la timeline per capire quale sarà il prossimo indirizzo da usare. | |__SEND_DIGITAL_PROGRESS__ | Tentativo di Invio PEC ad un determinato indirizzo. | |__SEND_DIGITAL_DOMICILE__ | Invio digitale dell’avviso di notifica | |__SEND_DIGITAL_FEEDBACK__ | Ottenuto esito ad un invio digitale | |__REFINEMENT__ | Perfezionamento per decorrenza termini | |__SCHEDULE_REFINEMENT__ | Pianificato il perfezionamento per decorrenza termini | |__DIGITAL_SUCCESS_WORKFLOW__ | Completato con successo il workflow di invio digitale. | |__DIGITAL_FAILURE_WORKFLOW__ | Completato con fallimento il workflow di invio digitale: __tutti i tentativi di invio ai domicili digitali sono falliti.__ | |__ANALOG_SUCCESS_WORKFLOW__ | Completato con successo il workflow di invio cartaceo. | |__ANALOG_FAILURE_WORKFLOW__ | Completato con fallimento il workflow di invio cartaceo. NOTA: se per tutti i destinatari si conclude il workflow con fallimento verrà scatenato l’evento COMPLETELY_UNREACHABLE | |__PREPARE_SIMPLE_REGISTERED_LETTER__ | Invio richiesta di prepare (preparazione ad invio) raccomandata semplice a paperChannel | |__SEND_SIMPLE_REGISTERED_LETTER__ | Invio di raccomandata semplice | |__SIMPLE_REGISTERED_LETTER_PROGRESS__ | Ricezione informazioni intermedia relative ad una notificazione cartacea semplice | |__NOTIFICATION_VIEWED_CREATION_REQUEST__ | Invio della richiesta di creazione dell'atto opponibile a terzi di presa visione a safe storage | |__NOTIFICATION_VIEWED__ | Visualizzazione della notifica (perfeziona la notifica se non già perfezionata per decorrenza termini o da altro destinatario) | |__PREPARE_ANALOG_DOMICILE__ | Invio richiesta di prepare (preparazione ad invio) cartaceo a paperChannel | |__SEND_ANALOG_PROGRESS__ | Ricezione informazioni intermedia relative ad una notificazione cartacea | |__SEND_ANALOG_FEEDBACK__ | Ricezione esito dell'invio cartaceo. | |__SEND_ANALOG_DOMICILE__ | Invio cartaceo dell’avviso di notifica | |__COMPLETELY_UNREACHABLE_CREATION_REQUEST__ | Invio della richiesta di creazione dell'atto (simile a opponibile a terzi) di completamento con fallimento del workflow di invio cartaceo | |__COMPLETELY_UNREACHABLE__ | Tutti i destinatari risultano irraggiungibili | |__REQUEST_REFUSED__ | Richiesta di notifica rifiutata per fallimento di validazione. | |__AAR_GENERATION__ | Generazione dell’AAR (Avviso di Avvenuta Ricezione) | |__PROBABLE_SCHEDULING_ANALOG_DATE__ |Data probabile di inizio del flusso analogico | |__PREPARE_ANALOG_DOMICILE_FAILURE__ | Fallimento della richiesta di prepare (preparazione ad invio) cartaceo a paperChannel |
Eventi di timeline - v2 (tutti gli elementi v1 + gli elementi seguenti) | Categoria | Descrizione | |-----------|-------------| |__NOTIFICATION_CANCELLATION_REQUEST__ | Richiesta di annullamento di una notifica | |__NOTIFICATION_CANCELLED__ | Notifica annullata: completamento della richiesta di annullamento di una notifica | |__PREPARE_ANALOG_DOMICILE_FAILURE__ | Fallimento della richiesta di prepare (preparazione ad invio) cartaceo a paperChannel |
Eventi di timeline - v2.3 (tutti gli elementi v1 + v2 + gli elementi seguenti) | Categoria | Descrizione | |-----------|-------------| |__NOTIFICATION_RADD_RETRIEVED__ | Accesso alla notifica tramite la rete RADD. Non perfeziona la notifica |
## Segregazione per gruppi (dalla versione 2.3) Così come notifiche, api-key e utenti dell'ente mittente possono essere segregati in gruppi, nella versione 2.3 dell'API è stata introdotta la segregazione dei flussi per gruppo. Ad un flusso possono essere associati uno o più gruppi per cui: - presenterà esclusivamente gli eventi relativi alle notifiche associate ai tali gruppi: - in fase di creazione potranno essere associati i gruppi associati all'api-key utilizzata. - solo le api-key con visibilità su tutti i gruppi del flusso possano modificarlo, cancellarlo e consumare gli eventi. __NOTA__: Le api-key senza associazione a gruppi possono agire su tutti i gruppi. ## Operazioni sugli stream Le operazioni sugli stream (tag __Streams__) per la gestione della configurazione: - [Creazione](#/Streams/createEventStream) - [Elenco degli stream configurati](#/Streams/listEventStreams) - [Recupero Configurazione](#/Streams/retrieveEventStream) - [Modifica Configurazione](#/Streams/updateEventStream) - [Cancellazione](#/Streams/removeEventStream) - [Disabilitazione](#/Streams/disableEventStream) ## Procedura di migrazione agli stream v2.3 Per migrare uno stream dalla versione precedente è sufficiente indicare nel parametro _replacedId_ l'identificativo dello stream precedente in fase di creazione. Il nuovo stream viene creato e contemporaneamente lo stream precedente viene disabilitato. Il mittente deve mantenere attiva la lettura sullo stream precedente fino a consumare tutti gli eventi contenuti e poi migrare la lettura sul nuovo stream. ## Disabilitazione di uno stream (dalla versione 2.3) Dalla versione 2.3 è possibile disabilitare uno stream tramite la chiamata alla API _disableEventStream_. Uno stream disabilitato non può essere riabilitato, ma è possibile consumare gli eventuali eventi e sarà eliminato automaticamente dopo 14 giorni. ## Lettura degli eventi dallo stream Le operazioni con il tag __Events__ sono quelle utilizzate per la [lettura degli eventi](#/Events/consumeEventStream) filtrati in base alla configurazione impostata negli streams. La API restituisce un __massimo di 50 elementi per chiamata__. Se esistono ulteriori eventi nello stream, allora la response del servizio restituisce l'elemento `retryAfter = 0`; ed è quindi possibile richiamare immediatamente il servizio per ottenere gli eventi successivi. Per il corretto consumo degli eventi dello stream è necessario passare a tutte le chiamate (ad esclusione della prima) il parametro _lastEventId_ valorizzato con l'ultimo _eventId_ della richiesta precedente. In questo modo si informa che gli eventi precedenti sono stati elaborati e quindi possibile procedere con la loro cancellazione dallo stream e restituire i successivi. Se non esistono ulteriori eventi nello stream, allora la response del servizio restituisce il valore di `retryAfter > 0` ed è quindi necessario attendere il tempo indicato dalla retryAfter per consumare eventualmente nuovi eventi nello stream. __NOTA__: gli eventi sono mantenuti per un massimo di __7 giorni__ dopo i quali sono automaticamente cancellati anche se non sono stati consumati. Sarà comunque possibile ottenere lo stato della notifica attraverso il servizio [getNotificationRequestStatus](https://petstore.swagger.io/?url=https://raw.githubusercontent.com/pagopa/pn-delivery/8e2dc3447abc5a338b9e7bc809fa2381d3dacada/docs/openapi/api-external-b2b-pa-bundle.yaml#/SenderReadB2B/retrieveSentNotificationV24)
Esempio di utilizzo della API ### Flusso contenente tutte le notifiche in stato Cancellato: Il payload da passare alla API di creazione del flusso _createEventStream_ è ```json { "title": "NotificationCancelled", "eventType": "STATUS", "groups": [], "filterValues": [ "CANCELLED" ] } ``` ### Flusso contenente tutte le notifiche in stato Accettato o Consegnato: Il payload da passare alla API di creazione del flusso _createEventStream_ è ```json { "title": "NotificationAcceptedOrDelivered", "eventType": "STATUS", "groups": [], "filterValues": [ "ACCEPTED","DELIVERED" ] } ``` ### Flusso contenente tutti gli eventi di timeline NOTIFICATION_VIEWED: Il payload da passare alla API di creazione del flusso _createEventStream_ è ```json { "title": "TimelineNotificationViewed", "eventType": "TIMELINE", "groups": [], "filterValues": [ "NOTIFICATION_VIEWED" ] } ``` ### Flusso contenente tutti gli eventi per le notifiche create con il gruppo "contravvenzioni": Il payload da passare alla API di creazione del flusso _createEventStream_ è ```json { "title": "TimelineNotificationViewed", "eventType": "TIMELINE", "groups": ["contravvenzioni"], "filterValues": [] } ``` NOTA: solo api-key "master" o con il gruppo "contravvenzioni" possono creare e consumare questo flusso. ### Flusso contenente tutti gli eventi di timeline NOTIFICATION_VIEWED per le notifiche create con il gruppo "contravvenzioni" e "tributi": Il payload da passare alla API di creazione del flusso _createEventStream_ è ```json { "title": "TimelineNotificationViewed", "eventType": "TIMELINE", "groups": ["contravvenzioni", "tributi"], "filterValues": [ "NOTIFICATION_VIEWED" ] } ``` NOTA: solo api-key "master" o con i gruppi "contravvenzioni" e "tributi" possono creare e consumare questo flusso. Un'api-key con il SOLO gruppo "contravvenzioni" infatti non potrà creare o accedere a questo flusso.
Le __FAQ__ possono essere consultate al seguente link: [https://docs.pagopa.it/f.a.q.-per-integratori/](https://docs.pagopa.it/f.a.q.-per-integratori/) contact: name: 'SEND: supporto enti' url: https://pagopa.atlassian.net/servicedesk/customer/portal/5 servers: - url: https://api.notifichedigitali.it description: Ambiente di produzione - url: https://api.uat.notifichedigitali.it description: Ambiente di collaudo security: - ApiKeyAuth: [] tags: - name: HealthCheck description: >- Invocazioni per sapere lo stato di Piattaforma Notifiche # il servizio è ancora in fase di sviluppo - name: NewNotification description: >- Invocazioni per effettuare il pre-caricamento dei documenti della notifica e inviare notifiche - name: SenderReadB2B description: >- Invocazioni utilizzabili dai mittenti per verificare lo stato delle richieste di notifica inviate e delle notifiche accettate. - name: NotificationPrice description: Invocazioni per determinare il costo della notifica per il destinatario. - name: LegalFacts description: Invocazioni per effettuare il download degli atti opponibili a terzi - name: PaymentEvents description: Invocazioni per comunicare eventi di pagamento dalla PA - name: NotificationCancellation description: Annullamento di una notifica - name: Streams description: Gestione degli stream di eventi che PN mette a disposizione - name: Events description: Metodi per la lettura degli eventi dagli stream paths: /status: get: summary: status path description: status path per verificare lo stato di Piattaforma Notifiche tags: - HealthCheck operationId: status responses: '200': description: Ok content: application/problem+json: schema: $ref: '#/components/schemas/PnStatusResponse' example: functionalities: - NOTIFICATION_CREATE - NOTIFICATION_VISUALIZATION - NOTIFICATION_WORKFLOW openIncidents: [] '400': description: Bad request content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '500': description: Internal Server Error content: application/problem+json: schema: $ref: '#/components/schemas/PnStatusResponse' example: functionalities: - NOTIFICATION_CREATE - NOTIFICATION_VISUALIZATION - NOTIFICATION_WORKFLOW openIncidents: - functionality: NOTIFICATION_CREATE status: KO startDate: '2019-08-24T14:15:22Z' /delivery/attachments/preload: post: summary: Richiesta di pre-caricamento dei documenti della notifica description: >- Operazione che richiede a Piattaforma Notifica le informazioni e le autorizzazioni necessarie a precaricare uno o più file da allegare a una notifica.
tags: - NewNotification operationId: presignedUploadRequest requestBody: content: application/json: schema: type: array items: $ref: '#/components/schemas/PreLoadRequest' minItems: 1 maxItems: 15 required: true responses: '200': description: OK content: application/json: schema: type: array items: $ref: '#/components/schemas/PreLoadResponse' '400': description: Bad request content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '500': description: Internal error content: application/problem+json: schema: $ref: '#/components/schemas/Problem' /delivery/v2.3/requests: post: summary: Richiesta invio notifica description: >- Operazione utilizzata dalla Pubblica Amministrazione per richiedere l'invio di una notifica. La restituzione di uno stato HTTP 202 significa solo che la richiesta è sintatticamente valida, non che la richiesta sia stata validata ed accettata.
Per conoscere lo stato di accettazione della richiesta di notifica bisogna utilizzare l'operazione _getNotificationRequestStatus_ oppure utilizzare la modalità push prevista dai webhook.
tags: - NewNotification operationId: sendNewNotificationV23 requestBody: content: application/json: schema: $ref: '#/components/schemas/NewNotificationRequestV23' required: true responses: '202': description: Accepted content: application/json: schema: $ref: '#/components/schemas/NewNotificationResponse' '400': description: Bad request content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '409': description: Conflict content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '500': description: Internal error content: application/problem+json: schema: $ref: '#/components/schemas/Problem' get: operationId: retrieveNotificationRequestStatusV23 tags: - SenderReadB2B summary: Verifica accettazione richiesta notifica description: >- Questa operazione serve per verificare se la richiesta di notifica è stata accettata e ottenere lo IUN associato a tale richiesta.
Bisogna specificare il parametro _requestId_ oppure la coppia costituita dai parametri _paProtocolNumber_ e _idempotenceToken_.
parameters: - $ref: '#/components/parameters/notificationRequestId' - $ref: '#/components/parameters/paProtocolNumber' - $ref: '#/components/parameters/idempotenceToken' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/NewNotificationRequestStatusResponseV23' '400': description: Bad request content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '404': description: Not found content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '500': description: Internal error content: application/problem+json: schema: $ref: '#/components/schemas/Problem' /delivery/v2.4/notifications/sent/{iun}: get: summary: 'Mittente: lettura dettagli notifica versione 2' description: >- Questa operazione permette di leggere tutti i dettagli di una notifica accettata.
tags: - SenderReadB2B operationId: retrieveSentNotificationV24 parameters: - $ref: '#/components/parameters/pathIun' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/FullSentNotificationV24' '400': description: Bad request content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '500': description: Internal error content: application/problem+json: schema: $ref: '#/components/schemas/Problem' /delivery/notifications/sent/{iun}/attachments/documents/{docIdx}: get: description: Download documento notificato summary: Download documento notificato tags: - SenderReadB2B operationId: retrieveSentNotificationDocument parameters: - $ref: '#/components/parameters/pathIun' - $ref: '#/components/parameters/pathDocumentIdx' responses: '200': description: OK content: application/json: schema: $ref: >- #/components/schemas/NotificationAttachmentDownloadMetadataResponse '400': description: Bad request content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '404': description: Not Found content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '500': description: Internal error content: application/problem+json: schema: $ref: '#/components/schemas/Problem' /delivery/notifications/sent/{iun}/attachments/payment/{recipientIdx}/{attachmentName}: get: description: Download allegato per pagamento summary: Download allegato per pagamento tags: - SenderReadB2B operationId: retrieveSentNotificationAttachment parameters: - $ref: '#/components/parameters/pathIun' - $ref: '#/components/parameters/pathRecipientIdx' - $ref: '#/components/parameters/pathAttachmentName' - $ref: '#/components/parameters/attachmentIdx' responses: '200': description: OK content: application/json: schema: $ref: >- #/components/schemas/NotificationAttachmentDownloadMetadataResponse '400': description: Bad request content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '404': description: Not Found content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '500': description: Internal error content: application/problem+json: schema: $ref: '#/components/schemas/Problem' /delivery/v2.3/price/{paTaxId}/{noticeCode}: get: operationId: retrieveNotificationPriceV23 summary: Retrieve notification partial price and total price with effective date description: >- Usata dagli enti per recuperare il costo di notificazione tramite l'identificativo della posizione debitoria paTaxId e noticeCode. Viene restituito sia il costo parziale che il costo totale di notificazione. tags: - NotificationPriceV23 parameters: - name: paTaxId description: Payment PA fiscal code in: path required: true example: '77777777777' schema: $ref: '#/components/schemas/paTaxId' - name: noticeCode description: Payment notice number numero avviso in: path required: true example: '302000100000019421' schema: $ref: '#/components/schemas/noticeCode' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/NotificationPriceResponseV23' '400': description: Invalid input content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '404': description: Not Found content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '500': description: Internal Server Error content: application/problem+json: schema: $ref: '#/components/schemas/Problem' /delivery/events/payment/pagopa: post: operationId: paymentEventsRequestPagoPa description: >- Questa API è a disposizione della Pubblica Amministrazione per inviare eventi di chiusura di una o più posizioni debitorie di tipo PagoPA.
tags: - PaymentEvents requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PaymentEventsRequestPagoPa' responses: '204': description: OK '400': description: Invalid input content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '404': description: Not found content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '500': description: Internal Server Error content: application/problem+json: schema: $ref: '#/components/schemas/Problem' /delivery/events/payment/f24: post: deprecated: true operationId: paymentEventsRequestF24 description: >- Questa API è a disposizione della Pubblica Amministrazione per inviare eventi di chiusura di una o più posizioni debitorie di tipo F24.
tags: - PaymentEvents requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PaymentEventsRequestF24' responses: '204': description: OK '400': description: Invalid input content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '404': description: Not found content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '500': description: Internal Server Error content: application/problem+json: schema: $ref: '#/components/schemas/Problem' /delivery/requests: post: deprecated: true summary: Richiesta invio notifica description: >- Operazione utilizzata dalla Pubblica Amministrazione per richiedere l'invio di una notifica. La restituzione di uno stato HTTP 202 significa solo che la richiesta è sintatticamente valida, non che la richiesta sia stata validata ed accettata.
Per conoscere lo stato di accettazione della richiesta di notifica bisogna utilizzare l'operazione _getNotificationRequestStatus_ oppure utilizzare la modalità push prevista dai webhook.
tags: - NewNotification operationId: sendNewNotification requestBody: content: application/json: schema: $ref: '#/components/schemas/NewNotificationRequest' required: true responses: '202': description: Accepted content: application/json: schema: $ref: '#/components/schemas/NewNotificationResponse' '400': description: Bad request content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '409': description: Conflict content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '500': description: Internal error content: application/problem+json: schema: $ref: '#/components/schemas/Problem' get: deprecated: true operationId: retrieveNotificationRequestStatus tags: - SenderReadB2B summary: Verifica accettazione richiesta notifica description: >- Questa operazione serve per verificare se la richiesta di notifica è stata accettata e ottenere lo IUN associato a tale richiesta.
Bisogna specificare il parametro _requestId_ oppure la coppia costituita dai parametri _paProtocolNumber_ e _idempotenceToken_.
parameters: - $ref: '#/components/parameters/notificationRequestId' - $ref: '#/components/parameters/paProtocolNumber' - $ref: '#/components/parameters/idempotenceToken' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/NewNotificationRequestStatusResponse' '400': description: Bad request content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '404': description: Not found content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '500': description: Internal error content: application/problem+json: schema: $ref: '#/components/schemas/Problem' /delivery/v2.1/requests: post: deprecated: true summary: Richiesta invio notifica description: >- Operazione utilizzata dalla Pubblica Amministrazione per richiedere l'invio di una notifica. La restituzione di uno stato HTTP 202 significa solo che la richiesta è sintatticamente valida, non che la richiesta sia stata validata ed accettata.
Per conoscere lo stato di accettazione della richiesta di notifica bisogna utilizzare l'operazione _getNotificationRequestStatus_ oppure utilizzare la modalità push prevista dai webhook.
tags: - NewNotification operationId: sendNewNotificationV21 requestBody: content: application/json: schema: $ref: '#/components/schemas/NewNotificationRequestV21' required: true responses: '202': description: Accepted content: application/json: schema: $ref: '#/components/schemas/NewNotificationResponse' '400': description: Bad request content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '409': description: Conflict content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '500': description: Internal error content: application/problem+json: schema: $ref: '#/components/schemas/Problem' get: deprecated: true operationId: retrieveNotificationRequestStatusV21 tags: - SenderReadB2B summary: Verifica accettazione richiesta notifica description: >- Questa operazione serve per verificare se la richiesta di notifica è stata accettata e ottenere lo IUN associato a tale richiesta.
Bisogna specificare il parametro _requestId_ oppure la coppia costituita dai parametri _paProtocolNumber_ e _idempotenceToken_.
parameters: - $ref: '#/components/parameters/notificationRequestId' - $ref: '#/components/parameters/paProtocolNumber' - $ref: '#/components/parameters/idempotenceToken' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/NewNotificationRequestStatusResponseV21' '400': description: Bad request content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '404': description: Not found content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '500': description: Internal error content: application/problem+json: schema: $ref: '#/components/schemas/Problem' /delivery/notifications/sent/{iun}: get: deprecated: true summary: 'Mittente: lettura dettagli notifica' description: >- Questa operazione permette di leggere tutti i dettagli di una notifica accettata.
tags: - SenderReadB2B operationId: retrieveSentNotification parameters: - $ref: '#/components/parameters/pathIun' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/FullSentNotification' '400': description: Bad request content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '500': description: Internal error content: application/problem+json: schema: $ref: '#/components/schemas/Problem' /delivery/v2.0/notifications/sent/{iun}: get: deprecated: true summary: 'Mittente: lettura dettagli notifica versione 2' description: >- Questa operazione permette di leggere tutti i dettagli di una notifica accettata.
tags: - SenderReadB2B operationId: retrieveSentNotificationV20 parameters: - $ref: '#/components/parameters/pathIun' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/FullSentNotificationV20' '400': description: Bad request content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '500': description: Internal error content: application/problem+json: schema: $ref: '#/components/schemas/Problem' /delivery/v2.1/notifications/sent/{iun}: get: deprecated: true summary: 'Mittente: lettura dettagli notifica versione 2' description: >- Questa operazione permette di leggere tutti i dettagli di una notifica accettata.
tags: - SenderReadB2B operationId: retrieveSentNotificationV21 parameters: - $ref: '#/components/parameters/pathIun' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/FullSentNotificationV21' '400': description: Bad request content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '500': description: Internal error content: application/problem+json: schema: $ref: '#/components/schemas/Problem' /delivery/v2.3/notifications/sent/{iun}: get: deprecated: true summary: 'Mittente: lettura dettagli notifica versione 2' description: >- Questa operazione permette di leggere tutti i dettagli di una notifica accettata.
tags: - SenderReadB2B operationId: retrieveSentNotificationV23 x-pagopa-lambda-name: pn-delivery-versioning-v1v2-getnotification-lambda:live x-pagopa-lambda-account: core parameters: - $ref: '#/components/parameters/pathIun' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/FullSentNotificationV23' '400': description: Bad request content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '500': description: Internal error content: application/problem+json: schema: $ref: '#/components/schemas/Problem' /delivery/price/{paTaxId}/{noticeCode}: get: deprecated: true operationId: retrieveNotificationPrice summary: Retrieve notification price and effective date description: |- Usata dalla PA per recuperare il costo di notificazione tramite l'identificativo della posizione debitoria paTaxId e noticeCode. tags: - NotificationPrice parameters: - name: paTaxId description: Payment PA fiscal code in: path required: true example: '77777777777' schema: $ref: '#/components/schemas/paTaxId' - name: noticeCode description: Payment notice number numero avviso in: path required: true example: '302000100000019421' schema: $ref: '#/components/schemas/noticeCode' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/NotificationPriceResponse' '400': description: Invalid input content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '404': description: Not Found content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '500': description: Internal Server Error content: application/problem+json: schema: $ref: '#/components/schemas/Problem' /delivery-push/v2.0/notifications/cancel/{iun}: put: summary: Annullamento notifica description: >- Permette l'annullamento di una notifica restituendo una presa in carico, il processo di annullamento si completa poi in maniera asincrona tags: - NotificationCancellation operationId: notificationCancellation parameters: - $ref: '#/components/parameters/pathIun' responses: '202': description: Accepted - Richiesta annullamento presa in carico content: application/json: schema: $ref: '#/components/schemas/RequestStatus' '400': description: Bad request content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '404': description: Not found content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '500': description: Internal Server Error content: application/problem+json: schema: $ref: '#/components/schemas/Problem' /delivery-push/{iun}/legal-facts: get: summary: Elenco atti opponibili a terzi description: >- Elenca le informazione di categorizzazione di tutti gli atti opponibili a terzi registrati durante il processo di notifica.
tags: - LegalFacts operationId: retrieveNotificationLegalFacts parameters: - $ref: '#/components/parameters/pathIun' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/LegalFactList' '400': description: Invalid input content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '404': description: Not found content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '500': description: Internal Server Error content: application/problem+json: schema: $ref: '#/components/schemas/Problem' /delivery-push/{iun}/legal-facts/{legalFactType}/{legalFactId}: get: summary: Singolo atto opponibile a terzi description: Permette di scaricare un atto opponibile a terzi
tags: - LegalFacts operationId: retrieveLegalFact parameters: - $ref: '#/components/parameters/pathIun' - $ref: '#/components/parameters/pathLegalFactType' - $ref: '#/components/parameters/pathLegalFactId' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/LegalFactDownloadMetadataResponse' '400': description: Invalid input content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '404': description: Not found content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '500': description: Internal Server Error content: application/problem+json: schema: $ref: '#/components/schemas/Problem' /delivery-push/{iun}/download/legal-facts/{legalFactId}: get: summary: Singolo atto opponibile a terzi description: Permette di scaricare un atto opponibile a terzi
tags: - LegalFacts operationId: downloadLegalFactById parameters: - $ref: '#/components/parameters/pathIun' - $ref: '#/components/parameters/pathLegalFactId' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/LegalFactDownloadMetadataResponse' '400': description: Invalid input content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '404': description: Not found content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '500': description: Internal Server Error content: application/problem+json: schema: $ref: '#/components/schemas/Problem' /delivery-progresses/v2.4/streams: post: summary: Crea nuovo stream di eventi description: >- Creazione di un flusso di eventi specificando se gli eventi saranno relativi ai cambi di stato o agli eventi di timeline. In risposta, Piattaforma Notifiche, comunicherà un identificativo dello stream e il timestamp di effettiva attivazione del flusso, tipicamente pochi secondi dopo che è stata invocata l'operazione. tags: - Streams operationId: createEventStreamV24 requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/StreamCreationRequestV24' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/StreamMetadataResponseV24' '400': description: Invalid input content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '403': description: Forbidden content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '404': description: ReplacedId Stream not found content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '500': description: Internal Server Error content: application/problem+json: schema: $ref: '#/components/schemas/Problem' get: summary: Elenca stream di eventi description: Elenca gli stream di eventi tags: - Streams operationId: listEventStreamsV24 responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/StreamListResponse' '400': description: Invalid input content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '500': description: Internal Server Error content: application/problem+json: schema: $ref: '#/components/schemas/Problem' /delivery-progresses/v2.4/streams/{streamId}: parameters: - $ref: '#/components/parameters/pathStreamId' get: summary: Leggi metadata dello stream description: Lettura delle configurazioni di uno stream di eventi. tags: - Streams operationId: retrieveEventStreamV24 responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/StreamMetadataResponseV24' '400': description: Invalid input content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '403': description: Forbidden content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '404': description: Stream not found content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '500': description: Internal Server Error content: application/problem+json: schema: $ref: '#/components/schemas/Problem' put: summary: Update Stream metadata description: >- Modifica delle configurazioni dei filtri associati a uno stream di eventi tags: - Streams operationId: updateEventStreamV24 requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/StreamRequestV24' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/StreamMetadataResponseV24' '400': description: Invalid input content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '403': description: Forbidden content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '404': description: Stream not found content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '500': description: Internal Server Error content: application/problem+json: schema: $ref: '#/components/schemas/Problem' delete: summary: Remove Event Stream description: >- Cancellazione dello steam di eventi: elimina sia le configurazioni sia tutti gli eventi associati allo stream e non ancora consumati. tags: - Streams operationId: removeEventStreamV24 responses: '204': description: OK '400': description: Bad request content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '403': description: Forbidden content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '404': description: Stream not found content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '500': description: Internal Server Error content: application/problem+json: schema: $ref: '#/components/schemas/Problem' /delivery-progresses/v2.4/streams/{streamId}/action/disable: post: summary: Disabilita uno stream description: >- Disabilita uno stream. Da uno stream disabilitato è possibile leggere gli eventi presenti nello stream salvati prima della disabilitazione, ma non ne saranno aggiunti di nuovi. Non è possibile modificare o riabilitare uno stream disabilitato. Uno stream disabilitato non rientra nel conteggio degli stream massimi, non può essere riabilitato e verrà eliminato automaticamente dopo 14 giorni. tags: - Streams operationId: disableEventStreamV24 parameters: - $ref: '#/components/parameters/pathStreamId' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/StreamMetadataResponseV24' '400': description: Invalid input content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '403': description: Forbidden content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '404': description: Stream not found content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '500': description: Internal Server Error content: application/problem+json: schema: $ref: '#/components/schemas/Problem' /delivery-progresses/v2.4/streams/{streamId}/events: get: summary: Leggi progressi notifiche description: >- Lettura degli eventi presenti nello stream di aggiornamenti con indicazione che il mittente ha ricevuto e memorizzato l'evento identificato dal parametro _lastEventId_ e tutti gli eventi precedenti. Tali eventi potranno essere cancellati dallo stream. tags: - Events operationId: consumeEventStreamV24 parameters: - $ref: '#/components/parameters/pathStreamId' - $ref: '#/components/parameters/queryLastEventId' responses: '200': description: OK headers: retry-after: schema: type: integer format: int32 description: >- Numero di millisecondi di attesa prima di effettuare una nuova lettura di eventi. Sarà valorizzato a zero se ci sono eventi in coda che non sono stati forniti per raggiunta dimensione massima della risposta. Sarà maggiore di zero se gli eventi in coda sono stati tutti inviati. content: application/json: schema: $ref: '#/components/schemas/ProgressResponseV24' '400': description: Invalid input content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '403': description: Not allowed to consume details content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '404': description: Stream not found content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '429': description: Too Many Requests headers: retry-after: schema: type: integer format: int32 description: >- Numero di millisecondi di attesa prima di effettuare una nuova lettura di eventi. '500': description: Internal Server Error content: application/problem+json: schema: $ref: '#/components/schemas/Problem' /delivery-progresses/streams: post: deprecated: true summary: Crea nuovo stream di eventi description: >- Viene richiesta la creazione di un flusso di eventi specificando se gli eventi saranno relativi ai cambi di stato o agli eventi di timeline.
In risposta, Piattaforma Notifiche, comunicherà un identificativo dello stream e il timestamp di effettiva attivazione del flusso, tipicamente pochi secondi dopo che è stata invocata l'operazione. tags: - Streams operationId: createEventStream x-pagopa-lambda-name: pn-versioningV1V2WebhookLambda:live x-pagopa-lambda-account: core requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/StreamCreationRequest' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/StreamMetadataResponse' '400': description: Invalid input content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '500': description: Internal Server Error content: application/problem+json: schema: $ref: '#/components/schemas/Problem' get: deprecated: true summary: Elenca stream di eventi description: Elenca gli stream di eventi tags: - Streams operationId: listEventStreams x-pagopa-lambda-name: pn-versioningV1V2WebhookLambda:live x-pagopa-lambda-account: core responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/StreamListResponse' '400': description: Invalid input content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '500': description: Internal Server Error content: application/problem+json: schema: $ref: '#/components/schemas/Problem' /delivery-progresses/streams/{streamId}: parameters: - $ref: '#/components/parameters/pathStreamId' get: deprecated: true summary: Leggi metadati dello stream description: Permette di leggere le configurazioni di uno stream di eventi. tags: - Streams operationId: retrieveEventStream x-pagopa-lambda-name: pn-versioningV1V2WebhookLambda:live x-pagopa-lambda-account: core responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/StreamMetadataResponse' '400': description: Invalid input content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '500': description: Internal Server Error content: application/problem+json: schema: $ref: '#/components/schemas/Problem' put: deprecated: true summary: Update Stream metadata description: >- Permette di cambiare le configurazioni dei filtri associati a uno stream di eventi tags: - Streams operationId: updateEventStream x-pagopa-lambda-name: pn-versioningV1V2WebhookLambda:live x-pagopa-lambda-account: core requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/StreamCreationRequest' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/StreamMetadataResponse' '400': description: Invalid input content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '500': description: Internal Server Error content: application/problem+json: schema: $ref: '#/components/schemas/Problem' delete: deprecated: true summary: Remove Event Stream description: >- Elimina uno steam di eventi: elimina sia le configurazioni sia tutti gli eventi associati allo stream e non ancora consumati. tags: - Streams operationId: removeEventStream x-pagopa-lambda-name: pn-versioningV1V2WebhookLambda:live x-pagopa-lambda-account: core responses: '204': description: OK '400': description: Bad request content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '500': description: Internal Server Error content: application/problem+json: schema: $ref: '#/components/schemas/Problem' /delivery-progresses/streams/{streamId}/events: get: deprecated: true summary: Leggi progressi notifiche description: >- Permette di leggere gli eventi presenti nello stream di aggiornamenti e indica che la P.A. ha ricevuto e memorizzato l'evento identificato dal parametro _lastEventId_ e tutti gli eventi precedenti. Tali eventi potranno essere cancellati dallo stream. tags: - Events operationId: consumeEventStream x-pagopa-lambda-name: pn-versioningV1V2WebhookLambda:live x-pagopa-lambda-account: core parameters: - $ref: '#/components/parameters/pathStreamId' - $ref: '#/components/parameters/queryLastEventId' responses: '200': description: OK headers: retry-after: schema: type: integer format: int32 description: >- Numero di millisecondi di attesa prima di effettuare una nuova lettura di eventi.
Sarà valorizzato a zero se ci sono eventi in coda che non sono stati forniti per raggiunta dimensione massima della risposta.
Sarà maggiore di zero se gli eventi in coda sono stati tutti inviati. content: application/json: schema: $ref: '#/components/schemas/ProgressResponse' '400': description: Invalid input content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '429': description: Too Many Requests headers: retry-after: schema: type: integer format: int32 description: >- Numero di millisecondi di attesa prima di effettuare una nuova lettura di eventi. '500': description: Internal Server Error content: application/problem+json: schema: $ref: '#/components/schemas/Problem' /delivery-progresses/v2.3/streams: post: deprecated: true summary: Crea nuovo stream di eventi description: >- Creazione di un flusso di eventi specificando se gli eventi saranno relativi ai cambi di stato o agli eventi di timeline. In risposta, Piattaforma Notifiche, comunicherà un identificativo dello stream e il timestamp di effettiva attivazione del flusso, tipicamente pochi secondi dopo che è stata invocata l'operazione. tags: - Streams operationId: createEventStreamV23 x-pagopa-lambda-name: pn-versioningV1V2WebhookLambda:live x-pagopa-lambda-account: core requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/StreamCreationRequestV23' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/StreamMetadataResponseV23' '400': description: Invalid input content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '403': description: Forbidden content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '404': description: ReplacedId Stream not found content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '500': description: Internal Server Error content: application/problem+json: schema: $ref: '#/components/schemas/Problem' get: deprecated: true summary: Elenca stream di eventi description: Elenca gli stream di eventi tags: - Streams operationId: listEventStreamsV23 x-pagopa-lambda-name: pn-versioningV1V2WebhookLambda:live x-pagopa-lambda-account: core responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/StreamListResponse' '400': description: Invalid input content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '500': description: Internal Server Error content: application/problem+json: schema: $ref: '#/components/schemas/Problem' /delivery-progresses/v2.3/streams/{streamId}: parameters: - $ref: '#/components/parameters/pathStreamId' get: deprecated: true summary: Leggi metadata dello stream description: Lettura delle configurazioni di uno stream di eventi. tags: - Streams operationId: retrieveEventStreamV23 x-pagopa-lambda-name: pn-versioningV1V2WebhookLambda:live x-pagopa-lambda-account: core responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/StreamMetadataResponseV23' '400': description: Invalid input content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '403': description: Forbidden content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '404': description: Stream not found content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '500': description: Internal Server Error content: application/problem+json: schema: $ref: '#/components/schemas/Problem' put: deprecated: true summary: Update Stream metadata description: >- Modifica delle configurazioni dei filtri associati a uno stream di eventi tags: - Streams operationId: updateEventStreamV23 x-pagopa-lambda-name: pn-versioningV1V2WebhookLambda:live x-pagopa-lambda-account: core requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/StreamRequestV23' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/StreamMetadataResponseV23' '400': description: Invalid input content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '403': description: Forbidden content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '404': description: Stream not found content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '500': description: Internal Server Error content: application/problem+json: schema: $ref: '#/components/schemas/Problem' delete: deprecated: true summary: Remove Event Stream description: >- Cancellazione dello steam di eventi: elimina sia le configurazioni sia tutti gli eventi associati allo stream e non ancora consumati. tags: - Streams operationId: removeEventStreamV23 x-pagopa-lambda-name: pn-versioningV1V2WebhookLambda:live x-pagopa-lambda-account: core responses: '204': description: OK '400': description: Bad request content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '403': description: Forbidden content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '404': description: Stream not found content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '500': description: Internal Server Error content: application/problem+json: schema: $ref: '#/components/schemas/Problem' /delivery-progresses/v2.3/streams/{streamId}/action/disable: post: deprecated: true summary: Disabilita uno stream description: >- Disabilita uno stream. Da uno stream disabilitato è possibile leggere gli eventi presenti nello stream salvati prima della disabilitazione, ma non ne saranno aggiunti di nuovi. Non è possibile modificare o riabilitare uno stream disabilitato. Uno stream disabilitato non rientra nel conteggio degli stream massimi, non può essere riabilitato e verrà eliminato automaticamente dopo 14 giorni. tags: - Streams operationId: disableEventStreamV23 x-pagopa-lambda-name: pn-versioningV1V2WebhookLambda:live x-pagopa-lambda-account: core parameters: - $ref: '#/components/parameters/pathStreamId' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/StreamMetadataResponseV23' '400': description: Invalid input content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '403': description: Forbidden content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '404': description: Stream not found content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '500': description: Internal Server Error content: application/problem+json: schema: $ref: '#/components/schemas/Problem' /delivery-progresses/v2.3/streams/{streamId}/events: get: deprecated: true summary: Leggi progressi notifiche description: >- Lettura degli eventi presenti nello stream di aggiornamenti con indicazione che il mittente ha ricevuto e memorizzato l'evento identificato dal parametro _lastEventId_ e tutti gli eventi precedenti. Tali eventi potranno essere cancellati dallo stream. tags: - Events operationId: consumeEventStreamV23 x-pagopa-lambda-name: pn-versioningV1V2WebhookLambda:live x-pagopa-lambda-account: core parameters: - $ref: '#/components/parameters/pathStreamId' - $ref: '#/components/parameters/queryLastEventId' responses: '200': description: OK headers: retry-after: schema: type: integer format: int32 description: >- Numero di millisecondi di attesa prima di effettuare una nuova lettura di eventi. Sarà valorizzato a zero se ci sono eventi in coda che non sono stati forniti per raggiunta dimensione massima della risposta. Sarà maggiore di zero se gli eventi in coda sono stati tutti inviati. content: application/json: schema: $ref: '#/components/schemas/ProgressResponseV23' '400': description: Invalid input content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '403': description: Not allowed to consume details content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '404': description: Stream not found content: application/problem+json: schema: $ref: '#/components/schemas/Problem' '429': description: Too Many Requests headers: retry-after: schema: type: integer format: int32 description: >- Numero di millisecondi di attesa prima di effettuare una nuova lettura di eventi. '500': description: Internal Server Error content: application/problem+json: schema: $ref: '#/components/schemas/Problem' components: parameters: notificationRequestId: in: query required: false name: notificationRequestId description: identificativo della richiesta di notifica schema: type: string maxLength: 36 pattern: ^[A-Za-z0-9+/=]{36}$ paProtocolNumber: name: paProtocolNumber in: query required: false description: >- Numero di protocollo associato alla notifica, può essere riutilizzato per rettifiche. schema: type: string pattern: ^.*$ maxLength: 256 idempotenceToken: name: idempotenceToken description: >- token usato per disambiguare "richieste di notificazione" effettuate con lo stesso numero di protocollo. in: query required: false schema: type: string pattern: ^[ -~]*$ maxLength: 256 pathDocumentIdx: name: docIdx description: indice del documento nella lista partendo da 0. in: path required: true schema: type: integer format: int32 pathRecipientIdx: name: recipientIdx description: indice del destinatario nella lista partendo da 0. in: path required: true schema: type: integer format: int32 pathAttachmentName: name: attachmentName description: >- Tipologia del pagamento allegato alla notifica. Valori possibili PAGOPA|F24 in: path required: true schema: type: string minLength: 3 maxLength: 6 pattern: PAGOPA|F24 attachmentIdx: in: query name: attachmentIdx description: indice del documento di pagamento partendo da 0 required: false schema: type: integer format: int32 pathLegalFactType: description: Categoria dell'atto opponibile a terzi name: legalFactType in: path required: true schema: $ref: '#/components/schemas/LegalFactCategory' pathLegalFactId: description: Identificativo dell'atto opponibile a terzi name: legalFactId in: path required: true schema: type: string pattern: ^[ -~]*$ maxLength: 1024 pathIun: description: Identificativo Univoco Notifica name: iun in: path required: true schema: type: string minLength: 25 maxLength: 25 pattern: ^[A-Z]{4}-[A-Z]{4}-[A-Z]{4}-[0-9]{6}-[A-Z]{1}-[0-9]{1}$ legalFactsSearchMandateId: name: mandateId in: query required: false description: identificativo della delega, non utilizzato nelle API B2B x-pn-intended-usage: - WEB schema: type: string format: uuid pathDocumentType: description: Categoria documento name: documentType in: path required: true schema: $ref: '#/components/schemas/DocumentCategory' queryDocumentId: description: Identificativo del documento name: documentId in: query required: true schema: type: string pattern: ^(safestorage:\/\/)?[A-Za-z0-9._-]+$ maxLength: 512 queryLastEventId: description: >- Identificativo dell'ultimo evento memorizzato dal chiamante, se non passato si intende dal primo evento presente nello stream. Numero in una stringa di 38 caratteri con padding iniziale composto da '0'. name: lastEventId in: query required: false schema: type: string minLength: 38 maxLength: 38 pattern: ^0\d{37}$ pathStreamId: description: Identificativo dello stream di eventi name: streamId in: path required: true schema: type: string format: uuid schemas: PnStatusResponse: title: Stato attuale di PN description: >- Elenco delle funzionalità della piattaforma ed elenco dei disservizi noti e attivi al momento della richiesta. I disservizi (_openIncidents_) segnalati sono al più uno per funzionalità; gli attributi _endDate_ e _legalFactId_ non saranno valorizzati. type: object required: - functionalities - openIncidents properties: status: description: Bad Request example: 400 exclusiveMaximum: true format: int32 maximum: 600 minimum: 100 type: integer title: description: The server cannot process the request example: Bad Request maxLength: 64 pattern: ^[ -~]{0,64}$ type: string detail: description: The server cannot process the request example: Bad Request maxLength: 4096 pattern: ^.{0,4096}$ type: string functionalities: title: elenco funzionalità di PN description: >- Un array che comprende tutti i possibili valori dell'enum _PnFunctionality_ type: array items: $ref: '#/components/schemas/PnFunctionality' openIncidents: title: elenco disservizi correnti description: Al più uno per funzionalità type: array items: $ref: '#/components/schemas/PnDowntimeEntry' PreLoadRequest: title: Richiesta di precaricamento di un File type: object required: - sha256 properties: preloadIdx: title: Id della richiesta di precaricamento di un file description: >- Identificativo univoco all'interno della request HTTP, serve per correlare la risposta. Stringa alfanumerica con caratteri utilizzabili in un nome file. type: string minLength: 1 maxLength: 512 pattern: ^[a-zA-Z0-9._-]{1,512}$ contentType: title: MIME type del file che verrà caricato description: >- Il MIME type dell'allegato che dovrà essere caricato. Attualmente sono supportati - application/pdf - application/json type: string minLength: 15 maxLength: 16 pattern: ^application\/(pdf|json)$ sha256: title: checksum sha256 del file che verrà caricato description: >- checksum sha256, codificato in base 64, del contenuto binario del file che verrà caricato type: string example: jezIVxlG1M1woCSUngM6KipUN3/p8cG5RMIPnuEanlE= minLength: 44 maxLength: 44 pattern: ^[A-Za-z0-9+\/]{43}=|[A-Za-z0-9+\/]{44}$ PreLoadResponse: title: Informazioni per il caricamento file description: >- Per ogni richiesta che è stata fatta viene fornito un presigned URL e le informazioni per usarlo. type: object properties: preloadIdx: description: >- per correlazione con la richiesta. Stringa alfanumerica con caratteri utilizzabili in un file. type: string minLength: 1 maxLength: 512 pattern: ^[a-zA-Z0-9._-]{1,512}$ secret: description: >- Token aggiuntivo per far si che sia necessario intercettare anche gli header e non solo l'URL di upload del contenuto del documento. example: AZ23RF12 type: string httpMethod: description: >- Indica se per l'upload del contenuto file bisogna utilizzare il metodo PUT o POST type: string example: PUT enum: - POST - PUT url: description: URL a cui effettuare l'upload del contenuto del documento. type: string example: https://preloadpn.aws.amazon....... key: description: >- la chiave restituita sarà globalmente unica e andrà utilizzata nella richiesta di notifica. example: PN_NOTIFICATION_ATTACHMENTS-0001-301W-B9CB-9U72-WIKD type: string NotificationPriceResponse: title: Notification price Response description: Notification price and effective date type: object properties: iun: $ref: '#/components/schemas/IUN' amount: description: amount in euro cents type: integer format: int32 refinementDate: description: >- data di perfezionamento per decorrenza termini localizzata espressa alla mezzanotte del giorno in cui si verifica l'evento type: string format: date-time notificationViewDate: description: >- data di perfezionamento per presa visione espressa alla mezzanotte del giorno in cui si verifica l'evento type: string format: date-time NotificationPriceResponseV23: title: Notification price Response description: Notification price and effective date type: object properties: iun: $ref: '#/components/schemas/IUN' partialPrice: description: Costo totale di notificazione che non include la paFee e vat type: integer format: int32 totalPrice: description: >- Costo totale di notificazione che include la paFee e vat applicato ai costi cartacei. Se vat e paFee non sono valorizzati, verranno usati i loro valori di default (vedi /components/schemas/VatV23 e /components/schemas/PaFeeV23). type: integer format: int32 vat: $ref: '#/components/schemas/VatV23' paFee: $ref: '#/components/schemas/PaFeeV23' refinementDate: description: >- data di perfezionamento per decorrenza termini localizzata espressa alla mezzanotte del giorno in cui si verifica l'evento type: string format: date-time notificationViewDate: description: >- data di perfezionamento per presa visione espressa alla mezzanotte del giorno in cui si verifica l'evento type: string format: date-time sendFee: description: costo base di SeND per notificazione type: integer format: int32 analogCost: description: costo totale dei prodotti postali type: integer format: int32 NewNotificationResponse: title: Identificativi della richiesta di notifica description: >- Contiene le informazioni per identificare una richiesta di invio notifica che non è ancora stata accettata da Piattaforma notifiche. type: object required: - notificationRequestId - paProtocolNumber properties: notificationRequestId: type: string description: >- identificativo univoco di una richiesta di invio notifica, non è lo IUN maxLength: 36 pattern: ^[A-Za-z0-9+/=]{36}$ paProtocolNumber: type: string description: Identificativo inviato dalla pubblica amministrazione idempotenceToken: description: >- Ripetizione del token usato per disambiguare "richieste di notificazione" effettuate con lo stesso numero di protocollo (campo _paProtocolNumber_). type: string NewNotificationRequestStatusResponseV23: allOf: - $ref: '#/components/schemas/NewNotificationRequestV23' - type: object required: - notificationRequestId - notificationRequestStatus properties: notificationRequestId: description: >- identificativo univoco di una richiesta di invio notifica, non è lo IUN type: string notificationRequestStatus: description: >- - __WAITING__: in attesa di essere valutata - __ACCEPTED__: richiesta di notifica accettata, lo IUN è valorizzato - __REFUSED__: richiesta di notifica rifiutata, è valorizzato il campo _errors_ type: string retryAfter: type: integer format: int32 description: >- Numero di secondi da attendere prima di effettuare una nuova richiesta per la stessa entità; valorizzato quando lo status è __WAITING__. iun: $ref: '#/components/schemas/IUN' errors: description: >- Elenco degli errori che hanno causato il rifiuto della richiesta di notifica type: array items: $ref: '#/components/schemas/ProblemError' Problem: properties: type: description: URI reference of type definition type: string status: description: >- The HTTP status code generated by the origin server for this occurrence of the problem. type: integer format: int32 example: 503 maximum: 600 minimum: 100 exclusiveMaximum: true title: description: >- A short, summary of the problem type. Written in english and readable example: Service Unavailable maxLength: 64 pattern: ^[ -~]{0,64}$ type: string detail: description: A human readable explanation of the problem. example: Request took too long to complete. maxLength: 4096 pattern: ^.{0,4096}$ type: string traceId: description: Internal support identifier associated to error example: 123e4567-e89b-12d3-a456-426614174000 type: string timestamp: description: date and time referred to UTC example: '2022-07-27T12:22:33.444Z' type: string format: date-time errors: type: array minItems: 1 items: $ref: '#/components/schemas/ProblemError' required: - status - errors ProblemError: properties: code: description: Internal code of the error, in human-readable format example: >- PN_PARAMETER_TOO_LONG | PN_PARAMETER_TOO_SHORT | PN_DUPLICATE_ENTRY | etc... type: string element: description: Parameter or request body field name for validation error example: body.order.item[2].quantity type: string detail: description: >- A human readable explanation specific to this occurrence of the problem. example: Parameter not valid maxLength: 1024 type: string required: - code FullSentNotificationV24: description: >- Le informazioni riguardanti una notifica (richiesta di notifica accettata) e il processo di inoltro della notifica verso il cittadino. allOf: - $ref: '#/components/schemas/SentNotificationV23' - type: object required: - notificationStatus - notificationStatusHistory - timeline properties: notificationStatus: $ref: '#/components/schemas/NotificationStatus' notificationStatusHistory: $ref: '#/components/schemas/NotificationStatusHistory' timeline: description: >- elenco dettagliato di tutto ciò che è accaduto durrante il processo di notifica type: array items: $ref: '#/components/schemas/TimelineElementV24' PaymentEventsRequestPagoPa: title: Invio eventi di pagamento da PA a PN description: >- Richiesta contenente un array di eventi di pagamento di tipo PagoPA di cui una Pubblica Amministrazione deve avvisare Piattaforma Notifiche. type: object required: - events properties: events: description: Elenco degli eventi di pagamento type: array items: $ref: '#/components/schemas/PaymentEventPagoPa' PaymentEventsRequestF24: title: Invio eventi di pagamento da PA a PN description: >- Richiesta contenente un array di eventi di pagamento di tipo F24 di cui una Pubblica Amministrazione deve avvisare Piattaforma Notifiche. type: object required: - events properties: events: description: Elenco degli eventi di pagamento type: array items: $ref: '#/components/schemas/PaymentEventF24' PaymentEventPagoPa: title: Evento di pagamento PagoPa description: |- Comprende:
- _noticeCode_: "codice avviso pagoPA" di pagamento del sistema pagoPA, usato per pagamento online.
- _creditorTaxId_: codice fiscale dell'ente a cui fa riferimento il "codice avviso pagoPA".
- data e ora del pagamento.
- importo del pagamento in eurocent.
type: object required: - noticeCode - creditorTaxId - paymentDate - amount properties: noticeCode: $ref: '#/components/schemas/noticeCode' creditorTaxId: $ref: '#/components/schemas/paTaxId' paymentDate: type: string pattern: >- ^([0-9]{4})-([0-9]{2})-([0-9]{2})T([0-9]{2}):([0-9]{2}):([0-9]{2})(\.[0-9]+)?(Z|([+\-][0-9]{2}):([0-9]{2}))$ description: data e ora in formato ISO 8601 amount: type: integer format: int32 PaymentEventF24: title: Evento di pagamento F24 description: |- Comprende:
- lo _IUN_ della notifica pagata,
- data e ora del pagamento,
- il codice fiscale del destinatario pagatore,
- la tipologia del destinatario pagatore (PF / PG),
- importo del pagamento in eurocent.
type: object required: - iun - paymentDate - recipientTaxId - recipientType - amount properties: iun: type: string minLength: 25 maxLength: 25 pattern: ^[A-Z]{4}-[A-Z]{4}-[A-Z]{4}-[0-9]{6}-[A-Z]{1}-[0-9]{1}$ paymentDate: type: string format: date-time recipientTaxId: $ref: '#/components/schemas/TaxId' recipientType: type: string minLength: 2 maxLength: 2 pattern: PF|PG amount: type: integer format: int32 TimelineElementV24: type: object additionalProperties: false properties: elementId: type: string maxLength: 512 description: >- Identificativo dell'elemento di timeline: insieme allo IUN della notifica definisce in maniera univoca l'elemento di timeline timestamp: type: string deprecated: true description: >- Istante in cui avviene l'evento descritto in questo elemento di timeline (deprecato, fare riferimento al campo eventTimestamp) format: date-time ingestionTimestamp: type: string description: >- Istante in cui l'evento descritto in questo elemento di timeline è gestito da SEND format: date-time eventTimestamp: type: string description: >- Istante in cui avviene l'evento descritto in questo elemento di timeline format: date-time notificationSentAt: type: string description: Momento di ricezione della richiesta di notifica da parte di SEND format: date-time legalFactsIds: type: array items: $ref: '#/components/schemas/LegalFactsId' description: >- Chiavi dei documenti che provano l'effettivo accadimento dell'evento descritto in timeline. Questo elemento category: $ref: '#/components/schemas/TimelineElementCategoryV23' details: $ref: '#/components/schemas/TimelineElementDetailsV23' NotificationStatus: type: string description: | stato di avanzamento del processo di notifica: * `IN_VALIDATION` - notifica depositata in attesa di validazione * `ACCEPTED` - L'ente ha depositato la notifica con successo * `REFUSED` - Notifica rifiutata a seguito della validazione * `DELIVERING` - L'invio della notifica è in corso * `DELIVERED` - La notifica è stata consegnata a tutti i destinatari * `VIEWED` - Il destinatario ha letto la notifica entro il termine stabilito * `EFFECTIVE_DATE` - Il destinatario non ha letto la notifica entro il termine stabilito * `UNREACHABLE` - Il destinatario non è reperibile * `CANCELLED` - L'ente ha annullato l'invio della notifica * `PAID` - [DEPRECATO] Uno dei destinatari ha pagato la notifica enum: - IN_VALIDATION - ACCEPTED - REFUSED - DELIVERING - DELIVERED - VIEWED - EFFECTIVE_DATE - PAID - UNREACHABLE - CANCELLED NotificationStatusHistory: description: elenco degli avanzamenti effettuati dal processo di notifica type: array items: $ref: '#/components/schemas/NotificationStatusHistoryElement' LegalFactDownloadMetadataResponse: title: Url e metadati per il download di un allegato di una notifica description: |- I due campi più importanti sono __url__ e __retryAfter__.
- __url__ è presente se il file è pronto per essere scaricato ed indica l'url a cui fare GET. - __retryAfter__ indica che il file non è stato archiviato e bisognerà aspettare un numero di secondi non inferiore a quanto indicato dal campo _retryAfter_.
type: object required: - filename - contentLength properties: filename: type: string contentLength: type: number format: decimal32 example: 54092 description: dimensione, in byte, del contenuto. url: type: string description: >- URL preautorizzato a cui effettuare una richiesta GET per ottenere il contenuto del documento. Presente solo se il documento è pronto per il download. retryAfter: type: number format: decimal32 description: >- Stima del numero di secondi da aspettare prima che il contenuto del documento sia scaricabile. F24Metadata: type: object description: >- è richiesto uno e uno solo tra le propeties f24Standard, f24Simplified, f24Excise, f24Elid properties: f24Standard: nullable: true allOf: - $ref: '#/components/schemas/F24Standard' f24Simplified: nullable: true allOf: - $ref: '#/components/schemas/F24Simplified' f24Excise: nullable: true allOf: - $ref: '#/components/schemas/F24Excise' f24Elid: nullable: true allOf: - $ref: '#/components/schemas/F24Elid' RequestStatus: description: Response to cancellation async call type: object properties: status: description: | Cancellation request status: - OK type: string details: type: array maxItems: 9999 items: $ref: '#/components/schemas/StatusDetail' required: - status NewNotificationRequest: description: I campi utilizzati per la creazione di una nuova Notifica. type: object required: - paProtocolNumber - subject - recipients - documents - physicalCommunicationType - notificationFeePolicy - senderDenomination - senderTaxId - taxonomyCode properties: idempotenceToken: description: >- Identificativo utilizzabile dal chiamante per disambiguare differenti "richieste di notificazione" effettuate con lo stesso numero di protocollo (campo _paProtocolNumber_). Questo può essere necessario in caso di "richiesta di notifica" rifiutata per errori nei codici di verifica degli allegati. type: string pattern: ^[ -~]*$ maxLength: 256 paProtocolNumber: description: Numero di protocollo che la PA mittente assegna alla notifica stessa type: string pattern: ^.*$ maxLength: 256 subject: type: string description: titolo della notifica, NON inserire dati personali/sensibili minLength: 10 maxLength: 134 pattern: ^.*$ abstract: type: string description: >- descrizione sintetica della notifica, NON inserire dati personali/sensibili pattern: ^.*$ maxLength: 1024 recipients: type: array description: Informazioni sui destinatari items: $ref: '#/components/schemas/NotificationRecipient' documents: type: array description: Documenti notificati items: $ref: '#/components/schemas/NotificationDocument' minItems: 1 notificationFeePolicy: $ref: '#/components/schemas/NotificationFeePolicy' cancelledIun: $ref: '#/components/schemas/IUN' physicalCommunicationType: type: string description: Tipologia comunicazione fisica enum: - AR_REGISTERED_LETTER - REGISTERED_LETTER_890 senderDenomination: $ref: '#/components/schemas/Denomination' senderTaxId: $ref: '#/components/schemas/paTaxId' group: type: string description: Gruppo di utenti dell'ente mittente che può visualizzare la notifica pattern: ^[ -~]*$ maxLength: 1024 amount: type: integer format: int32 description: Importo della notifica in eurocent paymentExpirationDate: type: string minLength: 10 maxLength: 10 pattern: ^([0-9]{4})-(1[0-2]|0[1-9])-(3[01]|[12][0-9]|0[1-9])$ description: >- Data di scadenza del pagamento nel formato YYYY-MM-DD riferito all'Italia taxonomyCode: type: string minLength: 7 maxLength: 7 pattern: ^([0-9]{6}[A-Z]{1})$ description: >- Codice tassonomico della notifica basato sulla definizione presente nell'allegato 2 capitolo C del bando [__AVVISO PUBBLICO MISURA 1.4.5 PIATTAFORMA NOTIFICHE DIGITALI__](https://pnrrcomuni.fondazioneifel.it/bandi_public/Bando/325) pagoPaIntMode: type: string description: >- Modalitá di integrazione pagoPA per l'attualizazione del costo della notifica.
- _NONE_: nessuna attualizzazione.
- _SYNC_: modalitá sincrona.
- _ASYNC_: modalitá asincrona. (Non ancora supportata)
enum: - NONE - SYNC - ASYNC SentNotification: description: Le informazioni riguardanti una richiesta di notifica accettata allOf: - $ref: '#/components/schemas/NewNotificationRequest' - type: object required: - iun - sentAt properties: senderPaId: type: string description: >- Identificativo (non IPA) della PA mittente che ha eseguito l'onboarding su SelfCare. pattern: ^.*$ maxLength: 256 iun: $ref: '#/components/schemas/IUN' sentAt: type: string description: Momento di ricezione della notifica da parte di PN format: date-time cancelledByIun: $ref: '#/components/schemas/IUN' documentsAvailable: type: boolean description: Indica se i documenti notificati sono ancora disponibili. NewNotificationRequestV21: description: I campi utilizzati per la creazione di una nuova Notifica. type: object required: - paProtocolNumber - subject - recipients - documents - physicalCommunicationType - notificationFeePolicy - senderDenomination - senderTaxId - taxonomyCode properties: idempotenceToken: description: >- Identificativo utilizzabile dal chiamante per disambiguare differenti "richieste di notificazione" effettuate con lo stesso numero di protocollo (campo _paProtocolNumber_). Questo può essere necessario in caso di "richiesta di notifica" rifiutata per errori nei codici di verifica degli allegati. type: string pattern: ^[ -~]*$ maxLength: 256 paProtocolNumber: description: Numero di protocollo che la PA mittente assegna alla notifica stessa type: string pattern: ^.*$ maxLength: 256 subject: type: string description: titolo della notifica maxLength: 134 pattern: ^.*$ abstract: type: string description: descrizione sintetica della notifica pattern: ^.*$ maxLength: 1024 recipients: type: array description: Informazioni sui destinatari items: $ref: '#/components/schemas/NotificationRecipientV21' documents: type: array description: Documenti notificati items: $ref: '#/components/schemas/NotificationDocument' minItems: 1 notificationFeePolicy: $ref: '#/components/schemas/NotificationFeePolicy' cancelledIun: $ref: '#/components/schemas/IUN' physicalCommunicationType: type: string description: Tipologia comunicazione fisica enum: - AR_REGISTERED_LETTER - REGISTERED_LETTER_890 senderDenomination: $ref: '#/components/schemas/Denomination' senderTaxId: $ref: '#/components/schemas/paTaxId' group: type: string description: Gruppo di utenti dell'ente mittente che può visualizzare la notifica pattern: ^[ -~]*$ maxLength: 1024 amount: type: integer format: int32 description: Importo della notifica in eurocent paymentExpirationDate: type: string minLength: 10 maxLength: 10 pattern: ^([0-9]{4})-(1[0-2]|0[1-9])-(3[01]|[12][0-9]|0[1-9])$ description: >- Data di scadenza del pagamento nel formato YYYY-MM-DD riferito all'Italia taxonomyCode: type: string minLength: 7 maxLength: 7 pattern: ^([0-9]{6}[A-Z]{1})$ description: >- Codice tassonomico della notifica basato sulla definizione presente nell'allegato 2 capitolo C del bando [__AVVISO PUBBLICO MISURA 1.4.5 PIATTAFORMA NOTIFICHE DIGITALI__](https://pnrrcomuni.fondazioneifel.it/bandi_public/Bando/325) paFee: $ref: '#/components/schemas/PaFeeV21' vat: $ref: '#/components/schemas/VatV21' pagoPaIntMode: type: string description: >- Modalitá di integrazione pagoPA per l'attualizazione del costo della notifica.
- _NONE_: nessuna attualizzazione.
- _SYNC_: modalitá sincrona.
- _ASYNC_: modalitá asincrona. (non ancora supportata)
enum: - NONE - SYNC - ASYNC SentNotificationV21: description: Le informazioni riguardanti una richiesta di notifica accettata allOf: - $ref: '#/components/schemas/NewNotificationRequestV21' - type: object required: - iun - sentAt properties: senderPaId: type: string description: >- Identificativo (non IPA) della PA mittente che ha eseguito l'onboarding su SelfCare. pattern: ^.*$ maxLength: 256 iun: $ref: '#/components/schemas/IUN' sentAt: type: string description: Momento di ricezione della notifica da parte di PN format: date-time cancelledByIun: $ref: '#/components/schemas/IUN' documentsAvailable: type: boolean description: Indica se i documenti notificati sono ancora disponibili. NewNotificationRequestStatusResponse: allOf: - $ref: '#/components/schemas/NewNotificationRequest' - type: object required: - notificationRequestId - notificationRequestStatus properties: notificationRequestId: description: >- identificativo univoco di una richiesta di invio notifica, non è lo IUN type: string notificationRequestStatus: description: >- - __WAITING__: in attesa di essere valutata - __ACCEPTED__: richiesta di notifica accettata, lo IUN è valorizzato - __REFUSED__: richiesta di notifica rifiutata, è valorizzato il campo _errors_ type: string retryAfter: type: integer format: int32 description: >- Numero di secondi da attendere prima di effettuare una nuova richiesta per la stessa entità; valorizzato quando lo status è __WAITING__. iun: $ref: '#/components/schemas/IUN' errors: description: >- Elenco degli errori che hanno causato il rifiuto della richiesta di notifica type: array items: $ref: '#/components/schemas/ProblemError' NewNotificationRequestStatusResponseV21: allOf: - $ref: '#/components/schemas/NewNotificationRequestV21' - type: object required: - notificationRequestId - notificationRequestStatus properties: notificationRequestId: description: >- identificativo univoco di una richiesta di invio notifica, non è lo IUN type: string notificationRequestStatus: description: >- - __WAITING__: in attesa di essere valutata - __ACCEPTED__: richiesta di notifica accettata, lo IUN è valorizzato - __REFUSED__: richiesta di notifica rifiutata, è valorizzato il campo _errors_ type: string retryAfter: type: integer format: int32 description: >- Numero di secondi da attendere prima di effettuare una nuova richiesta per la stessa entità; valorizzato quando lo status è __WAITING__. iun: $ref: '#/components/schemas/IUN' errors: description: >- Elenco degli errori che hanno causato il rifiuto della richiesta di notifica type: array items: $ref: '#/components/schemas/ProblemError' FullSentNotification: description: >- Le informazioni riguardanti una notifica (richiesta di notifica accettata) e il processo di inoltro della notifica verso il cittadino. allOf: - $ref: '#/components/schemas/SentNotification' - type: object required: - notificationStatus - notificationStatusHistory - timeline properties: notificationStatus: $ref: '#/components/schemas/NotificationStatus' notificationStatusHistory: $ref: '#/components/schemas/NotificationStatusHistory' timeline: description: >- elenco dettagliato di tutto ciò che è accaduto durrante il processo di notifica type: array items: $ref: '#/components/schemas/TimelineElement' FullSentNotificationV20: description: >- Le informazioni riguardanti una notifica (richiesta di notifica accettata) e il processo di inoltro della notifica verso il cittadino. allOf: - $ref: '#/components/schemas/SentNotification' - type: object required: - notificationStatus - notificationStatusHistory - timeline properties: notificationStatus: $ref: '#/components/schemas/NotificationStatus' notificationStatusHistory: $ref: '#/components/schemas/NotificationStatusHistory' timeline: description: >- elenco dettagliato di tutto ciò che è accaduto durrante il processo di notifica type: array items: $ref: '#/components/schemas/TimelineElementV20' FullSentNotificationV21: description: >- Le informazioni riguardanti una notifica (richiesta di notifica accettata) e il processo di inoltro della notifica verso il cittadino. allOf: - $ref: '#/components/schemas/SentNotificationV21' - type: object required: - notificationStatus - notificationStatusHistory - timeline properties: notificationStatus: $ref: '#/components/schemas/NotificationStatus' notificationStatusHistory: $ref: '#/components/schemas/NotificationStatusHistory' timeline: description: >- elenco dettagliato di tutto ciò che è accaduto durrante il processo di notifica type: array items: $ref: '#/components/schemas/TimelineElementV20' FullSentNotificationV23: description: >- Le informazioni riguardanti una notifica (richiesta di notifica accettata) e il processo di inoltro della notifica verso il cittadino. allOf: - $ref: '#/components/schemas/SentNotificationV23' - type: object required: - notificationStatus - notificationStatusHistory - timeline properties: notificationStatus: $ref: '#/components/schemas/NotificationStatus' notificationStatusHistory: $ref: '#/components/schemas/NotificationStatusHistory' timeline: description: >- elenco dettagliato di tutto ciò che è accaduto durrante il processo di notifica type: array items: $ref: '#/components/schemas/TimelineElementV23' PaFeeV21: type: integer description: >- Costo espresso in eurocent che la PA imputa per la notifica.
Obbligatoria per notifiche con notificationFeePolicy=DELIVERY_MODE e modalità di integrazione Async o modalità di pagamento F24.
Il default nei casi di non obbligatorietà è 100
Esempio paFee ad 1€ -> 100
format: int32 minimum: 0 maximum: 100 VatV21: type: integer description: >- IVA espressa in percentuale imposta al mittente sulla notifica analogica.
Obbligatoria per notifiche con notificationFeePolicy=DELIVERY_MODE e modalità di integrazione Async o modalità di pagamento F24.
Il default nei casi di non obbligatorietà è 22
Per rispettare retro-compatibilitá campo non restituito nelle API v2.1
Esempio vat al 22% -> 22
format: int32 minimum: 0 maximum: 100 NotificationRecipient: description: Informazioni sui destinatari required: - denomination - recipientType - taxId - physicalAddress type: object properties: recipientType: type: string description: >- Tipologia di destinatario: Persona Fisica (PF) o Persona Giuridica (PG) enum: - PF - PG taxId: $ref: '#/components/schemas/TaxId' denomination: $ref: '#/components/schemas/Denomination' digitalDomicile: $ref: '#/components/schemas/NotificationDigitalAddress' physicalAddress: $ref: '#/components/schemas/NotificationPhysicalAddress' payment: $ref: '#/components/schemas/NotificationPaymentInfo' NotificationRecipientV21: description: Informazioni sui destinatari required: - denomination - recipientType - taxId - physicalAddress type: object additionalProperties: false properties: recipientType: type: string description: >- Tipologia di destinatario: Persona Fisica (PF) o Persona Giuridica (PG) enum: - PF - PG taxId: $ref: '#/components/schemas/TaxId' denomination: $ref: '#/components/schemas/Denomination' digitalDomicile: $ref: '#/components/schemas/NotificationDigitalAddress' physicalAddress: $ref: '#/components/schemas/NotificationPhysicalAddress' payments: $ref: '#/components/schemas/NotificationPayments' TimelineElement: type: object additionalProperties: false properties: elementId: type: string description: >- Identificativo dell'elemento di timeline: insieme allo IUN della notifica definisce in maniera univoca l'elemento di timeline timestamp: type: string description: >- Momento in cui avviene l'evento descritto in questo elemento di timeline format: date-time legalFactsIds: type: array items: $ref: '#/components/schemas/LegalFactsId' description: >- Chiavi dei documenti che provano l'effettivo accadimento dell'evento descritto in timeline. Questo elemento category: $ref: '#/components/schemas/TimelineElementCategory' details: $ref: '#/components/schemas/TimelineElementDetails' TimelineElementV20: type: object additionalProperties: false properties: elementId: type: string description: >- Identificativo dell'elemento di timeline: insieme allo IUN della notifica definisce in maniera univoca l'elemento di timeline timestamp: type: string description: >- Momento in cui avviene l'evento descritto in questo elemento di timeline format: date-time legalFactsIds: type: array items: $ref: '#/components/schemas/LegalFactsId' description: >- Chiavi dei documenti che provano l'effettivo accadimento dell'evento descritto in timeline. Questo elemento category: $ref: '#/components/schemas/TimelineElementCategoryV20' details: $ref: '#/components/schemas/TimelineElementDetailsV20' TimelineElementV23: type: object additionalProperties: false properties: elementId: type: string maxLength: 512 description: >- Identificativo dell'elemento di timeline: insieme allo IUN della notifica definisce in maniera univoca l'elemento di timeline timestamp: type: string description: >- Momento in cui avviene l'evento descritto in questo elemento di timeline format: date-time legalFactsIds: type: array items: $ref: '#/components/schemas/LegalFactsId' description: >- Chiavi dei documenti che provano l'effettivo accadimento dell'evento descritto in timeline. Questo elemento category: $ref: '#/components/schemas/TimelineElementCategoryV23' details: $ref: '#/components/schemas/TimelineElementDetailsV23' PnFunctionality: title: Funzionalità di PN description: >- - __NOTIFICATION_CREATE__: la possibilità di creare nuove notifiche. - __NOTIFICATION_VISUALIZATION__: la possibilità di visualizzare le notifiche e scaricare gli atti. - __NOTIFICATION_WORKFLOW__: l'avanzamento del processo di notifica. type: string enum: - NOTIFICATION_CREATE - NOTIFICATION_VISUALIZATION - NOTIFICATION_WORKFLOW x-enum-varnames: - NOTIFICATION_CREATE - NOTIFICATION_VISUALIZATION - NOTIFICATION_WORKFLOW PnFunctionalityStatus: type: string enum: - KO - OK PnDowntimeEntry: title: Dati relativi ad un disservizio di PN. type: object required: - functionality - status - startDate properties: functionality: $ref: '#/components/schemas/PnFunctionality' status: $ref: '#/components/schemas/PnFunctionalityStatus' startDate: title: data inizio disservizio type: string format: date-time endDate: title: data fine disservizio description: >- se il disservizio è ancora attivo questo campo sarà assente o con valore _null_ type: string format: date-time legalFactId: title: id dell'atto opponibile a terzi description: >- Se assente o valorizzato _null_ indica che l'atto opponibile a terzi non è ancora disponibile. Questo avviene per i disservizi ancora aperti e per i disservizi terminati da pochi minuti.
Questo valore è da utilizzare con l'API _getLegalFact_ di questo stesso servizio. type: string fileAvailable: type: boolean TaxId: description: C.F. persona fisica o persona giuridica type: string minLength: 11 maxLength: 16 pattern: >- ^([A-Z]{6}[0-9LMNPQRSTUV]{2}[A-Z]{1}[0-9LMNPQRSTUV]{2}[A-Z]{1}[0-9LMNPQRSTUV]{3}[A-Z]{1})|([0-9]{11})$ Denomination: description: >- Denominazione ente o persona fisica / ragione sociale. La codifica prevede i caratteri ISO LATIN 1, senza | e senza i caratteri di controllo, ovvero la seguente regexp: ^[ -{}~\u00A0-ÿ]*$ type: string minLength: 1 maxLength: 44 pattern: ^.*$ NotificationDigitalAddress: description: Indirizzo di invio della notifica required: - address - type type: object properties: type: type: string description: tipo di indirizzo PEC, REM, SERCQ, ... enum: - PEC address: type: string example: account@domain.it description: >- Indirizzo PEC o REM che il mittente della notifica intende utilizzare per raggiungere il destinatario. pattern: >- ^(?:[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*|"(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21\x23-\x5b\x5d-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])*")@(?:(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?\.)+[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?|\[(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?|[a-zA-Z0-9-]*[a-zA-Z0-9]:(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21-\x5a\x53-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])+)\])$ maxLength: 320 NotificationPhysicalAddress: description: Indirizzo fisico type: object required: - address - municipality properties: at: type: string description: Campo "presso" dell'indirizzo pattern: ^.*$ maxLength: 256 address: type: string description: Indirizzo del domicilio fisico pattern: ^.*$ minLength: 2 maxLength: 1024 addressDetails: type: string description: Seconda riga dell'indirizzo fisico pattern: ^.*$ maxLength: 1024 zip: type: string description: >- Codice di avviamento postale. In caso di invio estero diventa facoltativo minLength: 0 maxLength: 15 pattern: ^(\w|\ |\-)*$ municipality: type: string description: Comune pattern: ^.*$ minLength: 2 maxLength: 256 municipalityDetails: type: string description: Frazione o località pattern: ^.*$ maxLength: 256 province: type: string description: Provincia pattern: ^.*$ maxLength: 256 foreignState: type: string description: Denominazione paese estero pattern: ^.*$ maxLength: 256 noticeCode: description: Payment notice number numero avviso example: '302000100000019421' type: string maxLength: 18 minLength: 18 pattern: ^\d+$ paTaxId: description: Payment PA fiscal code example: '77777777777' type: string maxLength: 11 minLength: 11 pattern: ^\d+$ NotificationAttachmentDigests: description: Codici per la verifica del corretto caricamento di un allegato type: object required: - sha256 properties: sha256: type: string description: Digest "sha256" della codifica binaria dell'allegato in base64 example: jezIVxlG1M1woCSUngM6KipUN3/p8cG5RMIPnuEanlE= minLength: 44 maxLength: 44 pattern: ^[A-Za-z0-9+\/]{43}=|[A-Za-z0-9+\/]{44}$ NotificationAttachmentBodyRef: description: Riferimento all'allegato precaricato required: - key - versionToken type: object properties: key: type: string description: Chiave in cui è stato salvato l'allegato maxLength: 512 pattern: ^(safestorage:\/\/)?[A-Za-z0-9._-]+$ versionToken: type: string description: >- Token per recuperare l'esatta istanza dell'allegato, che dovrà coincidere con l'__x-amz-version-id__ ottenuto nell'header della response in fase di upload del documento ad esso associato. pattern: ^.*$ maxLength: 256 NotificationAttachment: description: Un allegato della notifica. type: object required: - digests - contentType - ref properties: digests: $ref: '#/components/schemas/NotificationAttachmentDigests' contentType: type: string description: tipo di contenuto dell'allegato, supportato application/pdf minLength: 15 maxLength: 15 pattern: ^application\/pdf$ ref: $ref: '#/components/schemas/NotificationAttachmentBodyRef' NotificationPaymentAttachment: description: Un modulo di pagamento allegato alla notifica allOf: - $ref: '#/components/schemas/NotificationAttachment' PagoPaPayment: title: Informazioni per effettuare il pagamento con sistema pagoPA description: >- Informazioni utili per effettuare il pagamento di una notifica, sono associate al destinatario perché le spese di notifica possono differire a seconda del canale di notifica utilizzato.
- _noticeCode_: "codice avviso pagoPA" di pagamento del sistema pagoPA, usato per pagamento online.
- _creditorTaxId_: codice fiscale dell'ente a cui fa riferimento il "codice avviso pagoPA".
- _applyCost_: flag per indicare se l'avviso pagoPA deve contenere i costi di notifica.
- _pagoPaForm_: riferimento al PDF contenete il bollettino pagoPA
type: object required: - noticeCode - creditorTaxId - applyCost properties: noticeCode: $ref: '#/components/schemas/noticeCode' creditorTaxId: $ref: '#/components/schemas/paTaxId' applyCost: type: boolean nullable: false description: >- Flag per indicare se l'avviso pagoPa deve contenere i costi di notifica attachment: $ref: '#/components/schemas/NotificationPaymentAttachment' NotificationMetadataAttachment: description: Un metadato allegato della notifica. type: object required: - digests - contentType - ref properties: digests: $ref: '#/components/schemas/NotificationAttachmentDigests' contentType: type: string description: tipo di contenuto dell'allegato, supportato application/json minLength: 16 maxLength: 16 pattern: ^application\/json$ ref: $ref: '#/components/schemas/NotificationAttachmentBodyRef' F24Payment: title: Informazioni per effettuare il pagamento tramite modello F24 description: >- Informazioni utili per effettuare il pagamento di una notifica, sono associate al destinatario perché le spese di notifica possono differire a seconda del canale di notifica utilizzato.
- _title_: titolo del documento pdf da mostrare all'utente .
- _applyCost_: flag per indicare se il modello F24 deve contenere i costi di notifica.
- _metadataAttachment_: riferimento ai metadati per la generazione del modello F24.
type: object required: - title - applyCost - metadataAttachment properties: title: description: Titolo del documento pdf da mostrare all'utente type: string applyCost: type: boolean nullable: false description: Flag per indicare se il modello F24 deve contere i costi di notifica metadataAttachment: $ref: '#/components/schemas/NotificationMetadataAttachment' NotificationPaymentItem: minProperties: 1 additionalProperties: false nullable: false properties: pagoPa: $ref: '#/components/schemas/PagoPaPayment' f24: $ref: '#/components/schemas/F24Payment' NotificationPayments: title: Pagamenti collegati alla notifica per il destinatario description: >- Lista dei pagamenti collegati alla notifica per il destinatario. Possono essere pagamenti rateali o alternativi type: array items: $ref: '#/components/schemas/NotificationPaymentItem' NotificationRecipientV23: description: Informazioni sui destinatari required: - denomination - recipientType - taxId - physicalAddress type: object additionalProperties: false properties: recipientType: type: string description: >- Tipologia di destinatario: Persona Fisica (PF) o Persona Giuridica (PG) enum: - PF - PG taxId: $ref: '#/components/schemas/TaxId' denomination: $ref: '#/components/schemas/Denomination' digitalDomicile: $ref: '#/components/schemas/NotificationDigitalAddress' physicalAddress: $ref: '#/components/schemas/NotificationPhysicalAddress' payments: $ref: '#/components/schemas/NotificationPayments' NotificationDocument: description: Un documento da notificare allOf: - $ref: '#/components/schemas/NotificationAttachment' - type: object properties: title: type: string description: >- Titolo del documento allegato. Stringa alfanumerica con caratteri utilizzabili in un nome file. minLength: 1 maxLength: 512 pattern: ^.*$ docIdx: type: string description: Indice del documento partendo da 0. maxLength: 3 pattern: ^\d+$ NotificationFeePolicy: type: string description: >- Politica di addebitamento dei costi di notifica.
- _FLAT_RATE_: costo forfettario fisso. In questa modalità SEND non gestisce il costo della notifica per il destinatario.
- _DELIVERY_MODE_: costo calcolato in base all'effettivo percorso di notifica.
enum: - FLAT_RATE - DELIVERY_MODE IUN: description: Identificativo Univoco Notifica type: string minLength: 25 maxLength: 25 pattern: ^[A-Z]{4}-[A-Z]{4}-[A-Z]{4}-[0-9]{6}-[A-Z]{1}-[0-9]{1}$ PaFeeV23: type: integer description: >- Costo espresso in eurocent sostenuto dal mittente, per l'elaborazione degli atti, provvedimenti, avvisi e comunicazioni oggetto di notifica, per il relativo deposito sulla piattaforma e per la gestione degli esiti della notifica (Decreto 30 maggio 2022 - Art. 3, comma 1, lettera a).
Obbligatoria per notifiche con notificationFeePolicy=DELIVERY_MODE
Per le notifiche effettuate con versioni precedenti alla 2.3 si assume il valore di default 100.
Esempio paFee ad 1€ -> 100
format: int32 minimum: 0 maximum: 100 VatV23: type: integer description: >- IVA espressa in percentuale sui costi degli avvisi in formato cartaceo.
Obbligatoria per notifiche con notificationFeePolicy=DELIVERY_MODE.
Per le notifiche effettuate con versioni precedenti alla 2.3 si assume il valore di default 22.
Esempio vat al 22% -> 22
format: int32 minimum: 0 maximum: 100 NewNotificationRequestV23: description: I campi utilizzati per la creazione di una nuova Notifica. type: object required: - paProtocolNumber - subject - recipients - documents - physicalCommunicationType - notificationFeePolicy - senderDenomination - senderTaxId - taxonomyCode properties: idempotenceToken: description: >- Identificativo utilizzabile dal chiamante per disambiguare differenti "richieste di notificazione" effettuate con lo stesso numero di protocollo (campo _paProtocolNumber_). Questo può essere necessario in caso di "richiesta di notifica" rifiutata per errori nei codici di verifica degli allegati. type: string pattern: ^[ -~]*$ maxLength: 256 paProtocolNumber: description: Numero di protocollo che la PA mittente assegna alla notifica stessa type: string pattern: ^.*$ maxLength: 256 subject: type: string description: titolo della notifica maxLength: 134 pattern: ^.*$ abstract: type: string description: descrizione sintetica della notifica pattern: ^.*$ maxLength: 1024 recipients: type: array description: Informazioni sui destinatari items: $ref: '#/components/schemas/NotificationRecipientV23' minItems: 1 documents: type: array description: Documenti notificati items: $ref: '#/components/schemas/NotificationDocument' minItems: 1 notificationFeePolicy: $ref: '#/components/schemas/NotificationFeePolicy' cancelledIun: $ref: '#/components/schemas/IUN' physicalCommunicationType: type: string description: Tipologia comunicazione fisica enum: - AR_REGISTERED_LETTER - REGISTERED_LETTER_890 senderDenomination: $ref: '#/components/schemas/Denomination' senderTaxId: $ref: '#/components/schemas/paTaxId' group: type: string description: Gruppo di utenti dell'ente mittente che può visualizzare la notifica pattern: ^[ -~]*$ maxLength: 1024 amount: type: integer format: int32 description: Importo della notifica in eurocent paymentExpirationDate: type: string minLength: 10 maxLength: 10 pattern: ^([0-9]{4})-(1[0-2]|0[1-9])-(3[01]|[12][0-9]|0[1-9])$ description: >- Data di scadenza del pagamento nel formato YYYY-MM-DD riferito all'Italia taxonomyCode: type: string minLength: 7 maxLength: 7 pattern: ^([0-9]{6}[A-Z]{1})$ description: >- Codice tassonomico della notifica basato sulla definizione presente nell'allegato 2 capitolo C del bando [__AVVISO PUBBLICO MISURA 1.4.5 PIATTAFORMA NOTIFICHE DIGITALI__](https://pnrrcomuni.fondazioneifel.it/bandi_public/Bando/325) paFee: $ref: '#/components/schemas/PaFeeV23' vat: $ref: '#/components/schemas/VatV23' pagoPaIntMode: type: string description: >- Modalitá di integrazione pagoPA per l'attualizazione del costo della notifica.
- _NONE_: nessuna attualizzazione.
- _SYNC_: modalitá sincrona.
- _ASYNC_: modalitá asincrona.
enum: - NONE - SYNC - ASYNC SentNotificationV23: description: Le informazioni riguardanti una richiesta di notifica accettata allOf: - $ref: '#/components/schemas/NewNotificationRequestV23' - type: object required: - iun - sentAt properties: senderPaId: type: string description: >- Identificativo (non IPA) della PA mittente che ha eseguito l'onboarding su SelfCare. pattern: ^.*$ maxLength: 256 iun: $ref: '#/components/schemas/IUN' sentAt: type: string description: Momento di ricezione della notifica da parte di PN format: date-time cancelledByIun: $ref: '#/components/schemas/IUN' documentsAvailable: type: boolean description: Indica se i documenti notificati sono ancora disponibili. TimelineElementId: type: string NotificationStatusHistoryElement: description: elenco degli avanzamenti effettuati dal processo di notifica type: object required: - status - activeFrom - relatedTimelineElements properties: status: $ref: '#/components/schemas/NotificationStatus' activeFrom: type: string description: data e ora di raggiungimento dello stato di avanzamento format: date-time relatedTimelineElements: type: array description: Eventi avvenuti nello stato items: $ref: '#/components/schemas/TimelineElementId' LegalFactCategory: title: Tipi di atti opponibili a terzi description: >- Tipi di atti opponibili a terzi che Piattaforma Notifiche mette a disposizione dei suoi utenti. - _SENDER_ACK_: atto di "presa in carico" di una notifica - _DIGITAL_DELIVERY_: ... type: string enum: - SENDER_ACK - DIGITAL_DELIVERY - ANALOG_DELIVERY - RECIPIENT_ACCESS - PEC_RECEIPT - ANALOG_FAILURE_DELIVERY LegalFactsId: description: Chiavi dei documenti generati durante il processo di consegna cartacea type: object required: - key - category properties: key: description: >- Chiave dell'atto opponibile a terzi generato durante il processo di consegna type: string pattern: ^(safestorage:\/\/)?[A-Za-z0-9._-]+$ maxLength: 512 category: $ref: '#/components/schemas/LegalFactCategory' TimelineElementCategoryV23: type: string description: | stato di avanzamento del processo di notifica:` * `SENDER_ACK_CREATION_REQUEST` - Invio della richiesta di creazione, firma e marca dell'atto opponibile a terzi di presa in carico per il mittente a safe storage * `VALIDATE_NORMALIZE_ADDRESSES_REQUEST` - Invio della richiesta di validazione e normalizzazione indirizzi fisici presenti nella richiesta di notifica * `NORMALIZED_ADDRESS` - Salvataggio indirizzi normalizzati * `REQUEST_ACCEPTED` - Richiesta di notifica accettata a seguito dei controlli di validazione * `REQUEST_REFUSED` - Richiesta di notifica rifiutata per fallimento di validazione * `SEND_COURTESY_MESSAGE` - Invio di un messaggio di cortesia * `GET_ADDRESS` - Disponibilità dell’indirizzo specifico (domicilio digitale di piattaforma, domicilio digitale speciale, domicilio digitale generale, indirizzo fisico sulla notifica o sui registri nazionali) * `PUBLIC_REGISTRY_CALL` - Richiesta ai registri pubblici per ottenere domicilio digitale generale o per ottenere indirizzo fisico da ANPR, da registro della imprese, da anagrafe tributaria. * `PUBLIC_REGISTRY_RESPONSE` - Ricevuta la risposta dei registri pubblici * `SCHEDULE_ANALOG_WORKFLOW` - Pianificazione del workflow per invio cartaceo * `SCHEDULE_DIGITAL_WORKFLOW` -Pianificazione del workflow per invio digitale (PEC) del secondo tentativo in caso di fallimento del primo. * `PREPARE_DIGITAL_DOMICILE` - Preparazione per l’invio dell’avviso digitale.Va a valutare la timeline per capire quale sarà il prossimo indirizzo da usare. * `SEND_DIGITAL_DOMICILE` - Invio digitale dell’avviso di notifica * `SEND_DIGITAL_PROGRESS` - Tentativo di Invio PEC ad un determinato indirizzo. * `SEND_DIGITAL_FEEDBACK` - Ottenuto esito ad un invio digitale * `SCHEDULE_REFINEMENT` - Pianificato il perfezionamento per decorrenza termini * `REFINEMENT` - Perfezionamento per decorrenza termini * `DIGITAL_DELIVERY_CREATION_REQUEST` - Invio della richiesta di creazione, firma e marca dell'atto opponibile a terzi di chiusura del workflow digitale a safe storage * `DIGITAL_SUCCESS_WORKFLOW` - Completato con successo il workflow di invio digitale * `DIGITAL_FAILURE_WORKFLOW` - Completato con fallimento il workflow di invio digitale: tutti i tentativi di invio ai domicili digitali sono falliti. * `ANALOG_SUCCESS_WORKFLOW` - Completato con successo il workflow di invio cartaceo * `ANALOG_FAILURE_WORKFLOW` - Completato con fallimento il workflow di invio cartaceo NOTA: se per tutti i destinatari si conclude il workflow con fallimento verrà scatenato l’evento COMPLETELY_UNREACHABLE * `PREPARE_SIMPLE_REGISTERED_LETTER` - Invio richiesta di prepare (preparazione ad invio) raccomandata semplice a paperChannel * `SEND_SIMPLE_REGISTERED_LETTER` - Invio di raccomandata semplice * `SEND_SIMPLE_REGISTERED_LETTER_PROGRESS` - Ricezione informazioni intermedia relative ad una notificazione cartacea semplice * `NOTIFICATION_VIEWED_CREATION_REQUEST` - Invio della richiesta di creazione, firma e marca dell'atto opponibile a terzi di presa visione a safe storage * `NOTIFICATION_VIEWED` - Visualizzazione della notifica (perfeziona la notifica se non già perfezionata per decorrenza termini o da altro destinatario) * `PREPARE_ANALOG_DOMICILE` - Invio richiesta di prepare (preparazione ad invio) cartaceo a paperChannel * `SEND_ANALOG_DOMICILE` - Invio cartaceo dell’avviso di notifica * `SEND_ANALOG_PROGRESS` - Ricezione informazioni intermedia relative ad una notificazione cartacea * `SEND_ANALOG_FEEDBACK` - Ricezione esito dell'invio cartaceo * `COMPLETELY_UNREACHABLE_CREATION_REQUEST` - Invio della richiesta di creazione, firma e marca dell'atto (simile a opponibile a terzi) di completamento con fallimento del workflow di invio cartaceo * `COMPLETELY_UNREACHABLE` - Tutti i destinatari risultano irraggiungibili * `AAR_CREATION_REQUEST` - Invio della richiesta di creazione, firma e marca dell'AAR (Avviso di Avvenuta Ricezione) a safe storage * `AAR_GENERATION` - Generazione dell’AAR (Avviso di Avvenuta Ricezione) * `PAYMENT` - Evento di ricezione __dal mittente__ dell'informazione di chiusura di uno o più pagamenti di tipo pagoPA (vedi #/components/schemas/PagoPaPayment). La presenza di questo evento inibisce l'invio di eventuali comunicazioni analogiche future ma non perfeziona la notifica. * `NOT_HANDLED` - [DEPRECATO] Per la sperimentazione l'invio analogico non è previsto, viene inserito tale elemento di timeline * `PROBABLE_SCHEDULING_ANALOG_DATE` - Data probabile di inizio del flusso analogico * `NOTIFICATION_CANCELLATION_REQUEST` - Richiesta di annullamento di una notifica * `NOTIFICATION_CANCELLED` - Notifica annullata * `PREPARE_ANALOG_DOMICILE_FAILURE` - Fallimento della richiesta di prepare (preparazione ad invio) cartaceo a paperChannel * `NOTIFICATION_RADD_RETRIEVED` - Accesso alla notifica tramite la rete RADD. Non perfeziona la notifica. enum: - SENDER_ACK_CREATION_REQUEST - VALIDATE_NORMALIZE_ADDRESSES_REQUEST - NORMALIZED_ADDRESS - REQUEST_ACCEPTED - SEND_COURTESY_MESSAGE - GET_ADDRESS - PUBLIC_REGISTRY_CALL - PUBLIC_REGISTRY_RESPONSE - SCHEDULE_ANALOG_WORKFLOW - SCHEDULE_DIGITAL_WORKFLOW - PREPARE_DIGITAL_DOMICILE - SEND_DIGITAL_DOMICILE - SEND_DIGITAL_PROGRESS - SEND_DIGITAL_FEEDBACK - REFINEMENT - SCHEDULE_REFINEMENT - DIGITAL_DELIVERY_CREATION_REQUEST - DIGITAL_SUCCESS_WORKFLOW - DIGITAL_FAILURE_WORKFLOW - ANALOG_SUCCESS_WORKFLOW - ANALOG_FAILURE_WORKFLOW - PREPARE_SIMPLE_REGISTERED_LETTER - SEND_SIMPLE_REGISTERED_LETTER - SEND_SIMPLE_REGISTERED_LETTER_PROGRESS - NOTIFICATION_VIEWED_CREATION_REQUEST - NOTIFICATION_VIEWED - PREPARE_ANALOG_DOMICILE - SEND_ANALOG_DOMICILE - SEND_ANALOG_PROGRESS - SEND_ANALOG_FEEDBACK - PAYMENT - COMPLETELY_UNREACHABLE - COMPLETELY_UNREACHABLE_CREATION_REQUEST - REQUEST_REFUSED - AAR_CREATION_REQUEST - AAR_GENERATION - NOT_HANDLED - PROBABLE_SCHEDULING_ANALOG_DATE - NOTIFICATION_CANCELLATION_REQUEST - NOTIFICATION_CANCELLED - PREPARE_ANALOG_DOMICILE_FAILURE - NOTIFICATION_RADD_RETRIEVED SenderAckCreationRequestDetails: type: object properties: legalFactId: type: string maxLength: 128 description: >- Identificativo dell'atto opponibile a terzi del quale è stata richiesta la creazione PhysicalAddress: type: object required: - address - municipality properties: at: x-field-extra-annotation: '@lombok.ToString.Exclude' type: string description: Campo "presso" dell'indirizzo address: x-field-extra-annotation: '@lombok.ToString.Exclude' type: string description: Indirizzo del domicilio fisico addressDetails: x-field-extra-annotation: '@lombok.ToString.Exclude' type: string description: Seconda riga dell'indirizzo fisico zip: x-field-extra-annotation: '@lombok.ToString.Exclude' type: string description: >- Codice di avviamento postale. In caso di invio estero diventa facoltativo municipality: x-field-extra-annotation: '@lombok.ToString.Exclude' type: string description: Comune in cui l'indirizzo si trova municipalityDetails: x-field-extra-annotation: '@lombok.ToString.Exclude' type: string description: Frazione o località province: x-field-extra-annotation: '@lombok.ToString.Exclude' type: string description: Provincia in cui si trova l'indirizzo foreignState: x-field-extra-annotation: '@lombok.ToString.Exclude' type: string description: Denominazione paese estero description: Indirizzo fisico scoperto durante fase di consegna NormalizedAddressDetails: type: object required: - recIndex - oldAddress - normalizedAddress properties: recIndex: type: integer description: Index destinatario notifica digitale format: int32 oldAddress: $ref: '#/components/schemas/PhysicalAddress' normalizedAddress: $ref: '#/components/schemas/PhysicalAddress' NotificationRequestAcceptedDetails: type: object properties: recIndex: type: integer description: Index destinatario notifica digitale format: int32 AnalogFailureWorkflowDetails: type: object required: - recIndex properties: recIndex: type: integer description: Index destinatario notifica digitale format: int32 generatedAarUrl: type: string maxLength: 128 description: Chiave per recupero da safe-storage del documento aar AnalogSuccessWorkflowDetails: type: object required: - recIndex - physicalAddress properties: recIndex: type: integer description: Index destinatario notifica digitale format: int32 physicalAddress: $ref: '#/components/schemas/PhysicalAddress' EndWorkflowStatus: type: string description: Stato chiusura workflow enum: - SUCCESS - FAILURE CompletelyUnreachableCreationRequestDetails: type: object required: - recIndex properties: recIndex: type: integer description: Index destinatario notifica digitale format: int32 legalfactId: type: string maxLength: 128 description: >- Identificativo dell'atto opponibile a terzi del quale è stata richiesta la creazione endWorkflowStatus: $ref: '#/components/schemas/EndWorkflowStatus' completionWorkflowDate: type: string description: Data chiusura workflow format: date-time CompletelyUnreachableDetails: type: object required: - recIndex properties: recIndex: type: integer description: Index destinatario notifica digitale format: int32 legalFactGenerationDate: type: string description: Data generazione atto opponibile a terzi allegato format: date-time DigitalAddress: description: Indirizzo di invio della notifica required: - address - type type: object properties: type: x-field-extra-annotation: '@lombok.ToString.Exclude' type: string description: tipo di indirizzo PEC, REM, SERCQ, SMS, EMAIL, APPIO ... address: x-field-extra-annotation: '@lombok.ToString.Exclude' type: string description: account@domain DigitalDeliveryCreationRequestDetails: type: object required: - recIndex - digitalAddress properties: recIndex: type: integer description: Index destinatario notifica digitale format: int32 digitalAddress: $ref: '#/components/schemas/DigitalAddress' endWorkflowStatus: $ref: '#/components/schemas/EndWorkflowStatus' completionWorkflowDate: type: string description: Data chiusura workflow format: date-time legalfactId: type: string maxLength: 128 description: >- Identificativo dell'atto opponibile a terzi del quale è stata richiesta la creazione DigitalFailureWorkflowDetails: type: object required: - recIndex properties: recIndex: type: integer description: Index destinatario notifica digitale format: int32 DigitalSuccessWorkflowDetails: type: object required: - recIndex - digitalAddress properties: recIndex: type: integer description: Index destinatario notifica digitale format: int32 digitalAddress: $ref: '#/components/schemas/DigitalAddress' DigitalAddressSource: type: string description: sorgente indirizzo di invio della notifica enum: - PLATFORM - SPECIAL - GENERAL GetAddressInfoDetails: type: object required: - recIndex - digitalAddressSource - isAvailable - attemptDate properties: recIndex: type: integer description: Index destinatario notifica digitale format: int32 digitalAddressSource: $ref: '#/components/schemas/DigitalAddressSource' isAvailable: type: boolean description: Disponibilità indirizzo attemptDate: type: string description: Data tentativo format: date-time RaddTypeV23: type: string description: | tipo di Rete Anti Digital Divide
__FSU__: Fornitore Servizio Universale
__ALT__: Fornitore RADD Alternativa
RaddTransactionId: type: string description: Identificativo della pratica all'interno della rete RADD maxLength: 512 RecipientType: type: string enum: - PF - PG DelegateInfo: type: object properties: internalId: type: string maxLength: 128 taxId: x-field-extra-annotation: '@lombok.ToString.Exclude' type: string maxLength: 128 operatorUuid: type: string maxLength: 128 mandateId: type: string maxLength: 128 denomination: x-field-extra-annotation: '@lombok.ToString.Exclude' type: string maxLength: 128 delegateType: $ref: '#/components/schemas/RecipientType' NotificationViewedCreationRequestDetailsV23: type: object required: - recIndex properties: recIndex: type: integer description: Index destinatario notifica digitale format: int32 legalfactId: type: string maxLength: 128 description: >- Identificativo dell'atto opponibile a terzi del quale è stata richiesta la creazione eventTimestamp: type: string description: Data ricezione richiesta visualizzazione notifica format: date-time raddType: $ref: '#/components/schemas/RaddTypeV23' raddTransactionId: $ref: '#/components/schemas/RaddTransactionId' delegateInfo: $ref: '#/components/schemas/DelegateInfo' NotificationViewedDetailsV23: type: object required: - recIndex properties: recIndex: type: integer description: Index destinatario notifica digitale format: int32 notificationCost: description: >- costo notifica in euro cents, può essere nullo se la notifica si è perfezionata prima per decorrenza termini example: 1220 type: integer format: int64 raddType: $ref: '#/components/schemas/RaddTypeV23' raddTransactionId: $ref: '#/components/schemas/RaddTransactionId' delegateInfo: $ref: '#/components/schemas/DelegateInfo' eventTimestamp: type: string description: Data evento visualizzazione format: date-time NotificationRADDRetrievedDetails: type: object required: - recIndex - raddType - raddTransactionId - eventTimestamp properties: recIndex: type: integer description: Index destinatario notifica digitale format: int32 raddType: $ref: '#/components/schemas/RaddTypeV23' raddTransactionId: $ref: '#/components/schemas/RaddTransactionId' eventTimestamp: type: string description: Data evento format: date-time DeliveryMode: type: string description: Tipologia Domiciliazione enum: - DIGITAL - ANALOG ContactPhase: type: string description: Fase in cui è avvenuta la richiesta enum: - CHOOSE_DELIVERY - SEND_ATTEMPT PublicRegistryCallDetails: type: object required: - recIndex - deliveryMode - contactPhase - sentAttemptMade - sendDate properties: recIndex: type: integer description: Index destinatario notifica digitale format: int32 deliveryMode: $ref: '#/components/schemas/DeliveryMode' contactPhase: $ref: '#/components/schemas/ContactPhase' sentAttemptMade: type: integer description: Numero di tentativi di notificazione già effettuati format: int32 sendDate: type: string description: Data invio richiesta ai public registry format: date-time PublicRegistryResponseDetails: type: object required: - recIndex properties: recIndex: type: integer description: Index destinatario notifica digitale format: int32 digitalAddress: $ref: '#/components/schemas/DigitalAddress' physicalAddress: $ref: '#/components/schemas/PhysicalAddress' RefinementDetailsV23: type: object required: - recIndex properties: recIndex: type: integer description: Index destinatario notifica digitale format: int32 notificationCost: description: >- costo notifica in euro cents, può essere nullo se la notifica si è perfezionata prima per visualizzazione example: 1220 type: integer format: int64 eventTimestamp: type: string description: Data evento refinement format: date-time NotificationRefusedErrorV23: type: object properties: errorCode: type: string maxLength: 128 description: |- Errori di rifiuto della notifica. - FILE_NOTFOUND - FILE_SHA_ERROR - TAXID_NOT_VALID - SERVICE_UNAVAILABLE - FILE_PDF_INVALID_ERROR - FILE_PDF_TOOBIG_ERROR - NOT_VALID_ADDRESS - RECIPIENT_ID_NOT_VALID - F24_METADATA_NOT_VALID - PAYMENT_NOT_VALID ... detail: type: string maxLength: 2048 RequestRefusedDetailsV23: type: object properties: refusalReasons: type: array description: Motivazioni che hanno portato al rifiuto della notifica items: $ref: '#/components/schemas/NotificationRefusedErrorV23' ScheduleAnalogWorkflowDetailsV23: type: object required: - recIndex properties: recIndex: type: integer description: Index destinatario notifica digitale format: int32 schedulingDate: type: string description: Data prevista per l'inizio dell'invio analogico format: date-time ScheduleDigitalWorkflowDetailsV23: type: object required: - recIndex - digitalAddressSource - sentAttemptMade - lastAttemptDate properties: recIndex: type: integer description: Index destinatario notifica digitale format: int32 digitalAddress: $ref: '#/components/schemas/DigitalAddress' digitalAddressSource: $ref: '#/components/schemas/DigitalAddressSource' sentAttemptMade: type: integer format: int32 lastAttemptDate: type: string format: date-time schedulingDate: type: string description: >- Data prevista prossimo tentativo d'invio digitale per quella specifica sorgente di indirizzo format: date-time ScheduleRefinementDetails: type: object required: - recIndex properties: recIndex: type: integer description: Index destinatario notifica digitale format: int32 schedulingDate: type: string format: date-time IoSendMessageResult: type: string description: Risultato invio messaggio su IO enum: - NOT_SENT_OPTIN_ALREADY_SENT - SENT_COURTESY - SENT_OPTIN SendCourtesyMessageDetails: type: object required: - recIndex - digitalAddress - sendDate properties: recIndex: type: integer description: Index destinatario notifica digitale format: int32 digitalAddress: $ref: '#/components/schemas/DigitalAddress' sendDate: type: string description: data invio messaggio di cortesia format: date-time ioSendMessageResult: $ref: '#/components/schemas/IoSendMessageResult' PrepareDigitalDetails: type: object required: - recIndex - digitalAddressSource - retryNumber properties: recIndex: type: integer description: Index destinatario notifica digitale format: int32 digitalAddress: $ref: '#/components/schemas/DigitalAddress' digitalAddressSource: $ref: '#/components/schemas/DigitalAddressSource' retryNumber: type: integer description: numero dei tentativi effettuati format: int32 attemptDate: type: string description: data tentativo precedente format: date-time nextDigitalAddressSource: $ref: '#/components/schemas/DigitalAddressSource' nextSourceAttemptsMade: type: integer description: numero del prossimo tentativo da effettuare format: int32 nextLastAttemptMadeForSource: type: string description: data tentativo precedente per prossimo source format: date-time SendDigitalDetails: type: object required: - recIndex - digitalAddress - digitalAddressSource - retryNumber properties: recIndex: type: integer description: Index destinatario notifica digitale format: int32 digitalAddress: $ref: '#/components/schemas/DigitalAddress' digitalAddressSource: $ref: '#/components/schemas/DigitalAddressSource' retryNumber: type: integer description: numero dei tentativi effettuati format: int32 ResponseStatus: type: string description: stato risposta ricevuta da externalChannel enum: - OK - KO SendingReceipt: type: object properties: id: type: string description: messageId del server mittente maxLength: 1024 system: type: string description: nome del server mittente maxLength: 128 SendDigitalFeedbackDetails: type: object required: - recIndex - digitalAddress - responseStatus - notificationDate properties: recIndex: type: integer description: Index destinatario notifica digitale format: int32 digitalAddress: $ref: '#/components/schemas/DigitalAddress' responseStatus: $ref: '#/components/schemas/ResponseStatus' notificationDate: type: string description: data notifica format: date-time deliveryFailureCause: description: Codice errore, vuoto in caso di successo type: string deliveryDetailCode: type: string description: | Stato - Codice relativo all'evento - Descrizione: - PROGRESS C000 = PREACCETTAZIONE - PROGRESS C001 = ACCETTAZIONE - PROGRESS C005 = PRESA_IN_CARICO - PROGRESS C007 = PREAVVISO_ERRORE_CONSEGNA - PROGRESS DP00 = RE-INVIO PEC CAUSA FALLIMENTO TEMPORANEO - PROGRESS DP10 = TIMEOUT RICEZIONE RISULTATO - ERROR C002 = NON_ACCETTAZIONE - ERROR C004 = ERRORE_CONSEGNA - ERROR C006 = RILEVAZIONE_VIRUS - ERROR C008 = ERRORE_COMUNICAZIONE_SERVER_PEC - ERROR C009 = ERRORE_DOMINIO_PEC_NON_VALIDO - ERROR C010 = ERROR_INVIO_PEC - OK C003 = AVVENUTA_CONSEGNA sendingReceipts: type: array items: $ref: '#/components/schemas/SendingReceipt' SendDigitalProgressDetailsV23: type: object properties: recIndex: type: integer description: Index destinatario notifica digitale format: int32 deliveryFailureCause: description: Codice errore, opzionale type: string deliveryDetailCode: type: string description: Vedi deliveryDetailCode in SendDigitalFeedbackDetails shouldRetry: type: boolean description: indica se il progress ha dato luogo ad un ritentativo digitalAddress: $ref: '#/components/schemas/DigitalAddress' digitalAddressSource: $ref: '#/components/schemas/DigitalAddressSource' notificationDate: type: string description: data notifica format: date-time sendingReceipts: type: array items: $ref: '#/components/schemas/SendingReceipt' retryNumber: type: integer description: numero dei tentativi effettuati format: int32 eventTimestamp: type: string description: Data evento format: date-time ServiceLevel: type: string description: Livello Servizio enum: - AR_REGISTERED_LETTER - REGISTERED_LETTER_890 BaseAnalogDetails: type: object required: - recIndex - physicalAddress - serviceLevel - sentAttemptMade properties: recIndex: type: integer description: Index destinatario notifica digitale format: int32 physicalAddress: $ref: '#/components/schemas/PhysicalAddress' serviceLevel: $ref: '#/components/schemas/ServiceLevel' sentAttemptMade: type: integer description: numero dei tentativi effettuati format: int32 relatedRequestId: type: string description: Id relativo alla eventuale precedente richiesta di invio cartaceo maxLength: 512 SendAnalogDetails: type: object required: - recIndex - physicalAddress - serviceLevel - sentAttemptMade properties: recIndex: type: integer description: Index destinatario notifica digitale format: int32 physicalAddress: $ref: '#/components/schemas/PhysicalAddress' serviceLevel: $ref: '#/components/schemas/ServiceLevel' sentAttemptMade: type: integer description: numero dei tentativi effettuati format: int32 relatedRequestId: type: string description: Id relativo alla eventuale precedente richiesta di invio cartaceo maxLength: 512 productType: type: string maxLength: 10 description: | Tipo di invio cartaceo effettivamente inviato - __AR__: Raccomandata nazionale Andata e Ritorno - __890__: Recapito a norma della legge 890/1982 - __RIR__: Raccomandata internazionale Andata e Ritorno analogCost: type: integer description: costo in eurocent dell'invio format: int32 numberOfPages: type: integer description: numero delle pagina che compongono la spedizione cartacea format: int32 envelopeWeight: type: integer description: peso in grammi della busta format: int32 prepareRequestId: type: string description: request id della relativa richiesta di prepare maxLength: 512 AttachmentDetails: type: object properties: id: type: string maxLength: 128 documentType: type: string maxLength: 20 description: > Codici documentType: - Plico: Indica il plico cartaceo - AR: Indica la ricevuta di ritorno - Indagine: Indica la ricevuta dell'analisi dell'indagine - 23L: Indica la ricevuta 23L url: type: string maxLength: 128 date: type: string format: date-time SendAnalogFeedbackDetails: type: object required: - recIndex - physicalAddress - serviceLevel - sentAttemptMade - responseStatus properties: recIndex: type: integer description: Index destinatario notifica digitale format: int32 physicalAddress: $ref: '#/components/schemas/PhysicalAddress' serviceLevel: $ref: '#/components/schemas/ServiceLevel' sentAttemptMade: type: integer description: numero dei tentativi effettuati format: int32 newAddress: $ref: '#/components/schemas/PhysicalAddress' responseStatus: $ref: '#/components/schemas/ResponseStatus' notificationDate: type: string format: date-time deliveryFailureCause: type: string maxLength: 10 description: > __Motivazione di mancata consegna__ obbligatorie negli stati di mancata consegna - __M01__ destinatario irreperibile - __M02__ destinatario deceduto - __M03__ destinatario sconosciuto - __M04__ destinatario trasferito - __M05__ invio rifiutato - __M06__ indirizzo inesatto - __M07__ indirizzo inesistente - __M08__ indirizzo insufficiente - __F01__ - in caso di furto - __F02__ - in caso di smarrimento - __F03__ - in caso di deterioramento deliveryDetailCode: type: string maxLength: 20 description: > Formato: - __deliveryDetailCode__- [prodotto] - [statusCode] - statusDescription - __CON080__- [ALL] - [PROGRESS] - Stampato ed Imbustato - __RECRS001C__- [RS] - [OK] - Consegnato - Fascicolo Chiuso - __RECRS002C__- [RS] - [KO] - Mancata consegna - Fascicolo Chiuso - __RECRS002F__- [RS] - [KO] - Irreperibilità Assoluta - Fascicolo Chiuso - __RECRS003C__- [RS] - [OK] - Consegnato presso Punti di Giacenza - Fascicolo Chiuso - __RECRS004C__- [RS] - [OK] - Mancata consegna presso Punti di Giacenza - Fascicolo Chiuso - __RECRS005C__- [RS] - [OK] - Compiuta giacenza - Fascicolo Chiuso - __RECRS006__- [RS] - [PROGRESS] - Furto/Smarrimento/deterioramento - __RECRN001C__- [AR] - [OK] - Consegnato - Fascicolo Chiuso - __RECRN002C__- [AR] - [KO] - Mancata consegna - Fascicolo Chiuso - __RECRN002F__- [AR] - [KO] - Irreperibilità Assoluta - Fascicolo Chiuso - __RECRN003C__- [AR] - [OK] - Consegnato presso Punti di Giacenza - Fascicolo Chiuso - __RECRN004C__- [AR] - [KO] - Mancata consegna presso Punti di Giacenza - Fascicolo Chiuso - __RECRN005C__- [AR] - [OK] - Compiuta giacenza - Fascicolo Chiuso - __RECRN006__- [AR] - [PROGRESS] - Furto/Smarrimento/deterioramento - __RECAG001C__- [890] - [OK] - Consegnato - Fascicolo Chiuso - __RECAG002C__- [890] - [OK] - Consegnato a persona abilitata - Fascicolo Chiuso - __RECAG003C__- [890] - [KO] - Mancata consegna - Fascicolo Chiuso - __RECAG003F__- [890] - [KO] - Irreperibilità Assoluta - Fascicolo Chiuso - __RECAG004__- [890] - [PROGRESS] - Furto/Smarrimento/deterioramento - __RECAG005C__- [890] - [OK | PROGRESS] - Consegnato presso Punti di Giacenza - Fascicolo Chiuso - __RECAG006C__- [890] - [OK | PROGRESS] - Consegna a persona abilitata presso Punti di Giacenza - Fas. Ch. - __RECAG007C__- [890] - [KO | PROGRESS] - Mancata consegna presso Punti di Giacenza - Fascicolo Chiuso - __RECAG008C__- [890] - [PROGRESS] - Compiuta giacenza - Fascicolo Chiuso - __PNAG012__- [890] - [KO] - Distacco d'ufficio 23L - Fascicolo Chiuso - __RECRI003C__- [RIR] - [OK] - Consegnato - Fascicolo Chiuso - __RECRI004C__- [RIR] - [KO] - Non Consegnato - fascicolo Chiuso - __RECRI005__- [RIR] - [PROGRESS] - Furto/Smarrimento/deterioramento - __RECRSI003C__- [RIS] - [OK] - Consegnato - Fascicolo Chiuso - __RECRSI004C__- [RIS] - [KO] - Non Consegnato - fascicolo Chiuso - __RECRSI005__- [RIS] - [PROGRESS] - Furto/Smarrimento/deterioramento attachments: type: array items: $ref: '#/components/schemas/AttachmentDetails' sendRequestId: type: string description: RequestId della richiesta d'invio maxLength: 512 registeredLetterCode: type: string description: Codice della raccomandata maxLength: 128 BaseRegisteredLetterDetails: type: object required: - recIndex - physicalAddress properties: recIndex: type: integer description: Index destinatario notifica digitale format: int32 physicalAddress: $ref: '#/components/schemas/PhysicalAddress' SimpleRegisteredLetterDetails: type: object required: - recIndex - physicalAddress properties: recIndex: type: integer description: Index destinatario notifica digitale format: int32 physicalAddress: $ref: '#/components/schemas/PhysicalAddress' productType: type: string maxLength: 10 description: | Tipo di invio cartaceo effettivamente inviato - __RS__: Raccomandata nazionale Semplice (per Avviso di mancato Recapito) - __RIS__: Raccomandata internazionale Semplice analogCost: type: integer description: costo in eurocent dell'invio format: int32 numberOfPages: type: integer description: numero delle pagina che compongono la spedizione cartacea format: int32 envelopeWeight: type: integer description: peso in grammi della busta format: int32 prepareRequestId: type: string description: request id della relativa richiesta di prepare maxLength: 512 AarCreationRequestDetails: type: object required: - recIndex - aarKey - numberOfPages properties: recIndex: type: integer description: Index destinatario notifica digitale format: int32 aarKey: type: string description: Chiave per recupero da safe-storage del documento aar maxLength: 128 numberOfPages: type: integer description: numero di pagine del PDF generato format: int32 AarGenerationDetails: type: object required: - recIndex - generatedAarUrl - numberOfPages properties: recIndex: type: integer description: Index destinatario notifica digitale format: int32 generatedAarUrl: type: string description: Chiave per recupero da safe-storage del documento aar maxLength: 128 numberOfPages: type: integer description: numero di pagine del PDF generato format: int32 NotHandledDetails: type: object required: - recIndex - reasonCode - reason properties: recIndex: type: integer description: Index destinatario notifica digitale format: int32 reasonCode: type: string description: Codice motivazione casistica non gestita maxLength: 10 reason: type: string description: Motivazione casistica non gestita maxLength: 2048 NotificationPaidDetailsV23: type: object required: - recIndex - recipientType - paymentSourceChannel properties: recIndex: type: integer description: Index destinatario che ha effettuato il pagamento della notifica format: int32 recipientType: $ref: '#/components/schemas/RecipientType' amount: type: integer description: Importo di pagamento in eurocent format: int32 creditorTaxId: $ref: '#/components/schemas/paTaxId' noticeCode: $ref: '#/components/schemas/noticeCode' idF24: type: string description: un UUID che identifica un pagamento f24 maxLength: 512 paymentSourceChannel: type: string description: Canale sorgente della richiesta di pagamento maxLength: 512 uncertainPaymentDate: deprecated: true type: boolean description: Indica se la data di pagamento é certa eventTimestamp: type: string description: Data evento pagamento format: date-time SendAnalogProgressDetailsV23: type: object required: - recIndex properties: recIndex: type: integer description: Index destinatario che ha effettuato il pagamento della notifica format: int32 notificationDate: type: string format: date-time deliveryFailureCause: type: string maxLength: 10 description: Vedi deliveryFailureCause in SendAnalogFeedbackDetails deliveryDetailCode: type: string maxLength: 20 description: Vedi deliveryDetailCode in SendAnalogFeedbackDetails attachments: type: array items: $ref: '#/components/schemas/AttachmentDetails' sendRequestId: type: string description: RequestId della richiesta d'invio maxLength: 512 registeredLetterCode: type: string description: Codice della raccomandata maxLength: 128 serviceLevel: $ref: '#/components/schemas/ServiceLevel' SimpleRegisteredLetterProgressDetails: type: object required: - recIndex properties: recIndex: type: integer description: Index destinatario che ha effettuato il pagamento della notifica format: int32 notificationDate: type: string format: date-time deliveryFailureCause: type: string maxLength: 10 description: Vedi deliveryFailureCause in SendAnalogFeedbackDetails deliveryDetailCode: type: string maxLength: 20 description: Vedi deliveryDetailCode in SendAnalogFeedbackDetails attachments: type: array items: $ref: '#/components/schemas/AttachmentDetails' sendRequestId: type: string description: RequestId della richiesta d'invio maxLength: 512 registeredLetterCode: type: string description: Codice della raccomandata maxLength: 128 ProbableDateAnalogWorkflowDetails: type: object required: - recIndex - schedulingAnalogDate properties: recIndex: type: integer description: Index destinatario che ha effettuato il pagamento della notifica format: int32 schedulingAnalogDate: type: string format: date-time description: Data probabile di inizio del flusso analogico NotificationCancellationRequestDetails: type: object required: - cancellationRequestId properties: cancellationRequestId: type: string description: Id della richiesta maxLength: 512 NotificationCancelledDetails: type: object required: - notificationCost - notRefinedRecipientIndexes properties: notificationCost: description: >- costo notifica in euro cents, vale 100 * numero di recipient not refined example: 1220 type: integer format: int64 notRefinedRecipientIndexes: type: array items: description: indice del recipient non perfezionato type: integer format: int32 PrepareAnalogDomicileFailureDetails: type: object required: - recIndex properties: recIndex: type: integer description: Index destinatario notifica digitale format: int32 foundAddress: $ref: '#/components/schemas/PhysicalAddress' failureCause: type: string maxLength: 10 description: | __Motivazione fallimento prepare - __D00__ Indirizzo non trovato - __D01__ Indirizzo non valido - __D02__ Indirizzo coincidente con quello del primo tentativo prepareRequestId: type: string description: RequestId della richiesta di prepare maxLength: 512 TimelineElementDetailsV23: description: The raw event payload that will be different based on the event. oneOf: - $ref: '#/components/schemas/SenderAckCreationRequestDetails' - $ref: '#/components/schemas/NormalizedAddressDetails' - $ref: '#/components/schemas/NotificationRequestAcceptedDetails' - $ref: '#/components/schemas/AnalogFailureWorkflowDetails' - $ref: '#/components/schemas/AnalogSuccessWorkflowDetails' - $ref: '#/components/schemas/CompletelyUnreachableCreationRequestDetails' - $ref: '#/components/schemas/CompletelyUnreachableDetails' - $ref: '#/components/schemas/DigitalDeliveryCreationRequestDetails' - $ref: '#/components/schemas/DigitalFailureWorkflowDetails' - $ref: '#/components/schemas/DigitalSuccessWorkflowDetails' - $ref: '#/components/schemas/GetAddressInfoDetails' - $ref: '#/components/schemas/NotificationViewedCreationRequestDetailsV23' - $ref: '#/components/schemas/NotificationViewedDetailsV23' - $ref: '#/components/schemas/NotificationRADDRetrievedDetails' - $ref: '#/components/schemas/PublicRegistryCallDetails' - $ref: '#/components/schemas/PublicRegistryResponseDetails' - $ref: '#/components/schemas/RefinementDetailsV23' - $ref: '#/components/schemas/RequestRefusedDetailsV23' - $ref: '#/components/schemas/ScheduleAnalogWorkflowDetailsV23' - $ref: '#/components/schemas/ScheduleDigitalWorkflowDetailsV23' - $ref: '#/components/schemas/ScheduleRefinementDetails' - $ref: '#/components/schemas/SendCourtesyMessageDetails' - $ref: '#/components/schemas/PrepareDigitalDetails' - $ref: '#/components/schemas/SendDigitalDetails' - $ref: '#/components/schemas/SendDigitalFeedbackDetails' - $ref: '#/components/schemas/SendDigitalProgressDetailsV23' - $ref: '#/components/schemas/BaseAnalogDetails' - $ref: '#/components/schemas/SendAnalogDetails' - $ref: '#/components/schemas/SendAnalogFeedbackDetails' - $ref: '#/components/schemas/BaseRegisteredLetterDetails' - $ref: '#/components/schemas/SimpleRegisteredLetterDetails' - $ref: '#/components/schemas/AarCreationRequestDetails' - $ref: '#/components/schemas/AarGenerationDetails' - $ref: '#/components/schemas/NotHandledDetails' - $ref: '#/components/schemas/NotificationPaidDetailsV23' - $ref: '#/components/schemas/SendAnalogProgressDetailsV23' - $ref: '#/components/schemas/SimpleRegisteredLetterProgressDetails' - $ref: '#/components/schemas/ProbableDateAnalogWorkflowDetails' - $ref: '#/components/schemas/NotificationCancellationRequestDetails' - $ref: '#/components/schemas/NotificationCancelledDetails' - $ref: '#/components/schemas/PrepareAnalogDomicileFailureDetails' NotificationAttachmentDownloadMetadataResponse: title: Url e metadati per il download di un allegato di una notifica description: |- I due campi più importanti sono __url__ e __retryAfter__.
- __url__ è presente se il file è pronto per essere scaricato ed indica l'url a cui fare GET. - __retryAfter__ indica che il file è stato archiviato e bisognerà aspettare un numero di secondi non inferiore a quanto indicato dal campo _retryAfter_.
type: object required: - filename - contentType - contentLength - sha256 properties: filename: type: string contentType: type: string example: application/pdf contentLength: type: integer format: int32 example: 54092 description: dimensione, in byte, del contenuto. sha256: type: string description: SHA256 del contenuto del file. url: type: string description: >- URL preautorizzato a cui effettuare una richiesta GET per ottenere il contenuto del documento. Presente solo se il documento è pronto per il download. retryAfter: type: integer format: int32 description: >- Stima del numero di secondi da aspettare prima che il contenuto del documento sia disponibile per il download. NotificationPaymentInfo: title: Informazioni per effettuare il pagamento description: >- Informazioni utili per effettuare il pagamento di una notifica, sono associate al destinatario perché le spese di notifica possono differire a seconda del canale di notifica utilizzato.
- _noticeCode_: "codice avviso pagoPA" di pagamento del sistema pagoPA, usato per pagamento online.
- _creditorTaxId_: codice fiscale dell'ente a cui fa riferimento il "codice avviso pagoPA".
- _pagoPaForm_: riferimento al PDF contenete il bollettino pagoPA
type: object required: - noticeCode - creditorTaxId properties: noticeCode: $ref: '#/components/schemas/noticeCode' creditorTaxId: $ref: '#/components/schemas/paTaxId' noticeCodeAlternative: $ref: '#/components/schemas/noticeCode' pagoPaForm: $ref: '#/components/schemas/NotificationPaymentAttachment' TimelineElementCategory: type: string description: | stato di avanzamento del processo di notifica:` * `SENDER_ACK_CREATION_REQUEST` - Invio della richiesta di creazione dell'atto opponibile a terzi di presa in carico per il mittente a safe storage * `VALIDATE_NORMALIZE_ADDRESSES_REQUEST` - Invio della richiesta di validazione e normalizzazione indirizzi fisici presenti nella richiesta di notifica * `NORMALIZED_ADDRESS` - Salvataggio indirizzi normalizzati * `REQUEST_ACCEPTED` - Richiesta di notifica accettata a seguito dei controlli di validazione * `REQUEST_REFUSED` - Richiesta di notifica rifiutata per fallimento di validazione * `SEND_COURTESY_MESSAGE` - Invio di un messaggio di cortesia * `GET_ADDRESS` - Disponibilità dell’indirizzo specifico (domicilio digitale di piattaforma, domicilio digitale speciale, domicilio digitale generale, indirizzo fisico sulla notifica o sui registri nazionali) * `PUBLIC_REGISTRY_CALL` - Richiesta ai registri pubblici per ottenere domicilio digitale generale o per ottenere indirizzo fisico da ANPR, da registro della imprese, da anagrafe tributaria. * `PUBLIC_REGISTRY_RESPONSE` - Ricevuta la risposta dei registri pubblici * `SCHEDULE_ANALOG_WORKFLOW` - Pianificazione del workflow per invio cartaceo * `SCHEDULE_DIGITAL_WORKFLOW` -Pianificazione del workflow per invio digitale (PEC) del secondo tentativo in caso di fallimento del primo. * `PREPARE_DIGITAL_DOMICILE` - Preparazione per l’invio dell’avviso digitale.Va a valutare la timeline per capire quale sarà il prossimo indirizzo da usare. * `SEND_DIGITAL_DOMICILE` - Invio digitale dell’avviso di notifica * `SEND_DIGITAL_PROGRESS` - Tentativo di Invio PEC ad un determinato indirizzo. * `SEND_DIGITAL_FEEDBACK` - Ottenuto esito ad un invio digitale * `SCHEDULE_REFINEMENT` - Pianificato il perfezionamento per decorrenza termini * `REFINEMENT` - Perfezionamento per decorrenza termini * `DIGITAL_DELIVERY_CREATION_REQUEST` - Invio della richiesta di creazione dell'atto opponibile a terzi di chiusura del workflow digitale a safe storage * `DIGITAL_SUCCESS_WORKFLOW` - Completato con successo il workflow di invio digitale * `DIGITAL_FAILURE_WORKFLOW` - Completato con fallimento il workflow di invio digitale: tutti i tentativi di invio ai domicili digitali sono falliti. * `ANALOG_SUCCESS_WORKFLOW` - Completato con successo il workflow di invio cartaceo * `ANALOG_FAILURE_WORKFLOW` - Completato con fallimento il workflow di invio cartaceo NOTA: se per tutti i destinatari si conclude il workflow con fallimento verrà scatenato l’evento COMPLETELY_UNREACHABLE * `PREPARE_SIMPLE_REGISTERED_LETTER` - Invio richiesta di prepare (preparazione ad invio) raccomandata semplice a paperChannel * `SEND_SIMPLE_REGISTERED_LETTER` - Invio di raccomandata semplice * `SEND_SIMPLE_REGISTERED_LETTER_PROGRESS` - Ricezione informazioni intermedia relative ad una notificazione cartacea semplice * `NOTIFICATION_VIEWED_CREATION_REQUEST` - Invio della richiesta di creazione dell'atto opponibile a terzi di presa visione a safe storage * `NOTIFICATION_VIEWED` - Visualizzazione della notifica (perfeziona la notifica se non già perfezionata per decorrenza termini o da altro destinatario) * `PREPARE_ANALOG_DOMICILE` - Invio richiesta di prepare (preparazione ad invio) cartaceo a paperChannel * `SEND_ANALOG_DOMICILE` - Invio cartaceo dell’avviso di notifica * `SEND_ANALOG_PROGRESS` - Ricezione informazioni intermedia relative ad una notificazione cartacea * `SEND_ANALOG_FEEDBACK` - Ricezione esito dell'invio cartaceo * `COMPLETELY_UNREACHABLE_CREATION_REQUEST` - Invio della richiesta di creazione dell'atto (simile a opponibile a terzi) di completamento con fallimento del workflow di invio cartaceo * `COMPLETELY_UNREACHABLE` - Tutti i destinatari risultano irraggiungibili * `AAR_CREATION_REQUEST` - Invio della richiesta di creazione dell'AAR (Avviso di Avvenuta Ricezione) a safe storage * `AAR_GENERATION` - Generazione dell’AAR (Avviso di Avvenuta Ricezione) * `PAYMENT` - Ricezione da parte della Pubblica Amministrazione di un evento di chiusura di una o più posizioni debitorie di tipo PagoPA. La presenza di questo evento inibisce l'invio di eventuali comunicazioni analogiche future ma non perfeziona la notifica. * `NOT_HANDLED` - [DEPRECATO] Per la sperimentazione l'invio analogico non è previsto, viene inserito tale elemento di timeline * `PROBABLE_SCHEDULING_ANALOG_DATE` - Data probabile di inizio del flusso analogico enum: - SENDER_ACK_CREATION_REQUEST - VALIDATE_NORMALIZE_ADDRESSES_REQUEST - NORMALIZED_ADDRESS - REQUEST_ACCEPTED - SEND_COURTESY_MESSAGE - GET_ADDRESS - PUBLIC_REGISTRY_CALL - PUBLIC_REGISTRY_RESPONSE - SCHEDULE_ANALOG_WORKFLOW - SCHEDULE_DIGITAL_WORKFLOW - PREPARE_DIGITAL_DOMICILE - SEND_DIGITAL_DOMICILE - SEND_DIGITAL_PROGRESS - SEND_DIGITAL_FEEDBACK - REFINEMENT - SCHEDULE_REFINEMENT - DIGITAL_DELIVERY_CREATION_REQUEST - DIGITAL_SUCCESS_WORKFLOW - DIGITAL_FAILURE_WORKFLOW - ANALOG_SUCCESS_WORKFLOW - ANALOG_FAILURE_WORKFLOW - PREPARE_SIMPLE_REGISTERED_LETTER - SEND_SIMPLE_REGISTERED_LETTER - SEND_SIMPLE_REGISTERED_LETTER_PROGRESS - NOTIFICATION_VIEWED_CREATION_REQUEST - NOTIFICATION_VIEWED - PREPARE_ANALOG_DOMICILE - SEND_ANALOG_DOMICILE - SEND_ANALOG_PROGRESS - SEND_ANALOG_FEEDBACK - PAYMENT - COMPLETELY_UNREACHABLE - COMPLETELY_UNREACHABLE_CREATION_REQUEST - REQUEST_REFUSED - AAR_CREATION_REQUEST - AAR_GENERATION - NOT_HANDLED - PROBABLE_SCHEDULING_ANALOG_DATE RaddType: type: string description: | tipo di Rete Anti Digital Divide
__FSU__: Fornitore Servizio Universale
NotificationViewedCreationRequestDetails: type: object required: - recIndex properties: recIndex: type: integer description: Index destinatario notifica digitale format: int32 legalfactId: type: string description: >- Identificativo dell'atto opponibile a terzi del quale è stata richiesta la creazione eventTimestamp: type: string description: Data ricezione richiesta visualizzazione notifica format: date-time raddType: $ref: '#/components/schemas/RaddType' raddTransactionId: $ref: '#/components/schemas/RaddTransactionId' delegateInfo: $ref: '#/components/schemas/DelegateInfo' NotificationViewedDetails: type: object required: - recIndex properties: recIndex: type: integer description: Index destinatario notifica digitale format: int32 notificationCost: description: >- costo notifica in euro cents, può essere nullo se la notifica si è perfezionata prima per decorrenza termini example: 1220 type: integer format: int64 raddType: $ref: '#/components/schemas/RaddType' raddTransactionId: $ref: '#/components/schemas/RaddTransactionId' delegateInfo: $ref: '#/components/schemas/DelegateInfo' RefinementDetails: type: object required: - recIndex properties: recIndex: type: integer description: Index destinatario notifica digitale format: int32 notificationCost: description: >- costo notifica in euro cents, può essere nullo se la notifica si è perfezionata prima per visualizzazione example: 1220 type: integer format: int64 NotificationRefusedError: type: object properties: errorCode: type: string description: |- Errori di rifiuto della notifica. - FILE_NOTFOUND - FILE_SHA_ERROR - TAXID_NOT_VALID - SERVICE_UNAVAILABLE - FILE_PDF_INVALID_ERROR - FILE_PDF_TOOBIG_ERROR - NOT_VALID_ADDRESS - RECIPIENT_ID_NOT_VALID detail: type: string RequestRefusedDetails: type: object properties: refusalReasons: type: array description: Motivazioni che hanno portato al rifiuto della notifica items: $ref: '#/components/schemas/NotificationRefusedError' ScheduleAnalogWorkflowDetails: type: object required: - recIndex properties: recIndex: type: integer description: Index destinatario notifica digitale format: int32 ScheduleDigitalWorkflowDetails: type: object required: - recIndex - digitalAddressSource - sentAttemptMade - lastAttemptDate properties: recIndex: type: integer description: Index destinatario notifica digitale format: int32 digitalAddress: $ref: '#/components/schemas/DigitalAddress' digitalAddressSource: $ref: '#/components/schemas/DigitalAddressSource' sentAttemptMade: type: integer format: int32 lastAttemptDate: type: string format: date-time SendDigitalProgressDetails: type: object properties: recIndex: type: integer description: Index destinatario notifica digitale format: int32 deliveryFailureCause: description: Codice errore, opzionale type: string deliveryDetailCode: type: string description: Vedi deliveryDetailCode in SendDigitalFeedbackDetails shouldRetry: type: boolean description: indica se il progress ha dato luogo ad un ritentativo digitalAddress: $ref: '#/components/schemas/DigitalAddress' digitalAddressSource: $ref: '#/components/schemas/DigitalAddressSource' notificationDate: type: string description: data notifica format: date-time sendingReceipts: type: array items: $ref: '#/components/schemas/SendingReceipt' retryNumber: type: integer description: numero dei tentativi effettuati format: int32 NotificationPaidDetails: type: object required: - recIndex - recipientType - paymentSourceChannel properties: recIndex: type: integer description: Index destinatario che ha effettuato il pagamento della notifica format: int32 recipientType: $ref: '#/components/schemas/RecipientType' amount: type: integer description: Importo di pagamento in eurocent format: int32 creditorTaxId: $ref: '#/components/schemas/paTaxId' noticeCode: $ref: '#/components/schemas/noticeCode' idF24: type: string description: un UUID che identifica un pagamento f24 paymentSourceChannel: type: string description: Canale sorgente della richiesta di pagamento uncertainPaymentDate: type: boolean description: Indica se la data di pagamento é certa SendAnalogProgressDetails: type: object required: - recIndex properties: recIndex: type: integer description: Index destinatario che ha effettuato il pagamento della notifica format: int32 notificationDate: type: string format: date-time deliveryFailureCause: type: string description: Vedi deliveryFailureCause in SendAnalogFeedbackDetails deliveryDetailCode: type: string description: Vedi deliveryDetailCode in SendAnalogFeedbackDetails attachments: type: array items: $ref: '#/components/schemas/AttachmentDetails' sendRequestId: type: string description: RequestId della richiesta d'invio registeredLetterCode: type: string description: Codice della raccomandata TimelineElementDetails: description: The raw event payload that will be different based on the event. oneOf: - $ref: '#/components/schemas/SenderAckCreationRequestDetails' - $ref: '#/components/schemas/NormalizedAddressDetails' - $ref: '#/components/schemas/NotificationRequestAcceptedDetails' - $ref: '#/components/schemas/AnalogFailureWorkflowDetails' - $ref: '#/components/schemas/AnalogSuccessWorkflowDetails' - $ref: '#/components/schemas/CompletelyUnreachableCreationRequestDetails' - $ref: '#/components/schemas/CompletelyUnreachableDetails' - $ref: '#/components/schemas/DigitalDeliveryCreationRequestDetails' - $ref: '#/components/schemas/DigitalFailureWorkflowDetails' - $ref: '#/components/schemas/DigitalSuccessWorkflowDetails' - $ref: '#/components/schemas/GetAddressInfoDetails' - $ref: '#/components/schemas/NotificationViewedCreationRequestDetails' - $ref: '#/components/schemas/NotificationViewedDetails' - $ref: '#/components/schemas/PublicRegistryCallDetails' - $ref: '#/components/schemas/PublicRegistryResponseDetails' - $ref: '#/components/schemas/RefinementDetails' - $ref: '#/components/schemas/RequestRefusedDetails' - $ref: '#/components/schemas/ScheduleAnalogWorkflowDetails' - $ref: '#/components/schemas/ScheduleDigitalWorkflowDetails' - $ref: '#/components/schemas/ScheduleRefinementDetails' - $ref: '#/components/schemas/SendCourtesyMessageDetails' - $ref: '#/components/schemas/PrepareDigitalDetails' - $ref: '#/components/schemas/SendDigitalDetails' - $ref: '#/components/schemas/SendDigitalFeedbackDetails' - $ref: '#/components/schemas/SendDigitalProgressDetails' - $ref: '#/components/schemas/BaseAnalogDetails' - $ref: '#/components/schemas/SendAnalogDetails' - $ref: '#/components/schemas/SendAnalogFeedbackDetails' - $ref: '#/components/schemas/BaseRegisteredLetterDetails' - $ref: '#/components/schemas/SimpleRegisteredLetterDetails' - $ref: '#/components/schemas/AarCreationRequestDetails' - $ref: '#/components/schemas/AarGenerationDetails' - $ref: '#/components/schemas/NotHandledDetails' - $ref: '#/components/schemas/NotificationPaidDetails' - $ref: '#/components/schemas/SendAnalogProgressDetails' - $ref: '#/components/schemas/SimpleRegisteredLetterProgressDetails' - $ref: '#/components/schemas/ProbableDateAnalogWorkflowDetails' TimelineElementCategoryV20: type: string description: | stato di avanzamento del processo di notifica:` * `SENDER_ACK_CREATION_REQUEST` - Invio della richiesta di creazione dell'atto opponibile a terzi di presa in carico per il mittente a safe storage * `VALIDATE_NORMALIZE_ADDRESSES_REQUEST` - Invio della richiesta di validazione e normalizzazione indirizzi fisici presenti nella richiesta di notifica * `NORMALIZED_ADDRESS` - Salvataggio indirizzi normalizzati * `REQUEST_ACCEPTED` - Richiesta di notifica accettata a seguito dei controlli di validazione * `REQUEST_REFUSED` - Richiesta di notifica rifiutata per fallimento di validazione * `SEND_COURTESY_MESSAGE` - Invio di un messaggio di cortesia * `GET_ADDRESS` - Disponibilità dell’indirizzo specifico (domicilio digitale di piattaforma, domicilio digitale speciale, domicilio digitale generale, indirizzo fisico sulla notifica o sui registri nazionali) * `PUBLIC_REGISTRY_CALL` - Richiesta ai registri pubblici per ottenere domicilio digitale generale o per ottenere indirizzo fisico da ANPR, da registro della imprese, da anagrafe tributaria. * `PUBLIC_REGISTRY_RESPONSE` - Ricevuta la risposta dei registri pubblici * `SCHEDULE_ANALOG_WORKFLOW` - Pianificazione del workflow per invio cartaceo * `SCHEDULE_DIGITAL_WORKFLOW` -Pianificazione del workflow per invio digitale (PEC) del secondo tentativo in caso di fallimento del primo. * `PREPARE_DIGITAL_DOMICILE` - Preparazione per l’invio dell’avviso digitale.Va a valutare la timeline per capire quale sarà il prossimo indirizzo da usare. * `SEND_DIGITAL_DOMICILE` - Invio digitale dell’avviso di notifica * `SEND_DIGITAL_PROGRESS` - Tentativo di Invio PEC ad un determinato indirizzo. * `SEND_DIGITAL_FEEDBACK` - Ottenuto esito ad un invio digitale * `SCHEDULE_REFINEMENT` - Pianificato il perfezionamento per decorrenza termini * `REFINEMENT` - Perfezionamento per decorrenza termini * `DIGITAL_DELIVERY_CREATION_REQUEST` - Invio della richiesta di creazione dell'atto opponibile a terzi di chiusura del workflow digitale a safe storage * `DIGITAL_SUCCESS_WORKFLOW` - Completato con successo il workflow di invio digitale * `DIGITAL_FAILURE_WORKFLOW` - Completato con fallimento il workflow di invio digitale: tutti i tentativi di invio ai domicili digitali sono falliti. * `ANALOG_SUCCESS_WORKFLOW` - Completato con successo il workflow di invio cartaceo * `ANALOG_FAILURE_WORKFLOW` - Completato con fallimento il workflow di invio cartaceo NOTA: se per tutti i destinatari si conclude il workflow con fallimento verrà scatenato l’evento COMPLETELY_UNREACHABLE * `PREPARE_SIMPLE_REGISTERED_LETTER` - Invio richiesta di prepare (preparazione ad invio) raccomandata semplice a paperChannel * `SEND_SIMPLE_REGISTERED_LETTER` - Invio di raccomandata semplice * `SEND_SIMPLE_REGISTERED_LETTER_PROGRESS` - Ricezione informazioni intermedia relative ad una notificazione cartacea semplice * `NOTIFICATION_VIEWED_CREATION_REQUEST` - Invio della richiesta di creazione dell'atto opponibile a terzi di presa visione a safe storage * `NOTIFICATION_VIEWED` - Visualizzazione della notifica (perfeziona la notifica se non già perfezionata per decorrenza termini o da altro destinatario) * `PREPARE_ANALOG_DOMICILE` - Invio richiesta di prepare (preparazione ad invio) cartaceo a paperChannel * `SEND_ANALOG_DOMICILE` - Invio cartaceo dell’avviso di notifica * `SEND_ANALOG_PROGRESS` - Ricezione informazioni intermedia relative ad una notificazione cartacea * `SEND_ANALOG_FEEDBACK` - Ricezione esito dell'invio cartaceo * `COMPLETELY_UNREACHABLE_CREATION_REQUEST` - Invio della richiesta di creazione dell'atto (simile a opponibile a terzi) di completamento con fallimento del workflow di invio cartaceo * `COMPLETELY_UNREACHABLE` - Tutti i destinatari risultano irraggiungibili * `AAR_CREATION_REQUEST` - Invio della richiesta di creazione dell'AAR (Avviso di Avvenuta Ricezione) a safe storage * `AAR_GENERATION` - Generazione dell’AAR (Avviso di Avvenuta Ricezione) * `PAYMENT` - Ricezione da parte della Pubblica Amministrazione di un evento di chiusura di una o più posizioni debitorie di tipo PagoPA. La presenza di questo evento inibisce l'invio di eventuali comunicazioni analogiche future ma non perfeziona la notifica. * `NOT_HANDLED` - [DEPRECATO] Per la sperimentazione l'invio analogico non è previsto, viene inserito tale elemento di timeline * `PROBABLE_SCHEDULING_ANALOG_DATE` - Data probabile di inizio del flusso analogico * `NOTIFICATION_CANCELLATION_REQUEST` - Richiesta di annullamento di una notifica * `NOTIFICATION_CANCELLED` - Notifica annullata * `PREPARE_ANALOG_DOMICILE_FAILURE` - Fallimento della richiesta di prepare (preparazione ad invio) cartaceo a paperChannel enum: - SENDER_ACK_CREATION_REQUEST - VALIDATE_NORMALIZE_ADDRESSES_REQUEST - NORMALIZED_ADDRESS - REQUEST_ACCEPTED - SEND_COURTESY_MESSAGE - GET_ADDRESS - PUBLIC_REGISTRY_CALL - PUBLIC_REGISTRY_RESPONSE - SCHEDULE_ANALOG_WORKFLOW - SCHEDULE_DIGITAL_WORKFLOW - PREPARE_DIGITAL_DOMICILE - SEND_DIGITAL_DOMICILE - SEND_DIGITAL_PROGRESS - SEND_DIGITAL_FEEDBACK - REFINEMENT - SCHEDULE_REFINEMENT - DIGITAL_DELIVERY_CREATION_REQUEST - DIGITAL_SUCCESS_WORKFLOW - DIGITAL_FAILURE_WORKFLOW - ANALOG_SUCCESS_WORKFLOW - ANALOG_FAILURE_WORKFLOW - PREPARE_SIMPLE_REGISTERED_LETTER - SEND_SIMPLE_REGISTERED_LETTER - SEND_SIMPLE_REGISTERED_LETTER_PROGRESS - NOTIFICATION_VIEWED_CREATION_REQUEST - NOTIFICATION_VIEWED - PREPARE_ANALOG_DOMICILE - SEND_ANALOG_DOMICILE - SEND_ANALOG_PROGRESS - SEND_ANALOG_FEEDBACK - PAYMENT - COMPLETELY_UNREACHABLE - COMPLETELY_UNREACHABLE_CREATION_REQUEST - REQUEST_REFUSED - AAR_CREATION_REQUEST - AAR_GENERATION - NOT_HANDLED - PROBABLE_SCHEDULING_ANALOG_DATE - NOTIFICATION_CANCELLATION_REQUEST - NOTIFICATION_CANCELLED - PREPARE_ANALOG_DOMICILE_FAILURE NotificationRefusedErrorV20: type: object properties: errorCode: type: string description: |- Errori di rifiuto della notifica. - FILE_NOTFOUND - FILE_SHA_ERROR - TAXID_NOT_VALID - SERVICE_UNAVAILABLE - FILE_PDF_INVALID_ERROR - FILE_PDF_TOOBIG_ERROR - NOT_VALID_ADDRESS - RECIPIENT_ID_NOT_VALID - F24_METADATA_NOT_VALID - PAYMENT_NOT_VALID ... detail: type: string RequestRefusedDetailsV20: type: object properties: refusalReasons: type: array description: Motivazioni che hanno portato al rifiuto della notifica items: $ref: '#/components/schemas/NotificationRefusedErrorV20' NotificationPaidDetailsV20: type: object required: - recIndex - recipientType - paymentSourceChannel properties: recIndex: type: integer description: Index destinatario che ha effettuato il pagamento della notifica format: int32 recipientType: $ref: '#/components/schemas/RecipientType' amount: type: integer description: Importo di pagamento in eurocent format: int32 creditorTaxId: $ref: '#/components/schemas/paTaxId' noticeCode: $ref: '#/components/schemas/noticeCode' idF24: type: string description: un UUID che identifica un pagamento f24 paymentSourceChannel: type: string description: Canale sorgente della richiesta di pagamento uncertainPaymentDate: deprecated: true type: boolean description: Indica se la data di pagamento é certa TimelineElementDetailsV20: description: The raw event payload that will be different based on the event. oneOf: - $ref: '#/components/schemas/SenderAckCreationRequestDetails' - $ref: '#/components/schemas/NormalizedAddressDetails' - $ref: '#/components/schemas/NotificationRequestAcceptedDetails' - $ref: '#/components/schemas/AnalogFailureWorkflowDetails' - $ref: '#/components/schemas/AnalogSuccessWorkflowDetails' - $ref: '#/components/schemas/CompletelyUnreachableCreationRequestDetails' - $ref: '#/components/schemas/CompletelyUnreachableDetails' - $ref: '#/components/schemas/DigitalDeliveryCreationRequestDetails' - $ref: '#/components/schemas/DigitalFailureWorkflowDetails' - $ref: '#/components/schemas/DigitalSuccessWorkflowDetails' - $ref: '#/components/schemas/GetAddressInfoDetails' - $ref: '#/components/schemas/NotificationViewedCreationRequestDetails' - $ref: '#/components/schemas/NotificationViewedDetails' - $ref: '#/components/schemas/PublicRegistryCallDetails' - $ref: '#/components/schemas/PublicRegistryResponseDetails' - $ref: '#/components/schemas/RefinementDetails' - $ref: '#/components/schemas/RequestRefusedDetailsV20' - $ref: '#/components/schemas/ScheduleAnalogWorkflowDetails' - $ref: '#/components/schemas/ScheduleDigitalWorkflowDetails' - $ref: '#/components/schemas/ScheduleRefinementDetails' - $ref: '#/components/schemas/SendCourtesyMessageDetails' - $ref: '#/components/schemas/PrepareDigitalDetails' - $ref: '#/components/schemas/SendDigitalDetails' - $ref: '#/components/schemas/SendDigitalFeedbackDetails' - $ref: '#/components/schemas/SendDigitalProgressDetails' - $ref: '#/components/schemas/BaseAnalogDetails' - $ref: '#/components/schemas/SendAnalogDetails' - $ref: '#/components/schemas/SendAnalogFeedbackDetails' - $ref: '#/components/schemas/BaseRegisteredLetterDetails' - $ref: '#/components/schemas/SimpleRegisteredLetterDetails' - $ref: '#/components/schemas/AarCreationRequestDetails' - $ref: '#/components/schemas/AarGenerationDetails' - $ref: '#/components/schemas/NotHandledDetails' - $ref: '#/components/schemas/NotificationPaidDetailsV20' - $ref: '#/components/schemas/SendAnalogProgressDetails' - $ref: '#/components/schemas/SimpleRegisteredLetterProgressDetails' - $ref: '#/components/schemas/ProbableDateAnalogWorkflowDetails' - $ref: '#/components/schemas/NotificationCancellationRequestDetails' - $ref: '#/components/schemas/NotificationCancelledDetails' - $ref: '#/components/schemas/PrepareAnalogDomicileFailureDetails' PersonalData: type: object properties: surname: pattern: ^[A-Z\\s]{1,24}$ type: string description: surname of the person name: pattern: ^[A-Z\\s]{1,20}$ type: string description: name of the person birthDate: pattern: ^\d{2}-\d{2}-\d{4}$ type: string description: birthdate of the person sex: pattern: ^[FM]$ type: string description: indicate if is (F)emale or (M)ale birthPlace: pattern: ^[A-Z\s]{1,40}$ type: string description: birth place of the person birthProvince: pattern: ^[A-Z]{2}$ type: string description: birth province of the person description: Personal Data (Dati Anagrafici) object TaxAddress: type: object properties: municipality: pattern: ^[A-Z]{1,40}$ type: string description: municipality of the tax address province: pattern: ^[A-Z]{2}$ type: string description: province of the tax address address: pattern: ^[A-Z0-9\s.]{1,35}$ type: string description: street and house number of the tax address description: Tax Residence (Domicilio Fiscale) object PersonData: type: object properties: personalData: $ref: '#/components/schemas/PersonalData' taxAddress: $ref: '#/components/schemas/TaxAddress' description: Person Data (Dati Anagrafici PF) object CompanyData: type: object properties: name: pattern: ^[A-Z\s]{1,60}$ type: string description: Company name taxAddress: $ref: '#/components/schemas/TaxAddress' description: Company Data (Dati Anagrafici PNF) object TaxPayerStandard: type: object properties: taxCode: pattern: >- ^([A-Z]{6}[0-9LMNPQRSTUV]{2}[ABCDEHLMPRST]{1}[0-9LMNPQRSTUV]{2}[A-Z]{1}[0-9LMNPQRSTUV]{3}[A-Z]{1})|([0-9]{11})$ type: string description: Tax Payer Tax Code isNotTaxYear: type: boolean description: field that show if the current year is included person: $ref: '#/components/schemas/PersonData' company: $ref: '#/components/schemas/CompanyData' relativePersonTaxCode: pattern: >- ^([A-Z]{6}[0-9LMNPQRSTUV]{2}[ABCDEHLMPRST]{1}[0-9LMNPQRSTUV]{2}[A-Z]{1}[0-9LMNPQRSTUV]{3}[A-Z]{1})|([0-9]{11})$ type: string description: It is the tax code of a relative of the main tax payer id: pattern: ^[A-Z0-9]{2}$ type: string description: identification code IncludeNotificationCost: type: object required: - applyCost properties: applyCost: type: boolean nullable: false description: to check if include notification cost Tax: allOf: - $ref: '#/components/schemas/IncludeNotificationCost' type: object properties: taxType: pattern: ^[A-Z0-9]{4}$ type: string description: identification code of the type of tax installment: pattern: ^[A-Z0-9]{0,4}$ type: string description: identification code of the ente year: pattern: ^[1-2][0-9]{3}$ type: string description: reference year of the tax debit: pattern: ^[0-9]{3,15}$ type: string description: debit amount of the tax credit: pattern: ^[0-9]{3,15}$ type: string description: credit amount of the tax description: Tax object TreasurySection: type: object properties: records: type: array items: $ref: '#/components/schemas/Tax' description: list of the taxes office: pattern: ^[A-Z0-9]{3}$ type: string description: identification code of the office document: pattern: ^\d{11}$ type: string description: identification code of the document description: Treasury Section (Sezione Erario) object Period: type: object properties: startDate: pattern: ^[0-9]{6}$ type: string description: start date of the period endDate: pattern: ^[0-9]{6}$ type: string description: end date of the period description: Reporting Period (Sezione INPS) object InpsRecord: allOf: - $ref: '#/components/schemas/IncludeNotificationCost' type: object properties: office: pattern: ^[0-9]{3,4}$ type: string description: identification code of the office reason: pattern: ^[A-Z-]{3,4}$ type: string description: contribution reason for the record inps: pattern: ^[A-Za-z0-9\s]{0,17}$ type: string description: INPS identification code period: $ref: '#/components/schemas/Period' debit: pattern: ^[0-9]{3,15}$ type: string description: debit amount of the record credit: pattern: ^[0-9]{3,15}$ type: string description: credit amount of the record description: INPS Record object InpsSection: type: object properties: records: type: array items: $ref: '#/components/schemas/InpsRecord' description: INPS Record List description: INPS Section (Sezione INPS) object RegionRecord: allOf: - $ref: '#/components/schemas/IncludeNotificationCost' type: object properties: region: pattern: ^[0-9]{2}$ type: string description: region identification code taxType: pattern: ^[0-9A-Z]{4}$ type: string description: identification code of the type of tax installment: pattern: ^[A-Z0-9]{0,4}$ type: string description: identification code of the ente year: pattern: ^[1-2][0-9]{3}$ type: string description: reference year debit: pattern: ^[0-9]{3,15}$ type: string description: debit amount of the record credit: pattern: ^[0-9]{3,15}$ type: string description: credit amount of the record description: Region Record object RegionSection: type: object properties: records: type: array items: $ref: '#/components/schemas/RegionRecord' description: Region Record List description: Region Section (Sezione Regioni) object LocalTaxRecord: allOf: - $ref: '#/components/schemas/IncludeNotificationCost' type: object required: - municipality - taxType properties: municipality: pattern: ^[0-9A-Z]{4}$ type: string description: identification code of the municipality reconsideration: type: boolean description: to check if it is a reconsideration act propertiesChanges: type: boolean description: to check if there are some changes in properties list advancePayment: type: boolean description: to check if it is a payment in advance fullPayment: type: boolean description: to check if it a full payment numberOfProperties: pattern: ^[0-9]{3}$ type: string description: number of properties taxType: pattern: ^[0-9]{4}$ type: string description: identification code of the type of tax installment: pattern: ^[A-Z0-9]{0,4}$ type: string description: identification code of the ente year: pattern: ^[1-2][0-9]{3}$ type: string description: reference year debit: pattern: ^[0-9]{3,15}$ type: string description: debit amount of the record credit: pattern: ^[0-9]{3,15}$ type: string description: credit amount of the record description: LocalTax Record object LocalTaxSection: type: object properties: operationId: pattern: ^[A-Z0-9]{18}$ type: string description: identification code of the operation records: type: array items: $ref: '#/components/schemas/LocalTaxRecord' deduction: pattern: ^[0-9]{3,15}$ type: string description: if there are any deduction description: LocalTax Section (Sezione LocalTax e Altri Tributi Locali) object InailRecord: allOf: - $ref: '#/components/schemas/IncludeNotificationCost' type: object properties: office: pattern: ^[0-9]{5}$ type: string description: identification code of the office company: pattern: ^[0-9]{8}$ type: string description: identification code of the company control: pattern: ^[0-9]{2}$ type: string description: control identification code refNumber: pattern: ^[0-9]{6}$ type: string description: reference number reason: pattern: ^[A-Z0-9]$ type: string description: reason of the record debit: pattern: ^[0-9]{3,15}$ type: string description: debit amount of the record credit: pattern: ^[0-9]{3,15}$ type: string description: credit amount of the record description: INAIL Record object SocialSecurityRecord: allOf: - $ref: '#/components/schemas/IncludeNotificationCost' type: object properties: institution: pattern: ^[0-9]{4}$ type: string description: identification code of the institution office: pattern: ^[0-9A-Z]{5}$ type: string description: identification code of the office reason: pattern: ^[0-9A-Z]{3,4}$ type: string description: reason of the contribution position: pattern: ^[0-9]{9}$ type: string description: identification code of the position period: $ref: '#/components/schemas/Period' debit: pattern: ^[0-9]{3,15}$ type: string description: debit amount of the record credit: pattern: ^[0-9]{3,15}$ type: string description: credit amount of the record description: Social Security Record object SocialSecuritySection: type: object properties: records: type: array items: $ref: '#/components/schemas/InailRecord' socSecRecords: type: array items: $ref: '#/components/schemas/SocialSecurityRecord' description: Social Security Record List description: Social Security Section (Sezione Altri Enti Previdenziali) object F24Standard: type: object properties: taxPayer: $ref: '#/components/schemas/TaxPayerStandard' treasury: $ref: '#/components/schemas/TreasurySection' inps: $ref: '#/components/schemas/InpsSection' region: $ref: '#/components/schemas/RegionSection' localTax: $ref: '#/components/schemas/LocalTaxSection' socialSecurity: $ref: '#/components/schemas/SocialSecuritySection' TaxPayerSimplified: type: object properties: taxCode: pattern: >- ^([A-Z]{6}[0-9LMNPQRSTUV]{2}[ABCDEHLMPRST]{1}[0-9LMNPQRSTUV]{2}[A-Z]{1}[0-9LMNPQRSTUV]{3}[A-Z]{1})|([0-9]{11})$ type: string description: Tax Payer Tax Code personalData: $ref: '#/components/schemas/PersonalData' relativePersonTaxCode: pattern: >- ^([A-Z]{6}[0-9LMNPQRSTUV]{2}[ABCDEHLMPRST]{1}[0-9LMNPQRSTUV]{2}[A-Z]{1}[0-9LMNPQRSTUV]{3}[A-Z]{1})|([0-9]{11})$ type: string description: It is the tax code of a relative of the main tax payer id: pattern: ^[A-Z0-9]{2}$ type: string description: identification code document: pattern: ^\d{11}$ type: string description: identification code of the document office: pattern: ^[A-Z0-9]{3}$ type: string description: identification code of the office SimplifiedPaymentRecord: allOf: - $ref: '#/components/schemas/LocalTaxRecord' required: - section properties: section: pattern: ^(ER|RG|EL)$ type: string description: section code (ER|RG|EL) description: Payment Reason Record object SimplifiedPaymentSection: type: object properties: operationId: pattern: ^[A-Z0-9]{18}$ type: string description: identification code of the operation records: type: array items: $ref: '#/components/schemas/SimplifiedPaymentRecord' description: Payments Record List description: Payment Reason Section (Motivo del Pagamento) object F24Simplified: type: object properties: taxPayer: $ref: '#/components/schemas/TaxPayerSimplified' payments: $ref: '#/components/schemas/SimplifiedPaymentSection' TaxPayerExcise: type: object properties: taxCode: pattern: >- ^([A-Z]{6}[0-9LMNPQRSTUV]{2}[ABCDEHLMPRST]{1}[0-9LMNPQRSTUV]{2}[A-Z]{1}[0-9LMNPQRSTUV]{3}[A-Z]{1})|([0-9]{11})$ type: string description: Tax Payer Tax Code isNotTaxYear: type: boolean description: field that show if the current year is included person: $ref: '#/components/schemas/PersonData' company: $ref: '#/components/schemas/CompanyData' relativePersonTaxCode: pattern: >- ^([A-Z]{6}[0-9LMNPQRSTUV]{2}[ABCDEHLMPRST]{1}[0-9LMNPQRSTUV]{2}[A-Z]{1}[0-9LMNPQRSTUV]{3}[A-Z]{1})|([0-9]{11})$ type: string description: It is the tax code of a relative of the main tax payer id: pattern: ^[A-Z0-9]{2}$ type: string description: identification code ExciseTax: allOf: - $ref: '#/components/schemas/IncludeNotificationCost' type: object properties: institution: pattern: ^[A-Z]{2}$ type: string description: institution of the tax province: pattern: ^[A-Z]{2}$ type: string description: province of the tax id: pattern: ^[A-Z0-9]{17}$ type: string description: identification code taxType: pattern: ^[0-9A-Z]{4}$ type: string description: identification code of the type of tax installment: pattern: ^[A-Z0-9]{0,4}$ type: string description: identification code of the ente month: pattern: ^[0-1][0-9]$ type: string description: month reference year: pattern: ^[1-2][0-9]{3}$ type: string description: reference year debit: pattern: ^[0-9]{3,15}$ type: string description: debit amount description: Excise Tax object ExciseSection: type: object properties: records: type: array items: $ref: '#/components/schemas/ExciseTax' description: Excise Tax List office: pattern: ^[A-Z0-9]{3}$ type: string description: identification code of the office document: pattern: ^\d{11}$ type: string description: identification code of the document description: Excise Section (Accise) object F24Excise: type: object properties: taxPayer: $ref: '#/components/schemas/TaxPayerExcise' treasury: $ref: '#/components/schemas/TreasurySection' inps: $ref: '#/components/schemas/InpsSection' region: $ref: '#/components/schemas/RegionSection' localTax: $ref: '#/components/schemas/LocalTaxSection' excise: $ref: '#/components/schemas/ExciseSection' description: F24 Excise (Accise) object TaxPayerElide: type: object properties: taxCode: pattern: >- ^([A-Z]{6}[0-9LMNPQRSTUV]{2}[ABCDEHLMPRST]{1}[0-9LMNPQRSTUV]{2}[A-Z]{1}[0-9LMNPQRSTUV]{3}[A-Z]{1})|([0-9]{11})$ type: string description: Tax Payer Tax Code person: $ref: '#/components/schemas/PersonData' company: $ref: '#/components/schemas/CompanyData' relativePersonTaxCode: pattern: >- ^([A-Z]{6}[0-9LMNPQRSTUV]{2}[ABCDEHLMPRST]{1}[0-9LMNPQRSTUV]{2}[A-Z]{1}[0-9LMNPQRSTUV]{3}[A-Z]{1})|([0-9]{11})$ type: string description: It is the tax code of a relative of the main tax payer id: pattern: ^[A-Z0-9]{2}$ type: string description: identification code TreasuryRecord: allOf: - $ref: '#/components/schemas/IncludeNotificationCost' type: object properties: type: pattern: ^[A-Z]$ type: string description: type of treasury id: pattern: ^[A-Z0-9]{17}$ type: string description: identification code of the element taxType: pattern: ^[A-Z0-9]{4}$ type: string description: identification code of the type of tax year: pattern: ^[1-2][0-9]{3}$ type: string description: referance year debit: pattern: ^[0-9]{3,15}$ type: string description: debit amount of the record description: Treasury Record object TreasuryAndOtherSection: type: object properties: office: pattern: ^[A-Z0-9]{3}$ type: string description: identification code of the office document: pattern: ^\d{11}$ type: string description: identification code of the document records: type: array items: $ref: '#/components/schemas/TreasuryRecord' description: Treasury Records description: Treasury ans Other Section (Sezione Erario e Altro) object F24Elid: type: object properties: taxPayer: $ref: '#/components/schemas/TaxPayerElide' treasury: $ref: '#/components/schemas/TreasuryAndOtherSection' StatusDetail: description: Detail of response to cancellation async call type: object required: - code properties: code: description: Internal code of the error or warning, in human-readable format example: NOTIFICATION_CANCELLATION_ACCEPTED, NOTIFICATION_ALREADY_CANCELLED type: string level: description: | informational level of status detail: INFO,WARN, ERR ERR (error) by default example: INFO type: string detail: description: >- A human readable explanation specific to this occurrence of the problem. example: Parameter not valid type: string LegalFactListElement: description: Informazioni relative ad un atto opponibile a terzi type: object required: - iun - legalFactsId properties: taxId: description: Valorizzato se l'atto si riferisce a uno specifico destinatario type: string minLength: 11 maxLength: 16 pattern: >- ^([A-Z]{6}[0-9LMNPQRSTUV]{2}[A-Z]{1}[0-9LMNPQRSTUV]{2}[A-Z]{1}[0-9LMNPQRSTUV]{3}[A-Z]{1})|([0-9]{11})$ iun: description: Identificativo Univoco Notifica a cui l'atto è associato type: string maxLength: 25 pattern: ^[A-Z]{4}-[A-Z]{4}-[A-Z]{4}-[0-9]{6}-[A-Z]{1}-[0-9]{1}$ legalFactsId: $ref: '#/components/schemas/LegalFactsId' LegalFactList: title: Elenco atti opponibili description: Elenco degli atti opponibili a terzi correlati a una notifica type: array items: $ref: '#/components/schemas/LegalFactListElement' DocumentCategory: title: Tipi di documenti description: Tipologie di documenti type: string enum: - AAR DocumentDownloadMetadataResponse: title: Url e metadati per il download di un documento correlato alla notifica description: |- I due campi più importanti sono __url__ e __retryAfter__.
- __url__ è presente se il file è pronto per essere scaricato ed indica l'url a cui fare GET. - __retryAfter__ indica che il file non è stato archiviato e bisognerà aspettare un numero di secondi non inferiore a quanto indicato dal campo _retryAfter_.
type: object required: - filename - contentLength properties: filename: type: string contentLength: type: number format: decimal32 example: 54092 description: dmensione, in byte, del contenuto. url: type: string description: >- URL preautorizzato a cui effettuare una richiesta GET per ottenere il contenuto del documento. Presente solo se il documento è pronto per il download. retryAfter: type: number format: decimal32 description: >- Stima del numero di secondi da aspettare prima che il contenuto del documento sia scaricabile. StreamCreationRequestV24: description: >- Richiesta di creazione di uno stream di eventi di avanzamento delle notifiche. Lo stream verrà creato nello stato abilitato type: object allOf: - $ref: '#/components/schemas/StreamRequestV24' - type: object properties: replacedStreamId: description: >- opzionale, eventuale streamId che viene sostituito da questo. Se specificato, lo stream indicato sarà disabilitato contestualmente alla creazione del nuovo stream, permettendo di consumare tutti gli eventi del vecchio stream senza che ne vengano aggiunti di nuovi. Inoltre, il nuovo stream partirà da un eventId successivo rispetto al vecchio stream (anche se non "esattamente" successivo per evitare sovrapposizioni con eventuali eventi salvati durante il cambio di configurazione). La creazione del nuovo stream è soggetta al controllo di autorizzazione dell'apiKey sui gruppi del precedente stream. type: string format: uuid StreamRequestV24: description: >- Struttura comune per eventi di creazione/aggiornamento di uno stream di eventi di avanzamento delle notifiche. L'aggiornamento delle proprietà dello stream è soggetta al controllo di autorizzazione dell'apiKey sui gruppi. type: object required: - title - eventType - groups properties: title: description: Nome sintetico dello stream type: string maxLength: 256 pattern: ^.*$ eventType: description: |- Tipo di eventi presenti nel flusso: - _STATUS_: cambiamenti di stato delle notifiche - _TIMELINE_: eventi a granularità fine type: string enum: - STATUS - TIMELINE groups: description: >- rappresenta l'elenco degli id gruppi abilitati a richiedere i dettagli. Una apiKey può consumare o modificare uno stream solo se non ha gruppi o se tutti i gruppi dello stream sono presenti nella apiKey. Se viene specificato array vuoto, si noti che solo apiKey senza gruppi potranno consumare o modificare lo stream. Inoltre, nel caso di updateEventStream, la lista dei gruppi presente nello stream deve essere un sottoinsieme dei gruppi passati nella richiesta (in pratica si possono solo aggiungere gruppi a quelli esistenti) oppure entrambi array vuoti. type: array items: allOf: - $ref: '#/components/schemas/StreamGroup' minLength: 0 filterValues: description: >- rappresenta l'elenco degli stati o elementi di timeline che si vogliono filtrare; inserendo un array vuoto [] si riceveranno solo gli elementi relativi alla versione con cui è stato creato lo stream. Se specificati invece, avranno priorità rispetto agli eventi della versione (quindi se sono un sottoinsieme, si riceveranno solo quelli. Se si specificano eventi introdotti in versioni più recenti, questi saranno inviati) Infine, è possibile utilizzare il placeholder "DEFAULT" per specificare l'insieme di eventi più rilevanti di una notifica. type: array items: type: string minLength: 4 maxLength: 256 pattern: ^[A-Z_]+$ StreamGroup: type: string description: Identificativo del gruppo. StreamMetadataResponseV24: description: Configurazioni di un flusso di eventi allOf: - $ref: '#/components/schemas/StreamRequestV24' - type: object required: - streamId - activationDate properties: streamId: description: Identificativo del flusso di eventi type: string format: uuid activationDate: description: Timestamp in cui il flusso di eventi è stato attivato type: string format: date-time disabledDate: description: Timestamp in cui il flusso di eventi è stato disabilitato type: string format: date-time version: description: versione di base dello stream. type: string pattern: ^v\d\d\d?$ StreamListResponse: description: Elenco di flussi di eventi type: array items: $ref: '#/components/schemas/StreamListElement' StreamListElement: type: object required: - title - streamId properties: streamId: type: string format: uuid title: type: string maxLength: 256 pattern: ^.*$ ProgressResponseV24: type: array items: $ref: '#/components/schemas/ProgressResponseElementV24' ProgressResponseElementV24: type: object required: - eventId - element properties: eventId: description: >- Elemento che garantisce univocità e ordinamento temporale all'interno dello stream type: string notificationRequestId: description: Identificativo della richiesta di notifica type: string iun: description: >- Identificativo della notifica, presente solo se la richiesta di notifica è stata accettata. type: string maxLength: 25 pattern: ^[A-Z]{4}-[A-Z]{4}-[A-Z]{4}-[0-9]{6}-[A-Z]{1}-[0-9]{1}$ newStatus: $ref: '#/components/schemas/NotificationStatus' element: $ref: '#/components/schemas/TimelineElementV24' StreamCreationRequest: description: >- Richiesta di creazione di uno stream di eventi di avanzamento delle notifiche. type: object required: - title - eventType properties: title: description: Nome sintetico dello stream type: string maxLength: 256 pattern: ^.*$ eventType: description: |- Tipo di eventi presenti nel flusso: - _STATUS_: cambiamenti di stato delle notifiche - _TIMELINE_: eventi a granularità fine type: string enum: - STATUS - TIMELINE filterValues: description: >- rappresenta l'elenco degli stati o elementi di timeline che si vogliono filtrare; inserendo un array vuoto [] si riceveranno solo gli elementi relativi a v1 type: array items: type: string minLength: 4 maxLength: 256 pattern: ^[A-Z_]+$ StreamMetadataResponse: description: Configurazioni di un flusso di eventi allOf: - $ref: '#/components/schemas/StreamCreationRequest' - type: object required: - streamId - activationDate properties: streamId: description: Identificativo del flusso di eventi type: string format: uuid activationDate: description: Timestamp in cui il flusso di eventi è stato attivato type: string format: date-time ProgressResponse: type: array items: $ref: '#/components/schemas/ProgressResponseElement' ProgressResponseElement: type: object required: - eventId - timestamp properties: eventId: description: >- Elemento che garantisce univocità e ordinamento temporale all'interno dello stream type: string timestamp: description: Istante a cui è avvenuto l'evento type: string format: date-time notificationRequestId: description: Identificativo della richiesta di notifica type: string iun: description: >- Identificativo della notifica, presente solo se la richiesta di notifica è stata accettata. type: string maxLength: 25 pattern: ^[A-Z]{4}-[A-Z]{4}-[A-Z]{4}-[0-9]{6}-[A-Z]{1}-[0-9]{1}$ newStatus: $ref: '#/components/schemas/NotificationStatus' timelineEventCategory: $ref: '#/components/schemas/TimelineElementCategoryV23' recipientIndex: type: integer format: int32 minimum: 0 description: Indice del destinatario al quale si riferisce l'evento analogCost: type: integer format: int32 description: Eventuale costo in eurocent associato all'evento channel: type: string description: >- Canale a cui si riferisce l'evento. I valori previsti sono: - Per eventi legati a messaggi di cortesia: APPIO, SMS, EMAIL - Per eventi legati all'invio digitale: PEC - Per eventi legati all'invio analogico: AR_REGISTERED_LETTER, REGISTERED_LETTER_890 - Per eventi legati all'invio di raccomandate semplici: SIMPLE_REGISTERED_LETTER legalfactIds: type: array items: type: string example: - PN_LEGAL_FACTS-0002-9G2S-RK3M-JI62-JK9Q - PN_LEGAL_FACTS-0002-9G2S-RK3M-JI62-JK9E description: chiavi degli eventuali allegati associati all'evento validationErrors: type: array description: eventuali errori di validazione associati all'evento items: $ref: '#/components/schemas/RefusedReason' RefusedReason: type: object properties: errorCode: type: string detail: type: string StreamCreationRequestV23: description: >- Richiesta di creazione di uno stream di eventi di avanzamento delle notifiche. Lo stream verrà creato nello stato abilitato type: object allOf: - $ref: '#/components/schemas/StreamRequestV23' - type: object properties: replacedStreamId: description: >- opzionale, eventuale streamId che viene sostituito da questo. Se specificato, lo stream indicato sarà disabilitato contestualmente alla creazione del nuovo stream, permettendo di consumare tutti gli eventi del vecchio stream senza che ne vengano aggiunti di nuovi. Inoltre, il nuovo stream partirà da un eventId successivo rispetto al vecchio stream (anche se non "esattamente" successivo per evitare sovrapposizioni con eventuali eventi salvati durante il cambio di configurazione). La creazione del nuovo stream è soggetta al controllo di autorizzazione dell'apiKey sui gruppi del precedente stream. type: string format: uuid StreamRequestV23: description: >- Struttura comune per eventi di creazione/aggiornamento di uno stream di eventi di avanzamento delle notifiche. L'aggiornamento delle proprietà dello stream è soggetta al controllo di autorizzazione dell'apiKey sui gruppi. type: object required: - title - eventType - groups properties: title: description: Nome sintetico dello stream type: string maxLength: 256 pattern: ^.*$ eventType: description: |- Tipo di eventi presenti nel flusso: - _STATUS_: cambiamenti di stato delle notifiche - _TIMELINE_: eventi a granularità fine type: string enum: - STATUS - TIMELINE groups: description: >- rappresenta l'elenco degli id gruppi abilitati a richiedere i dettagli. Una apiKey può consumare o modificare uno stream solo se non ha gruppi o se tutti i gruppi dello stream sono presenti nella apiKey. Se viene specificato array vuoto, si noti che solo apiKey senza gruppi potranno consumare o modificare lo stream. Inoltre, nel caso di updateEventStream, la lista dei gruppi presente nello stream deve essere un sottoinsieme dei gruppi passati nella richiesta (in pratica si possono solo aggiungere gruppi a quelli esistenti) oppure entrambi array vuoti. type: array items: allOf: - $ref: '#/components/schemas/StreamGroup' minLength: 0 filterValues: description: >- rappresenta l'elenco degli stati o elementi di timeline che si vogliono filtrare; inserendo un array vuoto [] si riceveranno solo gli elementi relativi alla versione con cui è stato creato lo stream. Se specificati invece, avranno priorità rispetto agli eventi della versione (quindi se sono un sottoinsieme, si riceveranno solo quelli. Se si specificano eventi introdotti in versioni più recenti, questi saranno inviati) Infine, è possibile utilizzare il placeholder "DEFAULT" per specificare l'insieme di eventi più rilevanti di una notifica. type: array items: type: string minLength: 4 maxLength: 256 pattern: ^[A-Z_]+$ StreamMetadataResponseV23: description: Configurazioni di un flusso di eventi allOf: - $ref: '#/components/schemas/StreamRequestV23' - type: object required: - streamId - activationDate properties: streamId: description: Identificativo del flusso di eventi type: string format: uuid activationDate: description: Timestamp in cui il flusso di eventi è stato attivato type: string format: date-time disabledDate: description: Timestamp in cui il flusso di eventi è stato disabilitato type: string format: date-time version: description: versione di base dello stream. type: string pattern: ^v\d\d\d?$ ProgressResponseV23: type: array items: $ref: '#/components/schemas/ProgressResponseElementV23' ProgressResponseElementV23: type: object required: - eventId - element properties: eventId: description: >- Elemento che garantisce univocità e ordinamento temporale all'interno dello stream type: string notificationRequestId: description: Identificativo della richiesta di notifica type: string iun: description: >- Identificativo della notifica, presente solo se la richiesta di notifica è stata accettata. type: string maxLength: 25 pattern: ^[A-Z]{4}-[A-Z]{4}-[A-Z]{4}-[0-9]{6}-[A-Z]{1}-[0-9]{1}$ newStatus: $ref: '#/components/schemas/NotificationStatus' element: $ref: '#/components/schemas/TimelineElementV23' securitySchemes: ApiKeyAuth: type: apiKey in: header name: x-api-key