Skip to main content

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:

Apertura richiesta ex-ante

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.