For the complete documentation index, see llms.txt. This page is also available as Markdown.

Definizione API PDND Connector

Endpoint del pdnd-connector

Il pdnd-connector espone endpoint specifici per ciascun e-service integrato, con diverse operazioni supportate tramite verbi HTTP.

Endpoint di Chiamata

Gli endpoint seguono una struttura che identifica l'erogatore e il servizio specifico. Ad esempio, per gli e-service ANPR (ANPR è l'erogatore), si utilizzano path come /e-services/anpr/<nome-e-service>. Esempi di <nome-e-service> includono accertamento-cittadinanza, stato-famiglia, accertamento-residenza.

Verbi HTTP Utilizzati

  • GET: Utilizzato per la fruizione degli e-service, ovvero per richiedere e ottenere i dati dal pdnd-connector, che a sua volta li recupera dagli enti erogatori (es. ANPR, INPS).

  • POST: Utilizzato per la validazione dei dati precedentemente ottenuti tramite GET. Questa operazione verifica che i dati non siano stati alterati prima di essere inviati dal Core.

  • Parametri Richiesti (Payload per POST, URL per GET):

    • Per GET (Fruizione): I parametri sono inclusi nella URL (query parameters). Esempi includono:

      • fiscalCode: Il codice fiscale dell'utente di cui si richiedono i dati.

      • format: Un parametro che specifica il formato in cui i dati devono essere restituiti dal pdnd-connector. Questo formato deve essere compatibile con il Nested Form di OpenCity che riceverà i dati.

      • Esempio URL: GET /e-services/anpr/stato-famiglia?fiscalCode=ABCDEF01G23H456I&format=statoFamigliaArchetipo

    • Per POST (Validazione): Il payload della richiesta POST deve contenere due campi principali:

      • data: L'oggetto JSON contenente i dati esatti (incluso il loro formato) così come ricevuti dalla risposta GET precedente, senza i metadati di isFromPdnd, isReadonly, isUpdatedToday.

      • meta: Un oggetto contenente la firma digitale (signature) dei dati, così come restituita dalla risposta GET.

  • Header Necessari: Per tutte le chiamate agli endpoint del pdnd-connector, è necessario includere un token JWT nell'header Authorization.

    • Authorization: Bearer <JWT_TOKEN>. Il pdnd-connector effettua una validazione del token. Per le API di configurazione (non direttamente usate da OpenCity per fruizione), è richiesto un admin token. Per le API di fruizione e validazione, è richiesto un user token, e il codice fiscale contenuto nel token viene verificato con quello eventualmente presente nella URL.

Esempi di chiamate API

Di seguito, alcuni esempi di richieste e risposte per chiarire il flusso di integrazione.

Accertamento Residenza

Richiesta:

Risposta:

È disponibile anche il formato "residenza_archetipo" che include campi aggiuntivi:

Stato Famiglia

Richiesta:

Risposta (esempio con coniuge e figli):

Validazione delle risposte

Per validare l'autenticità di una risposta, si utilizza il relativo l'endpoint di validazione:

Richiesta:

Risposta:

Definizione OpenAPI

Accertamento Cittadinanza

get

fruizione e-service Accertamento Cittadinanza

Authorizations
AuthorizationstringRequired

Token JWT emesso dall'identity provider del consumer (ROLE_CPS_USER o ROLE_ADMIN). Vedi RFC8725.

Query parameters
fiscal_codestring · max: 255Optional

italian fiscal code

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
config_idstring · max: 255Optional

id that identify a specific configuration to call an e-service

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
formatstring · max: 255Optional

identify the output payload structure

Responses
200

OK

application/json
get/anpr/accertamento-cittadinanza
GET /anpr/accertamento-cittadinanza HTTP/1.1
Host: localhost:8000
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "data": {
    "cittadinanza": [
      {
        "istat_code": "text",
        "nationality": "text"
      }
    ]
  },
  "meta": {
    "call_url": "text",
    "config_id": "text",
    "created_at": "text",
    "fiscal_code": "text",
    "format": "text",
    "signature": "text",
    "source": "text",
    "validation_url": "text"
  }
}

Accertamento Cittadinanza

post

Validate Accertamento Cittadinanza payload

Authorizations
AuthorizationstringRequired

Token JWT emesso dall'identity provider del consumer (ROLE_CPS_USER o ROLE_ADMIN). Vedi RFC8725.

Query parameters
fiscal_codestring · max: 255Optional

italian fiscal code

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
config_idstring · max: 255Optional

id that identify a specific configuration to call an e-service

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
formatstring · max: 255Optional

identify the output payload structure

Body
Responses
200

OK

application/json
resultbooleanOptional
post/anpr/accertamento-cittadinanza
POST /anpr/accertamento-cittadinanza HTTP/1.1
Host: localhost:8000
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 232

