---
seo_title: Matrice de conversion : toutes les paires de formats | EnConvert
meta_desc: Tous les formats d'entrée acceptés par EnConvert et toutes les sorties produites, dans un tableau unique avec le chemin d'endpoint et la doc de chaque paire.
keywords: matrice de conversion, liste des endpoints de conversion, formats pris en charge api, api pour convertir un fichier, quelle api pour convertir un fichier en pdf, endpoints de conversion d'images, api conversion de documents en pdf, api conversion json xml csv
---

# Matrice de conversion

Les 51 endpoints de conversion réunis au même endroit : ce que chacun accepte en entrée, ce qu'il renvoie, et où se trouve sa page de référence. Repérez votre entrée dans la colonne de gauche, copiez le chemin au centre, puis cliquez pour obtenir les paramètres et des exemples de code. Une paire qui ne figure pas dans ces tableaux n'est pas prise en charge.

<div class="alert alert-info">
<strong>Deux endpoints acceptent de nombreuses entrées à la fois.</strong> <code>anything-to-pdf</code> accepte 36 extensions de fichier et renvoie toujours un PDF ; <code>anything-to-markdown</code> en accepte 22 et renvoie toujours un seul fichier <code>.md</code> en UTF-8.
Tous deux ne figurent qu'une fois dans le tableau Documents ci-dessous, plutôt que d'être répétés pour chaque type d'entrée qu'ils couvrent.
</div>

## Pages web

Cinq endpoints qui effectuent le rendu d'une URL en direct dans un vrai navigateur. Ils prennent un corps JSON, pas un envoi de fichier.

| Entrée | Sortie | Endpoint | Doc |
|-------|--------|----------|------|
| URL | PDF | `POST /v1/convert/url-to-pdf` | [url-to-pdf](/fr/docs/endpoints/convert/web-pages/url-to-pdf.md) |
| URL | Capture d'écran PNG | `POST /v1/convert/url-to-screenshot` | [url-to-screenshot](/fr/docs/endpoints/convert/web-pages/url-to-screenshot.md) |
| URL | Markdown | `POST /v1/convert/url-to-markdown` | [url-to-markdown](/fr/docs/endpoints/convert/web-pages/url-to-markdown.md) |
| Site web (crawlé ou depuis `sitemap.xml`) | ZIP de PDF | `POST /v1/convert/website-to-pdf` | [website-to-pdf](/fr/docs/endpoints/convert/web-pages/website-to-pdf.md) |
| Site web (crawlé ou depuis `sitemap.xml`) | ZIP de PNG | `POST /v1/convert/website-to-screenshot` | [website-to-screenshot](/fr/docs/endpoints/convert/web-pages/website-to-screenshot.md) |

Les trois endpoints `url-to-*` acceptent une chaîne d'URL unique ou une liste, et s'exécutent de façon synchrone pour une seule URL. Les deux endpoints `website-to-*` découvrent eux-mêmes les pages et sont exclusivement asynchrones : ils répondent toujours `202` avec un `batch_id` et un `output_format` valant `zip`. Les captures d'écran sont au format PNG ; il n'existe pas d'option de capture JPEG.

## Documents

Treize endpoints, chacun étant un envoi `multipart/form-data` avec le document dans le champ `file`.

