# Signer Read

API di lettura per *Ts Digital Signature per le operazioni riguardanti i firmatari e i certificati.* [Swagger](https://ts-signer-read-api-test.agyo.io/api/swagger-ui.html#/)

#### Header

Gli header richiesti dalla chiamata sono gli [header standard di TSDigital](https://digital-docs.ts-paas.com/books/integrazione-e-utilizzo-api-tsdigital/page/linee-guida-generali-api-ts-digital "Linee guida Generali API TS-Digital").

Il `Content-Type` deve essere `application/json`

<span style="color: #ff0000;">**In tutte le chiamate dove è richiesto <span style="text-decoration: underline;">ServiceName</span> non impostare nulla a meno che si vuole utilizzare le api per il servizio adempimenti.** </span>

####  

#### Descrizione API

---

##### **SIGNER**

---

**Signer search**

<p class="callout info"><span class="opblock-summary-method">POST </span><span class="opblock-summary-path" data-path="/v1/rest/signers/search">[​/v1​/rest​/signers​/search](https://ts-signer-read-api-test.agyo.io/api/swagger-ui/index.html?configUrl=/api/api-docs/swagger-config#/signer-controller/getSignersPage)</span></p>

Permette di recuperare i firmatari di una data azienda

**Query Params**

<div id="bkmrk-page-numero-di-pagin">- `page` numero di pagina
- `itemId` identificativo dell'azienda
- `size` numero di elementi per pagina
- `fullText` permette di fare una ricerca filtrata per alcuni dati dei firmatari
- `certs` permette di filtrare per tipologia di firma, i valori accettati sono **FRM**, **FSM**, **FEA**, **FES** (firma elettronica automatica, firma elettronica remota, firma elettronica avanzata ,firma elettronica semplice)
- `strictCerts` permette di filtrare solamente le tipologie di firma attive
- <span style="color: #ff0000;">`serviceName`</span> <span style="color: #ff0000;">controllare le info su questo campo in cima al documento</span>

</div>La ricerca fullText viene fatta su questi dati dei firmatari

- `firstName`
- `lastName`
- `fiscalCode`
- `ownerTaxId` codice fiscale dell'azienda su cui il firmatario e stato assegnato
- `ownerVatNumber` partita iva dell'azienda su cui il firmatario e stato assegnato
- `ownerDescription` ragione sociale dell'azienda su cui il firmatario e stato assegnato

**Response**

```JavaScript
{
   "page":0,
   "itemsNumberPerPage":2,
   "totalItems":2,
   "totalPages":1,
   "signers":[
      {
         "id":219,
         "fiscalCode":"MNNRFL96D21I829W",
         "firstName":"Raffaele",
         "lastName":"Mainini",
         "sex":"M",
         "email":"rmainini@mondora.com",
         "cellNumber":"",
         "ownerDescription":null,
         "enabled":true,
         "certificates":[
            {
               "id":225,
               "type":"FSM",
               "status":"SUBMISSION_SUCCESS"
            },
            {
               "id":226,
               "type":"FRM",
               "certificateSn":"585",
               "certificateId":"10846",
               "enabled":true,
               "status":"FINAL_SUCCESS",
               "createBy":"rmainini@mondora.com"
            },
            {
               "id":60,
               "type":"FES",
               "enabled":true,
               "status":"ACTIVE"
            },
            {
               "id":81,
               "type":"FEA",
               "enabled":false,
               "documentHubId":"5e9847700e20480006394a98",
               "status":"INIT"
            }
         ],
         "_links":{
            "self":{
               "href":"https://ts-signer-read-api-test.agyo.io/api/v1/rest/signers/219"
            }
         }
      },
      {
         "id":247,
         "fiscalCode":"PNNGNN80A01I829P",
         "firstName":"Giovanni",
         "lastName":"Panni",
         "sex":"M",
         "email":"rmainini@mondora.com",
         "cellNumber":"",
         "ownerDescription":null,
         "enabled":true,
         "certificates":[

         ],
         "_links":{
            "self":{
               "href":"https://ts-signer-read-api-test.agyo.io/api/v1/rest/signers/247"
            }
         }
      }
   ]
}
```

---

**Retrive Signer**

<p class="callout info"><span class="opblock-summary-method">\[GET\] </span><span class="opblock-summary-path" data-path="/v1/rest/signers/{id}">[​/v1​/rest​/signers​/{id}](https://ts-signer-read-api-test.agyo.io/api/swagger-ui/index.html?configUrl=/api/api-docs/swagger-config#/Signer/getSigner)</span></p>

<span style="background-color: #ffffff; color: #444444;">Permette di recuperare tutte le info riguardanti uno specifico firmatario</span>

<div id="bkmrk-info"><div>**Info**</div></div>- `id` identificativo del firmatario

**Response**

```JavaScript
{
   "id":219,
   "fiscalCode":"MNNRFL96D21I829W",
   "firstName":"Raffaele",
   "lastName":"Mainini",
   "fiscalCountry":"IT",
   "sex":"M",
   "birthCity":"Sondrio",
   "birthCountry":"IT",
   "birthDate":"1996-04-21T00:00:00.000+0000",
   "birthDistrict":"SO",
   "city":"Sondrio",
   "country":"IT",
   "district":null,
   "cap":"23010",
   "address":"Via Fasulla",
   "email":"rmainini@mondora.com",
   "cellNumber":"",
   "ownerTaxId":null,
   "ownerVatNumber":null,
   "ownerDescription":null,
   "documentIssuer":"me",
   "documentNumber":"1234",
   "documentEndDate":"2020-04-30T00:00:00.000+0000",
   "documentType":"Carta d'identità",
   "_links":{
      "self":{
         "href":"https://ts-signer-read-api-test.agyo.io/api/v1/rest/signers/219"
      }
   }
}
```

---

**Retrive If Signer Exist into Item**

<p class="callout info"><span class="opblock-summary-method">\[GET\] </span><span class="opblock-summary-path" data-path="/v1/rest/signers/searchByFiscalCode">[​/v1​/rest​/signers​/searchByFiscalCode](https://ts-signer-read-api-test.agyo.io/api/swagger-ui/index.html?configUrl=/api/api-docs/swagger-config#/Signer/searchByFiscalCode_1)</span></p>

Permette di verificare se un determinato firmatario esiste già per un'azienda

**Query Params**

<div id="bkmrk-itemid%C2%A0-identificati"><div><div><div><div>- `itemId` identificativo dell'azienda
- `fiscalCode` codice fiscale del firmatario che si sta controllando
- <span style="color: #ff0000;">`serviceName`</span> <span style="color: #ff0000;">controllare le info su questo campo in cima al documento</span>

</div></div></div></div></div>---

##### **UTILS**

---

**Download Filled/Signed Document**

<p class="callout info"><span class="opblock-summary-method">\[GET</span><span class="opblock-summary-path" data-path="/v1/rest/utils/download/document">[\] ​/v1​/rest​/utils​/download​/document](https://ts-signer-read-api-test.agyo.io/api/swagger-ui/index.html?configUrl=/api/api-docs/swagger-config#/Utils/downloadFilledDocument)</span></p>

<div id="bkmrk-permette-di-scaricar">Permette di scaricare il contratto per i certificati FRM/FSM (Firma elettronica qualificata automatica/Firma elettronica qualificata remota) sia solamente pre compilato sia quello pre compilato e firmato</div>  
**Query Params**

<div id="bkmrk-signerid%C2%A0-identifica"><div><div><div><div>- `signerId` identificativo del firmatario
- `certType` tipologia di certificato **FRM** o **FSM**
- `documentType` tipo documento **FILLED** o **SIGNED**

</div></div></div></div></div>---

**Generate and return base64 FEA precompiled module**

<p class="callout info"><span class="opblock-summary-method">\[GET\]</span><span class="opblock-summary-path" data-path="/v1/rest/utils/generate/fea/module"> [​/v1​/rest​/utils​/generate​/fea​/module](https://ts-signer-read-api-test.agyo.io/api/swagger-ui/index.html?configUrl=/api/api-docs/swagger-config#/Utils/downloadFilledFeaModule)</span></p>

<span class="opblock-summary-path" data-path="/v1/rest/utils/generate/fea/module">Permette di generare il contratto del modulo di adesione FEA precompilato</span>

**Query Params**

<div id="bkmrk-signerid%C2%A0-identifica-0"><div><div>- `signerId` identificativo del firmatario

---

</div></div></div>##### **CERTIFICATE**

<div id="bkmrk-retrive-slot-usage"><div>---

**Retrive Slot Usage**</div><div></div></div><p class="callout info"><span class="opblock-summary-method">\[GET\] </span><span class="opblock-summary-path" data-path="/v1/rest/certificates/slotUsage/{itemId}">[​/v1​/rest​/certificates​/slotUsage​/{itemId}](https://ts-signer-read-api-test.agyo.io/api/swagger-ui/index.html?configUrl=/api/api-docs/swagger-config#/Certificate/getSlotUsage)</span></p>

Permette di recuperare il conteggio degli slot per i certificati di un'azienda

  
**Query Params**

<div id="bkmrk-itemid%C2%A0-identificati-0"><div><div>- `itemId` identificativo dell'azienda

</div></div></div>**Response**

<div id="bkmrk-%7B-%22totalfrm%22%3A3%2C-%22fre"><div>```JavaScript
{<br></br>   "totalFRM":3,<br></br>   "freeFRM":2,<br></br>   "totalFSM":3,<br></br>   "freeFSM":3<br></br>}
```

</div></div>---