{
  "Data": {
    "cittadinanza": [
      {
        "istat_code": "text",
        "nationality": "text"
      }
    ]
  },
  "Meta": {
    "call_url": "text",
    "config_id": "text",
    "created_at": "text",
    "fiscal_code": "text",
    "format": "text",
    "signature": "text",
    "source": "text",
    "validation_url": "text"
  }
}
{
  "result": true
}

Accertamento Generalità

get

fruizione e-service Accertamento Generalità

Authorizations
AuthorizationstringRequired

Token JWT emesso dall'identity provider del consumer (ROLE_CPS_USER o ROLE_ADMIN). Vedi RFC8725.

Query parameters
fiscal_codestring · max: 255Optional

italian fiscal code

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
config_idstring · max: 255Optional

id that identify a specific configuration to call an e-service

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
formatstring · max: 255Optional

identify the output payload structure

Responses
200

OK

application/json
get/anpr/accertamento-generalita
GET /anpr/accertamento-generalita HTTP/1.1
Host: localhost:8000
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "data": {
    "idOperazioneANPR": "text",
    "listaAnomalie": [
      {
        "codiceErroreAnomalia": "text",
        "testoErroreAnomalia": "text",
        "tipoErroreAnomalia": "text"
      }
    ],
    "listaSoggetti": {
      "datiSoggetto": [
        {
          "generalita": {
            "codiceFiscale": {
              "codFiscale": "text",
              "validitaCF": "text"
            },
            "cognome": "text",
            "dataNascita": "text",
            "idSchedaSoggettoANPR": "text",
            "luogoNascita": {
              "comune": {
                "codiceIstat": "text",
                "nomeComune": "text",
                "siglaProvinciaIstat": "text"
              },
              "localita": {
                "codiceStato": "text",
                "descrizioneLocalita": "text",
                "descrizioneStato": "text"
              }
            },
            "nome": "text",
            "sesso": "text",
            "soggettoAIRE": "text"
          },
          "identificativi": {
            "idANPR": "text"
          },
          "statoCivile": {
            "statoCivile": "text",
            "statoCivileND": "text"
          }
        }
      ]
    }
  },
  "meta": {
    "call_url": "text",
    "config_id": "text",
    "created_at": "text",
    "fiscal_code": "text",
    "format": "text",
    "signature": "text",
    "source": "text",
    "validation_url": "text"
  }
}

Accertamento Residenza

get

fruizione e-service Accertamento Residenza

Authorizations
AuthorizationstringRequired

Token JWT emesso dall'identity provider del consumer (ROLE_CPS_USER o ROLE_ADMIN). Vedi RFC8725.

Query parameters
fiscal_codestring · max: 255Optional

italian fiscal code

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
config_idstring · max: 255Optional

id that identify a specific configuration to call an e-service

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
formatstring · max: 255Optional

identify the output payload structure

Responses
200

OK

application/json
get/anpr/accertamento-residenza
GET /anpr/accertamento-residenza HTTP/1.1
Host: localhost:8000
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "data": {
    "address": "text",
    "address_data": {
      "cap": "text",
      "codice_comune": 1,
      "comune": "text",
      "luogo_istat": "text",
      "pr": "text"
    },
    "country": "text",
    "county": "text",
    "house_number": "text",
    "municipality": "text",
    "postal_code": "text"
  },
  "meta": {
    "call_url": "text",
    "config_id": "text",
    "created_at": "text",
    "fiscal_code": "text",
    "format": "text",
    "signature": "text",
    "source": "text",
    "validation_url": "text"
  }
}

Accertamento Residenza

post

Validate Accertamento Residenza payload

Authorizations
AuthorizationstringRequired

Token JWT emesso dall'identity provider del consumer (ROLE_CPS_USER o ROLE_ADMIN). Vedi RFC8725.

Query parameters
fiscal_codestring · max: 255Optional

italian fiscal code

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
config_idstring · max: 255Optional

id that identify a specific configuration to call an e-service

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
formatstring · max: 255Optional

identify the output payload structure

Body
Responses
200

OK

application/json
resultbooleanOptional
post/anpr/accertamento-residenza
POST /anpr/accertamento-residenza HTTP/1.1
Host: localhost:8000
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 384

{
  "Data": {
    "address": "text",
    "address_data": {
      "cap": "text",
      "codice_comune": 1,
      "comune": "text",
      "luogo_istat": "text",
      "pr": "text"
    },
    "country": "text",
    "county": "text",
    "house_number": "text",
    "municipality": "text",
    "postal_code": "text"
  },
  "Meta": {
    "call_url": "text",
    "config_id": "text",
    "created_at": "text",
    "fiscal_code": "text",
    "format": "text",
    "signature": "text",
    "source": "text",
    "validation_url": "text"
  }
}
{
  "result": true
}

Stato Famiglia

get

Retrieve Stato Famiglia for a specific fiscal code with specific configuration

Authorizations
AuthorizationstringRequired