| Entrée | Sortie | Endpoint | Doc |
|-------|--------|----------|------|
| 36 types de fichiers (Office, iWork, OpenDocument, RTF, CSV, HTML, Markdown, texte, EPUB, images, SVG, PDF) | PDF | `POST /v1/convert/anything-to-pdf` | [anything-to-pdf](/fr/docs/endpoints/convert/documents/anything-to-pdf.md) |
| 22 types de fichiers (PDF, Office, OpenDocument, RTF, CSV, HTML, Markdown, texte, EPUB) | Markdown | `POST /v1/convert/anything-to-markdown` | [anything-to-markdown](/fr/docs/endpoints/convert/documents/anything-to-markdown.md) |
| HTML (`.html`, `.htm`) | PDF | `POST /v1/convert/html-to-pdf` | [html-to-pdf](/fr/docs/endpoints/convert/documents/html-to-pdf.md) |
| Markdown (`.md`, `.markdown`) | PDF | `POST /v1/convert/markdown-to-pdf` | [markdown-to-pdf](/fr/docs/endpoints/convert/documents/markdown-to-pdf.md) |
| Word (`.doc`, `.docx`) | PDF | `POST /v1/convert/doc-to-pdf` | [doc-to-pdf](/fr/docs/endpoints/convert/documents/doc-to-pdf.md) |
| Excel (`.xls`, `.xlsx`) | PDF | `POST /v1/convert/excel-to-pdf` | [excel-to-pdf](/fr/docs/endpoints/convert/documents/excel-to-pdf.md) |
| PowerPoint (`.ppt`, `.pptx`) | PDF | `POST /v1/convert/ppt-to-pdf` | [ppt-to-pdf](/fr/docs/endpoints/convert/documents/ppt-to-pdf.md) |
| Apple Pages (`.pages`) | PDF | `POST /v1/convert/pages-to-pdf` | [pages-to-pdf](/fr/docs/endpoints/convert/documents/pages-to-pdf.md) |
| Apple Numbers (`.numbers`) | PDF | `POST /v1/convert/numbers-to-pdf` | [numbers-to-pdf](/fr/docs/endpoints/convert/documents/numbers-to-pdf.md) |
| OpenDocument Text (`.odt`) | PDF | `POST /v1/convert/odt-to-pdf` | [odt-to-pdf](/fr/docs/endpoints/convert/documents/odt-to-pdf.md) |
| OpenDocument Spreadsheet (`.ods`) | PDF | `POST /v1/convert/ods-to-pdf` | [ods-to-pdf](/fr/docs/endpoints/convert/documents/ods-to-pdf.md) |
| OpenDocument Presentation (`.odp`) | PDF | `POST /v1/convert/odp-to-pdf` | [odp-to-pdf](/fr/docs/endpoints/convert/documents/odp-to-pdf.md) |
| OpenDocument Spreadsheet Template (`.ots`) | PDF | `POST /v1/convert/ots-to-pdf` | [ots-to-pdf](/fr/docs/endpoints/convert/documents/ots-to-pdf.md) |

Le moteur varie selon l'entrée, ce qui change ce que `pdf_options` accepte. HTML et Markdown passent par WeasyPrint et prennent en charge la taille de page, l'orientation, les marges, les en-têtes et les pieds de page. Les neuf endpoints reposant sur LibreOffice (`doc`, `excel`, `ppt`, `odt`, `ods`, `odp`, `ots`, `pages`, `numbers`) reprennent la géométrie de page du document source : ils n'honorent donc que `grayscale` et renvoient `400` si vous définissez explicitement une option de géométrie.

## Formats de données

Onze endpoints, tous des envois `multipart/form-data` synchrones. L'extension du fichier que vous envoyez doit correspondre à l'endpoint auquel vous l'envoyez.

