Emissione - API ex - ante
Le API correnti permettono di emettere un certificato in modalità ex-ante/direct: quindi occorre fornire in fase di emissione tutte le info relative all'identificazione del titolare e tutti i dati necessari per emettere il certificato.
Chiamata di apertura richiesta di certificato
Per aprire una richiesta di certificato occorre chiamare il servizio:
Il servizio può essere invocato solo con un token TSID di tipo API: operando quindi all'interno di un determinato cliente.
Nella chiamata occorre passare diverse informazioni:
{
"profileName": "string",
"rao": {
"certificateAlias": "string",
"alias": "string"
},
"organization": {
"name": "string",
"unit": "string",
"identifier": "string",
"country": "string",
"email": "string",
"processApplication": "string",
"responsibleDocument": "string",
"responsiblePosition": "string"
},
"owner": {
"alias": "string",
"firstName": "string",
"lastName": "string",
"sex": "string",
"birthCity": "string",
"birthCountry": "string",
"birthDate": "2023-07-02",
"birthDistrict": "string",
"city": "string",
"country": "string",
"district": "string",
"cap": "string",
"address": "string",
"email": "string",
"phone": "string",
"pec": "string",
"fiscalCode": "string",
"document": {
"issuer": "string",
"country": "string",
"number": "string",
"releaseDate": "2023-07-02",
"expiryDate": "2023-07-02",
"type": "IDC"
}
}
}
- profileName: è il nome del profilo di emissione. Contiene tutte le informazioni relative al tipo di certificato, all'identificazione richiesta, alla durata, al fatto che richieda o meno un pin etc...
- rao: è il Registration Authority Officer, cioè la persona che si assume la responsabilità di emettere il certificato. Normalmente è un rappresentate del cliente. E' necessatio fornire il suo alias(identificativo), mentre l'alias del certificato è opzionale. Ha senso solo se il RAO ha più di un certificato associato.
- owner: è il titolare del certificato
- organization: è l'organizzazione (azienda) per la quale il titolare lavora/opera.
Il servizio esegue una validazione molto stringente dei valori forniti:
| nome | obbligatorio | regex | condizioni | dipendenze |
| owner.firstName | x | [\w\s]{1,128} | ||
| owner.lastName | x | [\w\s]{1,128} | ||
| owner.sex | x | [FMfm]{1} | ||
| owner.birthCity | x | |||
| owner.birthCountry | x | iso alpha 2 | ||
| owner.birthdate | x | yyyy-MM-dd | >=18 && <=120 anni | |
| owner.birthDistrict | x | |||
| owner.city | x | |||
| owner.country | x | iso alpha 2 | ||
| owner.district | x | |||
| owner.cap | x | [0-9]{3,10} | ||
| owner.address | x | [\w\s]{1,128} | ||
| owner.email | x | mail valida | ||
| owner.pec | mail valida | |||
| owner.phone | x | [+0-9]{8,15} | ||
| owner.fiscalNumber | codice fiscale valido e ricavabile dai valori precedenti | |||
| document.issuer | x | [\w\s]{1,128} | ||
| document.country | x | iso alpha 2 | ||
| document.number | x | si applicano reg exp relative al tipo di documento | ||
| document.releaseDate | x | yyyy-MM-dd | <=oggi | |
| document.expiryDate | x | yyyy-MM-dd | >oggi | |
| document.type | x | IDC|PAS|DLC|NLC|PBO|TPL|GUL|IDB | Se fiscalNumber non fornito il type potrà essere solo PAS | |
| organization.name | x | [\w\s]{1,128} | obbligatorio solo per certificati di tipo SEAL | |
| organization.unit | [\w\s]{1,128} | |||
| organization.identifier | x | [\w\s]{1,128} | obbligatorio solo per certificati di tipo SEAL | |
| organization.country | x | iso alpha 2 | obbligatorio solo per certificati di tipo SEAL | |
| organization.email | x | mail valida | obbligatorio solo per certificati di tipo SEAL | |
| organization.processApplication | x | [\w\s]{1,128} | obbligatorio solo per certificati di tipo SEAL | |
| organization.responsibleDocument | ||||
| organization.responsiblePosition | [\w\s]{1,128} |
In risposta il servizio ritorna:
{
"requestId": "64a0895e8620872ba1be33e7",
"document": "JVBERi0xLjYNJeLjz9MNCjQ5NiAwIG9iag0.......2SBV65FF6ic7HWtBZlDsR5T5FuYsFKZgHdlWwD/Rc8BLt/wGjScohDQplbmRzdHJlYW0KZW5kb2JqCnN0YXJ0eHJlZgoyNzg1NTMKJSVFT0YK"
}
dove:
- requestId è l'id della richiesta appena aperta
- document è il pdf del modulo di richiesta opportunamente fillato in base 64. Tale modulo deve essere preso in visione dal titolare.