openapi: 3.2.0 info: title: Pagopa New Notification API version: 1.0.0 contact: name: 'SEND: supporto enti' url: https://pagopa.atlassian.net/servicedesk/customer/portal/5 termsOfService: https://selfcare.notifichedigitali.it/termini-di-servizio x-api-id: api-external-b2b-pa x-summary: 'Piattaforma Notifiche: API B2B per le Pubbliche Amministrazioni' description: 'Operations tagged NewNotification across 2 of this provider''s published API definitions: send-b2b-pa-bundle.yaml, pagopa-send-b2b-pa-openapi.yml. Each path carries the servers of the definition it was published in.' servers: - url: https://api.notifichedigitali.it description: Ambiente di produzione - url: https://api.uat.notifichedigitali.it description: Ambiente di collaudo security: - ApiKeyAuth: [] tags: - name: NewNotification description: Invocazioni per effettuare il pre-caricamento dei documenti della notifica e inviare notifiche paths: /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' servers: - url: https://api.notifichedigitali.it description: Ambiente di produzione - url: https://api.uat.notifichedigitali.it description: Ambiente di collaudo /delivery/v2.6/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: sendNewNotificationV26 requestBody: content: application/json: schema: $ref: '#/components/schemas/NewNotificationRequestV26' 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' servers: - url: https://api.notifichedigitali.it description: Ambiente di produzione - url: https://api.uat.notifichedigitali.it description: Ambiente di collaudo /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' servers: - url: https://api.notifichedigitali.it description: Ambiente di produzione - url: https://api.uat.notifichedigitali.it description: Ambiente di collaudo /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' servers: - url: https://api.notifichedigitali.it description: Ambiente di produzione - url: https://api.uat.notifichedigitali.it description: Ambiente di collaudo /delivery/v2.3/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: 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' servers: - url: https://api.notifichedigitali.it description: Ambiente di produzione - url: https://api.uat.notifichedigitali.it description: Ambiente di collaudo /delivery/v2.4/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: sendNewNotificationV24 requestBody: content: application/json: schema: $ref: '#/components/schemas/NewNotificationRequestV24' 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' servers: - url: https://api.notifichedigitali.it description: Ambiente di produzione - url: https://api.uat.notifichedigitali.it description: Ambiente di collaudo /delivery/v2.5/requests: post: deprecated: true summary: EXPERIMENTAL - Richiesta invio notifica description: '(EXPERIMENTAL) 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: sendNewNotificationV25 x-pagopa-lambda-name: pn-delivery-versioning-v1v21-sendnewnotification-lambda:live x-pagopa-lambda-account: core requestBody: content: application/json: schema: $ref: '#/components/schemas/NewNotificationRequestV25' 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' servers: - url: https://api.notifichedigitali.it description: Ambiente di produzione - url: https://api.uat.notifichedigitali.it description: Ambiente di collaudo components: schemas: 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: description: Sender PA fiscal code example: '77777777777' type: string maxLength: 11 minLength: 11 pattern: ^\d+$ 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 NotificationPhysicalAddress: description: Indirizzo fisico type: object required: - address - municipality properties: at: type: string description: Campo "presso" dell'indirizzo pattern: ^.*$ maxLength: 44 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 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' 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}$ 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 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\n - application/pdf\n - 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}$ 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 minimum: 100 exclusiveMaximum: 600 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 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 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: description: Sender PA fiscal code example: '77777777777' type: string maxLength: 11 minLength: 11 pattern: ^\d+$ 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 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 NotificationPaymentAttachment: description: Un modulo di pagamento allegato alla notifica allOf: - $ref: '#/components/schemas/NotificationAttachment' 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' 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.
\n - _noticeCode_: \"codice avviso pagoPA\" di pagamento del sistema pagoPA, usato per pagamento online.
\n - _creditorTaxId_: codice fiscale dell'ente a cui fa riferimento il \"codice avviso pagoPA\".
\n - _applyCost_: flag per indicare se l'avviso pagoPA deve contenere i costi di notifica.
\n - _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 description: Flag per indicare se l'avviso pagoPa deve contenere i costi di notifica attachment: $ref: '#/components/schemas/NotificationPaymentAttachment' NewNotificationRequestV25: 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 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/NotificationRecipientV24' 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: description: Sender PA fiscal code example: '77777777777' type: string maxLength: 11 minLength: 11 pattern: ^\d+$ 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 additionalLanguages: description: 'In questo campo è possibile definire la lingua addizionale (oltre a quella italiana) da utilizzare per la generazione documenti, atti opponibili a terzi ecc.
Le lingue accettate e dunque i valori possibili degli item dell''array sono:
- DE
- SI
- FR
DE (tedesco), SI (sloveno), FR (francese) Attualmente è possibile indicare un solo item e dunque una sola lingua aggiuntiva. Se non vengono indicate lingue aggiuntive la lingua utilizzata per generare
documenti, atti opponibili a terzi ecc. sarà quella italiana.' type: array maxItems: 1 items: type: string 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})$ 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+$ 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' NotificationPaymentItem: minProperties: 1 additionalProperties: false properties: pagoPa: $ref: '#/components/schemas/PagoPaPayment' f24: $ref: '#/components/schemas/F24Payment' 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' 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' 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 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.
\n - _title_: titolo del documento pdf da mostrare all'utente .
\n - _applyCost_: flag per indicare se il modello F24 deve contenere i costi di notifica.
\n - _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 description: Flag per indicare se il modello F24 deve contere i costi di notifica metadataAttachment: $ref: '#/components/schemas/NotificationMetadataAttachment' paTaxId: description: Payment PA fiscal code example: '77777777777' type: string maxLength: 11 minLength: 11 pattern: ^\d+$ NewNotificationRequestV24: 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: description: Sender PA fiscal code example: '77777777777' type: string maxLength: 11 minLength: 11 pattern: ^\d+$ 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''attualizzazione del costo della notifica.
- _NONE_: nessuna attualizzazione.
- _SYNC_: modalitá sincrona.
- _ASYNC_: modalitá asincrona.
' enum: - NONE - SYNC - ASYNC additionalLanguages: description: 'In questo campo è possibile definire la lingua addizionale (oltre a quella italiana) da utilizzare per la generazione documenti, atti opponibili a terzi ecc.
Le lingue accettate e dunque i valori possibili degli item dell''array sono:
- DE
- SI
- FR
DE (tedesco), SI (sloveno), FR (francese) Attualmente è possibile indicare un solo item e dunque una sola lingua aggiuntiva. Se non vengono indicate lingue aggiuntive la lingua utilizzata per generare
documenti, atti opponibili a terzi ecc. sarà quella italiana.' type: array maxItems: 1 items: type: string 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: description: Sender PA fiscal code example: '77777777777' type: string maxLength: 11 minLength: 11 pattern: ^\d+$ 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 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.
\n - _noticeCode_: \"codice avviso pagoPA\" di pagamento del sistema pagoPA, usato per pagamento online.
\n - _creditorTaxId_: codice fiscale dell'ente a cui fa riferimento il \"codice avviso pagoPA\".
\n - _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' 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 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: 88 pattern: ^.*$ NotificationRecipientV24: description: Informazioni sui destinatari required: - denomination - recipientType - taxId 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' 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 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 noticeCode: description: Payment notice number numero avviso example: '302000100000019421' type: string maxLength: 18 minLength: 18 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 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}$ 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 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' NewNotificationRequestV26: 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 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/NotificationRecipientV24' 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: description: Sender PA fiscal code example: '77777777777' type: string maxLength: 11 minLength: 11 pattern: ^\d+$ 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 additionalLanguages: description: 'In questo campo è possibile definire la lingua addizionale (oltre a quella italiana) da utilizzare per la generazione documenti, atti opponibili a terzi ecc.
Le lingue accettate e dunque i valori possibili degli item dell''array sono:
- DE
- SI
- FR
DE (tedesco), SI (sloveno), FR (francese) Attualmente è possibile indicare un solo item e dunque una sola lingua aggiuntiva. Se non vengono indicate lingue aggiuntive la lingua utilizzata per generare
documenti, atti opponibili a terzi ecc. sarà quella italiana.' type: array maxItems: 1 items: type: string physicalCommunicationPriority: type: integer format: int32 description: Priorità del primo tentativo di recapito quando è attiva la funzionalità di gestione dei picchi, dove 100 rappresenta la priorità massima e 0 la minima. Regola l'ordine di affido delle spedizioni all'interno della sola quota mittente, dando precedenza a quelle più urgenti senza impattare sulle quote degli altri enti. minimum: 0 maximum: 100 default: 0 example: 0 securitySchemes: ApiKeyAuth: type: apiKey in: header name: x-api-key x-refined-from: - send-b2b-pa-bundle.yaml - pagopa-send-b2b-pa-openapi.yml