Token JWT emesso dall'identity provider del consumer (ROLE_CPS_USER o ROLE_ADMIN). Vedi RFC8725.

Query parameters
fiscal_codestring · max: 255Optional

italian fiscal code

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
config_idstring · max: 255Optional

id that identify a specific configuration to call an e-service

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
formatstring · max: 255Optional

identify the output payload structure

Responses
200

OK

application/json
dataone ofOptional
or
or
or
get/anpr/stato-famiglia
GET /anpr/stato-famiglia HTTP/1.1
Host: localhost:8000
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "data": {
    "children": [
      {
        "birth_date": "text",
        "birth_place": "text",
        "family_name": "text",
        "gender": "text",
        "given_name": "text",
        "tax_id": "text"
      }
    ]
  },
  "meta": {
    "call_url": "text",
    "config_id": "text",
    "created_at": "text",
    "fiscal_code": "text",
    "format": "text",
    "signature": "text",
    "source": "text",
    "validation_url": "text"
  }
}

Stato famiglia

post

Validate Stato Famiglia payload

Authorizations
AuthorizationstringRequired

Token JWT emesso dall'identity provider del consumer (ROLE_CPS_USER o ROLE_ADMIN). Vedi RFC8725.

Query parameters
fiscal_codestring · max: 255Optional

italian fiscal code

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
config_idstring · max: 255Optional

id that identify a specific configuration to call an e-service

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
formatstring · max: 255Optional

identify the output payload structure

Body
DataanyOptional

data to validate. Can be different depending by the format param

Responses
200

OK

application/json
resultbooleanOptional
post/anpr/stato-famiglia
POST /anpr/stato-famiglia HTTP/1.1
Host: localhost:8000
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 175

{
  "Data": null,
  "Meta": {
    "call_url": "text",
    "config_id": "text",
    "created_at": "text",
    "fiscal_code": "text",
    "format": "text",
    "signature": "text",
    "source": "text",
    "validation_url": "text"
  }
}
{
  "result": true
}

Get e-services

get

Retrieve the list of e-services available through the service

Authorizations
AuthorizationstringRequired

Token JWT emesso dall'identity provider del consumer (ROLE_CPS_USER o ROLE_ADMIN). Vedi RFC8725.

Query parameters
offsetinteger · int64Optional

the starting point or the index from which the data should be retrieved

Example: 6
limitinteger · int64Optional

The limit parameter specifies the maximum number of items to be returned in a single page or request

sortstring · max: 255Optional

...

Responses
200

OK

application/json
get/e-services
GET /e-services HTTP/1.1
Host: localhost:8000
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "data": [
    {
      "aud_client_assertion": "text",
      "audience": "text",
      "endpoint": "text",
      "id": "text",
      "name": "text",
      "slug": "text",
      "version": "text"
    }
  ],
  "links": {
    "next": "text",
    "prev": "text",
    "self": "text"
  },
  "meta": {
    "page": {
      "limit": 1,
      "offset": 1,
      "sort": "text"
    },
    "total": 1
  }
}

Domicilio Digitale

get

fruizione e-service INAD domicilio digitale

Authorizations
AuthorizationstringRequired

Token JWT emesso dall'identity provider del consumer (ROLE_CPS_USER o ROLE_ADMIN). Vedi RFC8725.

Query parameters
fiscal_codestring · max: 255Optional

italian fiscal code

Example: RSSMRA85M05H501B
config_idstring · max: 255Optional

id that identify a specific configuration to call an e-service

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
formatstring · max: 255Optional

response format

Example: oc_pec
Responses
200

OK

application/json
get/inad/domicilio-digitale
GET /inad/domicilio-digitale HTTP/1.1
Host: localhost:8000
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "data": {
    "digital_addresses": [
      {
        "address": "text"
      }
    ]
  },
  "meta": {
    "call_url": "text",
    "config_id": "text",
    "created_at": "text",
    "fiscal_code": "text",
    "format": "text",
    "signature": "text",
    "source": "text",
    "validation_url": "text"
  }
}

ISEE

get

fruizione e-service attestazione ISEE

Authorizations
AuthorizationstringRequired

Token JWT emesso dall'identity provider del consumer (ROLE_CPS_USER o ROLE_ADMIN). Vedi RFC8725.

Query parameters
fiscal_codestring · max: 255Optional

italian fiscal code

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
fiscal_code_childstring · max: 255Optional

italian fiscal code of the minor (required when format=minorenne)

Example: RSSLCU15A01H501F
config_idstring · max: 255Optional

id that identify a specific configuration to call an e-service

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
formatstring · max: 255Optional

ISEE format to fetch

Example: ordinario
Responses
200

OK

