# Scrittura del logo aziendale

Gli endpoint di scrittura e cancellazione per il logo aziendale si trovano nella "write" dell'anagrafica:

ref: [https://digital-docs.ts-paas.com/books/anagrafica/page/endpoint-di-scrittura](https://registry-write-test.agyo.io/swagger-ui/index.html?configUrl=/v3/api-docs/swagger-config#/API%20v3/uploadLogo)

##### API Base Url:

dev: [https://registry-write-dev.agyo.io/api](https://registry-write-test.agyo.io/swagger-ui.html)

test: [https://registry-write-test.agyo.io/api](https://registry-write-test.agyo.io/swagger-ui.html)

prod: [https://registry-write.agyo.io/api](https://registry-write-test.agyo.io/swagger-ui.html)

##### Swagger:

[https://registry-write-test.agyo.io/swagger-ui.html](https://registry-write-test.agyo.io/swagger-ui.html)

In particolare:

### Per il **CARICAMENTO** del logo, è neccesario chiamare la **POST**:

[https://registry-write-test.agyo.io/swagger-ui/index.html?configUrl=/v3/api-docs/swagger-config#/API%20v3/uploadLogo](https://registry-write-test.agyo.io/swagger-ui/index.html?configUrl=/v3/api-docs/swagger-config#/API%20v3/uploadLogo)

Essendo una API V3, nel path andrà inserito l'UUID dell'azienda per la quale caricare il logo.

####  

#### 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`

####  

#### Body

Il body della richiesta deve avere il seguente formato:

<div data-lang="body-param__example microlight" id="bkmrk-%7B-%22base64%22%3A-%22string%22"><div><div></div><div>```
`{<br></br>	"base64": "string"<br></br>}`
```

<div></div><div><div></div></div></div></div></div>- Il logo può essere di qualsiasi estensione purchè sia di tipo immagine.
- La dimensione del logo dovrà essere inferiore a 1MB.
- Nel caso in cui l'azienda abbia già caricato un logo, andando ad eseguire un nuovo caricamento, quello vecchio verrà sovrascritto.

####  

#### Risposte

L'operazione è avvenuta con successo se e solo se il codice HTTP della risposta è `202`. Ogni altro codice di risposta indica uno stato di errore.

##### HTTP 202

L'operazione è avvenuta con successo e il processo di creazione è stato preso in carico.

##### HTTP 400

Uno o più parametri forniti nella richiesta sono errati, o mancano dei parametri obbligatori.

##### HTTP 401

Il token autorizzativo è scaduto, invalido o non è stato specificato.

##### HTTP 403

Il token autorizzativo fornito è valido, ma l'utente non ha i permessi necessari a creare un item

<span style="color: #222222; font-size: 1.4em; font-weight: 400;">HTTP 500</span>

Il server ha riscontrato un errore inaspettato nell'esecuzione della richiesta di creazione item

##### HTTP 502

Il server ha riscontrato un errore inaspettato nel comunicare con un servizio dal quale dipende per poter completare il processo (ad esempio, il servizio di auth non risulta essere disponibile)

Tutte le risposte d'errore condividono il seguente formato per il body di risposta:

```JSON
{
  "code": "string",
  "message": "string",
  "status": "string",
  "subErrors": [
    {}
  ],
  "timestamp": "dd-MM-yyyy HH:mm:ss"
}
```

- **code:** corrisponde al codice d'errore HTTP ritornato (es: `500`)
- **message:** messaggio d'errore (es: `Errore interno del server`)
- **status:** descrizione a parole del codice d'errore HTTP (es: `Internal Server Error`)
- **subErrors:** eventuali errori innestati in quello ritornato
- **timestamp:** data ed ora di ritorno dell'errore

###  

###  

### Per la **CANCELLAZIONE** del logo, è neccesario chiamare la **DELETE**:

[https://registry-write-test.agyo.io/swagger-ui/index.html?configUrl=/v3/api-docs/swagger-config#/API%20v3/deleteLogo](https://registry-write-test.agyo.io/swagger-ui/index.html?configUrl=/v3/api-docs/swagger-config#/API%20v3/deleteLogo)

In questo caso basterà indicare l'UUID dell'azienda nel path per procedere alla cancellazione del logo.

####  

#### 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```

####  

#### Risposte

L'operazione è avvenuta con successo se e solo se il codice HTTP della risposta è `202`. Ogni altro codice di risposta indica uno stato di errore.

##### HTTP 202

L'operazione è avvenuta con successo e il processo di creazione è stato preso in carico.

##### HTTP 400

Uno o più parametri forniti nella richiesta sono errati, o mancano dei parametri obbligatori.

##### HTTP 401

Il token autorizzativo è scaduto, invalido o non è stato specificato.

##### HTTP 403

Il token autorizzativo fornito è valido, ma l'utente non ha i permessi necessari a creare un item

<span style="color: #222222; font-size: 1.4em; font-weight: 400;">HTTP 500</span>

Il server ha riscontrato un errore inaspettato nell'esecuzione della richiesta di creazione item

##### HTTP 502

Il server ha riscontrato un errore inaspettato nel comunicare con un servizio dal quale dipende per poter completare il processo (ad esempio, il servizio di auth non risulta essere disponibile)

Tutte le risposte d'errore condividono il seguente formato per il body di risposta:

```JSON
{
  "code": "string",
  "message": "string",
  "status": "string",
  "subErrors": [
    {}
  ],
  "timestamp": "dd-MM-yyyy HH:mm:ss"
}
```

- **code:** corrisponde al codice d'errore HTTP ritornato (es: `500`)
- **message:** messaggio d'errore (es: `Errore interno del server`)
- **status:** descrizione a parole del codice d'errore HTTP (es: `Internal Server Error`)
- **subErrors:** eventuali errori innestati in quello ritornato
- **timestamp:** data ed ora di ritorno dell'errore

``