| Entrée | Sortie | Endpoint | Doc |
|-------|--------|----------|------|
| JSON (`.json`) | XML | `POST /v1/convert/json-to-xml` | [json-to-xml](/fr/docs/endpoints/convert/data-formats/json-to-xml.md) |
| XML (`.xml`) | JSON | `POST /v1/convert/xml-to-json` | [xml-to-json](/fr/docs/endpoints/convert/data-formats/xml-to-json.md) |
| JSON (`.json`) | YAML | `POST /v1/convert/json-to-yaml` | [json-to-yaml](/fr/docs/endpoints/convert/data-formats/json-to-yaml.md) |
| YAML (`.yaml`, `.yml`) | JSON | `POST /v1/convert/yaml-to-json` | [yaml-to-json](/fr/docs/endpoints/convert/data-formats/yaml-to-json.md) |
| JSON (`.json`) | CSV | `POST /v1/convert/json-to-csv` | [json-to-csv](/fr/docs/endpoints/convert/data-formats/json-to-csv.md) |
| CSV (`.csv`) | JSON | `POST /v1/convert/csv-to-json` | [csv-to-json](/fr/docs/endpoints/convert/data-formats/csv-to-json.md) |
| JSON (`.json`) | TOML | `POST /v1/convert/json-to-toml` | [json-to-toml](/fr/docs/endpoints/convert/data-formats/json-to-toml.md) |
| TOML (`.toml`) | JSON | `POST /v1/convert/toml-to-json` | [toml-to-json](/fr/docs/endpoints/convert/data-formats/toml-to-json.md) |
| CSV (`.csv`) | XML | `POST /v1/convert/csv-to-xml` | [csv-to-xml](/fr/docs/endpoints/convert/data-formats/csv-to-xml.md) |
| XML (`.xml`) | CSV | `POST /v1/convert/xml-to-csv` | [xml-to-csv](/fr/docs/endpoints/convert/data-formats/xml-to-csv.md) |
| Markdown (`.md`, `.markdown`) | HTML | `POST /v1/convert/markdown-to-html` | [markdown-to-html](/fr/docs/endpoints/convert/data-formats/markdown-to-html.md) |

Les entrées doivent être en UTF-8. Il n'y a aucune garantie d'aller-retour entre deux endpoints : XML et CSV ne transportent pas l'information de type de JSON, si bien qu'un JSON converti en CSV puis reconverti renvoie des chaînes de caractères.

## Images

Vingt-deux endpoints, tous des envois `multipart/form-data`. L'entrée JPEG couvre `.jpg` et `.jpeg`, et l'entrée HEIC couvre `.heic` et `.heif`.

| Entrée | Sortie | Endpoint | Doc |
|-------|--------|----------|------|
| JPEG | PNG | `POST /v1/convert/jpeg-to-png` | [jpeg-to-png](/fr/docs/endpoints/convert/images/jpeg-to-png.md) |
| PNG | JPEG | `POST /v1/convert/png-to-jpeg` | [png-to-jpeg](/fr/docs/endpoints/convert/images/png-to-jpeg.md) |
| JPEG | SVG | `POST /v1/convert/jpeg-to-svg` | [jpeg-to-svg](/fr/docs/endpoints/convert/images/jpeg-to-svg.md) |
| SVG | JPEG | `POST /v1/convert/svg-to-jpeg` | [svg-to-jpeg](/fr/docs/endpoints/convert/images/svg-to-jpeg.md) |
| JPEG | HEIC | `POST /v1/convert/jpeg-to-heic` | [jpeg-to-heic](/fr/docs/endpoints/convert/images/jpeg-to-heic.md) |
| HEIC | JPEG | `POST /v1/convert/heic-to-jpeg` | [heic-to-jpeg](/fr/docs/endpoints/convert/images/heic-to-jpeg.md) |
| JPEG | WebP | `POST /v1/convert/jpeg-to-webp` | [jpeg-to-webp](/fr/docs/endpoints/convert/images/jpeg-to-webp.md) |
| WebP | JPEG | `POST /v1/convert/webp-to-jpeg` | [webp-to-jpeg](/fr/docs/endpoints/convert/images/webp-to-jpeg.md) |
| PNG | SVG | `POST /v1/convert/png-to-svg` | [png-to-svg](/fr/docs/endpoints/convert/images/png-to-svg.md) |
| SVG | PNG | `POST /v1/convert/svg-to-png` | [svg-to-png](/fr/docs/endpoints/convert/images/svg-to-png.md) |
| PNG | HEIC | `POST /v1/convert/png-to-heic` | [png-to-heic](/fr/docs/endpoints/convert/images/png-to-heic.md) |
| HEIC | PNG | `POST /v1/convert/heic-to-png` | [heic-to-png](/fr/docs/endpoints/convert/images/heic-to-png.md) |
| PNG | WebP | `POST /v1/convert/png-to-webp` | [png-to-webp](/fr/docs/endpoints/convert/images/png-to-webp.md) |
| WebP | PNG | `POST /v1/convert/webp-to-png` | [webp-to-png](/fr/docs/endpoints/convert/images/webp-to-png.md) |
| SVG | HEIC | `POST /v1/convert/svg-to-heic` | [svg-to-heic](/fr/docs/endpoints/convert/images/svg-to-heic.md) |
| HEIC | SVG | `POST /v1/convert/heic-to-svg` | [heic-to-svg](/fr/docs/endpoints/convert/images/heic-to-svg.md) |
| SVG | WebP | `POST /v1/convert/svg-to-webp` | [svg-to-webp](/fr/docs/endpoints/convert/images/svg-to-webp.md) |
| WebP | SVG | `POST /v1/convert/webp-to-svg` | [webp-to-svg](/fr/docs/endpoints/convert/images/webp-to-svg.md) |
| HEIC | WebP | `POST /v1/convert/heic-to-webp` | [heic-to-webp](/fr/docs/endpoints/convert/images/heic-to-webp.md) |
| WebP | HEIC | `POST /v1/convert/webp-to-heic` | [webp-to-heic](/fr/docs/endpoints/convert/images/webp-to-heic.md) |
| PDF | JPEG, ou un ZIP de JPEG | `POST /v1/convert/pdf-to-jpeg` | [pdf-to-jpeg](/fr/docs/endpoints/convert/images/pdf-to-jpeg.md) |
| PNG, JPEG ou WebP | Même format que l'entrée | `POST /v1/convert/compress-image` | [compress-image](/fr/docs/endpoints/convert/images/compress-image.md) |