application/json
get/inps/consultazione-attestazione-residenti-isee
GET /inps/consultazione-attestazione-residenti-isee HTTP/1.1
Host: localhost:8000
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "data": {
    "current": true,
    "dsu_protocol_number": "text",
    "fiscal_code_child": "text",
    "household": [
      {
        "fiscal_code": "text",
        "name": "text",
        "relationship_with_declarant": "text",
        "surname": "text"
      }
    ],
    "isee": 1,
    "isee_min": 1,
    "submission_date": "text",
    "valid_until": "text"
  },
  "meta": {
    "call_url": "text",
    "config_id": "text",
    "created_at": "text",
    "fiscal_code": "text",
    "format": "text",
    "signature": "text",
    "source": "text",
    "validation_url": "text"
  }
}

Consultazione Indicatore Nucleo ICEF

get

Fruizione e-service Consultazione Indicatore Nucleo ICEF via PDND

Authorizations
AuthorizationstringRequired

Token JWT emesso dall'identity provider del consumer (ROLE_CPS_USER o ROLE_ADMIN). Vedi RFC8725.

Query parameters
fiscal_codestring · max: 255Optional

codice fiscale italiano

Example: RSSMRA85M05H501B
reference_yearinteger · int64 · nullableOptional

anno di riferimento per il calcolo (opzionale, default: anno corrente - 2)

Example: 2023
config_idstring · max: 255Optional

ID della configurazione e-service

Example: 550e8400-e29b-41d4-a716-446655440000
formatstring · max: 255Optional

formato della risposta

Example: ordinario
Responses
200

OK

application/json
get/pat/consultazione-indicatore-nucleo-icef
GET /pat/consultazione-indicatore-nucleo-icef HTTP/1.1
Host: localhost:8000
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "data": {
    "household": [
      {
        "birth_date": "12/10/1997",
        "fiscal_code": "RSSMRA85M05H501B",
        "name": "Mario",
        "surname": "Rossi"
      }
    ],
    "icef": 1,
    "icef_protocol_number": "text",
    "reference_year": 1,
    "valid_from": "text",
    "valid_until": "text"
  },
  "meta": {
    "call_url": "text",
    "config_id": "text",
    "created_at": "text",
    "fiscal_code": "text",
    "format": "text",
    "signature": "text",
    "source": "text",
    "validation_url": "text"
  }
}

Status health-check

get

...

Authorizations
AuthorizationstringRequired

Token JWT emesso dall'identity provider del consumer (ROLE_CPS_USER o ROLE_ADMIN). Vedi RFC8725.

Responses
200

OK

application/json
checked_atstring · date-timeRequired

...

idstringRequired

...

statusstringRequired

...

get/status
GET /status HTTP/1.1
Host: localhost:8000
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "checked_at": "2026-01-01T00:00:00.000Z",
  "id": "text",
  "status": "text"
}

Save Tenant Configuration

post

...

Authorizations
AuthorizationstringRequired

Token JWT emesso dall'identity provider del consumer (ROLE_CPS_USER o ROLE_ADMIN). Vedi RFC8725.

Body
idstringOptional

...

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
ipa_codestringOptional

...

Example: 123456
namestringOptional

nome del tenant

Example: comune di Bugliano
Responses
201

Created

application/json
created_atstringOptional
idstringOptional
ipa_codestringOptional
namestringOptional
updated_atstringOptional
post/tenants
POST /tenants HTTP/1.1
Host: localhost:8000
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 93

{
  "id": "b212c4b4-db26-4404-8c7c-47dab99dd2e6",
  "ipa_code": "123456",
  "name": "comune di Bugliano"
}
{
  "created_at": "text",
  "id": "text",
  "ipa_code": "text",
  "name": "text",
  "updated_at": "text"
}

Get Tenant Configuration

get

...

Authorizations
AuthorizationstringRequired

Token JWT emesso dall'identity provider del consumer (ROLE_CPS_USER o ROLE_ADMIN). Vedi RFC8725.

Path parameters
tenant_idstring · max: 255Required

...

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
Responses
200

OK

application/json
created_atstringOptional
idstringOptional
ipa_codestringOptional
namestringOptional
updated_atstringOptional
get/tenants/{tenant_id}
GET /tenants/{tenant_id} HTTP/1.1
Host: localhost:8000
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "created_at": "text",
  "id": "text",
  "ipa_code": "text",
  "name": "text",
  "updated_at": "text"
}

Update tenant Configuration

put

...

Authorizations
AuthorizationstringRequired

Token JWT emesso dall'identity provider del consumer (ROLE_CPS_USER o ROLE_ADMIN). Vedi RFC8725.

Path parameters
tenant_idstring · max: 255Required

...

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
Body
ipa_codestringOptional

...

Example: 123456
namestringOptional

nome del tenant

Example: comune di Bugliano
Responses
200

OK

application/json
created_atstringOptional
idstringOptional
ipa_codestringOptional
namestringOptional
updated_atstringOptional
put/tenants/{tenant_id}
PUT /tenants/{tenant_id} HTTP/1.1
Host: localhost:8000
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 49

