Usar API de Datalab.to para convertir PDF, DOC e imágenes a Markdown
Este es unDocument Extraction, Multimodal AIflujo de automatización del dominio deautomatización que contiene 11 nodos.Utiliza principalmente nodos como Set, Wait, Switch, FormTrigger, HttpRequest. Usar la API de Datalab.to para convertir PDF, DOC e imágenes a Markdown
- •Pueden requerirse credenciales de autenticación para la API de destino
Nodos utilizados (11)
{
"meta": {
"instanceId": "b3c467df4053d13fe31cc98f3c66fa1d16300ba750506bfd019a0913cec71ea3"
},
"nodes": [
{
"id": "c302f8e5-6bed-4b64-8d52-33eaa5fce86a",
"name": "Al enviar el formulario",
"type": "n8n-nodes-base.formTrigger",
"position": [
-336,
48
],
"webhookId": "a857ad3f-4b4d-4574-b503-809a95b1fbbf",
"parameters": {
"options": {},
"formTitle": "upload file",
"formFields": {
"values": [
{
"fieldType": "file",
"fieldLabel": "file",
"multipleFiles": false,
"requiredField": true
}
]
}
},
"typeVersion": 2.2
},
{
"id": "3cc12307-f5da-476a-811a-79920f20abf7",
"name": "Obtener Markdown",
"type": "n8n-nodes-base.httpRequest",
"position": [
336,
48
],
"parameters": {
"url": "={{ $json.request_check_url }}",
"options": {},
"authentication": "genericCredentialType",
"genericAuthType": "httpHeaderAuth"
},
"credentials": {
"httpHeaderAuth": {
"id": "7Wx4MGEDgCG0D7fT",
"name": "datalab.io"
}
},
"typeVersion": 4.2
},
{
"id": "ec9e9703-fb38-4ba5-97f6-a73bee7c47f7",
"name": "Enviar a Datalab API",
"type": "n8n-nodes-base.httpRequest",
"position": [
-112,
48
],
"parameters": {
"url": "https://www.datalab.to/api/v1/marker",
"method": "POST",
"options": {},
"sendBody": true,
"contentType": "multipart-form-data",
"authentication": "genericCredentialType",
"bodyParameters": {
"parameters": [
{
"name": "max_pages",
"value": "4"
},
{
"name": "use_llm",
"value": "true"
},
{
"name": "output_format",
"value": "markdown"
},
{
"name": "file",
"parameterType": "formBinaryData",
"inputDataFieldName": "file"
}
]
},
"genericAuthType": "httpHeaderAuth"
},
"credentials": {
"httpHeaderAuth": {
"id": "7Wx4MGEDgCG0D7fT",
"name": "datalab.io"
}
},
"typeVersion": 4.2
},
{
"id": "542793bf-05c1-4c6c-b0e0-b087669f966c",
"name": "Establecer campos",
"type": "n8n-nodes-base.set",
"position": [
560,
48
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "20280dbd-8188-4f5e-8e4e-74621d65d40a",
"name": "markdown",
"type": "string",
"value": "={{ $json.markdown }}"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "cb900de1-e4b1-488f-8a12-9946bb8466f6",
"name": "Esperar",
"type": "n8n-nodes-base.wait",
"position": [
112,
48
],
"webhookId": "7b49cf9b-9859-4361-a8b8-2407d114d418",
"parameters": {
"amount": 10
},
"typeVersion": 1.1
},
{
"id": "9fcdcaab-2041-4411-8ec1-10edfe29f1d6",
"name": "Nota adhesiva13",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1424,
-32
],
"parameters": {
"width": 972,
"height": 564,
"content": ""
},
"typeVersion": 1
},
{
"id": "32550fd8-2570-4e42-b249-8d53288da00a",
"name": "Nota adhesiva",
"type": "n8n-nodes-base.stickyNote",
"position": [
-416,
-32
],
"parameters": {
"width": 1200,
"height": 272,
"content": "## Convert Files to Markdown for LLM with Datalab.to"
},
"typeVersion": 1
},
{
"id": "f968189c-83c4-436c-91c6-dc0313ee4256",
"name": "Nota adhesiva2",
"type": "n8n-nodes-base.stickyNote",
"position": [
-416,
272
],
"parameters": {
"width": 1200,
"height": 256,
"content": "## Guide\nThis simple automation enables you to convert .doc, .pdf, .png, .jpg, and .webp files to markdown using datalab.to API. This is useful for llm workflows for ai processing. \n\nSetup \n- Sign up to datalab.to to get your api key. Get the free $5 credits by entering your payment method.\n- Set up a Generic Header with name \"X-API-Key\" and api key as the value. \n- Thats it you are good to go.\n\nLearn more on tweaking the body payload here; [api reference](https://www.datalab.to/redoc#operation/marker_api_v1_marker_post)"
},
"typeVersion": 1
},
{
"id": "883e4090-cb4f-4de6-bfc4-4c5c7ce85728",
"name": "Nota adhesiva3",
"type": "n8n-nodes-base.stickyNote",
"position": [
816,
-32
],
"parameters": {
"color": 6,
"width": 400,
"height": 416,
"content": "## Polling Confirmation Node\n\nYou can add this node after \"Get Markdown\" node to confirm if the get request worked or the doc is still being processed. If the outcome is \"*success*\" then proceed, if \"*failed*\" then plug that route to the wait node, to try again. You can also add more outcomes of this node to cover api call fails. If you are processing **larger files**, increase the wait time."
},
"typeVersion": 1
},
{
"id": "4f0c8ae8-e92e-419f-a609-d426db8321d8",
"name": "Interruptor",
"type": "n8n-nodes-base.switch",
"disabled": true,
"position": [
832,
192
],
"parameters": {
"rules": {
"values": [
{
"outputKey": "success",
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "cbac06bd-0ee6-40ac-bad9-bdb0929ca0ad",
"operator": {
"type": "string",
"operation": "equals"
},
"leftValue": "={{ $json.status }}",
"rightValue": "complete"
}
]
},
"renameOutput": true
},
{
"outputKey": "failed",
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "bc2570f6-c9ec-4c4f-9a04-863be5fb1ced",
"operator": {
"type": "string",
"operation": "notEquals"
},
"leftValue": "={{ $json.status }}",
"rightValue": "complete"
}
]
},
"renameOutput": true
}
]
},
"options": {}
},
"typeVersion": 3.2
},
{
"id": "33ec2be6-e49a-4973-b105-5db71fc2cf40",
"name": "Nota adhesiva1",
"type": "n8n-nodes-base.stickyNote",
"position": [
816,
400
],
"parameters": {
"color": 4,
"width": 400,
"height": 128,
"content": "## Wanna work with me?\n**Email**: joseph@uppfy.com\n**X/Twitter**: [@juppfy](https://x.com/juppfy)"
},
"typeVersion": 1
}
],
"pinData": {},
"connections": {
"cb900de1-e4b1-488f-8a12-9946bb8466f6": {
"main": [
[
{
"node": "3cc12307-f5da-476a-811a-79920f20abf7",
"type": "main",
"index": 0
}
]
]
},
"3cc12307-f5da-476a-811a-79920f20abf7": {
"main": [
[
{
"node": "542793bf-05c1-4c6c-b0e0-b087669f966c",
"type": "main",
"index": 0
}
]
]
},
"c302f8e5-6bed-4b64-8d52-33eaa5fce86a": {
"main": [
[
{
"node": "ec9e9703-fb38-4ba5-97f6-a73bee7c47f7",
"type": "main",
"index": 0
}
]
]
},
"ec9e9703-fb38-4ba5-97f6-a73bee7c47f7": {
"main": [
[
{
"node": "cb900de1-e4b1-488f-8a12-9946bb8466f6",
"type": "main",
"index": 0
}
]
]
}
}
}¿Cómo usar este flujo de trabajo?
Copie el código de configuración JSON de arriba, cree un nuevo flujo de trabajo en su instancia de n8n y seleccione "Importar desde JSON", pegue la configuración y luego modifique la configuración de credenciales según sea necesario.
¿En qué escenarios es adecuado este flujo de trabajo?
Intermedio - Extracción de documentos, IA Multimodal
¿Es de pago?
Este flujo de trabajo es completamente gratuito, puede importarlo y usarlo directamente. Sin embargo, tenga en cuenta que los servicios de terceros utilizados en el flujo de trabajo (como la API de OpenAI) pueden requerir un pago por su cuenta.
Flujos de trabajo relacionados recomendados
Joseph
@mjombaAutomation expert specializing in building smart, scalable workflows using tools like n8n, Make, and Airtable. I help businesses save time, reduce manual work, and grow faster with tailored automation solutions. Feel free to reach out at joseph@uppfy.com to discuss your project. I am also on x.com/juppfy
Compartir este flujo de trabajo