---
openapi: 3.1.0
components:
  schemas:
    AutocompleteRequest:
      type: object
      required:
      - testoRicerca
      - citta
      - provincia
      description: Ricerca per autocompletamento su nome insegna del punto ed indirizzo
        del punto.<br/>Opzionalmente si puo' specificare la posizione dalla quale
        effettuare la richiesta.<br/>Nel caso in cui viene specificata una posizione
        di riferimento i risultati vengono ordinati per distanza altrimenti per nome
        insegna punto
      properties:
        testoRicerca:
          type: string
          description: "Ricerca per autocompletamento su nome insegna, indirizzo e\
            \ categoria. I valori specificati separati da spazio vengono cercati in\
            \ OR. I risultati vengono mostrati per score e distanza Il valore fornito\
            \ deve contenere in totale almeno due caratteri alfanumerici (Es: ab,\
            \ a.b, a-.'b)"
        citta:
          type: string
          description: Indica di filtrare i punti trovati per citta' di appartenenza
        provincia:
          type: string
          pattern: "^[a-zA-Z]{2}$"
          description: Indica di filtrare i punti trovati per provincia di appartenenza
        tipoPunto:
          type: array
          items:
            type: string
          description: "Indica di filtrare per punti del tipo appropriato (Merchant,\
            \ MerchantVirtuale, UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico,\
            \ CassettaPostale)"
        oraAperto:
          type: boolean
          description: Se true restituisce solo risultati per punti aperti
          default: false
        lon:
          type: string
          pattern: ^-?\d+\.?\d*$
          description: Indica la longitudine della posizione dell'utente che effettua
            la ricerca
          default: "12.4657082"
        lat:
          type: string
          pattern: ^-?\d+\.?\d*$
          description: Indica la latitudine della posizione dell'utente che effettua
            la ricerca
          default: "41.832026"
        serviziOr:
          type: array
          items:
            type: string
          description: Indica di filtrare i punti trovati includendo quelli che offrono
            tutti i servizi specificati
        serviziAnd:
          type: array
          items:
            type: string
          description: Indica di filtrare i punti trovati includendo quelli che offrono
            almeno un servizio tra quelli specificati
        serviziUpOr:
          type: array
          items:
            type: string
          description: "Indica di filtrare i punti trovati che offrano almeno un servizio\
            \ tra quelli specificati tramite codice servizio di anagrafe.La ricerca\
            \ viene effettuata solo per i tipi punto: UfficioPostale, PuntoPoste,\
            \ PuntoPosteLocker, SpazioFilatelico, CassettaPostale."
        serviziUpAnd:
          type: array
          items:
            type: string
          description: "Indica di filtrare i punti trovati includendo quelli che offrano\
            \ tutti i servizi specificati tramite codice servizio di anagrafe.La ricerca\
            \ viene effettuata solo per i tipi punto: UfficioPostale, PuntoPoste,\
            \ PuntoPosteLocker, SpazioFilatelico, CassettaPostale."
        categorieServiziUpOr:
          type: array
          items:
            type: string
          description: "Indica di filtrare i punti trovati che appartengano ad almeno\
            \ una categoria tra quelle specificate.La ricerca viene effettuata solo\
            \ per i tipi punto: UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico,\
            \ CassettaPostale."
        categorieServiziUpAnd:
          type: array
          items:
            type: string
          description: "Indica di filtrare i punti trovati includendo quelli che appartengano\
            \ a tutte le categorie specificate.La ricerca viene effettuata solo per\
            \ i tipi punto: UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico,\
            \ CassettaPostale."
        gruppiServiziUp:
          type: array
          items:
            type: array
            items:
              type: string
          description: "Indica di filtrare i punti trovati includendo solo quelli\
            \ che hanno un servizio il cui codice appartenga a tutti i gruppi specificati.I\
            \ gruppi [[CodA,CodB],[CodA],[CodB,CodC]] si traducono nell'espressione\
            \ (CodA or CodB) and (CodA) and (CodB or CodC)."
        giornoOraAperturaUp:
          type: string
          description: Indica di filtrare ulteriormente i punti UfficoPostale o PuntoPoste
            per data di apertura specificata come 'yyyyMMdd-HH:mm'
        categorieMerchant:
          type: array
          items:
            type: string
          description: Indica di filtrare i punti trovati secondo una lista di categorie
    AutocompleteRequestV2:
      type: object
      required:
      - testoRicerca
      description: Ricerca per autocompletamento su nome insegna del punto ed indirizzo
        del punto.<br/>Opzionalmente si puo' specificare la posizione dalla quale
        effettuare la richiesta.<br/>Nel caso in cui viene specificata una posizione
        di riferimento i risultati vengono ordinati per distanza altrimenti per miglior
        corrispondenza
      properties:
        testoRicerca:
          type: string
          description: "Ricerca per autocompletamento su nome insegna, indirizzo e\
            \ categoria. I valori specificati separati da spazio vengono cercati in\
            \ OR. I risultati vengono mostrati per score e distanza Il valore fornito\
            \ deve contenere in totale almeno due caratteri alfanumerici (Es: ab,\
            \ a.b, a-.'b)"
        tipoPunto:
          type: array
          items:
            type: string
          description: "Indica di filtrare per punti del tipo appropriato (Merchant,\
            \ MerchantVirtuale, UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico,\
            \ CassettaPostale)"
        oraAperto:
          type: boolean
          description: Se true restituisce solo risultati per punti aperti
          default: false
        lon:
          type: string
          pattern: ^-?\d+\.?\d*$
          description: Indica la longitudine della posizione dell'utente che effettua
            la ricerca
          default: "12.4657082"
        lat:
          type: string
          pattern: ^-?\d+\.?\d*$
          description: Indica la latitudine della posizione dell'utente che effettua
            la ricerca
          default: "41.832026"
        serviziOr:
          type: array
          items:
            type: string
          description: Indica di filtrare i punti trovati includendo quelli che offrono
            tutti i servizi specificati
        serviziAnd:
          type: array
          items:
            type: string
          description: Indica di filtrare i punti trovati includendo quelli che offrono
            almeno un servizio tra quelli specificati
        serviziUpOr:
          type: array
          items:
            type: string
          description: "Indica di filtrare i punti trovati che offrano almeno un servizio\
            \ tra quelli specificati tramite codice servizio di anagrafe.La ricerca\
            \ viene effettuata solo per i tipi punto: UfficioPostale, PuntoPoste,\
            \ PuntoPosteLocker, SpazioFilatelico, CassettaPostale."
        serviziUpAnd:
          type: array
          items:
            type: string
          description: "Indica di filtrare i punti trovati includendo quelli che offrano\
            \ tutti i servizi specificati tramite codice servizio di anagrafe.La ricerca\
            \ viene effettuata solo per i tipi punto: UfficioPostale, PuntoPoste,\
            \ PuntoPosteLocker, SpazioFilatelico, CassettaPostale."
        categorieServiziUpOr:
          type: array
          items:
            type: string
          description: "Indica di filtrare i punti trovati che appartengano ad almeno\
            \ una categoria tra quelle specificate.La ricerca viene effettuata solo\
            \ per i tipi punto: UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico,\
            \ CassettaPostale."
        categorieServiziUpAnd:
          type: array
          items:
            type: string
          description: "Indica di filtrare i punti trovati includendo quelli che appartengano\
            \ a tutte le categorie specificate.La ricerca viene effettuata solo per\
            \ i tipi punto: UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico,\
            \ CassettaPostale."
        gruppiServiziUp:
          type: array
          items:
            type: array
            items:
              type: string
          description: "Indica di filtrare i punti trovati includendo solo quelli\
            \ che hanno un servizio il cui codice appartenga a tutti i gruppi specificati.I\
            \ gruppi [[CodA,CodB],[CodA],[CodB,CodC]] si traducono nell'espressione\
            \ (CodA or CodB) and (CodA) and (CodB or CodC)."
        giornoOraAperturaUp:
          type: string
          description: Indica di filtrare ulteriormente i punti UfficoPostale o PuntoPoste
            per data di apertura specificata come 'yyyyMMdd-HH:mm'
        categorieMerchant:
          type: array
          items:
            type: string
          description: Indica di filtrare i punti trovati secondo una lista di categorie
        citta:
          type: string
          description: Indica di filtrare i punti trovati per citta' di appartenenza
        provincia:
          type: string
          pattern: "^[a-zA-Z]{2}$"
          description: Indica di filtrare i punti trovati per provincia di appartenenza
    AutocompleteRequestV3:
      type: object
      required:
      - testoRicerca
      - tipoPunto
      description: Ricerca per autocompletamento su nome insegna del punto ed indirizzo
        del punto.<br/>Opzionalmente si puo' specificare la posizione dalla quale
        effettuare la richiesta.<br/>Nel caso in cui viene specificata una posizione
        di riferimento i risultati vengono ordinati per distanza altrimenti per nome
        insegna punto
      properties:
        testoRicerca:
          type: string
          description: "Ricerca per autocompletamento su nome insegna, indirizzo e\
            \ categoria. I valori specificati separati da spazio vengono cercati in\
            \ OR. I risultati vengono mostrati per score e distanza Il valore fornito\
            \ deve contenere in totale almeno due caratteri alfanumerici (Es: ab,\
            \ a.b, a-.'b)"
        tipoPunto:
          type: array
          items:
            type: string
          description: "Indica di filtrare per punti del tipo appropriato (Merchant,\
            \ MerchantVirtuale, UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico,\
            \ CassettaPostale, Lis, PuntoPosteLis)</br> Attenzione filtrare per tipoPunto\
            \ Lis significa ottenere solo i punti Lis che non siano contemporaneamente\
            \ PuntoPoste. Filtrare per tipoPunto PuntoPoste significa ottenere solo\
            \ i punti PuntoPoste che non siano contemporaneamente Lis. Il filtro PuntoPosteLis\
            \ restituisce solo i punti che siano contemporaneamente di tipo PuntoPoste\
            \ e di tipo Lis."
        lon:
          type: string
          pattern: ^-?\d+\.?\d*$
          description: Specifica la longitudine del centro del rettangolo geografico
            di interrogazione
          default: "12.4657082"
        lat:
          type: string
          pattern: ^-?\d+\.?\d*$
          description: Specifica la latitudine del centro del rettangolo geografico
            di interrogazione
          default: "41.832026"
        spanLon:
          type: string
          pattern: ^\d+\.?\d*$
          description: Specifica lo scostamento in longitudine dal centro del rettangolo
            geografico di interrogazione (sia a sinistra che a destra)
          default: "0.2"
        spanLat:
          type: string
          pattern: ^\d+\.?\d*$
          description: Specifica lo scostamento in latitudine dal centro del rettangolo
            geografico di interrogazione (sia in alto che in basso)
          default: "0.2"
        oraAperto:
          type: boolean
          description: Se true restituisce solo risultati per punti aperti
          default: false
        serviziOr:
          type: array
          items:
            type: string
          description: Indica di filtrare i punti trovati che offrano almeno un servizio
            tra quelli specificati tramite codice servizio di anagrafe. In aggiunta
            ai servizi presenti in anagrafe si puo' interrogare per servizio con codice
            <i>ATM</i>
        serviziAnd:
          type: array
          items:
            type: string
          description: Indica di filtrare i punti trovati includendo quelli che offrano
            tutti i servizi specificati tramite codice servizio di anagrafe.In aggiunta
            ai servizi presenti in anagrafe si puo' interrogare per servizio con codice
            <i>ATM</i>
        categorieServiziOr:
          type: array
          items:
            type: string
          description: Indica di filtrare i punti trovati che offrano almeno un servizio
            appartenente ad un gruppo di servizi predeterminato da una categoria.
            Il dominio del campo <i>categorieServiziOr</i> puo' essere interrogato
            tramite la chiamata <i>getCategorieServizi</i>
        categorieServiziAnd:
          type: array
          items:
            type: string
          description: Indica di filtrare i punti trovati che offrano tutti i servizi
            appartenenti ad un gruppo di servizi predeterminato. Il dominio del campo
            <i>categorieServiziOr</i> puo' essere interrogato tramite la chiamata
            <i>getCategorieServizi</i>
        categorieNegozio:
          type: array
          items:
            type: string
          description: "Indica di filtrare i punti trovati secondo una lista di categorie\
            \ merceologiche. <b>Si applica solo ai punti Merchant (negozi)</b>.Le\
            \ categorie previste sono Abbigliamento,Altro,Carburante,Mobilita,Salute\
            \ e benessere,Spesa e cucina,Tempo libero,Viaggi.Per le interrogazioni\
            \ tramite codice servizio si devono utilizzare le seguenti stringhe mnemoniche:\
            \ <i>abbigliamento,altro,carburante,mobilita,salute_e_benessere,spesa_e_cucina,tempo_libero,viaggi</i>"
    AutocompleteResponse:
      type: object
      description: Risultato della ricerca di punti tramite griglia geografica
      properties:
        listaSuggerimenti:
          type: array
          items:
            $ref: "#/components/schemas/ElementoAutocomplete"
        categoriaMerchant:
          $ref: "#/components/schemas/CategoriaMerchant"
          type: object
          description: Per i tipi Merchant include un suggerimento per la categoria
    AutocompleteResponseV2:
      type: object
      description: Risultato della ricerca di punti tramite griglia geografica
      properties:
        listaSuggerimenti:
          type: array
          items:
            $ref: "#/components/schemas/ElementoAutocompleteV2"
        categoriaMerchant:
          $ref: "#/components/schemas/CategoriaMerchant"
          type: object
          description: Per i tipi Merchant include un suggerimento per la categoria
    AutocompleteResponseV3:
      type: object
      description: Risultato della ricerca di punti tramite griglia geografica
      properties:
        listaSuggerimenti:
          type: array
          items:
            $ref: "#/components/schemas/ElementoAutocompleteV3"
    CategoriaMerchant:
      type: object
      properties:
        codice:
          type: string
          description: "<i>abbigliamento,altro,carburante,mobilita,salute_e_benessere,spesa_e_cucina,tempo_libero,viaggi</i>"
        descrizione:
          type: string
    CategoriaServizio:
      type: object
      properties:
        codice:
          type: string
        descrizione:
          type: string
    CategorieResponse:
      type: object
      properties:
        categorieMerchant:
          type: array
          items:
            $ref: "#/components/schemas/CategoriaMerchant"
    CategorieServiziResponse:
      type: object
      properties:
        categorieServizi:
          type: array
          items:
            $ref: "#/components/schemas/CategoriaServizio"
    ClusterResponse:
      type: object
      description: Struttura dati che descrive il cluster contenente aggregazione
        di punti
      properties:
        numeroPuntiTotale:
          type: string
          description: Numero di punti appartenenti al cluster
        lon:
          type: string
          description: Longitudine del centro del cluster (come da KMeans)
          default: "12.4657082"
        lat:
          type: string
          description: Latitudine del centro del cluster (come da KMeans)
          default: "41.832026"
    Comune:
      type: object
      properties:
        comune:
          type: string
        provincia:
          type: string
    ComuniResponse:
      type: object
      properties:
        comuni:
          type: array
          items:
            $ref: "#/components/schemas/Comune"
    DettaglioPromozione:
      type: object
      properties:
        codiceProgramma:
          type: string
          description: "Il codice della campagna promozionale: sbp, cpp, etc..."
        valoreRimborso:
          type: string
          description: Il valore del rimborso che va determinato con tipoRimborso
            e sottotipoRimborso.
        tipoRimborso:
          type: string
          description: "Il tipo di rimborso percentuale o assoluto del campo valoreRimborso.\
            \ Valori ammessi [Percent|Absolute]"
        sottotipoRimborso:
          type: string
          description: "Se presente, indica se il tipo rimborso è un limite superiore\
            \ o inferiore. Valori ammessi [Max|Min]. Max indica 'fino a/al', Min 'a\
            \ partire da/dal'."
        metodiPagamento:
          type: array
          items:
            type: string
          description: "Metodi di pagamento previsti per la promo. Valori ammessi\
            \ Pos,Code"
        fasceOrarieRimborso:
          type: array
          items:
            $ref: "#/components/schemas/FasciaOrariaRimborso"
          description: Lista dei giorni della settimana e relative fasce orarie della
            promo (promo ad intervallo)
    DettaglioPromozioneV3:
      type: object
      properties:
        descrizioneProgramma:
          type: string
          description: "Descrizione della promo da visualizzare, presente solo per\
            \ promo censite e configurate (Es: le promo ENI)."
        codiceProgramma:
          type: string
          description: "Il codice della campagna promozionale: sbp, cpp, etc..."
        valoreRimborso:
          type: string
          description: Il valore del rimborso che va determinato con tipoRimborso
            e sottotipoRimborso.
        tipoRimborso:
          type: string
          description: "Il tipo di rimborso percentuale o assoluto del campo valoreRimborso.\
            \ Valori ammessi [Percent|Absolute]"
        sottotipoRimborso:
          type: string
          description: "Se presente, indica se il tipo rimborso è un limite superiore\
            \ o inferiore. Valori ammessi [Max|Min]. Max indica 'fino a/al', Min 'a\
            \ partire da/dal'."
        metodiPagamento:
          type: array
          items:
            type: string
          description: "Metodi di pagamento previsti per la promo. Valori ammessi\
            \ Pos,Code"
    DettaglioServizio:
      type: object
      properties:
        codice:
          type: string
        descrizione:
          type: string
        categoria:
          type: string
        codiceCategoria:
          type: string
        puntoPosteLisCategorie:
          type: array
          items:
            type: string
          description: "Valorizzato con la categoria del filtro a cui appartiene [PagaePreleva|SpedizionieRitiri|PagamentieRicariche|Prelievi].\
            \ Campo valorizzato solo per punti Lis, PuntoPoste e PuntoPosteLis"
        puntoPosteLisNomeServizio:
          type: string
          description: "Remapping dei campi adottato a partire dalla versione v3 per\
            \ i servizi Lis, PuntoPoste e PuntoPosteLis"
    DettaglioUpResponse:
      type: object
      properties:
        listaPunti:
          type: array
          items:
            $ref: "#/components/schemas/PuntoMappaUnicaDettaglio"
    DettaglioUpResponseV3:
      type: object
      properties:
        listaPunti:
          type: array
          items:
            $ref: "#/components/schemas/PuntoMappaUnicaBaseV3"
    ElementoAutocomplete:
      type: object
      properties:
        idPunto:
          type: string
          description: Specifica un identificativo univoco del punto
        nomePunto:
          type: string
        indirizzoPunto:
          type: string
        categoriaMerchant:
          $ref: "#/components/schemas/CategoriaMerchant"
          type: object
          description: Restituisce la categoria solo per i tipo punti Merchant
        tipoVetrina:
          type: string
        tipoPunto:
          type: string
          description: "Indica la tipologia di punto (Merchant, MerchantVirtuale,\
            \ UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico, CassettaPostale,\
            \ Lis, PuntoPosteLis)</br>"
    ElementoAutocompleteV2:
      type: object
      properties:
        idPunto:
          type: string
          description: Specifica un identificativo univoco del punto
        nomePunto:
          type: string
        indirizzoPunto:
          type: string
        categoriaMerchant:
          $ref: "#/components/schemas/CategoriaMerchant"
          type: object
          description: Restituisce la categoria solo per i tipo punti Merchant
        tipoVetrina:
          type: string
        tipoPunto:
          type: string
          description: "Indica la tipologia di punto (Merchant, MerchantVirtuale,\
            \ UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico, CassettaPostale,\
            \ Lis, PuntoPosteLis)</br>"
        distance:
          type: string
          description: "Se in input vengono specificati longitudine e latitudine i\
            \ risultati vengono ordinati per distanza dal punto specificato. La zona\
            \ analizzata avrà un lato specificato da configurazione (es: 50km)."
        score:
          type: string
          description: Specifica lo score del suggerimento restituito. Uno score maggiore
            indica un elemento con maggior corrispondenza. In assenza della posizione
            i risultati vengono ordinati per score.
        lon:
          type: string
          description: Indica la coordinata longitudine della posizione del punto
        lat:
          type: string
          description: Indica la coordinata latitudine della posizione del punto
    ElementoAutocompleteV3:
      type: object
      properties:
        idPunto:
          type: string
          description: Specifica un identificativo univoco del punto
        nomePunto:
          type: string
        indirizzoPunto:
          type: string
        tipoPunto:
          type: string
          description: "Indica la tipologia di punto (Merchant, MerchantVirtuale,\
            \ UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico, CassettaPostale,\
            \ Lis, PuntoPosteLis)</br>"
        distance:
          type: string
          description: "Se in input vengono specificati longitudine e latitudine i\
            \ risultati vengono ordinati per distanza dal punto specificato. La zona\
            \ analizzata avrà un lato specificato da configurazione (es: 50km)."
        score:
          type: string
          description: Specifica lo score del suggerimento restituito. Uno score maggiore
            indica un elemento con maggior corrispondenza. In assenza della posizione
            i risultati vengono ordinati per score.
        lon:
          type: string
          description: Indica la coordinata longitudine della posizione del punto
        lat:
          type: string
          description: Indica la coordinata latitudine della posizione del punto
        categorieServizi:
          type: array
          items:
            type: string
          description: "Lista delle categorie di servizi offerti dal punto. Queste\
            \ sono le categorie <i>pagaepreleva,spedizioneeritiri</i>, etc..."
        labelServizi:
          type: array
          items:
            type: string
          description: Lista delle label dei servizi offerti dal punto come da descrizione
            funzionale.
    Error:
      type: object
      properties:
        message:
          type: string
        techMessage:
          type: string
        code:
          $ref: "#/components/schemas/ErrorCode"
          type: string
          description: Codice univoco che descrive la tipologia di errore
          default: ""
    ErrorCode:
      type: string
      enum:
      - M-01
      - M-02
      - M-03
    FasciaOraria:
      type: object
      properties:
        oraInizio:
          type: string
        oraFine:
          type: string
    FasciaOrariaRimborso:
      type: object
      properties:
        giorno:
          type: string
        fasceOrarie:
          type: array
          items:
            $ref: "#/components/schemas/FasciaOraria"
    GeoListByComuneRequest:
      type: object
      required:
      - comune
      - provincia
      description: Dati di definizione della ricerca per categoriaMerchant e comune.
      properties:
        comune:
          type: string
          description: Individua i punti per comune
        provincia:
          type: string
          description: Individua i punti per provincia
        testoRicerca:
          type: string
          description: "Ricerca per autocompletamento su nome insegna punto o su indirizzo\
            \ punto. Se presentei dati verranno ordinati per score di ricerca.Il valore\
            \ fornito deve contenere in totale almeno due caratteri alfanumerici (Es:\
            \ ab, a.b, a-.'b)"
        categorieMerchant:
          type: array
          items:
            type: string
          description: "Indica di filtrare i punti trovati secondo una lista di categorie.\
            \ Il valore fornito deve contenere in totale almeno due caratteri alfanumerici\
            \ (Es: ab, a.b, a-.'b)"
        serviziOr:
          type: array
          items:
            type: string
          description: Indica di filtrare i punti trovati includendo quelli che offrono
            almeno un servizio tra quelli specificati
        serviziAnd:
          type: array
          items:
            type: string
          description: Indica di filtrare i punti trovati includendo quelli che offrono
            tutti i servizi specificati
        serviziUpOr:
          type: array
          items:
            type: string
          description: "Indica di filtrare i punti trovati che offrano almeno un servizio\
            \ tra quelli specificati tramite codice servizio di anagrafe.La ricerca\
            \ viene effettuata solo per i tipi punto: UfficioPostale, PuntoPoste,\
            \ PuntoPosteLocker, SpazioFilatelico, CassettaPostale."
        serviziUpAnd:
          type: array
          items:
            type: string
          description: "Indica di filtrare i punti trovati includendo quelli che offrano\
            \ tutti i servizi specificati tramite codice servizio di anagrafe.La ricerca\
            \ viene effettuata solo per i tipi punto: UfficioPostale, PuntoPoste,\
            \ PuntoPosteLocker, SpazioFilatelico, CassettaPostale."
        categorieServiziUpOr:
          type: array
          items:
            type: string
          description: "Indica di filtrare i punti trovati che appartengano ad almeno\
            \ una categoria tra quelle specificate.La ricerca viene effettuata solo\
            \ per i tipi punto: UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico,\
            \ CassettaPostale."
        categorieServiziUpAnd:
          type: array
          items:
            type: string
          description: "Indica di filtrare i punti trovati includendo quelli che appartengano\
            \ a tutte le categorie specificate.La ricerca viene effettuata solo per\
            \ i tipi punto: UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico,\
            \ CassettaPostale."
        gruppiServiziUp:
          type: array
          items:
            type: array
            items:
              type: string
          description: "Indica di filtrare i punti trovati includendo solo quelli\
            \ che hanno un servizio il cui codice appartenga a tutti i gruppi specificati.I\
            \ gruppi [[CodA,CodB],[CodA],[CodB,CodC]] si traducono nell'espressione\
            \ (CodA or CodB) and (CodA) and (CodB or CodC)."
        giornoOraAperturaUp:
          type: string
          description: Indica di filtrare ulteriormente i punti UfficoPostale o PuntoPoste
            per data di apertura specificata come 'yyyyMMdd-HH:mm'
        tipoPunto:
          type: array
          items:
            type: string
          description: "Indica di filtrare per punti del tipo appropriato (Merchant,\
            \ MerchantVirtuale, UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico,\
            \ CassettaPostale)"
        oraAperto:
          type: boolean
          description: Se true restituisce solo risultati per punti aperti
          default: false
        offset:
          type: string
          description: Utilizzato per la paginazione. Scarta i primi 'offset' elementi
          default: "0"
        limit:
          type: string
          description: Utilizzato per la paginazione. Restituisce solo 'limit' risultati
          default: "10"
        cap:
          type: string
          description: Indica se filtrare i risultati per cap (codice avviamento postale)
        fasciaOrariaRitiro:
          type: string
          pattern: M|P|MATTINA|POMERIGGIO
          description: "Per le cassette postali indica di filtrare per fascia oraria\
            \ di ritiro: mattina (prima delle 13) o pomeriggio (dopo le 13)Valori\
            \ ammessi: M|P|MATTINA|POMERIGGIO (non distingue tra minuscole e maiuscole)"
    GeoListRequest:
      type: object
      required:
      - lon
      - lat
      - spanLon
      - spanLat
      description: Lista punti tramite filtri geografici e lessicografici
      properties:
        lon:
          type: string
          pattern: ^-?\d+\.?\d*$
          description: Specifica la longitudine del centro del rettangolo geografico
            di interrogazione
          default: "12.4657082"
        lat:
          type: string
          pattern: ^-?\d+\.?\d*$
          description: Specifica la latitudine del centro del rettangolo geografico
            di interrogazione
          default: "41.832026"
        spanLon:
          type: string
          pattern: ^\d+\.?\d*$
          description: Specifica lo scostamento in longitudine dal centro del rettangolo
            geografico di interrogazione (sia a sinistra che a destra)
          default: "0.2"
        spanLat:
          type: string
          pattern: ^\d+\.?\d*$
          description: Specifica lo scostamento in latitudine dal centro del rettangolo
            geografico di interrogazione (sia in alto che in basso)
          default: "0.2"
        testoRicerca:
          type: string
          description: "Ricerca per autocompletamento su nome insegna, indirizzo e\
            \ categoria. I valori specificati separati da spazio vengono cercati in\
            \ OR. Se presente i dati verranno ordinati per score di ricerca. A parità\
            \ di score si elencheranno i risultati per distanza crescente. Il valore\
            \ fornito deve contenere in totale almeno due caratteri alfanumerici (Es:\
            \ ab, a.b, a-.'b)"
        categorieMerchant:
          type: array
          items:
            type: string
          description: "Indica di filtrare i punti trovati secondo una lista di categorie.\
            \ Il valore fornito deve contenere in totale almeno due caratteri alfanumerici\
            \ (Es: ab, a.b, a-.'b)"
        serviziOr:
          type: array
          items:
            type: string
          description: Indica di filtrare i punti trovati includendo quelli che offrono
            almeno un servizio tra quelli specificati
        serviziAnd:
          type: array
          items:
            type: string
          description: Indica di filtrare i punti trovati includendo quelli che offrono
            tutti i servizi specificati
        serviziUpOr:
          type: array
          items:
            type: string
          description: "Indica di filtrare i punti trovati che offrano almeno un servizio\
            \ tra quelli specificati tramite codice servizio di anagrafe.La ricerca\
            \ viene effettuata solo per i tipi punto: UfficioPostale, PuntoPoste,\
            \ PuntoPosteLocker, SpazioFilatelico, CassettaPostale."
        serviziUpAnd:
          type: array
          items:
            type: string
          description: "Indica di filtrare i punti trovati includendo quelli che offrano\
            \ tutti i servizi specificati tramite codice servizio di anagrafe.La ricerca\
            \ viene effettuata solo per i tipi punto: UfficioPostale, PuntoPoste,\
            \ PuntoPosteLocker, SpazioFilatelico, CassettaPostale."
        categorieServiziUpOr:
          type: array
          items:
            type: string
          description: "Indica di filtrare i punti trovati che appartengano ad almeno\
            \ una categoria tra quelle specificate.La ricerca viene effettuata solo\
            \ per i tipi punto: UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico,\
            \ CassettaPostale."
        categorieServiziUpAnd:
          type: array
          items:
            type: string
          description: "Indica di filtrare i punti trovati includendo quelli che appartengano\
            \ a tutte le categorie specificate.La ricerca viene effettuata solo per\
            \ i tipi punto: UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico,\
            \ CassettaPostale."
        gruppiServiziUp:
          type: array
          items:
            type: array
            items:
              type: string
          description: "Indica di filtrare i punti trovati includendo solo quelli\
            \ che hanno un servizio il cui codice appartenga a tutti i gruppi specificati.I\
            \ gruppi [[CodA,CodB],[CodA],[CodB,CodC]] si traducono nell'espressione\
            \ (CodA or CodB) and (CodA) and (CodB or CodC)."
        giornoOraAperturaUp:
          type: string
          description: Indica di filtrare ulteriormente i punti UfficoPostale o PuntoPoste
            per data di apertura specificata come 'yyyyMMdd-HH:mm'
        tipoPunto:
          type: array
          items:
            type: string
          description: "Indica di filtrare per punti del tipo appropriato (Merchant,\
            \ MerchantVirtuale, UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico,\
            \ CassettaPostale)"
        oraAperto:
          type: boolean
          description: Se true restituisce solo risultati per punti aperti
          default: false
        offset:
          type: string
          pattern: ^\d*$
          description: Utilizzato per la paginazione. Scarta i primi 'offset' elementi
          default: "0"
        limit:
          type: string
          pattern: ^\d*$
          description: Utilizzato per la paginazione. Restituisce solo 'limit' risultati
          default: "10"
        cap:
          type: string
          description: Indica se filtrare i risultati per cap (codice avviamento postale)
        fasciaOrariaRitiro:
          type: string
          pattern: M|P|MATTINA|POMERIGGIO
          description: "Per le cassette postali indica di filtrare per fascia oraria\
            \ di ritiro: mattina (prima delle 13) o pomeriggio (dopo le 13)Valori\
            \ ammessi: M|P|MATTINA|POMERIGGIO (non distingue tra minuscole e maiuscole)"
        puntiPreferiti:
          type: array
          items:
            type: string
          description: Indica di considerare i soli punti con id contenuti in questa
            lista
        idServiziUfficioPostale:
          type: array
          items:
            type: string
          description: "Indica per il tipoPunto UfficioPostale, di filtrare gli uffici\
            \ che offrono uno dei servizi indicati in questo campo. Il filtro e' per\
            \ id servizio"
    GeoListRequest1:
      type: object
      required:
      - lon
      - lat
      - spanLon
      - spanLat
      description: Lista punti tramite filtri geografici e lessicografici
      properties:
        lon:
          type: string
          pattern: ^-?\d+\.?\d*$
          description: Specifica la longitudine del centro del rettangolo geografico
            di interrogazione
          default: "12.4657082"
        lat:
          type: string
          pattern: ^-?\d+\.?\d*$
          description: Specifica la latitudine del centro del rettangolo geografico
            di interrogazione
          default: "41.832026"
        spanLon:
          type: string
          pattern: ^\d+\.?\d*$
          description: Specifica lo scostamento in longitudine dal centro del rettangolo
            geografico di interrogazione (sia a sinistra che a destra)
          default: "0.2"
        spanLat:
          type: string
          pattern: ^\d+\.?\d*$
          description: Specifica lo scostamento in latitudine dal centro del rettangolo
            geografico di interrogazione (sia in alto che in basso)
          default: "0.2"
        tipoPunto:
          type: array
          items:
            type: string
          description: "Indica di filtrare per punti del tipo appropriato (Merchant,\
            \ MerchantVirtuale, UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico,\
            \ CassettaPostale, Lis, PuntoPosteLis)</br> Attenzione filtrare per tipoPunto\
            \ Lis significa ottenere solo i punti Lis che non siano contemporaneamente\
            \ PuntoPoste. Filtrare per tipoPunto PuntoPoste significa ottenere solo\
            \ i punti PuntoPoste che non siano contemporaneamente Lis. Il filtro PuntoPosteLis\
            \ restituisce solo i punti che siano contemporaneamente di tipo PuntoPoste\
            \ e di tipo Lis."
        oraAperto:
          type: boolean
          description: Se true restituisce solo risultati per punti aperti
          default: false
        serviziOr:
          type: array
          items:
            type: string
          description: Indica di filtrare i punti trovati che offrano almeno un servizio
            tra quelli specificati tramite codice servizio di anagrafe. In aggiunta
            ai servizi presenti in anagrafe si puo' interrogare per servizio con codice
            <i>ATM</i>
        serviziAnd:
          type: array
          items:
            type: string
          description: Indica di filtrare i punti trovati includendo quelli che offrano
            tutti i servizi specificati tramite codice servizio di anagrafe.In aggiunta
            ai servizi presenti in anagrafe si puo' interrogare per servizio con codice
            <i>ATM</i>
        categorieServiziOr:
          type: array
          items:
            type: string
          description: Indica di filtrare i punti trovati che offrano almeno un servizio
            appartenente ad un gruppo di servizi predeterminato da una categoria.
            Il dominio del campo <i>categorieServiziOr</i> puo' essere interrogato
            tramite la chiamata <i>getCategorieServizi</i>
        categorieServiziAnd:
          type: array
          items:
            type: string
          description: Indica di filtrare i punti trovati che offrano tutti i servizi
            appartenenti ad un gruppo di servizi predeterminato. Il dominio del campo
            <i>categorieServiziOr</i> puo' essere interrogato tramite la chiamata
            <i>getCategorieServizi</i>
        categorieNegozio:
          type: array
          items:
            type: string
          description: "Indica di filtrare i punti trovati secondo una lista di categorie\
            \ merceologiche. <b>Si applica solo ai punti Merchant (negozi)</b>.Le\
            \ categorie previste sono Abbigliamento,Altro,Carburante,Mobilita,Salute\
            \ e benessere,Spesa e cucina,Tempo libero,Viaggi.Per le interrogazioni\
            \ tramite codice servizio si devono utilizzare le seguenti stringhe mnemoniche:\
            \ <i>abbigliamento,altro,carburante,mobilita,salute_e_benessere,spesa_e_cucina,tempo_libero,viaggi</i>"
        offset:
          type: string
          pattern: ^\d*$
          description: Utilizzato per la paginazione. Scarta i primi 'offset' elementi
          default: "0"
        limit:
          type: string
          pattern: ^\d*$
          description: Utilizzato per la paginazione. Restituisce solo 'limit' risultati
          default: "10"
    GeoListResponse:
      type: object
      properties:
        listaPunti:
          type: array
          items:
            $ref: "#/components/schemas/PuntoMappaUnicaBase"
    GeoListResponseV2:
      type: object
      properties:
        listaPunti:
          type: array
          items:
            $ref: "#/components/schemas/PuntoMappaUnicaBaseV2"
    GeoListResponseV3:
      type: object
      properties:
        listaPunti:
          type: array
          items:
            $ref: "#/components/schemas/PuntoMappaUnicaNegoziV3"
    GeoSearchByComuneRequest:
      type: object
      required:
      - comune
      - provincia
      description: Dati di definizione della ricerca per categoriaMerchant e comune.
      properties:
        comune:
          type: string
          description: Individua i punti per comune
        provincia:
          type: string
          description: Individua i punti per provincia
        testoRicerca:
          type: string
          description: "Ricerca per autocompletamento su nome insegna, indirizzo e\
            \ categoria. I valori specificati separati da spazio vengono cercati in\
            \ OR. Il valore fornito deve contenere in totale almeno due caratteri\
            \ alfanumerici (Es: ab, a.b, a-.'b). Se presente i dati verranno ordinati\
            \ per score di ricerca."
        categorieMerchant:
          type: array
          items:
            type: string
          description: "Indica di filtrare i punti trovati secondo una lista di categorie.\
            \ Il valore fornito deve contenere in totale almeno due caratteri alfanumerici\
            \ (Es: ab, a.b, a-.'b)"
        serviziOr:
          type: array
          items:
            type: string
          description: Indica di filtrare i punti trovati includendo quelli che offrono
            almeno un servizio tra quelli specificati
        serviziAnd:
          type: array
          items:
            type: string
          description: Indica di filtrare i punti trovati includendo quelli che offrono
            tutti i servizi specificati
        serviziUpOr:
          type: array
          items:
            type: string
          description: "Indica di filtrare i punti trovati che offrano almeno un servizio\
            \ tra quelli specificati tramite codice servizio di anagrafe.La ricerca\
            \ viene effettuata solo per i tipi punto: UfficioPostale, PuntoPoste,\
            \ PuntoPosteLocker, SpazioFilatelico, CassettaPostale."
        serviziUpAnd:
          type: array
          items:
            type: string
          description: "Indica di filtrare i punti trovati includendo quelli che offrano\
            \ tutti i servizi specificati tramite codice servizio di anagrafe.La ricerca\
            \ viene effettuata solo per i tipi punto: UfficioPostale, PuntoPoste,\
            \ PuntoPosteLocker, SpazioFilatelico, CassettaPostale."
        categorieServiziUpOr:
          type: array
          items:
            type: string
          description: "Indica di filtrare i punti trovati che appartengano ad almeno\
            \ una categoria tra quelle specificate.La ricerca viene effettuata solo\
            \ per i tipi punto: UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico,\
            \ CassettaPostale."
        categorieServiziUpAnd:
          type: array
          items:
            type: string
          description: "Indica di filtrare i punti trovati includendo quelli che appartengano\
            \ a tutte le categorie specificate.La ricerca viene effettuata solo per\
            \ i tipi punto: UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico,\
            \ CassettaPostale."
        gruppiServiziUp:
          type: array
          items:
            type: array
            items:
              type: string
          description: "Indica di filtrare i punti trovati includendo solo quelli\
            \ che hanno un servizio il cui codice appartenga a tutti i gruppi specificati.I\
            \ gruppi [[CodA,CodB],[CodA],[CodB,CodC]] si traducono nell'espressione\
            \ (CodA or CodB) and (CodA) and (CodB or CodC)."
        giornoOraAperturaUp:
          type: string
          description: Indica di filtrare ulteriormente i punti UfficoPostale o PuntoPoste
            per data di apertura specificata come 'yyyyMMdd-HH:mm'
        tipoPunto:
          type: array
          items:
            type: string
          description: "Indica di filtrare per punti del tipo appropriato (Merchant,\
            \ MerchantVirtuale, UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico,\
            \ CassettaPostale)"
        oraAperto:
          type: boolean
          description: Se true restituisce solo risultati per punti aperti
          default: false
        cap:
          type: string
          description: Indica se filtrare i risultati per cap (codice avviamento postale)
        fasciaOrariaRitiro:
          type: string
          pattern: M|P|MATTINA|POMERIGGIO
          description: "Per le cassette postali indica di filtrare per fascia oraria\
            \ di ritiro: mattina (prima delle 13) o pomeriggio (dopo le 13)Valori\
            \ ammessi: M|P|MATTINA|POMERIGGIO (non distingue tra minuscole e maiuscole)"
    GeoSearchRequest:
      type: object
      required:
      - lon
      - lat
      - spanLon
      - spanLat
      description: Dati di definizione della griglia geografica con parametri opzionali
        di ricerca.
      properties:
        lon:
          type: string
          pattern: ^-?\d+\.?\d*$
          description: Specifica la longitudine del centro del rettangolo geografico
            di interrogazione
          default: "12.4657082"
        lat:
          type: string
          pattern: ^-?\d+\.?\d*$
          description: Specifica la latitudine del centro del rettangolo geografico
            di interrogazione
          default: "41.832026"
        spanLon:
          type: string
          pattern: ^\d+\.?\d*$
          description: Specifica lo scostamento in longitudine dal centro del rettangolo
            geografico di interrogazione (sia a sinistra che a destra)
          default: "0.2"
        spanLat:
          type: string
          pattern: ^\d+\.?\d*$
          description: Specifica lo scostamento in latitudine dal centro del rettangolo
            geografico di interrogazione (sia in alto che in basso)
          default: "0.2"
        testoRicerca:
          type: string
          description: "Ricerca per autocompletamento su nome insegna, indirizzo e\
            \ categoria. I valori specificati separati da spazio vengono cercati in\
            \ OR. Il valore fornito deve contenere in totale almeno due caratteri\
            \ alfanumerici (Es: ab, a.b, a-.'b). Se presente i dati verranno ordinati\
            \ per score di ricerca. A parità di score si elencheranno i risultati\
            \ per distanza crescente."
        categorieMerchant:
          type: array
          items:
            type: string
          description: Indica di filtrare i punti trovati secondo una lista di categorie
        serviziOr:
          type: array
          items:
            type: string
          description: Indica di filtrare i punti trovati includendo quelli che offrono
            tutti i servizi specificati
        serviziAnd:
          type: array
          items:
            type: string
          description: Indica di filtrare i punti trovati includendo quelli che offrono
            almeno un servizio tra quelli specificati
        serviziUpOr:
          type: array
          items:
            type: string
          description: "Indica di filtrare i punti trovati che offrano almeno un servizio\
            \ tra quelli specificati tramite codice servizio di anagrafe.La ricerca\
            \ viene effettuata solo per i tipi punto: UfficioPostale, PuntoPoste,\
            \ PuntoPosteLocker, SpazioFilatelico, CassettaPostale."
        serviziUpAnd:
          type: array
          items:
            type: string
          description: "Indica di filtrare i punti trovati includendo quelli che offrano\
            \ tutti i servizi specificati tramite codice servizio di anagrafe.La ricerca\
            \ viene effettuata solo per i tipi punto: UfficioPostale, PuntoPoste,\
            \ PuntoPosteLocker, SpazioFilatelico, CassettaPostale."
        categorieServiziUpOr:
          type: array
          items:
            type: string
          description: "Indica di filtrare i punti trovati che appartengano ad almeno\
            \ una categoria tra quelle specificate.La ricerca viene effettuata solo\
            \ per i tipi punto: UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico,\
            \ CassettaPostale."
        categorieServiziUpAnd:
          type: array
          items:
            type: string
          description: "Indica di filtrare i punti trovati includendo quelli che appartengano\
            \ a tutte le categorie specificate.La ricerca viene effettuata solo per\
            \ i tipi punto: UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico,\
            \ CassettaPostale."
        gruppiServiziUp:
          type: array
          items:
            type: array
            items:
              type: string
          description: "Indica di filtrare i punti trovati includendo solo quelli\
            \ che hanno un servizio il cui codice appartenga a tutti i gruppi specificati.I\
            \ gruppi [[CodA,CodB],[CodA],[CodB,CodC]] si traducono nell'espressione\
            \ (CodA or CodB) and (CodA) and (CodB or CodC)."
        giornoOraAperturaUp:
          type: string
          description: Indica di filtrare ulteriormente i punti UfficoPostale o PuntoPoste
            per data di apertura specificata come 'yyyyMMdd-HH:mm'
        tipoPunto:
          type: array
          items:
            type: string
          description: "Indica di filtrare per punti del tipo appropriato (Merchant,\
            \ MerchantVirtuale, UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico,\
            \ CassettaPostale)"
        oraAperto:
          type: boolean
          description: Se true restituisce solo risultati per punti aperti
          default: false
        numeroMinimoPunti:
          type: string
          description: Viene richiesto di riadattare l'area di ricerca della richiesta
            per ottenere in risposta almeno un numero minimo di punti
        cap:
          type: string
          description: Indica se filtrare i risultati per cap (codice avviamento postale)
        puntiPreferiti:
          type: array
          items:
            type: string
          description: Indica di considerare i soli punti con id contenuti in questa
            lista
        idServiziUfficioPostale:
          type: array
          items:
            type: string
          description: "Indica per il tipoPunto UfficioPostale, di filtrare gli uffici\
            \ che offrono uno dei servizi indicati in questo campo. Il filtro e' per\
            \ id servizio"
        fasciaOrariaRitiro:
          type: string
          pattern: M|P|MATTINA|POMERIGGIO
          description: "Per le cassette postali indica di filtrare per fascia oraria\
            \ di ritiro: mattina (prima delle 13) o pomeriggio (dopo le 13)Valori\
            \ ammessi: M|P|MATTINA|POMERIGGIO (non distingue tra minuscole e maiuscole)"
    GeoSearchRequestV3:
      type: object
      required:
      - lon
      - lat
      - spanLon
      - spanLat
      description: Dati di definizione della griglia geografica con parametri opzionali
        di ricerca.
      properties:
        lon:
          type: string
          pattern: ^-?\d+\.?\d*$
          description: Specifica la longitudine del centro del rettangolo geografico
            di interrogazione
          default: "12.4657082"
        lat:
          type: string
          pattern: ^-?\d+\.?\d*$
          description: Specifica la latitudine del centro del rettangolo geografico
            di interrogazione
          default: "41.832026"
        spanLon:
          type: string
          pattern: ^\d+\.?\d*$
          description: Specifica lo scostamento in longitudine dal centro del rettangolo
            geografico di interrogazione (sia a sinistra che a destra)
          default: "0.2"
        spanLat:
          type: string
          pattern: ^\d+\.?\d*$
          description: Specifica lo scostamento in latitudine dal centro del rettangolo
            geografico di interrogazione (sia in alto che in basso)
          default: "0.2"
        tipoPunto:
          type: array
          items:
            type: string
          description: "Indica di filtrare per punti del tipo appropriato (Merchant,\
            \ MerchantVirtuale, UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico,\
            \ CassettaPostale, Lis, PuntoPosteLis)</br> Attenzione filtrare per tipoPunto\
            \ Lis significa ottenere solo i punti Lis che non siano contemporaneamente\
            \ PuntoPoste. Filtrare per tipoPunto PuntoPoste significa ottenere solo\
            \ i punti PuntoPoste che non siano contemporaneamente Lis. Il filtro PuntoPosteLis\
            \ restituisce solo i punti che siano contemporaneamente di tipo PuntoPoste\
            \ e di tipo Lis."
        oraAperto:
          type: boolean
          description: Se true restituisce solo risultati per punti aperti
          default: false
        serviziOr:
          type: array
          items:
            type: string
          description: Indica di filtrare i punti trovati che offrano almeno un servizio
            tra quelli specificati tramite codice servizio di anagrafe. In aggiunta
            ai servizi presenti in anagrafe si puo' interrogare per servizio con codice
            <i>ATM</i>
        serviziAnd:
          type: array
          items:
            type: string
          description: Indica di filtrare i punti trovati includendo quelli che offrano
            tutti i servizi specificati tramite codice servizio di anagrafe.In aggiunta
            ai servizi presenti in anagrafe si puo' interrogare per servizio con codice
            <i>ATM</i>
        categorieServiziOr:
          type: array
          items:
            type: string
          description: Indica di filtrare i punti trovati che offrano almeno un servizio
            appartenente ad un gruppo di servizi predeterminato da una categoria.
            Il dominio del campo <i>categorieServiziOr</i> puo' essere interrogato
            tramite la chiamata <i>getCategorieServizi</i>
        categorieServiziAnd:
          type: array
          items:
            type: string
          description: Indica di filtrare i punti trovati che offrano tutti i servizi
            appartenenti ad un gruppo di servizi predeterminato. Il dominio del campo
            <i>categorieServiziOr</i> puo' essere interrogato tramite la chiamata
            <i>getCategorieServizi</i>
        categorieNegozio:
          type: array
          items:
            type: string
          description: "Indica di filtrare i punti trovati secondo una lista di categorie\
            \ merceologiche. <b>Si applica solo ai punti Merchant (negozi)</b>.Le\
            \ categorie previste sono Abbigliamento,Altro,Carburante,Mobilita,Salute\
            \ e benessere,Spesa e cucina,Tempo libero,Viaggi.Per le interrogazioni\
            \ tramite codice servizio si devono utilizzare le seguenti stringhe mnemoniche:\
            \ <i>abbigliamento,altro,carburante,mobilita,salute_e_benessere,spesa_e_cucina,tempo_libero,viaggi</i>"
    GeoSearchResponse:
      type: object
      description: Risultato della ricerca di punti tramite griglia geografica
      properties:
        listaCluster:
          type: array
          items:
            $ref: "#/components/schemas/ClusterResponse"
          description: Lista di cluster/sotto-quadrati contenenti aggregazione di
            punti
        listaPunti:
          type: array
          items:
            $ref: "#/components/schemas/PuntoMappaUnicaBase"
          description: Lista di punti che compaiono singolarmente all'interno del
            cluster
    GeoSearchResponse1:
      type: object
      description: Risultato della ricerca di punti tramite griglia geografica
      properties:
        listaCluster:
          type: array
          items:
            $ref: "#/components/schemas/ClusterResponse"
          description: Lista di cluster/sotto-quadrati contenenti aggregazione di
            punti
        listaPunti:
          type: array
          items:
            $ref: "#/components/schemas/PuntoMappaUnicaBaseV2"
          description: Lista di punti che compaiono singolarmente all'interno del
            cluster
    GeoSearchResponse2:
      type: object
      description: Risultato della ricerca di punti tramite griglia geografica
      properties:
        listaCluster:
          type: array
          items:
            $ref: "#/components/schemas/ClusterResponse"
        listaPunti:
          type: array
          items:
            $ref: "#/components/schemas/PuntoMappaUnicaNegoziV3"
    GiornoSettimana:
      type: string
      enum:
      - LUN
      - MAR
      - MER
      - GIO
      - VEN
      - SAB
      - DOM
      description: "Indica il giorno della settimana: Lunedì, Martedì, etc..."
    MarketplaceImage:
      type: object
      properties:
        uri:
          type: string
        tipo:
          type: string
    MarketplaceImages:
      type: object
      properties:
        galleria:
          type: array
          items:
            $ref: "#/components/schemas/MarketplaceImage"
    MerchantOnlineRequest:
      type: object
      description: Dati di definizione della griglia geografica con parametri opzionali
        di ricerca.
      properties:
        namePrefix:
          type: string
          description: Utilizzato per restingere la ricerca ai merchant che iniziano
            per 'namePrefix'
        categorieMerchant:
          type: array
          items:
            type: string
          description: Indica di filtrare i punti trovati secondo una lista di categorie
        serviziOr:
          type: array
          items:
            type: string
          description: Indica di filtrare i punti trovati includendo quelli che offrono
            tutti i servizi specificati
        serviziAnd:
          type: array
          items:
            type: string
          description: Indica di filtrare i punti trovati includendo quelli che offrono
            almeno un servizio tra quelli specificati
        offset:
          type: string
          pattern: ^\d*$
          description: Utilizzato per la paginazione. Scarta i primi 'offset' elementi
          default: "0"
        limit:
          type: string
          pattern: ^\d*$
          description: Utilizzato per la paginazione. Restituisce solo 'limit' risultati
          default: "10"
    MerchantOnlineResponse:
      type: object
      description: Lista dei Merchant Online trovati
      properties:
        listaMerchantOnline:
          type: array
          items:
            $ref: "#/components/schemas/PuntoMerchant"
          description: Lista dei Merchant Online trovati. I merchant sono ordinati
            per nomePunto
        totali:
          type: integer
          format: int64
          description: Campo valorizzato quando si utlizza limit per la paginazione
            per conoscere il numero di elementi totali
    Orari:
      type: object
      properties:
        giorno:
          type: string
          description: Giorno della settimana
        orario:
          type: string
          description: Orario di apertura
    PuntoCassettaPostale:
      type: object
      properties:
        id:
          type: string
          description: Specifica un identificativo univoco del punto
        deepLink:
          type: string
        tipoPunto:
          type: string
          description: "Indica la tipologia di punto (Merchant, MerchantVirtuale,\
            \ UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico, CassettaPostale,\
            \ Lis, PuntoPosteLis)</br>"
        lon:
          type: string
          description: Indica la coordinata longitudine della posizione del punto
        lat:
          type: string
          description: Indica la coordinata latitudine della posizione del punto
        nomePunto:
          type: string
        indirizzoPunto:
          type: string
        citta:
          type: string
        provincia:
          type: string
        cap:
          type: string
        frazionario:
          type: string
          description: Indica il frazionario dell'UP. Per le cassette postali assume
            il significato di frazionario di riferimento
        codiceIstat:
          type: string
          description: Dato specifico delle cassette postali
        prossimita:
          type: string
          description: Dato specifico delle cassette postali
        orarioVuotatura:
          type: string
          description: Dato specifico delle cassette postali
        centro:
          type: string
          description: Dato specifico delle cassette postali
        codiciServizi:
          type: array
          items:
            type: string
    PuntoLis:
      type: object
      description: La struttura dati del PuntoLis è fissa per ogni tipo di richiesta
      properties:
        id:
          type: string
          description: Specifica un identificativo univoco del punto
        deepLink:
          type: string
        tipoPunto:
          type: string
          description: "Indica la tipologia di punto (Merchant, MerchantVirtuale,\
            \ UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico, CassettaPostale,\
            \ Lis, PuntoPosteLis)</br>"
        lon:
          type: string
          description: Indica la coordinata longitudine della posizione del punto
        lat:
          type: string
          description: Indica la coordinata latitudine della posizione del punto
        nomePunto:
          type: string
        indirizzoPunto:
          type: string
        citta:
          type: string
        provincia:
          type: string
        cap:
          type: string
        codiceLis:
          type: string
          description: Codice punto vendita Lis
        partitaIva:
          type: string
          description: Contiene se presente la partita Iva del punto Lis
        codiceAteco:
          type: string
          description: Codice Ateco del punto di vendita Lis
        tipologia:
          type: string
          description: Tipologia del punto di vendita Lis
        comune:
          type: string
          description: Comune presso il quale è ubicato il punto di vendita Lis
        telefono:
          type: string
          description: Telefono del punto di vendita Lis
        contratti:
          type: array
          items:
            type: string
          description: Tipologia di servizi erogati del punto di vendita Lis
        categorieServizi:
          type: array
          items:
            type: string
          description: "Lista delle categorie di servizi offerti dal punto. Queste\
            \ sono le categorie <i>pagaepreleva,spedizioneeritiri</i>, etc..."
        labelServizi:
          type: array
          items:
            type: string
          description: Lista delle label dei servizi offerti dal punto come da descrizione
            funzionale.
        funzionalita:
          type: array
          items:
            type: string
          description: "Insieme di funzionalita' offerte dal punto, valori assunti\
            \ [NGA,SOLO_PREN,ATMH24,ATMNONH24]. Valido solo per UfficioPostale"
        statoApertura:
          type: string
          description: "Indica lo stato di apertura del negozio: Chiuso al pubblico,\
            \ Chiuso temporaneamente, Orari non disponibili, Aperto, Chiuso"
        dettaglioStatoApertura:
          type: string
          description: "Se statoApertura=[Chiuso|Aperto] fornisce i dettagli sullo\
            \ stato di apertura (Es: Chiude alle xx:yy, Apre alle xx:xx)"
        codiciServizi:
          type: array
          items:
            type: string
          description: Lista dei codici servizi offerti dal punto. Disponibili solo
            per la chiamata di dettaglioUp con <i>?dettServ=true</i>
    PuntoMappaUnicaBase:
      type: object
      oneOf:
      - $ref: "#/components/schemas/PuntoMerchant"
      - $ref: "#/components/schemas/PuntoUfficioPostale"
      - $ref: "#/components/schemas/PuntoPuntoPoste"
      - $ref: "#/components/schemas/PuntoPuntoPosteLocker"
      - $ref: "#/components/schemas/PuntoSpazioFilatelico"
      - $ref: "#/components/schemas/PuntoCassettaPostale"
    PuntoMappaUnicaBaseV2:
      type: object
      oneOf:
      - $ref: "#/components/schemas/PuntoMerchantV2"
      - $ref: "#/components/schemas/PuntoUfficioPostaleV2"
      - $ref: "#/components/schemas/PuntoPuntoPosteV2"
      - $ref: "#/components/schemas/PuntoPuntoPosteLocker"
      - $ref: "#/components/schemas/PuntoSpazioFilatelicoV2"
      - $ref: "#/components/schemas/PuntoCassettaPostale"
    PuntoMappaUnicaBaseV3:
      type: object
      oneOf:
      - $ref: "#/components/schemas/PuntoUfficioPostaleV3"
      - $ref: "#/components/schemas/PuntoPuntoPosteV3"
      - $ref: "#/components/schemas/PuntoPuntoPosteLockerV3"
      - $ref: "#/components/schemas/PuntoSpazioFilatelicoV3"
      - $ref: "#/components/schemas/PuntoCassettaPostale"
      - $ref: "#/components/schemas/PuntoLis"
      - $ref: "#/components/schemas/PuntoPuntoPosteLis"
      properties:
        codiciServizi:
          type: array
          items:
            type: string
    PuntoMappaUnicaDettaglio:
      type: object
      oneOf:
      - $ref: "#/components/schemas/PuntoUfficioPostaleDettaglio"
      - $ref: "#/components/schemas/PuntoPuntoPosteDettaglio"
      - $ref: "#/components/schemas/PuntoPuntoPosteLocker"
      - $ref: "#/components/schemas/PuntoSpazioFilatelicoDettaglio"
    PuntoMappaUnicaDettaglioAll:
      type: object
      oneOf:
      - $ref: "#/components/schemas/PuntoMerchant"
      - $ref: "#/components/schemas/PuntoUfficioPostaleDettaglio"
      - $ref: "#/components/schemas/PuntoPuntoPosteDettaglio"
      - $ref: "#/components/schemas/PuntoPuntoPosteLocker"
      - $ref: "#/components/schemas/PuntoSpazioFilatelicoDettaglio"
      - $ref: "#/components/schemas/PuntoCassettaPostale"
    PuntoMappaUnicaNegoziV3:
      type: object
      oneOf:
      - $ref: "#/components/schemas/PuntoUfficioPostaleV3"
      - $ref: "#/components/schemas/PuntoPuntoPosteV3"
      - $ref: "#/components/schemas/PuntoPuntoPosteLockerV3"
      - $ref: "#/components/schemas/PuntoSpazioFilatelicoV3"
      - $ref: "#/components/schemas/PuntoCassettaPostale"
      - $ref: "#/components/schemas/PuntoLis"
      - $ref: "#/components/schemas/PuntoPuntoPosteLis"
      - $ref: "#/components/schemas/PuntoMerchantV3"
    PuntoMerchant:
      type: object
      properties:
        id:
          type: string
          description: Specifica un identificativo univoco del punto
        deepLink:
          type: string
        tipoPunto:
          type: string
          description: "Indica la tipologia di punto (Merchant, MerchantVirtuale,\
            \ UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico, CassettaPostale,\
            \ Lis, PuntoPosteLis)</br>"
        lon:
          type: string
          description: Indica la coordinata longitudine della posizione del punto
        lat:
          type: string
          description: Indica la coordinata latitudine della posizione del punto
        nomePunto:
          type: string
        indirizzoPunto:
          type: string
        citta:
          type: string
        provincia:
          type: string
        cap:
          type: string
        partitaIva:
          type: string
          description: Contiene se presente la partita Iva del Merchant
        categoriaMerchant:
          $ref: "#/components/schemas/CategoriaMerchant"
          type: object
          description: Categoria del punto
        idCode:
          type: string
          description: "In caso di punto di tipo Merchant che offre servizio QrCode,\
            \ indica il QrCode per effettuare i pagamenti"
        descrizione:
          type: string
          description: Descrizione del negozio se presente
        tipoVetrina:
          type: string
          description: "Tipologia di vetrina associata al punto Merchant: light o\
            \ premium"
        tipoQrCode:
          type: string
          description: "Indica il tipo di QrCode [Statico|Dinamico] specificato nel\
            \ campo idCode"
        promoList:
          type: array
          items:
            $ref: "#/components/schemas/DettaglioPromozione"
          description: Promozioni attive nella giornata
        marketPlaceKey:
          type: string
          description: "Per merchant caricati tramite marketplace restituisce la key\
            \ associata, se presente"
        email:
          type: string
        sitoWeb:
          type: string
        numeroTelefono:
          type: string
        numeroCellulare:
          type: string
        fax:
          type: string
        statoApertura:
          type: string
          description: "Indica lo stato di apertura del negozio: Apre tra poco, Aperto,\
            \ Chiude tra poco e Chiuso"
        orarioApertura:
          type: string
          description: Indica l'orario di apertura attuale
        oraAperto:
          type: boolean
          description: Indica se nel momento attuale il negozio è aperto
        orari:
          type: array
          items:
            $ref: "#/components/schemas/Orari"
          description: Giorni della settimana con orari di apertura del punto. Gli
            orari di apertura possono essere diversi nella giornata
        immagini:
          $ref: "#/components/schemas/MarketplaceImages"
          type: object
          description: "Campo utilizzato per i merchant marketpalce che li prevedono.\
            \ Puo' includere logo, banner e galley."
        servizi:
          type: array
          items:
            $ref: "#/components/schemas/ServizioCensito"
          description: Indica i servizi offerti dal punto.
    PuntoMerchantBase:
      type: object
      description: "Questa struttura descrive sia il punto Merchant che il punto MerchantVirtuale,\
        \ i due punti si distinguono tramite il campo tipoPunto che assume rispettivamente\
        \ i valori Merchant e MerchantVirtuale e per l'assenza della posizione per\
        \ il punto MerchantVirtuale (lon e lat non presenti).Nel caso il punto Merchant\
        \ venga aggiornato da Marketplace sono valorizzati anche i campi orari, immagini,\
        \ recapiti."
      properties:
        id:
          type: string
          description: Specifica un identificativo univoco del punto
        deepLink:
          type: string
        tipoPunto:
          type: string
          description: "Indica la tipologia di punto (Merchant, MerchantVirtuale,\
            \ UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico, CassettaPostale,\
            \ Lis, PuntoPosteLis)</br>"
        lon:
          type: string
          description: Indica la coordinata longitudine della posizione del punto
        lat:
          type: string
          description: Indica la coordinata latitudine della posizione del punto
        nomePunto:
          type: string
        indirizzoPunto:
          type: string
        citta:
          type: string
        provincia:
          type: string
        cap:
          type: string
        partitaIva:
          type: string
          description: Contiene se presente la partita Iva del Merchant
        categoriaMerchant:
          $ref: "#/components/schemas/CategoriaMerchant"
          type: object
          description: Categoria del punto
        idCode:
          type: string
          description: "In caso di punto di tipo Merchant che offre servizio QrCode,\
            \ indica il QrCode per effettuare i pagamenti"
        descrizione:
          type: string
          description: Descrizione del negozio se presente
        tipoVetrina:
          type: string
          description: "Tipologia di vetrina associata al punto Merchant: light o\
            \ premium"
        tipoQrCode:
          type: string
          description: "Indica il tipo di QrCode [Statico|Dinamico] specificato nel\
            \ campo idCode"
        promoList:
          type: array
          items:
            $ref: "#/components/schemas/DettaglioPromozione"
          description: Promozioni attive nella giornata
        marketPlaceKey:
          type: string
          description: "Per merchant caricati tramite marketplace restituisce la key\
            \ associata, se presente"
        email:
          type: string
        sitoWeb:
          type: string
        numeroTelefono:
          type: string
        numeroCellulare:
          type: string
        fax:
          type: string
        statoApertura:
          type: string
          description: "Indica lo stato di apertura del negozio: Apre tra poco, Aperto,\
            \ Chiude tra poco e Chiuso"
        orarioApertura:
          type: string
          description: Indica l'orario di apertura attuale
        oraAperto:
          type: boolean
          description: Indica se nel momento attuale il negozio è aperto
        orari:
          type: array
          items:
            $ref: "#/components/schemas/Orari"
          description: Giorni della settimana con orari di apertura del punto. Gli
            orari di apertura possono essere diversi nella giornata
        immagini:
          $ref: "#/components/schemas/MarketplaceImages"
          type: object
          description: "Campo utilizzato per i merchant marketpalce che li prevedono.\
            \ Puo' includere logo, banner e galley."
    PuntoMerchantV2:
      type: object
      properties:
        id:
          type: string
          description: Specifica un identificativo univoco del punto
        deepLink:
          type: string
        tipoPunto:
          type: string
          description: "Indica la tipologia di punto (Merchant, MerchantVirtuale,\
            \ UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico, CassettaPostale,\
            \ Lis, PuntoPosteLis)</br>"
        lon:
          type: string
          description: Indica la coordinata longitudine della posizione del punto
        lat:
          type: string
          description: Indica la coordinata latitudine della posizione del punto
        nomePunto:
          type: string
        indirizzoPunto:
          type: string
        citta:
          type: string
        provincia:
          type: string
        cap:
          type: string
        partitaIva:
          type: string
          description: Contiene se presente la partita Iva del Merchant
        categoriaMerchant:
          $ref: "#/components/schemas/CategoriaMerchant"
          type: object
          description: Categoria del punto
        idCode:
          type: string
          description: "In caso di punto di tipo Merchant che offre servizio QrCode,\
            \ indica il QrCode per effettuare i pagamenti"
        descrizione:
          type: string
          description: Descrizione del negozio se presente
        tipoVetrina:
          type: string
          description: "Tipologia di vetrina associata al punto Merchant: light o\
            \ premium"
        tipoQrCode:
          type: string
          description: "Indica il tipo di QrCode [Statico|Dinamico] specificato nel\
            \ campo idCode"
        promoList:
          type: array
          items:
            $ref: "#/components/schemas/DettaglioPromozione"
          description: Promozioni attive nella giornata
        marketPlaceKey:
          type: string
          description: "Per merchant caricati tramite marketplace restituisce la key\
            \ associata, se presente"
        email:
          type: string
        sitoWeb:
          type: string
        numeroTelefono:
          type: string
        numeroCellulare:
          type: string
        fax:
          type: string
        statoApertura:
          type: string
          description: "Indica lo stato di apertura del negozio: Apre tra poco, Aperto,\
            \ Chiude tra poco e Chiuso"
        orarioApertura:
          type: string
          description: Indica l'orario di apertura attuale
        oraAperto:
          type: boolean
          description: Indica se nel momento attuale il negozio è aperto
        orari:
          type: array
          items:
            $ref: "#/components/schemas/Orari"
          description: Giorni della settimana con orari di apertura del punto. Gli
            orari di apertura possono essere diversi nella giornata
        immagini:
          $ref: "#/components/schemas/MarketplaceImages"
          type: object
          description: "Campo utilizzato per i merchant marketpalce che li prevedono.\
            \ Puo' includere logo, banner e galley."
        servizi:
          type: array
          items:
            $ref: "#/components/schemas/ServizioCensitoV2"
          description: Indica i servizi offerti dal punto. Tra i servizi e' presente
            il servizio con codice <b>SOLO_PREN</b>
    PuntoMerchantV3:
      type: object
      properties:
        id:
          type: string
          description: Specifica un identificativo univoco del punto
        deepLink:
          type: string
        tipoPunto:
          type: string
          description: "Indica la tipologia di punto (Merchant, MerchantVirtuale,\
            \ UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico, CassettaPostale,\
            \ Lis, PuntoPosteLis)</br>"
        lon:
          type: string
          description: Indica la coordinata longitudine della posizione del punto
        lat:
          type: string
          description: Indica la coordinata latitudine della posizione del punto
        nomePunto:
          type: string
        indirizzoPunto:
          type: string
        citta:
          type: string
        provincia:
          type: string
        cap:
          type: string
        partitaIva:
          type: string
          description: Contiene se presente la partita Iva del Merchant
        categoriaNegozio:
          type: string
          description: "Categoria merceologica del negozio (<i>Abbigliamento,Altro,Carburante,Mobilità\
            ,Salute e benessere,Spesa e cucina,Tempo libero,Viaggi</i>). Il dominio\
            \ esatto viene restituito dalla chiamata <i>/v1/map/categorieMerchant</i>"
        idCode:
          type: string
          description: "In caso di punto di tipo Merchant che offre servizio QrCode,\
            \ indica il QrCode per effettuare i pagamenti"
        tipoQrCode:
          type: string
          description: "Indica il tipo di QrCode [Statico|Dinamico] specificato nel\
            \ campo idCode"
        promoList:
          type: array
          items:
            $ref: "#/components/schemas/DettaglioPromozioneV3"
          description: "Promozioni attive nella giornata. Le promozioni sono solo\
            \ quelle in percentuale non periodiche.La promozione si considera censita\
            \ se il campo <i>descrizioneProgramma</i> risulta presente non vuoto,\
            \  <i>descrizioneProgramma</i> indica con quale nome va visualizzata la\
            \ promozione nelle interfacce grafiche"
        categorieServizi:
          type: array
          items:
            type: string
          description: Lista delle categorie di servizi offerti dal punto. Unica categoria
            presente ad oggi <i>Paga con QR Code</i>
        codiciServizi:
          type: array
          items:
            type: string
          description: Lista dei codici servizi offerti dal punto. Disponibili solo
            per la chiamata di dettaglioUp con <i>?dettServ=true</i>
    PuntoPuntoPoste:
      type: object
      properties:
        id:
          type: string
          description: Specifica un identificativo univoco del punto
        deepLink:
          type: string
        tipoPunto:
          type: string
          description: "Indica la tipologia di punto (Merchant, MerchantVirtuale,\
            \ UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico, CassettaPostale,\
            \ Lis, PuntoPosteLis)</br>"
        lon:
          type: string
          description: Indica la coordinata longitudine della posizione del punto
        lat:
          type: string
          description: Indica la coordinata latitudine della posizione del punto
        nomePunto:
          type: string
        indirizzoPunto:
          type: string
        citta:
          type: string
        provincia:
          type: string
        cap:
          type: string
        frazionario:
          type: string
          description: Indica il frazionario dell'UP. Per le cassette postali assume
            il significato di frazionario di riferimento
        statoApertura:
          type: string
          description: "Indica lo stato di apertura del negozio: Apre tra poco, Aperto,\
            \ Chiude tra poco e Chiuso"
        orarioApertura:
          type: string
          description: Indica l'orario di apertura attuale
        oraAperto:
          type: boolean
          description: Indica se nel momento attuale il negozio è aperto
        orariPuntoPoste:
          type: array
          items:
            $ref: "#/components/schemas/Orari"
          description: Giorni della settimana con orari di apertura del puntoPoste
        numeroTelefono:
          type: string
        fax:
          type: string
        chiusuraSantoPatrono:
          type: string
        servizi:
          type: array
          items:
            $ref: "#/components/schemas/ServizioCensito"
          description: Indica i servizi offerti dal punto.
    PuntoPuntoPosteDettaglio:
      type: object
      properties:
        id:
          type: string
          description: Specifica un identificativo univoco del punto
        deepLink:
          type: string
        tipoPunto:
          type: string
          description: "Indica la tipologia di punto (Merchant, MerchantVirtuale,\
            \ UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico, CassettaPostale,\
            \ Lis, PuntoPosteLis)</br>"
        lon:
          type: string
          description: Indica la coordinata longitudine della posizione del punto
        lat:
          type: string
          description: Indica la coordinata latitudine della posizione del punto
        nomePunto:
          type: string
        indirizzoPunto:
          type: string
        citta:
          type: string
        provincia:
          type: string
        cap:
          type: string
        frazionario:
          type: string
          description: Indica il frazionario dell'UP. Per le cassette postali assume
            il significato di frazionario di riferimento
        statoApertura:
          type: string
          description: "Indica lo stato di apertura del negozio: Apre tra poco, Aperto,\
            \ Chiude tra poco e Chiuso"
        orarioApertura:
          type: string
          description: Indica l'orario di apertura attuale
        oraAperto:
          type: boolean
          description: Indica se nel momento attuale il negozio è aperto
        orariPuntoPoste:
          type: array
          items:
            $ref: "#/components/schemas/Orari"
          description: Giorni della settimana con orari di apertura del puntoPoste
        numeroTelefono:
          type: string
        fax:
          type: string
        chiusuraSantoPatrono:
          type: string
        serviziCompleti:
          type: array
          items:
            $ref: "#/components/schemas/DettaglioServizio"
          description: "Lista completa servizi offerti dal punto, disponibile solo\
            \ per la chiamata di dettaglio punto (in genere per punto UfficioPostale)"
        orariAperturaPuntoPosteCompleti:
          type: array
          items:
            $ref: "#/components/schemas/Orari"
          description: "Indica l'orario di apertura fino a 15 giorni per PuntoPoste\
            \ se presenti, disponibile solo per la chiamata di dettaglio punto"
        servizi:
          type: array
          items:
            $ref: "#/components/schemas/ServizioCensito"
          description: Indica i servizi offerti dal punto.
    PuntoPuntoPosteLis:
      type: object
      properties:
        id:
          type: string
          description: Specifica un identificativo univoco del punto
        deepLink:
          type: string
        tipoPunto:
          type: string
          description: "Indica la tipologia di punto (Merchant, MerchantVirtuale,\
            \ UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico, CassettaPostale,\
            \ Lis, PuntoPosteLis)</br>"
        lon:
          type: string
          description: Indica la coordinata longitudine della posizione del punto
        lat:
          type: string
          description: Indica la coordinata latitudine della posizione del punto
        nomePunto:
          type: string
        indirizzoPunto:
          type: string
        citta:
          type: string
        provincia:
          type: string
        cap:
          type: string
        frazionario:
          type: string
          description: Indica il frazionario dell'UP. Per le cassette postali assume
            il significato di frazionario di riferimento
        statoApertura:
          type: string
          description: "Indica lo stato di apertura del negozio: Chiuso al pubblico,\
            \ Chiuso temporaneamente, Orari non disponibili, Aperto, Chiuso"
        dettaglioStatoApertura:
          type: string
          description: "Se statoApertura=[Chiuso|Aperto] fornisce i dettagli sullo\
            \ stato di apertura (Es: Chiude alle xx:yy, Apre alle xx:xx)"
        orari:
          type: array
          items:
            $ref: "#/components/schemas/Orari"
          description: Giorni della settimana con orari di apertura del puntoPoste
        numeroTelefono:
          type: string
        fax:
          type: string
        chiusuraSantoPatrono:
          type: string
        categorieServizi:
          type: array
          items:
            type: string
          description: "Lista delle categorie di servizi offerti dal punto. Queste\
            \ sono le categorie <i>pagaepreleva,spedizioneeritiri</i>, etc..."
        labelServizi:
          type: array
          items:
            type: string
          description: Lista delle label dei servizi offerti dal punto come da descrizione
            funzionale.
        funzionalita:
          type: array
          items:
            type: string
          description: "Insieme di funzionalita' offerte dal punto, valori assunti\
            \ [NGA,SOLO_PREN,ATMH24,ATMNONH24]. Valido solo per UfficioPostale"
        codiceLis:
          type: string
          description: Codice punto vendita Lis
        partitaIva:
          type: string
          description: Contiene se presente la partita Iva del punto Lis
        codiceAteco:
          type: string
          description: Codice Ateco del punto di vendita Lis
        tipologia:
          type: string
          description: Tipologia del punto di vendita Lis
        comune:
          type: string
          description: Comune presso il quale è ubicato il punto di vendita Lis
        telefono:
          type: string
          description: Telefono del punto di vendita Lis
        contratti:
          type: array
          items:
            type: string
          description: Tipologia di servizi erogati del punto di vendita Lis
        codiciServizi:
          type: array
          items:
            type: string
          description: Lista dei codici servizi offerti dal punto. Disponibili solo
            per la chiamata di dettaglioUp con <i>?dettServ=true</i>
    PuntoPuntoPosteLocker:
      type: object
      description: La struttura dati del PuntoPosteLocker è fissa per ogni tipo di
        richiesta
      properties:
        id:
          type: string
          description: Specifica un identificativo univoco del punto
        deepLink:
          type: string
        tipoPunto:
          type: string
          description: "Indica la tipologia di punto (Merchant, MerchantVirtuale,\
            \ UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico, CassettaPostale,\
            \ Lis, PuntoPosteLis)</br>"
        lon:
          type: string
          description: Indica la coordinata longitudine della posizione del punto
        lat:
          type: string
          description: Indica la coordinata latitudine della posizione del punto
        nomePunto:
          type: string
        indirizzoPunto:
          type: string
        citta:
          type: string
        provincia:
          type: string
        cap:
          type: string
        frazionario:
          type: string
          description: Indica il frazionario dell'UP. Per le cassette postali assume
            il significato di frazionario di riferimento
        ufficioAppoggio:
          type: string
          description: Indica l'ufficio di appoggio dell'ufficio postale
        indirizzoAltraStruttura:
          type: string
          description: Indica l'indirizzo della struttura alternativa temporanea per
            la categoria ufficio postale
        statoApertura:
          type: string
          description: "Indica lo stato di apertura del negozio: Apre tra poco, Aperto,\
            \ Chiude tra poco e Chiuso"
        orarioApertura:
          type: string
          description: Indica l'orario di apertura attuale
        oraAperto:
          type: boolean
          description: Indica se nel momento attuale il negozio è aperto
        orari:
          type: array
          items:
            $ref: "#/components/schemas/Orari"
          description: Giorni della settimana con orari di apertura del punto. Gli
            orari di apertura possono essere diversi nella giornata
        numeroTelefono:
          type: string
        fax:
          type: string
        chiusuraSantoPatrono:
          type: string
    PuntoPuntoPosteLockerV3:
      type: object
      description: La struttura dati del PuntoPosteLocker è fissa per ogni tipo di
        richiesta
      properties:
        id:
          type: string
          description: Specifica un identificativo univoco del punto
        deepLink:
          type: string
        tipoPunto:
          type: string
          description: "Indica la tipologia di punto (Merchant, MerchantVirtuale,\
            \ UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico, CassettaPostale,\
            \ Lis, PuntoPosteLis)</br>"
        lon:
          type: string
          description: Indica la coordinata longitudine della posizione del punto
        lat:
          type: string
          description: Indica la coordinata latitudine della posizione del punto
        nomePunto:
          type: string
        indirizzoPunto:
          type: string
        citta:
          type: string
        provincia:
          type: string
        cap:
          type: string
        frazionario:
          type: string
          description: Indica il frazionario dell'UP. Per le cassette postali assume
            il significato di frazionario di riferimento
        statoApertura:
          type: string
          description: "Indica lo stato di apertura del negozio: Chiuso al pubblico,\
            \ Chiuso temporaneamente, Orari non disponibili, Aperto, Chiuso"
        dettaglioStatoApertura:
          type: string
          description: "Se statoApertura=[Chiuso|Aperto] fornisce i dettagli sullo\
            \ stato di apertura (Es: Chiude alle xx:yy, Apre alle xx:xx)"
        orari:
          type: array
          items:
            $ref: "#/components/schemas/Orari"
          description: Giorni della settimana con orari di apertura del punto. Gli
            orari di apertura possono essere diversi nella giornata
        chiusuraSantoPatrono:
          type: string
        categorieServizi:
          type: array
          items:
            type: string
          description: "Lista delle categorie di servizi offerti dal punto. Queste\
            \ sono le categorie <i>pagaepreleva,spedizioneeritiri</i>, etc..."
        labelServizi:
          type: array
          items:
            type: string
          description: Lista delle label dei servizi offerti dal punto come da descrizione
            funzionale.
        funzionalita:
          type: array
          items:
            type: string
          description: "Insieme di funzionalita' offerte dal punto, valori assunti\
            \ [NGA,SOLO_PREN,ATMH24,ATMNONH24]. Valido solo per UfficioPostale"
        codiciServizi:
          type: array
          items:
            type: string
          description: Lista dei codici servizi offerti dal punto. Disponibili solo
            per la chiamata di dettaglioUp con <i>?dettServ=true</i>
    PuntoPuntoPosteV2:
      type: object
      properties:
        id:
          type: string
          description: Specifica un identificativo univoco del punto
        deepLink:
          type: string
        tipoPunto:
          type: string
          description: "Indica la tipologia di punto (Merchant, MerchantVirtuale,\
            \ UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico, CassettaPostale,\
            \ Lis, PuntoPosteLis)</br>"
        lon:
          type: string
          description: Indica la coordinata longitudine della posizione del punto
        lat:
          type: string
          description: Indica la coordinata latitudine della posizione del punto
        nomePunto:
          type: string
        indirizzoPunto:
          type: string
        citta:
          type: string
        provincia:
          type: string
        cap:
          type: string
        frazionario:
          type: string
          description: Indica il frazionario dell'UP. Per le cassette postali assume
            il significato di frazionario di riferimento
        statoApertura:
          type: string
          description: "Indica lo stato di apertura del negozio: Apre tra poco, Aperto,\
            \ Chiude tra poco e Chiuso"
        orarioApertura:
          type: string
          description: Indica l'orario di apertura attuale
        oraAperto:
          type: boolean
          description: Indica se nel momento attuale il negozio è aperto
        orariPuntoPoste:
          type: array
          items:
            $ref: "#/components/schemas/Orari"
          description: Giorni della settimana con orari di apertura del puntoPoste
        numeroTelefono:
          type: string
        fax:
          type: string
        chiusuraSantoPatrono:
          type: string
        servizi:
          type: array
          items:
            $ref: "#/components/schemas/ServizioCensitoV2"
          description: Indica i servizi offerti dal punto. Tra i servizi e' presente
            il servizio con codice <b>SOLO_PREN</b>
    PuntoPuntoPosteV3:
      type: object
      properties:
        id:
          type: string
          description: Specifica un identificativo univoco del punto
        deepLink:
          type: string
        tipoPunto:
          type: string
          description: "Indica la tipologia di punto (Merchant, MerchantVirtuale,\
            \ UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico, CassettaPostale,\
            \ Lis, PuntoPosteLis)</br>"
        lon:
          type: string
          description: Indica la coordinata longitudine della posizione del punto
        lat:
          type: string
          description: Indica la coordinata latitudine della posizione del punto
        nomePunto:
          type: string
        indirizzoPunto:
          type: string
        citta:
          type: string
        provincia:
          type: string
        cap:
          type: string
        frazionario:
          type: string
          description: Indica il frazionario dell'UP. Per le cassette postali assume
            il significato di frazionario di riferimento
        statoApertura:
          type: string
          description: "Indica lo stato di apertura del negozio: Chiuso al pubblico,\
            \ Chiuso temporaneamente, Orari non disponibili, Aperto, Chiuso"
        dettaglioStatoApertura:
          type: string
          description: "Se statoApertura=[Chiuso|Aperto] fornisce i dettagli sullo\
            \ stato di apertura (Es: Chiude alle xx:yy, Apre alle xx:xx)"
        orari:
          type: array
          items:
            $ref: "#/components/schemas/Orari"
          description: Giorni della settimana con orari di apertura del puntoPoste
        numeroTelefono:
          type: string
        fax:
          type: string
        chiusuraSantoPatrono:
          type: string
        categorieServizi:
          type: array
          items:
            type: string
          description: "Lista delle categorie di servizi offerti dal punto. Queste\
            \ sono le categorie <i>pagaepreleva,spedizioneeritiri</i>, etc..."
        labelServizi:
          type: array
          items:
            type: string
          description: Lista delle label dei servizi offerti dal punto come da descrizione
            funzionale.
        funzionalita:
          type: array
          items:
            type: string
          description: "Insieme di funzionalita' offerte dal punto, valori assunti\
            \ [NGA,SOLO_PREN,ATMH24,ATMNONH24]. Valido solo per UfficioPostale"
        codiciServizi:
          type: array
          items:
            type: string
          description: Lista dei codici servizi offerti dal punto. Disponibili solo
            per la chiamata di dettaglioUp con <i>?dettServ=true</i>
    PuntoSpazioFilatelico:
      type: object
      properties:
        id:
          type: string
          description: Specifica un identificativo univoco del punto
        deepLink:
          type: string
        tipoPunto:
          type: string
          description: "Indica la tipologia di punto (Merchant, MerchantVirtuale,\
            \ UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico, CassettaPostale,\
            \ Lis, PuntoPosteLis)</br>"
        lon:
          type: string
          description: Indica la coordinata longitudine della posizione del punto
        lat:
          type: string
          description: Indica la coordinata latitudine della posizione del punto
        nomePunto:
          type: string
        indirizzoPunto:
          type: string
        citta:
          type: string
        provincia:
          type: string
        cap:
          type: string
        frazionario:
          type: string
          description: Indica il frazionario dell'UP. Per le cassette postali assume
            il significato di frazionario di riferimento
        ufficioAppoggio:
          type: string
          description: Indica l'ufficio di appoggio dell'ufficio postale
        indirizzoAltraStruttura:
          type: string
          description: Indica l'indirizzo della struttura alternativa temporanea per
            la categoria ufficio postale
        statoApertura:
          type: string
          description: "Indica lo stato di apertura del negozio: Apre tra poco, Aperto,\
            \ Chiude tra poco e Chiuso"
        orarioApertura:
          type: string
          description: Indica l'orario di apertura attuale
        oraAperto:
          type: boolean
          description: Indica se nel momento attuale il negozio è aperto
        orari:
          type: array
          items:
            $ref: "#/components/schemas/Orari"
          description: Giorni della settimana con orari di apertura del punto. Gli
            orari di apertura possono essere diversi nella giornata
        numeroTelefono:
          type: string
        fax:
          type: string
        chiusuraSantoPatrono:
          type: string
        servizi:
          type: array
          items:
            $ref: "#/components/schemas/ServizioCensito"
          description: Indica i servizi offerti dal punto.
    PuntoSpazioFilatelicoDettaglio:
      type: object
      properties:
        id:
          type: string
          description: Specifica un identificativo univoco del punto
        deepLink:
          type: string
        tipoPunto:
          type: string
          description: "Indica la tipologia di punto (Merchant, MerchantVirtuale,\
            \ UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico, CassettaPostale,\
            \ Lis, PuntoPosteLis)</br>"
        lon:
          type: string
          description: Indica la coordinata longitudine della posizione del punto
        lat:
          type: string
          description: Indica la coordinata latitudine della posizione del punto
        nomePunto:
          type: string
        indirizzoPunto:
          type: string
        citta:
          type: string
        provincia:
          type: string
        cap:
          type: string
        frazionario:
          type: string
          description: Indica il frazionario dell'UP. Per le cassette postali assume
            il significato di frazionario di riferimento
        ufficioAppoggio:
          type: string
          description: Indica l'ufficio di appoggio dell'ufficio postale
        indirizzoAltraStruttura:
          type: string
          description: Indica l'indirizzo della struttura alternativa temporanea per
            la categoria ufficio postale
        statoApertura:
          type: string
          description: "Indica lo stato di apertura del negozio: Apre tra poco, Aperto,\
            \ Chiude tra poco e Chiuso"
        orarioApertura:
          type: string
          description: Indica l'orario di apertura attuale
        oraAperto:
          type: boolean
          description: Indica se nel momento attuale il negozio è aperto
        orari:
          type: array
          items:
            $ref: "#/components/schemas/Orari"
          description: Giorni della settimana con orari di apertura del punto. Gli
            orari di apertura possono essere diversi nella giornata
        numeroTelefono:
          type: string
        fax:
          type: string
        chiusuraSantoPatrono:
          type: string
        orariAperturaCompleti:
          type: array
          items:
            $ref: "#/components/schemas/Orari"
          description: "Indica l'orario di apertura fino a 30 giorni per UfficioPostale\
            \ se presenti, disponibile solo per la chiamata di dettaglio punto"
        serviziCompleti:
          type: array
          items:
            $ref: "#/components/schemas/DettaglioServizio"
          description: "Lista completa servizi offerti dal punto, disponibile solo\
            \ per la chiamata di dettaglio punto (in genere per punto UfficioPostale)"
        servizi:
          type: array
          items:
            $ref: "#/components/schemas/ServizioCensito"
          description: Indica i servizi offerti dal punto.
    PuntoSpazioFilatelicoV2:
      type: object
      properties:
        id:
          type: string
          description: Specifica un identificativo univoco del punto
        deepLink:
          type: string
        tipoPunto:
          type: string
          description: "Indica la tipologia di punto (Merchant, MerchantVirtuale,\
            \ UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico, CassettaPostale,\
            \ Lis, PuntoPosteLis)</br>"
        lon:
          type: string
          description: Indica la coordinata longitudine della posizione del punto
        lat:
          type: string
          description: Indica la coordinata latitudine della posizione del punto
        nomePunto:
          type: string
        indirizzoPunto:
          type: string
        citta:
          type: string
        provincia:
          type: string
        cap:
          type: string
        frazionario:
          type: string
          description: Indica il frazionario dell'UP. Per le cassette postali assume
            il significato di frazionario di riferimento
        ufficioAppoggio:
          type: string
          description: Indica l'ufficio di appoggio dell'ufficio postale
        indirizzoAltraStruttura:
          type: string
          description: Indica l'indirizzo della struttura alternativa temporanea per
            la categoria ufficio postale
        statoApertura:
          type: string
          description: "Indica lo stato di apertura del negozio: Apre tra poco, Aperto,\
            \ Chiude tra poco e Chiuso"
        orarioApertura:
          type: string
          description: Indica l'orario di apertura attuale
        oraAperto:
          type: boolean
          description: Indica se nel momento attuale il negozio è aperto
        orari:
          type: array
          items:
            $ref: "#/components/schemas/Orari"
          description: Giorni della settimana con orari di apertura del punto. Gli
            orari di apertura possono essere diversi nella giornata
        numeroTelefono:
          type: string
        fax:
          type: string
        chiusuraSantoPatrono:
          type: string
        servizi:
          type: array
          items:
            $ref: "#/components/schemas/ServizioCensitoV2"
          description: Indica i servizi offerti dal punto. Tra i servizi e' presente
            il servizio con codice <b>SOLO_PREN</b>
    PuntoSpazioFilatelicoV3:
      type: object
      properties:
        id:
          type: string
          description: Specifica un identificativo univoco del punto
        deepLink:
          type: string
        tipoPunto:
          type: string
          description: "Indica la tipologia di punto (Merchant, MerchantVirtuale,\
            \ UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico, CassettaPostale,\
            \ Lis, PuntoPosteLis)</br>"
        lon:
          type: string
          description: Indica la coordinata longitudine della posizione del punto
        lat:
          type: string
          description: Indica la coordinata latitudine della posizione del punto
        nomePunto:
          type: string
        indirizzoPunto:
          type: string
        citta:
          type: string
        provincia:
          type: string
        cap:
          type: string
        codiciServizi:
          type: array
          items:
            type: string
        frazionario:
          type: string
          description: Indica il frazionario dell'UP. Per le cassette postali assume
            il significato di frazionario di riferimento
        ufficioAppoggio:
          type: string
          description: Indica l'ufficio di appoggio dell'ufficio postale
        indirizzoAltraStruttura:
          type: string
          description: Indica l'indirizzo della struttura alternativa temporanea per
            la categoria ufficio postale
        orari:
          type: array
          items:
            $ref: "#/components/schemas/Orari"
          description: Giorni della settimana con orari di apertura del punto. Gli
            orari di apertura possono essere diversi nella giornata
        chiusuraSantoPatrono:
          type: string
        numeroTelefono:
          type: string
        fax:
          type: string
        statoApertura:
          type: string
          description: "Indica lo stato di apertura del negozio: Chiuso al pubblico,\
            \ Chiuso temporaneamente, Orari non disponibili, Aperto, Chiuso"
        dettaglioStatoApertura:
          type: string
          description: "Se statoApertura=[Chiuso|Aperto] fornisce i dettagli sullo\
            \ stato di apertura (Es: Chiude alle xx:yy, Apre alle xx:xx)"
        categorieServizi:
          type: array
          items:
            type: string
          description: "Lista delle categorie di servizi offerti dal punto. Queste\
            \ sono le categorie <i>pagaepreleva,spedizioneeritiri</i>, etc..."
        labelServizi:
          type: array
          items:
            type: string
          description: Lista delle label dei servizi offerti dal punto come da descrizione
            funzionale.
        funzionalita:
          type: array
          items:
            type: string
          description: "Insieme di funzionalita' offerte dal punto, valori assunti\
            \ [NGA,SOLO_PREN,ATMH24,ATMNONH24]. Valido solo per UfficioPostale"
        tempoAttesa:
          type: integer
          format: int32
          description: "Indica il tempo di attesa stimato se l'informazione è presente.\
            \ I valori assunti sono <i>-1:Non disponibile, 0:Breve, 50:Nella Norma,\
            \ 99:Elevata</i>"
        upLimitrofo:
          type: boolean
          description: Indica la presenza di upLimitrofo in caso di affollamento dell'ufficio
            postale
        distanza:
          type: integer
          format: int32
          description: Valorizzato solo per le risposte della /upLimitrofi. Indica
            la distanza in metri dall'ufficio di partenza X se suggerito come limitrofo
    PuntoUfficioPostale:
      type: object
      properties:
        id:
          type: string
          description: Specifica un identificativo univoco del punto
        deepLink:
          type: string
        tipoPunto:
          type: string
          description: "Indica la tipologia di punto (Merchant, MerchantVirtuale,\
            \ UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico, CassettaPostale,\
            \ Lis, PuntoPosteLis)</br>"
        lon:
          type: string
          description: Indica la coordinata longitudine della posizione del punto
        lat:
          type: string
          description: Indica la coordinata latitudine della posizione del punto
        nomePunto:
          type: string
        indirizzoPunto:
          type: string
        citta:
          type: string
        provincia:
          type: string
        cap:
          type: string
        frazionario:
          type: string
          description: Indica il frazionario dell'UP. Per le cassette postali assume
            il significato di frazionario di riferimento
        ufficioAppoggio:
          type: string
          description: Indica l'ufficio di appoggio dell'ufficio postale
        indirizzoAltraStruttura:
          type: string
          description: Indica l'indirizzo della struttura alternativa temporanea per
            la categoria ufficio postale
        statoApertura:
          type: string
          description: "Indica lo stato di apertura del negozio: Apre tra poco, Aperto,\
            \ Chiude tra poco e Chiuso"
        orarioApertura:
          type: string
          description: Indica l'orario di apertura attuale
        oraAperto:
          type: boolean
          description: Indica se nel momento attuale il negozio è aperto
        orari:
          type: array
          items:
            $ref: "#/components/schemas/Orari"
          description: Giorni della settimana con orari di apertura del punto. Gli
            orari di apertura possono essere diversi nella giornata
        numeroTelefono:
          type: string
        fax:
          type: string
        chiusuraSantoPatrono:
          type: string
        servizi:
          type: array
          items:
            $ref: "#/components/schemas/ServizioCensito"
          description: Indica i servizi offerti dal punto.
    PuntoUfficioPostaleDettaglio:
      type: object
      properties:
        id:
          type: string
          description: Specifica un identificativo univoco del punto
        deepLink:
          type: string
        tipoPunto:
          type: string
          description: "Indica la tipologia di punto (Merchant, MerchantVirtuale,\
            \ UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico, CassettaPostale,\
            \ Lis, PuntoPosteLis)</br>"
        lon:
          type: string
          description: Indica la coordinata longitudine della posizione del punto
        lat:
          type: string
          description: Indica la coordinata latitudine della posizione del punto
        nomePunto:
          type: string
        indirizzoPunto:
          type: string
        citta:
          type: string
        provincia:
          type: string
        cap:
          type: string
        frazionario:
          type: string
          description: Indica il frazionario dell'UP. Per le cassette postali assume
            il significato di frazionario di riferimento
        ufficioAppoggio:
          type: string
          description: Indica l'ufficio di appoggio dell'ufficio postale
        indirizzoAltraStruttura:
          type: string
          description: Indica l'indirizzo della struttura alternativa temporanea per
            la categoria ufficio postale
        statoApertura:
          type: string
          description: "Indica lo stato di apertura del negozio: Apre tra poco, Aperto,\
            \ Chiude tra poco e Chiuso"
        orarioApertura:
          type: string
          description: Indica l'orario di apertura attuale
        oraAperto:
          type: boolean
          description: Indica se nel momento attuale il negozio è aperto
        orari:
          type: array
          items:
            $ref: "#/components/schemas/Orari"
          description: Giorni della settimana con orari di apertura del punto. Gli
            orari di apertura possono essere diversi nella giornata
        numeroTelefono:
          type: string
        fax:
          type: string
        chiusuraSantoPatrono:
          type: string
        orariAperturaCompleti:
          type: array
          items:
            $ref: "#/components/schemas/Orari"
          description: "Indica l'orario di apertura fino a 30 giorni per UfficioPostale\
            \ se presenti, disponibile solo per la chiamata di dettaglio punto"
        serviziCompleti:
          type: array
          items:
            $ref: "#/components/schemas/DettaglioServizio"
          description: "Lista completa servizi offerti dal punto, disponibile solo\
            \ per la chiamata di dettaglio punto (in genere per punto UfficioPostale)"
        servizi:
          type: array
          items:
            $ref: "#/components/schemas/ServizioCensito"
          description: Indica i servizi offerti dal punto.
    PuntoUfficioPostaleV2:
      type: object
      properties:
        id:
          type: string
          description: Specifica un identificativo univoco del punto
        deepLink:
          type: string
        tipoPunto:
          type: string
          description: "Indica la tipologia di punto (Merchant, MerchantVirtuale,\
            \ UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico, CassettaPostale,\
            \ Lis, PuntoPosteLis)</br>"
        lon:
          type: string
          description: Indica la coordinata longitudine della posizione del punto
        lat:
          type: string
          description: Indica la coordinata latitudine della posizione del punto
        nomePunto:
          type: string
        indirizzoPunto:
          type: string
        citta:
          type: string
        provincia:
          type: string
        cap:
          type: string
        frazionario:
          type: string
          description: Indica il frazionario dell'UP. Per le cassette postali assume
            il significato di frazionario di riferimento
        ufficioAppoggio:
          type: string
          description: Indica l'ufficio di appoggio dell'ufficio postale
        indirizzoAltraStruttura:
          type: string
          description: Indica l'indirizzo della struttura alternativa temporanea per
            la categoria ufficio postale
        statoApertura:
          type: string
          description: "Indica lo stato di apertura del negozio: Apre tra poco, Aperto,\
            \ Chiude tra poco e Chiuso"
        orarioApertura:
          type: string
          description: Indica l'orario di apertura attuale
        oraAperto:
          type: boolean
          description: Indica se nel momento attuale il negozio è aperto
        orari:
          type: array
          items:
            $ref: "#/components/schemas/Orari"
          description: Giorni della settimana con orari di apertura del punto. Gli
            orari di apertura possono essere diversi nella giornata
        numeroTelefono:
          type: string
        fax:
          type: string
        chiusuraSantoPatrono:
          type: string
        servizi:
          type: array
          items:
            $ref: "#/components/schemas/ServizioCensitoV2"
          description: Indica i servizi offerti dal punto. Tra i servizi e' presente
            il servizio con codice <b>SOLO_PREN</b>
    PuntoUfficioPostaleV3:
      type: object
      properties:
        id:
          type: string
          description: Specifica un identificativo univoco del punto
        deepLink:
          type: string
        tipoPunto:
          type: string
          description: "Indica la tipologia di punto (Merchant, MerchantVirtuale,\
            \ UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico, CassettaPostale,\
            \ Lis, PuntoPosteLis)</br>"
        lon:
          type: string
          description: Indica la coordinata longitudine della posizione del punto
        lat:
          type: string
          description: Indica la coordinata latitudine della posizione del punto
        nomePunto:
          type: string
        indirizzoPunto:
          type: string
        citta:
          type: string
        provincia:
          type: string
        cap:
          type: string
        frazionario:
          type: string
          description: Indica il frazionario dell'UP. Per le cassette postali assume
            il significato di frazionario di riferimento
        ufficioAppoggio:
          type: string
          description: Indica l'ufficio di appoggio dell'ufficio postale
        indirizzoAltraStruttura:
          type: string
          description: Indica l'indirizzo della struttura alternativa temporanea per
            la categoria ufficio postale
        orari:
          type: array
          items:
            $ref: "#/components/schemas/Orari"
          description: Giorni della settimana con orari di apertura del punto. Gli
            orari di apertura possono essere diversi nella giornata
        chiusuraSantoPatrono:
          type: string
        numeroTelefono:
          type: string
        fax:
          type: string
        statoApertura:
          type: string
          description: "Indica lo stato di apertura del negozio: Chiuso al pubblico,\
            \ Chiuso temporaneamente, Orari non disponibili, Aperto, Chiuso"
        dettaglioStatoApertura:
          type: string
          description: "Se statoApertura=[Chiuso|Aperto] fornisce i dettagli sullo\
            \ stato di apertura (Es: Chiude alle xx:yy, Apre alle xx:xx)"
        categorieServizi:
          type: array
          items:
            type: string
          description: "Lista delle categorie di servizi offerti dal punto. Queste\
            \ sono le categorie <i>pagaepreleva,spedizioneeritiri</i>, etc..."
        labelServizi:
          type: array
          items:
            type: string
          description: Lista delle label dei servizi offerti dal punto come da descrizione
            funzionale.
        funzionalita:
          type: array
          items:
            type: string
          description: "Insieme di funzionalita' offerte dal punto, valori assunti\
            \ [NGA,SOLO_PREN,ATMH24,ATMNONH24]. Valido solo per UfficioPostale"
        tempoAttesa:
          type: integer
          format: int32
          description: "Indica il tempo di attesa stimato se l'informazione è presente.\
            \ I valori assunti sono <i>-1:Non disponibile, 0:Breve, 50:Nella Norma,\
            \ 99:Elevata</i>"
        upLimitrofo:
          type: boolean
          description: Indica la presenza di upLimitrofo in caso di affollamento dell'ufficio
            postale
        distanza:
          type: integer
          format: int32
          description: Valorizzato solo per le risposte della /upLimitrofi. Indica
            la distanza in metri dall'ufficio di partenza X se suggerito come limitrofo
        codiciServizi:
          type: array
          items:
            type: string
          description: Lista dei codici servizi offerti dal punto. Disponibili solo
            per la chiamata di dettaglioUp con <i>?dettServ=true</i>
    ResponseStatusAutocompleteResponseV2:
      type: object
      properties:
        status:
          $ref: "#/components/schemas/Status"
          type: string
          description: Indica l'esito di esecuzione dell'operazione<br/>.Success operazione
            eseguita correttamente (dati presenti nel campo 'data')<br/>.Error operazione
            andata in errore (causa presente nel campo 'error')
          default: Success
        error:
          $ref: "#/components/schemas/Error"
          type: object
          description: Causa dell'errore di esecuzione della richiesta
        data:
          $ref: "#/components/schemas/AutocompleteResponseV2"
          type: object
          description: Campo contenente il payload della risposta
    ResponseStatusAutocompleteResponseV3:
      type: object
      properties:
        status:
          $ref: "#/components/schemas/Status"
          type: string
          description: Indica l'esito di esecuzione dell'operazione<br/>.Success operazione
            eseguita correttamente (dati presenti nel campo 'data')<br/>.Error operazione
            andata in errore (causa presente nel campo 'error')
          default: Success
        error:
          $ref: "#/components/schemas/Error"
          type: object
          description: Causa dell'errore di esecuzione della richiesta
        data:
          $ref: "#/components/schemas/AutocompleteResponseV3"
          type: object
          description: Campo contenente il payload della risposta
    ResponseStatusCategorieResponse:
      type: object
      properties:
        status:
          $ref: "#/components/schemas/Status"
          type: string
          description: Indica l'esito di esecuzione dell'operazione<br/>.Success operazione
            eseguita correttamente (dati presenti nel campo 'data')<br/>.Error operazione
            andata in errore (causa presente nel campo 'error')
          default: Success
        error:
          $ref: "#/components/schemas/Error"
          type: object
          description: Causa dell'errore di esecuzione della richiesta
        data:
          $ref: "#/components/schemas/CategorieResponse"
          type: object
          description: Campo contenente il payload della risposta
    ResponseStatusCategorieServiziResponse:
      type: object
      properties:
        status:
          $ref: "#/components/schemas/Status"
          type: string
          description: Indica l'esito di esecuzione dell'operazione<br/>.Success operazione
            eseguita correttamente (dati presenti nel campo 'data')<br/>.Error operazione
            andata in errore (causa presente nel campo 'error')
          default: Success
        error:
          $ref: "#/components/schemas/Error"
          type: object
          description: Causa dell'errore di esecuzione della richiesta
        data:
          $ref: "#/components/schemas/CategorieServiziResponse"
          type: object
          description: Campo contenente il payload della risposta
    ResponseStatusComuniResponse:
      type: object
      properties:
        status:
          $ref: "#/components/schemas/Status"
          type: string
          description: Indica l'esito di esecuzione dell'operazione<br/>.Success operazione
            eseguita correttamente (dati presenti nel campo 'data')<br/>.Error operazione
            andata in errore (causa presente nel campo 'error')
          default: Success
        error:
          $ref: "#/components/schemas/Error"
          type: object
          description: Causa dell'errore di esecuzione della richiesta
        data:
          $ref: "#/components/schemas/ComuniResponse"
          type: object
          description: Campo contenente il payload della risposta
    ResponseStatusDettaglioUpResponse:
      type: object
      properties:
        status:
          $ref: "#/components/schemas/Status"
          type: string
          description: Indica l'esito di esecuzione dell'operazione<br/>.Success operazione
            eseguita correttamente (dati presenti nel campo 'data')<br/>.Error operazione
            andata in errore (causa presente nel campo 'error')
          default: Success
        error:
          $ref: "#/components/schemas/Error"
          type: object
          description: Causa dell'errore di esecuzione della richiesta
        data:
          $ref: "#/components/schemas/DettaglioUpResponse"
          type: object
          description: Campo contenente il payload della risposta
    ResponseStatusDettaglioUpResponseV3:
      type: object
      properties:
        status:
          $ref: "#/components/schemas/Status"
          type: string
          description: Indica l'esito di esecuzione dell'operazione<br/>.Success operazione
            eseguita correttamente (dati presenti nel campo 'data')<br/>.Error operazione
            andata in errore (causa presente nel campo 'error')
          default: Success
        error:
          $ref: "#/components/schemas/Error"
          type: object
          description: Causa dell'errore di esecuzione della richiesta
        data:
          $ref: "#/components/schemas/DettaglioUpResponseV3"
          type: object
          description: Campo contenente il payload della risposta
    ResponseStatusGeoListResponse:
      type: object
      properties:
        status:
          $ref: "#/components/schemas/Status"
          type: string
          description: Indica l'esito di esecuzione dell'operazione<br/>.Success operazione
            eseguita correttamente (dati presenti nel campo 'data')<br/>.Error operazione
            andata in errore (causa presente nel campo 'error')
          default: Success
        error:
          $ref: "#/components/schemas/Error"
          type: object
          description: Causa dell'errore di esecuzione della richiesta
        data:
          $ref: "#/components/schemas/GeoListResponse"
          type: object
          description: Campo contenente il payload della risposta
    ResponseStatusGeoListResponseV2:
      type: object
      properties:
        status:
          $ref: "#/components/schemas/Status"
          type: string
          description: Indica l'esito di esecuzione dell'operazione<br/>.Success operazione
            eseguita correttamente (dati presenti nel campo 'data')<br/>.Error operazione
            andata in errore (causa presente nel campo 'error')
          default: Success
        error:
          $ref: "#/components/schemas/Error"
          type: object
          description: Causa dell'errore di esecuzione della richiesta
        data:
          $ref: "#/components/schemas/GeoListResponseV2"
          type: object
          description: Campo contenente il payload della risposta
    ResponseStatusGeoListResponseV3:
      type: object
      properties:
        status:
          $ref: "#/components/schemas/Status"
          type: string
          description: Indica l'esito di esecuzione dell'operazione<br/>.Success operazione
            eseguita correttamente (dati presenti nel campo 'data')<br/>.Error operazione
            andata in errore (causa presente nel campo 'error')
          default: Success
        error:
          $ref: "#/components/schemas/Error"
          type: object
          description: Causa dell'errore di esecuzione della richiesta
        data:
          $ref: "#/components/schemas/GeoListResponseV3"
          type: object
          description: Campo contenente il payload della risposta
    ResponseStatusGeoSearchResponse:
      type: object
      properties:
        status:
          $ref: "#/components/schemas/Status"
          type: string
          description: Indica l'esito di esecuzione dell'operazione<br/>.Success operazione
            eseguita correttamente (dati presenti nel campo 'data')<br/>.Error operazione
            andata in errore (causa presente nel campo 'error')
          default: Success
        error:
          $ref: "#/components/schemas/Error"
          type: object
          description: Causa dell'errore di esecuzione della richiesta
        data:
          $ref: "#/components/schemas/GeoSearchResponse"
          type: object
          description: Campo contenente il payload della risposta
    ResponseStatusGeoSearchResponseV2:
      type: object
      properties:
        status:
          $ref: "#/components/schemas/Status"
          type: string
          description: Indica l'esito di esecuzione dell'operazione<br/>.Success operazione
            eseguita correttamente (dati presenti nel campo 'data')<br/>.Error operazione
            andata in errore (causa presente nel campo 'error')
          default: Success
        error:
          $ref: "#/components/schemas/Error"
          type: object
          description: Causa dell'errore di esecuzione della richiesta
        data:
          $ref: "#/components/schemas/GeoSearchResponse1"
          type: object
          description: Campo contenente il payload della risposta
    ResponseStatusGeoSearchResponseV3:
      type: object
      properties:
        status:
          $ref: "#/components/schemas/Status"
          type: string
          description: Indica l'esito di esecuzione dell'operazione<br/>.Success operazione
            eseguita correttamente (dati presenti nel campo 'data')<br/>.Error operazione
            andata in errore (causa presente nel campo 'error')
          default: Success
        error:
          $ref: "#/components/schemas/Error"
          type: object
          description: Causa dell'errore di esecuzione della richiesta
        data:
          $ref: "#/components/schemas/GeoSearchResponse2"
          type: object
          description: Campo contenente il payload della risposta
    ResponseStatusMerchantOnlineResponse:
      type: object
      properties:
        status:
          $ref: "#/components/schemas/Status"
          type: string
          description: Indica l'esito di esecuzione dell'operazione<br/>.Success operazione
            eseguita correttamente (dati presenti nel campo 'data')<br/>.Error operazione
            andata in errore (causa presente nel campo 'error')
          default: Success
        error:
          $ref: "#/components/schemas/Error"
          type: object
          description: Causa dell'errore di esecuzione della richiesta
        data:
          $ref: "#/components/schemas/MerchantOnlineResponse"
          type: object
          description: Campo contenente il payload della risposta
    ResponseStatusPuntoMappaUnicaDettaglioAll:
      type: object
      properties:
        status:
          $ref: "#/components/schemas/Status"
          type: string
          description: Indica l'esito di esecuzione dell'operazione<br/>.Success operazione
            eseguita correttamente (dati presenti nel campo 'data')<br/>.Error operazione
            andata in errore (causa presente nel campo 'error')
          default: Success
        error:
          $ref: "#/components/schemas/Error"
          type: object
          description: Causa dell'errore di esecuzione della richiesta
        data:
          $ref: "#/components/schemas/PuntoMappaUnicaDettaglioAll"
          type: object
          description: Campo contenente il payload della risposta
    ResponseStatusPuntoMappaUnicaNegoziV3:
      type: object
      properties:
        status:
          $ref: "#/components/schemas/Status"
          type: string
          description: Indica l'esito di esecuzione dell'operazione<br/>.Success operazione
            eseguita correttamente (dati presenti nel campo 'data')<br/>.Error operazione
            andata in errore (causa presente nel campo 'error')
          default: Success
        error:
          $ref: "#/components/schemas/Error"
          type: object
          description: Causa dell'errore di esecuzione della richiesta
        data:
          $ref: "#/components/schemas/PuntoMappaUnicaNegoziV3"
          type: object
          description: Campo contenente il payload della risposta
    ResponseStatusServiziResponse:
      type: object
      properties:
        status:
          $ref: "#/components/schemas/Status"
          type: string
          description: Indica l'esito di esecuzione dell'operazione<br/>.Success operazione
            eseguita correttamente (dati presenti nel campo 'data')<br/>.Error operazione
            andata in errore (causa presente nel campo 'error')
          default: Success
        error:
          $ref: "#/components/schemas/Error"
          type: object
          description: Causa dell'errore di esecuzione della richiesta
        data:
          $ref: "#/components/schemas/ServiziResponse"
          type: object
          description: Campo contenente il payload della risposta
    ResponseStatusServiziUpResponse:
      type: object
      properties:
        status:
          $ref: "#/components/schemas/Status"
          type: string
          description: Indica l'esito di esecuzione dell'operazione<br/>.Success operazione
            eseguita correttamente (dati presenti nel campo 'data')<br/>.Error operazione
            andata in errore (causa presente nel campo 'error')
          default: Success
        error:
          $ref: "#/components/schemas/Error"
          type: object
          description: Causa dell'errore di esecuzione della richiesta
        data:
          $ref: "#/components/schemas/ServiziUpResponse"
          type: object
          description: Campo contenente il payload della risposta
    ResponseStatusUfficiPostaliLimitrofiResponse:
      type: object
      properties:
        status:
          $ref: "#/components/schemas/Status"
          type: string
          description: Indica l'esito di esecuzione dell'operazione<br/>.Success operazione
            eseguita correttamente (dati presenti nel campo 'data')<br/>.Error operazione
            andata in errore (causa presente nel campo 'error')
          default: Success
        error:
          $ref: "#/components/schemas/Error"
          type: object
          description: Causa dell'errore di esecuzione della richiesta
        data:
          $ref: "#/components/schemas/UfficiPostaliLimitrofiResponse"
          type: object
          description: Campo contenente il payload della risposta
    ServiziResponse:
      type: object
      properties:
        servizi:
          type: array
          items:
            $ref: "#/components/schemas/ServizioCensito"
    ServiziUp:
      type: object
      properties:
        codice:
          type: string
        descrizione:
          type: string
        label:
          type: string
        selezionabile:
          type: string
        vendibile:
          type: string
        flagSiNo:
          type: string
        data:
          type: string
        codiceCategoria:
          type: string
        categoria:
          type: string
    ServiziUpResponse:
      type: object
      description: Risultato dell'interrogazione dell'anagrafica dei servizi uffici
        postali
      properties:
        servizi:
          type: array
          items:
            $ref: "#/components/schemas/ServiziUp"
    ServizioCensito:
      type: object
      description: "Servizi censiti. Il dominio dei valori assunti da questo campo\
        \ si differenzia per tipo punto. Per tipo punto UfficioPostale, PuntoPoste\
        \ e SpazioFilatelico puo' assumere uno dei seguenti valori:  [ATMH24|ATMNONH24|BUONI_LAV|CERT_CUD|FRANCOBOLLI|NGA|PERM_SOGGIORNO|POSTE_ID_SPID|QRCODE|RCA|RIL_CERT_INPS|VIS_CATASTALI|WIFI|CERTIFICATI\
        \ ANAGRAFICI|CERTIFICATI DELLA PENSIONE|DOMANDA DI NOMINA DI AMMINISTRATORE\
        \ DI SOSTEGNO|RENDICONTO STATO PATRIMONIALE].<br/>Per tipo punto Merchant\
        \ e MerchantVirtuale puo' assumere uno dei seguenti valori: [QRCODE|TAKEAWAY|DELIVERY|SCONTI]"
      properties:
        codice:
          type: string
        descrizione:
          type: string
    ServizioCensitoV2:
      type: object
      description: "Servizi censiti. Questa struttura dati aggiunge al dominio dei\
        \ codici di <i>ServizioCensito</i> il codice <b>SOLO_PREN</b>. Il dominio\
        \ dei valori assunti da questo campo si differenzia per tipo punto. Per tipo\
        \ punto UfficioPostale, PuntoPoste e SpazioFilatelico puo' assumere uno dei\
        \ seguenti valori:  [<b>SOLO_PREN</b>,ATMH24|ATMNONH24|BUONI_LAV|CERT_CUD|FRANCOBOLLI|NGA|PERM_SOGGIORNO|POSTE_ID_SPID|QRCODE|RCA|RIL_CERT_INPS|VIS_CATASTALI|WIFI|CERTIFICATI\
        \ ANAGRAFICI|CERTIFICATI DELLA PENSIONE|DOMANDA DI NOMINA DI AMMINISTRATORE\
        \ DI SOSTEGNO|RENDICONTO STATO PATRIMONIALE].<br/>Per tipo punto Merchant\
        \ e MerchantVirtuale puo' assumere uno dei seguenti valori: [QRCODE|TAKEAWAY|DELIVERY|SCONTI]"
      properties:
        codice:
          type: string
        descrizione:
          type: string
    Status:
      type: string
      enum:
      - SUCCESS
      - ERROR
    UfficiPostaliLimitrofiRequest:
      type: object
      required:
      - frazionario
      description: Dati di ricerca di un ufficio postale limitrofo con dati di affluenza
        validi
      properties:
        frazionario:
          type: string
          description: Specifica il frazionario dell'ufficio postale di partenza
          default: "55101"
        raggioKm:
          type: integer
          format: int32
          description: Specifica la distanza massima in chilometri da tenere in considerazione
            nella ricerca dell'ufficio postale limitrofo
          default: 1
        numeroMassimoPunti:
          type: integer
          format: int32
          description: Indica di restituire al piu' un <i>numeroMassimoUffici</i>
          default: 4
    UfficiPostaliLimitrofiResponse:
      type: object
      properties:
        ufficiLimitrofi:
          type: array
          items:
            $ref: "#/components/schemas/PuntoUfficioPostaleV3"