{
  "ipa_code": "123456",
  "name": "comune di Bugliano"
}
{
  "created_at": "text",
  "id": "text",
  "ipa_code": "text",
  "name": "text",
  "updated_at": "text"
}

delete Tenants Configuration

delete

...

Authorizations
AuthorizationstringRequired

Token JWT emesso dall'identity provider del consumer (ROLE_CPS_USER o ROLE_ADMIN). Vedi RFC8725.

Path parameters
tenant_idstring · max: 255Required

...

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
Responses
204

No Content

No content

delete/tenants/{tenant_id}
DELETE /tenants/{tenant_id} HTTP/1.1
Host: localhost:8000
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*

No content

Update tenant Configuration

patch

...

Authorizations
AuthorizationstringRequired

Token JWT emesso dall'identity provider del consumer (ROLE_CPS_USER o ROLE_ADMIN). Vedi RFC8725.

Path parameters
tenant_idstring · max: 255Required

...

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
Body
ipa_codestringOptional

...

Example: 123456
namestringOptional

nome del tenant

Example: comune di Bugliano
Responses
200

OK

application/json
created_atstringOptional
idstringOptional
ipa_codestringOptional
namestringOptional
updated_atstringOptional
patch/tenants/{tenant_id}
PATCH /tenants/{tenant_id} HTTP/1.1
Host: localhost:8000
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/merge-patch+json
Accept: */*
Content-Length: 49

{
  "ipa_code": "123456",
  "name": "comune di Bugliano"
}
{
  "created_at": "text",
  "id": "text",
  "ipa_code": "text",
  "name": "text",
  "updated_at": "text"
}

Get Clients list

get

Get Clients Configuration list for specific tenant

Authorizations
AuthorizationstringRequired

Token JWT emesso dall'identity provider del consumer (ROLE_CPS_USER o ROLE_ADMIN). Vedi RFC8725.

Path parameters
tenant_idstring · max: 255Required

...

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
Query parameters
limitinteger · int64Optional

The limit parameter specifies the maximum number of items to be returned in a single page or request

sortstring · max: 255Optional

...

offsetinteger · int64Optional

the starting point or the index from which the data should be retrieved

Example: 6
Responses
200

OK

application/json
get/tenants/{tenant_id}/clients
GET /tenants/{tenant_id}/clients HTTP/1.1
Host: localhost:8000
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "data": [
    {
      "created_at": "text",
      "env": "text",
      "id": "text",
      "key_id": "text",
      "key_pair_id": "text",
      "name": "text",
      "public_key": "text",
      "tenant_id": "text",
      "updated_at": "text"
    }
  ],
  "links": {
    "next": "text",
    "prev": "text",
    "self": "text"
  },
  "meta": {
    "page": {
      "limit": 1,
      "offset": 1,
      "sort": "text"
    },
    "total": 1
  }
}

store client pdnd Configuration

post

Save client pdnd Configuration of specific tenant

Authorizations
AuthorizationstringRequired

Token JWT emesso dall'identity provider del consumer (ROLE_CPS_USER o ROLE_ADMIN). Vedi RFC8725.

Path parameters
tenant_idstring · max: 255Required

...

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
Body
envstringOptional

ambiente del client

Example: collaudo
idstringOptional

...

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
key_idstringOptional

key id del client

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
key_pair_idstringOptional

id interno del materiale critografico

namestringOptional

nome del tenant

Example: comune di Bugliano
Responses
201

Created

application/json
created_atstringOptional
envstringOptional
idstringOptional
key_idstringOptional
key_pair_idstringOptional
namestringOptional
public_keystringOptional
tenant_idstringOptional
updated_atstringOptional
post/tenants/{tenant_id}/clients
POST /tenants/{tenant_id}/clients HTTP/1.1
Host: localhost:8000
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 159

{
  "env": "collaudo",
  "id": "b212c4b4-db26-4404-8c7c-47dab99dd2e6",
  "key_id": "b212c4b4-db26-4404-8c7c-47dab99dd2e6",
  "key_pair_id": "text",
  "name": "comune di Bugliano"
}
{
  "created_at": "text",
  "env": "text",
  "id": "text",
  "key_id": "text",
  "key_pair_id": "text",
  "name": "text",
  "public_key": "text",
  "tenant_id": "text",
  "updated_at": "text"
}

Get client pdnd Configuration

get

Get client pdnd Configuration of specific tenant

Authorizations
AuthorizationstringRequired

Token JWT emesso dall'identity provider del consumer (ROLE_CPS_USER o ROLE_ADMIN). Vedi RFC8725.

Path parameters
client_idstring · max: 255Required

...

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
tenant_idstring · max: 255Required

...

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
Responses
200

OK

application/json
created_atstringOptional
envstringOptional
idstringOptional
key_idstringOptional
key_pair_idstringOptional
namestringOptional
public_keystringOptional
tenant_idstringOptional
updated_atstringOptional
get/tenants/{tenant_id}/clients/{client_id}
GET /tenants/{tenant_id}/clients/{client_id} HTTP/1.1
Host: localhost:8000
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "created_at": "text",
  "env": "text",
  "id": "text",
  "key_id": "text",
  "key_pair_id": "text",
  "name": "text",
  "public_key": "text",
  "tenant_id": "text",
  "updated_at": "text"
}

Update client pdnd Configuration

put

Update client pdnd Configuration of specific tenant

Authorizations
AuthorizationstringRequired

Token JWT emesso dall'identity provider del consumer (ROLE_CPS_USER o ROLE_ADMIN). Vedi RFC8725.

Path parameters
tenant_idstring · max: 255Required

...

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
client_idstring · max: 255Required

...

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
Body
envstringOptional

ambiente del client

Example: collaudo
key_idstringOptional

key id del client

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
key_pair_idstringOptional

id interno del materiale critografico

namestringOptional

nome del tenant

Example: comune di Bugliano
Responses
200

OK

application/json
created_atstringOptional
envstringOptional
idstringOptional
key_idstringOptional
key_pair_idstringOptional
namestringOptional
public_keystringOptional
tenant_idstringOptional
updated_atstringOptional
put/tenants/{tenant_id}/clients/{client_id}
PUT /tenants/{tenant_id}/clients/{client_id} HTTP/1.1
Host: localhost:8000
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 115

{
  "env": "collaudo",
  "key_id": "b212c4b4-db26-4404-8c7c-47dab99dd2e6",
  "key_pair_id": "text",
  "name": "comune di Bugliano"
}
{
  "created_at": "text",
  "env": "text",
  "id": "text",
  "key_id": "text",
  "key_pair_id": "text",
  "name": "text",
  "public_key": "text",
  "tenant_id": "text",
  "updated_at": "text"
}

Delete client pdnd Configuration

delete

Delete client pdnd Configuration of specific tenant

Authorizations
AuthorizationstringRequired

Token JWT emesso dall'identity provider del consumer (ROLE_CPS_USER o ROLE_ADMIN). Vedi RFC8725.

Path parameters
client_idstring · max: 255Required

...

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
tenant_idstring · max: 255Required

...

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
Responses
204

No Content

No content

delete/tenants/{tenant_id}/clients/{client_id}
DELETE /tenants/{tenant_id}/clients/{client_id} HTTP/1.1
Host: localhost:8000
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*

No content

Update client pdnd Configuration

patch

Update client pdnd Configuration of specific tenant

Authorizations
AuthorizationstringRequired

Token JWT emesso dall'identity provider del consumer (ROLE_CPS_USER o ROLE_ADMIN). Vedi RFC8725.

Path parameters
tenant_idstring · max: 255Required

...

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
client_idstring · max: 255Required

...

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
Body
envstringOptional

ambiente del client

Example: collaudo
key_idstringOptional

key id del client

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
key_pair_idstringOptional

id interno del materiale critografico

namestringOptional

nome del tenant

Example: comune di Bugliano
Responses
200

OK

application/json
created_atstringOptional
envstringOptional
idstringOptional
key_idstringOptional
key_pair_idstringOptional
namestringOptional
public_keystringOptional
tenant_idstringOptional
updated_atstringOptional
patch/tenants/{tenant_id}/clients/{client_id}
PATCH /tenants/{tenant_id}/clients/{client_id} HTTP/1.1
Host: localhost:8000
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/merge-patch+json
Accept: */*
Content-Length: 115

