---
seo_title: API Conversione Formati Dati: JSON, XML, YAML, CSV | EnConvert
meta_desc: Converti JSON, XML, YAML, CSV, TOML e Markdown con l'API REST dati di EnConvert. Undici endpoint POST con risultati diretti o URL presigned.
keywords: api conversione formati dati, api convertitore json xml yaml csv, api json in xml, api csv in json, api yaml in json, api json in toml, api markdown in html, api conversione dati strutturati
---

# API di Conversione Formati Dati

Gli endpoint Data Formats convertono file di dati strutturati tra JSON, XML, YAML, CSV e TOML, oltre a renderizzare Markdown in HTML completamente stilizzato. Ogni conversione è una singola richiesta `POST` con un upload di file `multipart/form-data`: invii il tuo file e ricevi indietro il risultato convertito come byte grezzi, oppure richiedi invece un URL di download presigned. Tutti e undici gli endpoint seguono la stessa forma di richiesta, autenticazione e modello di errore, quindi integrare un secondo formato dopo il primo richiede pochi minuti.

## Conversioni supportate

| Conversione | Endpoint | Descrizione |
|------------|----------|-------------|
| [JSON in XML](/it/docs/endpoints/convert/data-formats/json-to-xml.md) | `POST /v1/convert/json-to-xml` | Converte JSON in XML con gli oggetti come figli di `<root>`, gli array racchiusi in elementi `<item>` e gli scalari in `<value>`. |
| [XML in JSON](/it/docs/endpoints/convert/data-formats/xml-to-json.md) | `POST /v1/convert/xml-to-json` | Converte XML in JSON, mappando gli attributi in chiavi con prefisso `@`, il contenuto testuale in `#text` e gli elementi fratelli ripetuti in array. |
| [JSON in YAML](/it/docs/endpoints/convert/data-formats/json-to-yaml.md) | `POST /v1/convert/json-to-yaml` | Mappatura diretta in YAML block-style leggibile, con ordine delle chiavi e unicode preservati. |
| [YAML in JSON](/it/docs/endpoints/convert/data-formats/yaml-to-json.md) | `POST /v1/convert/yaml-to-json` | Analizza in modo sicuro file `.yaml` o `.yml` (nessuna esecuzione di codice arbitrario) in JSON con indentazione a 2 spazi e formattazione leggibile. |
| [JSON in CSV](/it/docs/endpoints/convert/data-formats/json-to-csv.md) | `POST /v1/convert/json-to-csv` | Converte un array JSON di oggetti in CSV delimitato da virgole, con intestazioni prese dalle chiavi del primo oggetto. |
| [CSV in JSON](/it/docs/endpoints/convert/data-formats/csv-to-json.md) | `POST /v1/convert/csv-to-json` | Converte CSV in un array JSON in cui la riga di intestazione diventa le chiavi e ogni valore resta una stringa (nessuna inferenza di tipo). |
| [JSON in TOML](/it/docs/endpoints/convert/data-formats/json-to-toml.md) | `POST /v1/convert/json-to-toml` | Converte JSON in TOML, racchiudendo gli array sotto una chiave `items` e gli scalari sotto `value`; i valori `null` vengono rifiutati con un 400. |
| [TOML in JSON](/it/docs/endpoints/convert/data-formats/toml-to-json.md) | `POST /v1/convert/toml-to-json` | Converte tabelle e array TOML in JSON con formattazione leggibile, serializzando i valori datetime come stringhe ISO-8601. |
| [CSV in XML](/it/docs/endpoints/convert/data-formats/csv-to-xml.md) | `POST /v1/convert/csv-to-xml` | Converte CSV in XML con le intestazioni di colonna come nomi di tag elemento e ogni riga come un `<item>` dentro `<root>`. |
| [XML in CSV](/it/docs/endpoints/convert/data-formats/xml-to-csv.md) | `POST /v1/convert/xml-to-csv` | Appiattisce XML tabellare (elementi fratelli ripetuti con campi coerenti) in righe CSV delimitate da virgole. |
| [Markdown in HTML](/it/docs/endpoints/convert/data-formats/markdown-to-html.md) | `POST /v1/convert/markdown-to-html` | Renderizza file `.md` o `.markdown` in una pagina HTML completa e autonoma con CSS incorporato, tabelle, blocchi di codice, supporto TOC e modalità scura. |

## Convenzioni condivise

- **Autenticazione:** ogni endpoint accetta sia una chiave API privata tramite l'header `X-API-Key` sia un token JWT `Authorization: Bearer` ottenuto da una chiave pubblica. Consulta [Autenticazione](/it/docs/authentication.md).
- **Forma della richiesta:** tutte le conversioni sono POST sincroni `multipart/form-data` con un campo `file` obbligatorio più i parametri opzionali `output_filename` e `direct_download`. Consulta [Job sync e async](/it/docs/concepts/sync-and-async.md).
- **Risposte:** per impostazione predefinita (`direct_download=true`) il file convertito viene restituito come byte grezzi; con `direct_download=false` ricevi metadati JSON contenenti `presigned_url`, `object_key`, `filename`, `file_size` e `conversion_time_seconds`.
- **Requisiti di input:** tutti gli input devono essere codificati in UTF-8 e corrispondere all'estensione di file attesa; la dimensione massima del file dipende dal piano (piano Founding: 5 MB).
- **Errori:** file non validi o conversioni fallite restituiscono `400`, credenziali mancanti o non valide `401`, limiti di piano superati `402`, e file troppo grandi `413`. Consulta [Codici di Errore](/it/docs/reference/errors.md).

## Domande frequenti

### Come autentico le richieste agli endpoint di conversione dei formati dati?

Tutti e undici gli endpoint accettano sia una chiave API privata nell'header `X-API-Key` sia un token JWT `Authorization: Bearer` ottenuto da una chiave pubblica. Le stesse credenziali funzionano per ogni conversione. Consulta [Autenticazione](/it/docs/authentication.md) per i dettagli.

### Posso ottenere un URL di download invece dei byte del file convertito?

Sì. Ogni endpoint restituisce per impostazione predefinita il file convertito come byte grezzi; imposta `direct_download=false` per ricevere invece metadati JSON con `presigned_url`, `object_key`, `filename`, `file_size` e `conversion_time_seconds`.

### Quali limiti di dimensione file e di input si applicano alle conversioni di formati dati?

La dimensione massima del file dipende dal piano (piano Founding: 5 MB), e i file che superano il limite del tuo piano restituiscono `413 Payload Too Large`. Tutti gli input devono essere codificati in UTF-8, e anche i conteggi mensili di conversione dipendono dal piano: superarli restituisce `402 Payment Required`.