Trois détails qui posent souvent problème :

- Les quatre endpoints `*-to-svg` ne vectorisent pas. Ils encodent l'image matricielle en base64 dans un élément SVG `<image>` dimensionné selon les pixels d'origine, ce qui ajoute environ 33 % à la taille du fichier.
- `pdf-to-jpeg` renvoie un JPEG brut pour un PDF d'une seule page, et un ZIP contenant `page_1.jpeg` et les suivants pour un PDF multi-pages : écrivez donc votre client de manière à gérer les deux cas.
- `compress-image` conserve le format d'entrée. Un PNG en entrée, un PNG en sortie.

<div class="alert alert-warning">
<strong>Les envois sont plafonnés selon le plan.</strong> Un fichier dépassant le plafond de votre plan renvoie <code>413</code> avant même que la moindre conversion ne démarre. Les tailles par plan figurent sur <a href="/fr/docs/reference/rate-limits">Limites de débit et quotas</a>.
</div>

## Absent de cette page ?

Deux endroits où chercher ensuite.

[Formats pris en charge](/fr/docs/reference/supported-formats.md) donne les listes brutes d'extensions plutôt que les paires, y compris les 36 entrées acceptées par `anything-to-pdf` et les 22 acceptées par `anything-to-markdown`.

[Perceive](/fr/docs/endpoints/perceive.md) est l'endpoint pour lire une page plutôt que la convertir. Un seul rendu d'URL renvoie ensemble le Markdown, le HTML nettoyé, une capture d'écran, un PDF, l'inventaire des liens et des images, et les données structurées, ce qui correspond généralement à ce dont vous avez besoin pour un agent ou un pipeline RAG.

Certaines paires absentes restent accessibles en deux étapes ou via un endpoint fourre-tout. Il n'existe pas d'endpoint `png-to-pdf`, par exemple, mais `anything-to-pdf` accepte `.png` et renvoie un PDF d'une seule page. Ce qui n'existe pas du tout, c'est l'OCR ainsi que la conversion audio et vidéo. C'est aussi pourquoi envoyer une image à `anything-to-markdown` renvoie `400` : il n'y a pas de couche de texte à lire, ni aucune passe OCR derrière.