{
  "env": "collaudo",
  "key_id": "b212c4b4-db26-4404-8c7c-47dab99dd2e6",
  "key_pair_id": "text",
  "name": "comune di Bugliano"
}
{
  "created_at": "text",
  "env": "text",
  "id": "text",
  "key_id": "text",
  "key_pair_id": "text",
  "name": "text",
  "public_key": "text",
  "tenant_id": "text",
  "updated_at": "text"
}

Get Config list of specific tenant filtered by client

get

...

Authorizations
AuthorizationstringRequired

Token JWT emesso dall'identity provider del consumer (ROLE_CPS_USER o ROLE_ADMIN). Vedi RFC8725.

Path parameters
tenant_idstring · max: 255Required

...

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
client_idstring · max: 255Required

...

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
Query parameters
limitinteger · int64Optional

The limit parameter specifies the maximum number of items to be returned in a single page or request

sortstring · max: 255Optional

...

offsetinteger · int64Optional

the starting point or the index from which the data should be retrieved

Example: 6
Responses
200

OK

application/json
get/tenants/{tenant_id}/clients/{client_id}/configs
GET /tenants/{tenant_id}/clients/{client_id}/configs HTTP/1.1
Host: localhost:8000
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "data": [
    {
      "call_url": "text",
      "client_id": "text",
      "created_at": "text",
      "eservice_id": "text",
      "id": "text",
      "is_active": true,
      "purpose_id": "text",
      "tenant_id": "text",
      "updated_at": "text"
    }
  ],
  "links": {
    "next": "text",
    "prev": "text",
    "self": "text"
  },
  "meta": {
    "page": {
      "limit": 1,
      "offset": 1,
      "sort": "text"
    },
    "total": 1
  }
}