paths:
  /v1/map/autocomplete:
    post:
      summary: Restituisce valori di autocompletamento sui campi del punto
      description: "I punti vengono ricercati per nome insegna, indirizzo, citta e\
        \ categorie.<br/>Vengono restituiti un numero di punti configurabili (ad esempio\
        \ 20 suggerimenti per interrogazione).<br>Se una posizione è specificata in\
        \ input vengono restituiti punti ordinati per<br/> distanza altrimenti i punti\
        \ sono ordinati per score (miglior corrispondenza)"
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AutocompleteRequestV2"
        required: true
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResponseStatusAutocompleteResponseV2"
      tags:
      - Mappa Unica Controller
  /v1/map/categorieMerchant:
    get:
      summary: Restituisce le categorie dei punti
      description: Ritorna il dominio dei valori ammissibili per il campo categorie
        presenti nel database
      responses:
        "200":
          description: OK
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: "#/components/schemas/ResponseStatusCategorieResponse"
      tags:
      - Mappa Unica Controller
  /v1/map/comuni/{prefix}:
    get:
      summary: Autocompletamento per comune
      description: Restituisce la lista di comuni che cominciano per il campo passato
        in input
      parameters:
      - name: prefix
        in: path
        required: true
        schema:
          type: string
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResponseStatusComuniResponse"
      tags:
      - Mappa Unica Controller
  /v1/map/dettaglioUp/{frazionario}:
    get:
      summary: Restituisce il dettaglio di un punto a partire dal frazionario
      description: Per la tipologiaPunto UfficioPostale|PuntoPoste|PuntoPosteLocker|SpazioFilatelico
        restituisce il dettaglio del singolo punto associato al frazionario.Per la
        tipologiaPunto CassettaPostale vengono restituite tutte le cassette postali
        associate al frazionario specificato.
      parameters:
      - name: frazionario
        in: path
        required: true
        schema:
          type: string
          minLength: 1
      - name: tipoUp
        in: query
        schema:
          type: string
          minLength: 1
          pattern: UfficioPostale|PuntoPoste|PuntoPosteLocker|SpazioFilatelico|CassettaPostale
        required: true
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResponseStatusDettaglioUpResponse"
      tags:
      - Mappa Unica Controller
  /v1/map/geoList:
    post:
      summary: Ricerca geografica di punti secondo griglia geografica e criteri specifici
      description: "Elenca tutti i punti geograficamente all'interno di un rettangolo\
        \ di coordinate specificate.<br/>I punti restituiti sono ordinati per distanza\
        \ dal centro specificato lon, lat.<br/>Il risultato puo' essere ulteriormente\
        \ filtrato per nome insegna e indirizzo punto.<br/>La richiesta prevede paginazione\
        \ e ordinamento dei risultati."
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GeoListRequest"
        required: true
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResponseStatusGeoListResponse"
      tags:
      - Mappa Unica Controller
  /v1/map/geoListByComune:
    post:
      summary: Ricerca di punti per comune e categoria
      description: Restituisce la lista dei punti a partire dal comune e la provincia
        specificate
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GeoListByComuneRequest"
        required: true
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResponseStatusGeoListResponse"
      tags:
      - Mappa Unica Controller
  /v1/map/geoSearch:
    post:
      summary: Ricerca di punti su una griglia geografica personalizzabile
      description: Tramite i dati un input si individua un rettangolo geografico di
        ricerca punti.<br/>Il rettangolo geografico viene suddiviso in sottorettangoli
        detti cluster.<br/>Ad ogni cluster si associa un'aggregazione di punti o il
        singolo punto se presente.<br/>Il risultato consiste in segnaposto rappresentante
        aggregazione di punti e segnaposto di punti singoli.
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GeoSearchRequest"
        required: true
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResponseStatusGeoSearchResponse"
      tags:
      - Mappa Unica Controller
  /v1/map/geoSearchByComune:
    post:
      summary: Ricerca di punti per comune e categoria
      description: Restituisce la mappa con cluster dei punti per categoria specificata
        costruendo la griglia geografica a partire dal comune specificato
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GeoSearchByComuneRequest"
        required: true
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResponseStatusGeoSearchResponse"
      tags:
      - Mappa Unica Controller
  /v1/map/merchantOnline:
    post:
      summary: Ottiene la lista dei merchant online
      description: I merchant possono essere filtrati per prefisso del nome. Il servizio
        è paginato
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/MerchantOnlineRequest"
        required: true
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResponseStatusMerchantOnlineResponse"
      tags:
      - Mappa Unica Controller
  /v1/map/punto/{id}:
    get:
      summary: Restituisce il dettaglio di un punto a partire dall'id del punto
      description: Il servizio ritorna il dettaglio completo di uno specifico punto
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResponseStatusPuntoMappaUnicaDettaglioAll"
      tags:
      - Mappa Unica Controller
  /v1/map/servizi/{tipologiaPunto}:
    get:
      summary: Restituisce il dominio dei servizi offerti
      description: "Ritorna i servizi previsti per la tipologia di punto specificata.<br/>Il\
        \ campo tipologiaPunto puo' assumere uno dei seguenti valori: Merchant, MerchantVirtuale,\
        \ UfficioPostale, PuntoPoste, PuntoPosteLocker, SpazioFilatelico, CassettaPostale."
      parameters:
      - name: tipologiaPunto
        in: path
        required: true
        schema:
          type: string
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResponseStatusServiziResponse"
      tags:
      - Mappa Unica Controller
  /v1/map/up/getAnagraficaServiziUp:
    post:
      summary: Restituisce l'anagrafica completa dei servizi per gli uffici postali
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResponseStatusServiziUpResponse"
      tags:
      - Mappa Unica Ricerca Up Controller
  /v2/map/geoList:
    post:
      summary: Ricerca geografica di punti secondo griglia geografica e criteri specifici
      description: "Elenca tutti i punti geograficamente all'interno di un rettangolo\
        \ di coordinate specificate.<br/>I punti restituiti sono ordinati per distanza\
        \ dal centro specificato lon, lat.<br/>Il risultato puo' essere ulteriormente\
        \ filtrato per nome insegna e indirizzo punto.<br/>La richiesta prevede paginazione\
        \ e ordinamento dei risultati."
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GeoListRequest"
        required: true
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResponseStatusGeoListResponseV2"
      tags:
      - Servizi Geo Controller
  /v2/map/geoListByComune:
    post:
      summary: Ricerca di punti per comune e categoria
      description: Restituisce la lista dei punti a partire dal comune e la provincia
        specificate
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GeoListByComuneRequest"
        required: true
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResponseStatusGeoListResponseV2"
      tags:
      - Servizi Geo Controller
  /v2/map/geoSearch:
    post:
      summary: Ricerca di punti su una griglia geografica personalizzabile
      description: Tramite i dati un input si individua un rettangolo geografico di
        ricerca punti.<br/>Il rettangolo geografico viene suddiviso in sottorettangoli
        detti cluster.<br/>Ad ogni cluster si associa un'aggregazione di punti o il
        singolo punto se presente.<br/>Il risultato consiste in segnaposto rappresentante
        aggregazione di punti e segnaposto di punti singoli.
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GeoSearchRequest"
        required: true
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResponseStatusGeoSearchResponseV2"
      tags:
      - Servizi Geo Controller
  /v2/map/geoSearchByComune:
    post:
      summary: Ricerca di punti per comune e categoria
      description: Restituisce la mappa con cluster dei punti per categoria specificata
        costruendo la griglia geografica a partire dal comune specificato
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GeoSearchByComuneRequest"
        required: true
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResponseStatusGeoSearchResponseV2"
      tags:
      - Servizi Geo Controller
  /v3/map/anagrafica/categorieServizi:
    get:
      summary: Restituisce il dettaglio di un punto a partire dal frazionario
      description: Per la tipologiaPunto UfficioPostale|PuntoPoste|PuntoPosteLocker|SpazioFilatelico
        restituisce il dettaglio del singolo punto associato al frazionario.Per la
        tipologiaPunto CassettaPostale vengono restituite tutte le cassette postali
        associate al frazionario specificato.
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResponseStatusCategorieServiziResponse"
      tags:
      - Servizi Geo Categorie Controller
  /v3/map/autocomplete:
    post:
      summary: Restituisce valori di autocompletamento sui campi del punto
      description: "I punti vengono ricercati per nome insegna, indirizzo, citta e\
        \ categorie.<br/>Vengono restituiti un numero di punti configurabili (ad esempio\
        \ 20 suggerimenti per interrogazione).<br>Se una posizione è specificata in\
        \ input vengono restituiti punti ordinati per<br/> distanza altrimenti i punti\
        \ sono ordinati per score (miglior corrispondenza)"
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AutocompleteRequestV3"
        required: true
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResponseStatusAutocompleteResponseV3"
      tags:
      - Servizi Geo Categorie Controller
  /v3/map/dettaglioUp/{frazionario}:
    get:
      summary: Restituisce il dettaglio di un punto a partire dal frazionario
      description: Per la tipologiaPunto UfficioPostale|PuntoPoste|PuntoPosteLocker|SpazioFilatelico
        restituisce il dettaglio del singolo punto associato al frazionario.Per la
        tipologiaPunto CassettaPostale vengono restituite tutte le cassette postali
        associate al frazionario specificato.
      parameters:
      - name: frazionario
        in: path
        required: true
        schema:
          type: string
          minLength: 1
      - name: dettServ
        in: query
        schema:
          type: boolean
      - name: tipoUp
        in: query
        schema:
          type: string
          minLength: 1
          pattern: UfficioPostale|PuntoPoste|PuntoPosteLocker|SpazioFilatelico|CassettaPostale|PuntoPosteLis
        required: true
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResponseStatusDettaglioUpResponseV3"
      tags:
      - Servizi Geo Categorie Controller
  /v3/map/geoList:
    post:
      summary: Ricerca geografica di punti secondo griglia geografica e criteri specifici
      description: "Elenca tutti i punti geograficamente all'interno di un rettangolo\
        \ di coordinate specificate.<br/>I punti restituiti sono ordinati per distanza\
        \ dal centro specificato lon, lat.<br/>Il risultato puo' essere ulteriormente\
        \ filtrato per nome insegna e indirizzo punto.<br/>La richiesta prevede paginazione\
        \ e ordinamento dei risultati."
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GeoListRequest1"
        required: true
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResponseStatusGeoListResponseV3"
      tags:
      - Servizi Geo Categorie Controller
  /v3/map/geoSearch:
    post:
      summary: Ricerca di punti su una griglia geografica personalizzabile
      description: Tramite i dati un input si individua un rettangolo geografico di
        ricerca punti.<br/>Il rettangolo geografico viene suddiviso in sottorettangoli
        detti cluster.<br/>Ad ogni cluster si associa un'aggregazione di punti o il
        singolo punto se presente.<br/>Il risultato consiste in segnaposto rappresentante
        aggregazione di punti e segnaposto di punti singoli.
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GeoSearchRequestV3"
        required: true
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResponseStatusGeoSearchResponseV3"
      tags:
      - Servizi Geo Categorie Controller
  /v3/map/punto/{id}:
    get:
      summary: Restituisce il dettaglio di un punto a partire dall'id del punto
      description: Il servizio ritorna il dettaglio completo di uno specifico punto
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResponseStatusPuntoMappaUnicaNegoziV3"
      tags:
      - Servizi Geo Categorie Controller
  /v3/map/upLimitrofo:
    post:
      summary: Ricerca di un ufficio postale nelle vicinanze con affluenza bassa
      description: "Servizio di ricerca degli uffici postali con affluenza bassa entro\
        \ una certa distanza ad uno dato per frazionario con affluenza alta.La ricerca\
        \ puo' essere effettuata specificando un numero massimo di punti da restituire\
        \ o un raggio di ricerca massimo in km.Gli uffici proposti avranno un sovrainsieme\
        \ dei servizi offerti da quello di partenza, saranno aperti e ordinati per\
        \ distanza"
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/UfficiPostaliLimitrofiRequest"
        required: true
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResponseStatusUfficiPostaliLimitrofiResponse"
      tags:
      - Servizi Geo Categorie Controller
info:
  title: mappa-unica-services API
  version: 1.2.8
