Skip to main content
#Referencia

MarkpdfClient

string
requerido
Tu tecla API.
string
predeterminado:"https://api.markpdf.tech"
URL base de API.
A diferencia de SDK de Node.js, este cliente es independiente: no envuelve @markpdf/sdk, implementa las llamadas directamente en los globales fetch/FormData de React Native.

Métodos

convertLocalFile

Cargue un archivo local (desde un selector) a través de POST /convert (multipart/form-data), usando el formato { uri, name, type } que React Native reconoce en FormData para adjuntar archivos sin leerlos en JS.
string
requerido
URI local para el archivo (file://... o content://...), tal como lo devuelve el selector.
string
requerido
Nombre del archivo a enviar.
string
predeterminado:"application/octet-stream"
Tipo de contenido del archivo.

convertFromUrl

Llama a POST /convert/from-url con un cuerpo JSON: no carga ningún archivo, API descarga URL del lado del servidor.
string
requerido
URL público (o firmado) del documento a convertir. El API se descarga directamente; No pasa por el dispositivo.
string
Nombre del archivo para asociar con el resultado. Si se omite, API intenta inferirlo de URL.
ConvertOptions
Mismas opciones que convertLocalFile.

pdfIndex

Llame a POST /pdf/index. Devuelve la columna vertebral de PDF sin convertirla; útil para que un agente decida qué rango de pages solicitar antes de realizar una conversión completa. Consulte POST /pdf/index.

getJob / waitForJob

string
requerido
Identificador de trabajo (job_id) devuelto por API cuando 202 responde.
number
predeterminado:"5000"
Milisegundos entre cada GET /jobs/{id}.
number
Si se especifica, waitForJob arroja un Error genérico al pasar sin que el trabajo haya terminado. Sin timeoutMs, sondea indefinidamente hasta completed o failed.
getJob consulta GET /jobs/{id} solo una vez y devuelve Job tal como está (puede seguir a "queued" o "processing"). waitForJob realiza una encuesta repetida hasta que status sea "completed" o "failed":
  • Si status === "failed", waitForJob inicia JobFailedError (no devuelve el trabajo fallido, inicia).
  • Si status === "completed", devuelve Job con body completado (string o JsonResult dependiendo de responseFormat del trabajo original).
  • Si se excede timeoutMs, arroja un Error genérico (no MarkpdfError).

ConvertOptions

Todos los campos son opcionales; se aplican a convertLocalFile, convertFromUrl y convert() de useConvertFile.
"auto" | "pdf" | "docx" | "csv" | "txt" | "xlsx" | "pptx" | "zip"
predeterminado:"auto"
Formato del archivo de entrada. "auto" lo detecta por extensión/contenido. Establezca esto explícitamente si carga un archivo sin una extensión confiable (por ejemplo, un Android content:// URI sin un nombre claro).
"fast" | "ultra_fast" | "balanced" | "quality" | "auto"
predeterminado:"fast"
Perfil de velocidad/calidad de conversión. "ultra_fast" prioriza la latencia, "quality" prioriza la fidelidad del Markdown resultante, "auto" permite que el backend decida en función del documento.
boolean
predeterminado:"true"
boolean
predeterminado:"false"
boolean
predeterminado:"false"
"markdown" | "json"
predeterminado:"markdown"
Si es "json", la respuesta resuelta es un objeto JsonResult con metadatos (engine, size_bytes, timings, etc.) además del Markdown. Con "markdown" (predeterminado), la respuesta resuelta es directamente string.
boolean
predeterminado:"false"
Reduce Markdown a una versión más compacta (menos espaciado/metadatos redundantes), destinada a minimizar los tokens en las canalizaciones RAG/LLM.
string
Basado en el rango de páginas 1, solo se aplica a PDF. Ejemplos: "1,3,5-10", "120-145". Útil en dispositivos móviles para evitar cargar/procesar documentos completos de cientos de páginas cuando solo necesita una sección.
boolean
predeterminado:"true"
Si API responde 202 (backends saturados), convertLocalFile/convertFromUrl realiza un sondeo automático a través de waitForJob hasta que finaliza el trabajo. useConvertFile no respeta esta opción; siempre requiere el manejo manual de 202 porque usa XMLHttpRequest en lugar de waitForJob. Consulte Trabajos en streaming y asincrónicos.
number
predeterminado:"5000"
Intervalo entre cada sondeo para GET /jobs/{id} cuando autoPoll está activo.

useConvertFile(client)

Igual que convertLocalFile, pero con progreso de carga a través de XMLHttpRequest (RN implementa XMLHttpRequest globalmente, a diferencia del navegador que solo tiene fetch). Toma el cliente como argumento; no utiliza contexto/Proveedor.

Tipos

ConvertResult es Job solo si autoPoll: false y API respondieron 202; de lo contrario, convertLocalFile/convertFromUrl ya han resuelto el trabajo internamente.