Get Config list of specific tenant

get

...

Authorizations
AuthorizationstringRequired

Token JWT emesso dall'identity provider del consumer (ROLE_CPS_USER o ROLE_ADMIN). Vedi RFC8725.

Path parameters
tenant_idstring · max: 255Required

...

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
Query parameters
limitinteger · int64Optional

The limit parameter specifies the maximum number of items to be returned in a single page or request

sortstring · max: 255Optional

...

offsetinteger · int64Optional

the starting point or the index from which the data should be retrieved

Example: 6
Responses
200

OK

application/json
get/tenants/{tenant_id}/configs
GET /tenants/{tenant_id}/configs HTTP/1.1
Host: localhost:8000
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "data": [
    {
      "call_url": "text",
      "client_id": "text",
      "created_at": "text",
      "eservice_id": "text",
      "id": "text",
      "is_active": true,
      "purpose_id": "text",
      "tenant_id": "text",
      "updated_at": "text"
    }
  ],
  "links": {
    "next": "text",
    "prev": "text",
    "self": "text"
  },
  "meta": {
    "page": {
      "limit": 1,
      "offset": 1,
      "sort": "text"
    },
    "total": 1
  }
}

Save Service Configuration

post

...

Authorizations
AuthorizationstringRequired

Token JWT emesso dall'identity provider del consumer (ROLE_CPS_USER o ROLE_ADMIN). Vedi RFC8725.

Path parameters
tenant_idstring · max: 255Required

...

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
Body
client_idstringOptional

...

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
eservice_idstringOptional

...

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
is_activeboolean · nullableOptional

...

Example: false
purpose_idstringOptional

...

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
Responses
201

Created

application/json
call_urlstringOptional
client_idstringOptional
created_atstringOptional
eservice_idstringOptional
idstringOptional
is_activebooleanOptional
purpose_idstringOptional
tenant_idstringOptional
updated_atstringOptional
post/tenants/{tenant_id}/configs
POST /tenants/{tenant_id}/configs HTTP/1.1
Host: localhost:8000
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 175

{
  "client_id": "b212c4b4-db26-4404-8c7c-47dab99dd2e6",
  "eservice_id": "b212c4b4-db26-4404-8c7c-47dab99dd2e6",
  "is_active": false,
  "purpose_id": "b212c4b4-db26-4404-8c7c-47dab99dd2e6"
}
{
  "call_url": "text",
  "client_id": "text",
  "created_at": "text",
  "eservice_id": "text",
  "id": "text",
  "is_active": true,
  "purpose_id": "text",
  "tenant_id": "text",
  "updated_at": "text"
}

Get Config

get

Get config of specific tenant by id

Authorizations
AuthorizationstringRequired

Token JWT emesso dall'identity provider del consumer (ROLE_CPS_USER o ROLE_ADMIN). Vedi RFC8725.

Path parameters
config_idstring · max: 255Required

...

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
tenant_idstring · max: 255Required

...

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
Responses
200

OK

application/json
call_urlstringOptional
client_idstringOptional
created_atstringOptional
eservice_idstringOptional
idstringOptional
is_activebooleanOptional
purpose_idstringOptional
tenant_idstringOptional
updated_atstringOptional
get/tenants/{tenant_id}/configs/{config_id}
GET /tenants/{tenant_id}/configs/{config_id} HTTP/1.1
Host: localhost:8000
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "call_url": "text",
  "client_id": "text",
  "created_at": "text",
  "eservice_id": "text",
  "id": "text",
  "is_active": true,
  "purpose_id": "text",
  "tenant_id": "text",
  "updated_at": "text"
}

Update Config

put

Update config of specific tenant

Authorizations
AuthorizationstringRequired

Token JWT emesso dall'identity provider del consumer (ROLE_CPS_USER o ROLE_ADMIN). Vedi RFC8725.

Path parameters
config_idstring · max: 255Required

...

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
tenant_idstring · max: 255Required

...

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
Body
client_idstringOptional

...

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
eservice_idstringOptional

...

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
is_activeboolean · nullableOptional

...

Example: false
purpose_idstringOptional

...

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
Responses
200

OK

application/json
call_urlstringOptional
client_idstringOptional
created_atstringOptional
eservice_idstringOptional
idstringOptional
is_activebooleanOptional
purpose_idstringOptional
tenant_idstringOptional
updated_atstringOptional
put/tenants/{tenant_id}/configs/{config_id}
PUT /tenants/{tenant_id}/configs/{config_id} HTTP/1.1
Host: localhost:8000
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 175

