Markdown to PDF
v1.0REST API

Documentation API

Convertissez Markdown en PDF par programmation. Notre REST API vous permet de générer des PDF professionnels et stylés à partir de contenu Markdown avec une seule requête HTTP.

Démarrage rapide

Générez un PDF en 30 secondes avec une simple commande curl.

1

Obtenez votre clé API

Générez une clé depuis votre tableau de bord sous API Keys.

2

Écrivez du Markdown

Tout Markdown valide est pris en charge — titres, listes, blocs de code, tableaux, images.

3

Effectuez la requête

Envoyez une requête POST avec votre clé et le Markdown. Recevez un PDF en retour.

cURL
curl -X POST https://markdowntopdfconverter.com/api/v1/convert \
  -H "Authorization: Bearer mp_live_your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{"markdown": "# Hello World\n\nThis is a **test**.", "templateId": "clean"}' \
  -o output.pdf

Authentification

apiDocs.authentication.description

En-tête de requête

En-têteValeurDescription
AuthorizationBearer mp_live_...Votre clé API préfixée par Bearer
Content-Typeapplication/jsonRequis pour toutes les requêtes

apiDocs.authentication.keyFormat


POST /api/v1/convert

Convertissez Markdown en un document PDF stylé.

Corps de la requête

markdownstringRequis

Le contenu Markdown à convertir. Maximum 200 000 caractères.

templateIdstringOptionnel

Modèle à utiliser. Un de : clean, executive, resume, academic, legal, creative. Par défaut : clean.

filenamestringOptionnel

Nom du fichier PDF téléchargé. Par défaut : document.pdf.

localestringOptionnel

Paramètre régional. Un de : en, es, fr, de, ja, zh-CN, ko, pt-BR, ar, ru, hi, it. Par défaut : en.

customTemplateIdUUIDOptionnel

UUID d’un modèle personnalisé sauvegardé. Le modèle doit appartenir à l’utilisateur de la clé API.

optionsobjectOptionnel

Options de conversion : pageNumbers (boolean), bodyTextColor (hex), headingTextColor (hex), creativeAccent (slate|purple|blue|emerald|rose|amber).

Exemples de requêtes

Python
import requests

api_key = "mp_live_your_api_key_here"
headers = {
    "Authorization": f"Bearer {api_key}",
    "Content-Type": "application/json"
}
payload = {
    "markdown": "# Quarterly Report\n\n## Revenue\n\nRevenue grew **15%** this quarter.",
    "templateId": "executive",
    "options": {"pageNumbers": True}
}

response = requests.post(
    "https://markdowntopdfconverter.com/api/v1/convert",
    json=payload,
    headers=headers
)

with open("report.pdf", "wb") as f:
    f.write(response.content)
JavaScript
const response = await fetch(
  "https://markdowntopdfconverter.com/api/v1/convert",
  {
    method: "POST",
    headers: {
      Authorization: `Bearer ${apiKey}`,
      "Content-Type": "application/json",
    },
    body: JSON.stringify({
      markdown: "# Invoice\n\n**Amount:** $1,200\n\n| Item | Qty | Price |\n| --- | --- | --- |\n| Widget | 5 | $240 |",
      templateId: "clean",
      filename: "invoice",
    }),
  }
);

const blob = await response.blob();
const url = URL.createObjectURL(blob);

// Trigger download
const a = document.createElement("a");
a.href = url;
a.download = "invoice.pdf";
a.click();

Modèles

Choisissez parmi six modèles conçus professionnellement. Chaque modèle a une typographie, un espacement et des schémas de couleurs distincts.

clean

Clean

Design minimaliste et moderne sans empattement avec un espacement propre.

executive

Executive

Titres avec empattement, accents marine professionnels et numéros de page.

resume

Resume

Mise en page compacte sur une colonne optimisée pour les CV.

academic

Academic

Titres numérotés, espacement généreux et corps EB Garamond.

legal

Legal

Corps avec empattement à double interligne avec formatage de citations formel.

creative

Creative

Titres DM Sans en gras avec couleurs d’accent configurables.


Codes d’erreur

Chaque réponse utilise un code d’état HTTP standard. Utilisez-le pour décider comment traiter le résultat.

StatutSignificationAction
200Succès — PDF retournéTéléchargez le PDF depuis le corps de la réponse.
400Corps de requête invalideVérifiez que votre charge JSON correspond au schéma ci-dessus.
401Clé API invalide ou manquanteVérifiez que votre clé API est active et correctement formatée.
402Crédits API épuisésAchetez plus de crédits depuis votre tableau de bord.
404Modèle personnalisé introuvableVérifiez que customTemplateId est correct et vous appartient.
415Mauvais Content-TypeDéfinissez l’en-tête Content-Type sur application/json.
422Options de conversion invalidesVérifiez que votre objet options correspond aux spécifications.
429Limite de débit atteinteAttendez et réessayez. Vérifiez l’en-tête Retry-After.
500Erreur serveurRéessayez avec un backoff exponentiel. Contactez le support si persistant.

Tarifs API

Les appels API sont suivis mensuellement. Chaque conversion réussie compte pour la limite mensuelle de votre niveau.

Free

$0

25 / month

Pour les tests et l’évaluation.

Starter

$9

500 / month

Pour les particuliers et les petits projets.

Pro

$29

1,000 / month

Génération prioritaire, prise en charge des modèles personnalisés via API.

Besoin de plus ? Contactez-nous pour des tarifs entreprise personnalisés.