API e MCP de Markdown para PDF para documentos refinados e específicos
Crie documentos Markdown versionados, publique PDFs refinados de forma assíncrona e baixe artefatos verificados por uma REST API com escopo limitado.
Teste premium
/api/v2/documents{
"taskId": "consulting-proposal",
"revision": {
"markdown": "# Northstar Proposal...",
"spec": { "templateId": "proposal-consulting" }
}
}
SHA-256POST /api/v2/documents → /publishes
Início rápido
Crie um documento, publique-o e baixe o PDF verificado.
#!/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
Comece com uma automação revisada
Importe o fluxo completo de publicação, consulta e download privado.
n8n
Workflow inativo com esperas persistentes e tratamento de falhas finais.
Make
Blueprint sem credenciais, consulta limitada e proteção contra download duplicado.
Zapier
Etapa SDK e manifesto de modelo guiado em um único kit.
Use uma chave dedicada com documents.render e documents.read. Baixe a URL assinada sem essa chave.
Use modelos de PDF profissionais no Claude Code e em agentes de IA
Conecte o servidor MCP remoto uma vez e peça ao agente para recomendar os melhores modelos para o documento ou transformar Markdown em um PDF profissional sem sair da conversa.
{
"mcpServers": {
"markdown-to-pdf": {
"type": "http",
"url": "https://markdowntopdfconverter.com/mcp",
"headers": {
"Authorization": "Bearer ${MD2PDF_API_KEY}"
}
}
}
}O MCP usa a mesma chave e a mesma cota da API REST. Cada resultado é um link privado que expira em 15 minutos, e contas gratuitas podem testar 5 exportações premium antes de fazer upgrade.
Criar chave de APIAutenticação
Autentique cada requisição com sua chave de API secreta, enviada como token Bearer no cabeçalho Authorization.
Cabeçalho da requisição
| Cabeçalho | Valor | Descrição |
|---|---|---|
| Authorization | Bearer mp_live_... | Sua chave API prefixada com Bearer |
| Content-Type | application/json | Obrigatório para todas as requisições |
Um ciclo de publicação gerenciado
Fonte, revisão imutável, tarefa e artefato verificado ficam separados para novas tentativas e auditorias previsíveis.
- 01
Crie um documento gerenciado e a primeira revisão.
- 02
Solicite o PDF final com uma chave de idempotência estável.
- 03
Consulte até succeeded, failed ou cancelled.
- 04
Gere um link privado de curta duração.
- 05
Baixe a URL assinada sem encaminhar Authorization.
POST /api/v1/convert
Converta Markdown em um documento PDF estilizado.
Modelos
Escolha entre 57 modelos profissionais em 9 famílias específicas. Expanda uma família para copiar um ID de modelo.
CurrículosFormatos objetivos para causar uma ótima primeira impressão.10 IDs
Cartas de apresentaçãoCartas criadas para combinar com o seu currículo.10 IDs
Trabalhos acadêmicosTrabalhos bem apresentados para ensino médio e universidade.9 IDs
PropostasConquiste clientes, aprovações, parcerias e financiamento.9 IDs
Vendas e marketingMateriais profissionais para vender, comprovar e lançar.9 IDs
AcadêmicosFormatos para publicação, revisão e conferências.3 IDs
Livros e textos longosLayouts legíveis para guias, manuais, ensaios e livros.4 IDs
JurídicosAcordos e contratos com estrutura profissional.1 IDs
Códigos de erro
Cada erro v2 inclui um código estável, status HTTP, indicador retryable e atraso opcional. Tente novamente apenas quando retryable for 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
| Status | 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 |
Preços da API
As chamadas de API são monitoradas mensalmente. Cada conversão bem-sucedida conta para o limite mensal do seu plano.
CA$ 0
25 / month
CA$ 13,91 / month
500 / month
CA$ 82,14 / year
1,000 / month
CA$ 6,96 one-time
250 calls
Precisa de mais? Entre em contato para preços empresariais personalizados.
Antes de sair da documentação