{
  "client_id": "b212c4b4-db26-4404-8c7c-47dab99dd2e6",
  "eservice_id": "b212c4b4-db26-4404-8c7c-47dab99dd2e6",
  "is_active": false,
  "purpose_id": "b212c4b4-db26-4404-8c7c-47dab99dd2e6"
}
{
  "call_url": "text",
  "client_id": "text",
  "created_at": "text",
  "eservice_id": "text",
  "id": "text",
  "is_active": true,
  "purpose_id": "text",
  "tenant_id": "text",
  "updated_at": "text"
}

Disable Config

delete

Soft deleting config of specific tenant

Authorizations
AuthorizationstringRequired

Token JWT emesso dall'identity provider del consumer (ROLE_CPS_USER o ROLE_ADMIN). Vedi RFC8725.

Path parameters
config_idstring · max: 255Required

...

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
tenant_idstring · max: 255Required

...

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
Responses
204

No Content

No content

delete/tenants/{tenant_id}/configs/{config_id}
DELETE /tenants/{tenant_id}/configs/{config_id} HTTP/1.1
Host: localhost:8000
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*

No content

Patch Config

patch

Patch config of specific tenant

Authorizations
AuthorizationstringRequired

Token JWT emesso dall'identity provider del consumer (ROLE_CPS_USER o ROLE_ADMIN). Vedi RFC8725.

Path parameters
config_idstring · max: 255Required

...

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
tenant_idstring · max: 255Required

...

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
Body
client_idstringOptional

...

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
eservice_idstringOptional

...

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
is_activeboolean · nullableOptional

...

Example: false
purpose_idstringOptional

...

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
Responses
200

OK

application/json
call_urlstringOptional
client_idstringOptional
created_atstringOptional
eservice_idstringOptional
idstringOptional
is_activebooleanOptional
purpose_idstringOptional
tenant_idstringOptional
updated_atstringOptional
patch/tenants/{tenant_id}/configs/{config_id}
PATCH /tenants/{tenant_id}/configs/{config_id} HTTP/1.1
Host: localhost:8000
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/merge-patch+json
Accept: */*
Content-Length: 175

{
  "client_id": "b212c4b4-db26-4404-8c7c-47dab99dd2e6",
  "eservice_id": "b212c4b4-db26-4404-8c7c-47dab99dd2e6",
  "is_active": false,
  "purpose_id": "b212c4b4-db26-4404-8c7c-47dab99dd2e6"
}
{
  "call_url": "text",
  "client_id": "text",
  "created_at": "text",
  "eservice_id": "text",
  "id": "text",
  "is_active": true,
  "purpose_id": "text",
  "tenant_id": "text",
  "updated_at": "text"
}

Get Key

get

Get key unused key for a specific tenant

Authorizations
AuthorizationstringRequired

Token JWT emesso dall'identity provider del consumer (ROLE_CPS_USER o ROLE_ADMIN). Vedi RFC8725.

Path parameters
tenant_idstring · max: 255Required

...

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
Responses
200

OK

application/json
idstringOptional
public_keystringOptional
get/tenants/{tenant_id}/keys
GET /tenants/{tenant_id}/keys HTTP/1.1
Host: localhost:8000
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "id": "text",
  "public_key": "text"
}

Delete Key

delete

Delete key used by specific tenant

Authorizations
AuthorizationstringRequired

Token JWT emesso dall'identity provider del consumer (ROLE_CPS_USER o ROLE_ADMIN). Vedi RFC8725.

Path parameters
keys_idstring · max: 255Required

...

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
tenant_idstring · max: 255Required

...

Example: b212c4b4-db26-4404-8c7c-47dab99dd2e6
Responses
204

No Content

No content

delete/tenants/{tenant_id}/keys/{keys_id}
DELETE /tenants/{tenant_id}/keys/{keys_id} HTTP/1.1
Host: localhost:8000
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*

No content

Validation

post

Validate pdnd e-service response

Authorizations
AuthorizationstringRequired

Token JWT emesso dall'identity provider del consumer (ROLE_CPS_USER o ROLE_ADMIN). Vedi RFC8725.

Body
DataanyOptional

data to validate. Can be different depending by the format param

Responses
200

OK

application/json
resultbooleanOptional
post/validate
POST /validate HTTP/1.1
Host: localhost:8000
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 238

{
  "Data": null,
  "Meta": {
    "call_url": "text",
    "config_id": "b212c4b4-db26-4404-8c7c-47dab99dd2e6",
    "created_at": "text",
    "fiscal_code": "b212c4b4-db26-4404-8c7c-47dab99dd2e6",
    "format": "text",
    "signature": "...",
    "source": "text",
    "validation_url": "text"
  }
}
{
  "result": true
}

Ultimo aggiornamento

È stato utile?