> ## Documentation Index
> Fetch the complete documentation index at: https://docs.squarecloud.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Usare pydantic

> Scopri come usare pydantic per la validazione dei dati.

## Cos'è pydantic?

Pydantic è una libreria Python fantastica e moderna per la validazione dei dati tramite
annotazioni di tipo. Applica vincoli di tipo, garantendo la coerenza dei dati e
fornendo messaggi di errore chiari quando la validazione fallisce. Pydantic è al tempo stesso
potente e facile da usare, il che la rende una scelta popolare tra gli sviluppatori che lavorano
con dati strutturati.

## Installazione

Per usare Pydantic con questo SDK, devi installare l'SDK con la dipendenza extra
pydantic, dato che non è inclusa per impostazione predefinita:

```bash theme={null}
pip install "squarecloud[pydantic]"
```

## Funzionalità

In questo SDK, Pydantic viene usato per convertire un parametro extra da un dizionario
in un modello Pydantic, consentendo una validazione e una manipolazione dei dati più
robuste.

```python theme={null}
import squarecloud as square
from squarecloud import Endpoint
from pydantic import BaseModel

class Animal(BaseModel):
    name: str
    age: int

@client.on_request(Endpoint.status())
async def get_extra_param(before, after, extra: Animal):
    print(extra.name)
    print(extra.age)

async def main():
    client = square.Client('your api key')
    await client.app_status('application_id', extra={'name': 'felix', 'age': 3})
```

In questo esempio, la classe Animal è un modello Pydantic con due
campi: name e age. Quando viene effettuata una richiesta all'endpoint status,
il parametro extra viene automaticamente convertito in un'istanza di Animal, permettendoti
di accedere e validare facilmente i dati.
