API e MCP da Markdown a PDF per documenti curati e specifici
Crea documenti Markdown con versioni, pubblica PDF curati in modo asincrono e scarica artefatti verificati tramite una REST API con permessi mirati.
Prova premium
/api/v2/documents{
"taskId": "consulting-proposal",
"revision": {
"markdown": "# Northstar Proposal...",
"spec": { "templateId": "proposal-consulting" }
}
}
SHA-256POST /api/v2/documents → /publishes
Avvio rapido
Crea un documento, pubblicalo e scarica il PDF verificato.
#!/usr/bin/env bash
set -euo pipefail
API="https://markdowntopdfconverter.com"
RUN_ID="proposal-$(date +%s)"
AUTH="Authorization: Bearer $MD2PDF_API_KEY"
DOCUMENT=$(curl --fail --silent --show-error --max-time 30 "$API/api/v2/documents" \
-H "$AUTH" -H "Content-Type: application/json" \
-H "Idempotency-Key: $RUN_ID-document" \
--data '{"taskId":"consulting-proposal","title":"Northstar proposal","revision":{"markdown":"# Northstar Proposal\n\n## Outcome\nA decision-ready roadmap.","parentRevisionId":null,"spec":{"locale":"en","options":{"pageNumbers":true},"templateId":"proposal-consulting"}}}')
DOCUMENT_ID=$(jq -r '.document.id' <<<"$DOCUMENT")
REVISION_ID=$(jq -r '.revision.id' <<<"$DOCUMENT")
JOB=$(curl --fail --silent --show-error --max-time 30 \
"$API/api/v2/documents/$DOCUMENT_ID/publishes" \
-H "$AUTH" -H "Content-Type: application/json" \
-H "Idempotency-Key: $RUN_ID-publish" \
--data "{"revisionId":"$REVISION_ID","output":{"format":"pdf","filename":"northstar-proposal.pdf"}}")
JOB_ID=$(jq -r '.job.id' <<<"$JOB")
for ATTEMPT in $(seq 1 100); do
RESULT=$(curl --fail --silent --show-error --max-time 30 "$API/api/v2/jobs/$JOB_ID" -H "$AUTH")
STATUS=$(jq -r '.job.status' <<<"$RESULT")
[[ "$STATUS" == "succeeded" ]] && break
[[ "$STATUS" == "failed" || "$STATUS" == "cancelled" ]] && exit 1
sleep 3
done
[[ "$STATUS" == "succeeded" ]] || { echo "Timed out waiting for PDF" >&2; exit 1; }
ARTIFACT_ID=$(jq -r '.artifact.id' <<<"$RESULT")
LINK=$(curl --fail --silent --show-error --max-time 30 -X POST \
"$API/api/v2/artifacts/$ARTIFACT_ID/links" -H "$AUTH")
HREF=$(jq -r '.href' <<<"$LINK")
[[ "$HREF" == https://* ]] || { echo "Refusing non-HTTPS artifact URL" >&2; exit 1; }
curl --fail --location --proto '=https' --max-redirs 5 --max-time 60 "$HREF" \
--output northstar-proposal.pdf
- Artifact
- SHA-256
- Download
- private link
Inizia con un’automazione verificata
Importa il flusso completo di pubblicazione, controllo e download privato.
n8n
Workflow inattivo con attese persistenti e gestione degli errori terminali.
Make
Blueprint senza credenziali con controllo limitato e blocco dei download duplicati.
Zapier
Passaggio SDK e manifesto del modello guidato in un unico kit.
Usa una chiave dedicata con documents.render e documents.read. Scarica l’URL firmato senza tale chiave.
Usa modelli PDF professionali da Claude Code e dagli agenti IA
Collega una sola volta il server MCP remoto, poi chiedi all’agente di consigliare i modelli più adatti al documento o trasformare Markdown in un PDF professionale senza lasciare la conversazione.
{
"mcpServers": {
"markdown-to-pdf": {
"type": "http",
"url": "https://markdowntopdfconverter.com/mcp",
"headers": {
"Authorization": "Bearer ${MD2PDF_API_KEY}"
}
}
}
}MCP usa la stessa chiave e lo stesso limite dell’API REST. Ogni risultato è un link privato valido 15 minuti e gli account gratuiti possono provare 5 esportazioni premium prima dell’upgrade.
Crea chiave APIAutenticazione
Autentica ogni richiesta con la tua chiave API segreta, inviata come token Bearer nell'header Authorization.
Intestazione richiesta
| Intestazione | Valore | Descrizione |
|---|---|---|
| Authorization | Bearer mp_live_... | La tua chiave API con prefisso Bearer |
| Content-Type | application/json | Richiesto per tutte le richieste |
Un ciclo di pubblicazione gestito
Fonte, revisione immutabile, processo e artefatto verificato restano separati per retry e audit prevedibili.
- 01
Crea un documento gestito e la prima revisione.
- 02
Richiedi il PDF finale con una chiave di idempotenza stabile.
- 03
Controlla fino a succeeded, failed o cancelled.
- 04
Genera un link privato di breve durata.
- 05
Scarica l’URL firmato senza inoltrare Authorization.
POST /api/v1/convert
Converti Markdown in un documento PDF stilizzato.
Modelli
Scegli tra 57 template professionali in 9 famiglie specifiche. Espandi una famiglia per copiare un ID template.
CVFormati essenziali per un'ottima prima impressione.10 IDs
Lettere di presentazioneLettere progettate per accompagnare il tuo CV.10 IDs
Compiti ed elaboratiLavori curati per scuola superiore, college e università.9 IDs
ProposteConquista clienti, approvazioni, partner e finanziamenti.9 IDs
Vendite e marketingMateriali professionali per vendere, dimostrare e lanciare.9 IDs
Documenti accademiciFormati per pubblicazione, revisione e conferenze.3 IDs
Libri e testi lunghiLayout leggibili per guide, manuali, saggi e libri.4 IDs
Documenti legaliAccordi e contratti ben strutturati.1 IDs
Codici di errore
Ogni errore v2 include un codice stabile, lo stato HTTP, il flag retryable e un eventuale ritardo. Riprova solo quando retryable è true.
400 / 415 / 422invalid_request
retryable: false
401unauthorized
retryable: false
402quota_exhausted
retryable: false
403forbidden
retryable: false
404not_found
retryable: false
409idempotency_conflict
retryable: false
409invalid_state_transition
retryable: false
410artifact_expired
retryable: false
429rate_limited
retryable: true
503service_unavailable
retryable: true
| Stato | code | retryable |
|---|---|---|
| 400 / 415 / 422 | invalid_request | false |
| 401 | unauthorized | false |
| 402 | quota_exhausted | false |
| 403 | forbidden | false |
| 404 | not_found | false |
| 409 | idempotency_conflict | false |
| 409 | invalid_state_transition | false |
| 410 | artifact_expired | false |
| 429 | rate_limited | true |
| 503 | service_unavailable | true |
Prezzi API
Le chiamate API sono tracciate mensilmente. Ogni conversione riuscita conta per il limite mensile del tuo livello.
0 CA$
25 / month
13,91 CA$ / month
500 / month
82,14 CA$ / year
1,000 / month
6,96 CA$ one-time
250 calls
Serve di più? Contattaci per prezzi aziendali personalizzati.
Prima di lasciare la documentazione