Lista de Documentos
En Esta Página

Llamadas API

Realizar llamadas API a ProcessMind

Esta guía te da ejemplos y buenas prácticas para usar la API de ProcessMind. Ya sea para consultar data, enviar información o automatizar workflows, es clave saber cómo interactuar con nuestra API.

Variables de autenticación

  • apiKey Para todas las solicitudes de API, debes incluir tu API key en los headers de la solicitud para autenticación. Puedes obtener tu API key en la configuración de tu cuenta en ProcessMind.
  • tenantId Algunos endpoints de la API requieren un Tenant ID para indicar el contexto de la solicitud. Este ID es único para tu organización y también se encuentra en la configuración de la cuenta.
  • datatableId Al trabajar con datasets, debes indicar el Datatable ID para identificar con qué datatable interactúas. Este ID está disponible en el menú de configuración del dataset, apartado [Get Data Table ID] dentro de ProcessMind.

Carga directa de archivos

ProcessMind permite subir archivos directamente a datatables usando URLs prefirmadas. Este método te permite cargar archivos de forma segura sin exponer tu API key ni información sensible. Recuerda que las URLs prefirmadas tienen tiempo limitado y se deben usar pronto tras obtenerlas. Para acceder a la URL de carga directa haz una petición GET al endpoint. Puedes obtener la URL desde el menú de configuración del dataset en [Get upload URL] dentro de ProcessMind. Puedes definir el tiempo máximo en 1 hora, 1 semana o 1 mes.

Resumen de endpoints

MétodoEndpointDescripción
GET/tenant/{tenantId}/datatable/{datatableId}/uploads/presignedurlDevuelve una URL temporal pre‑firmada para subir un archivo a un datatable.
GET/tenant/{tenantId}/datasetsDevuelve una lista de datasets del tenant indicado.
GET/tenant/{tenantId}Devuelve detalles sobre el tenant especificado.
GET/tenant/{tenantId}/organizationDevuelve información de la organización del tenant.

Base URL

Todas las solicitudes a la API deben hacerse a la siguiente URL base: https://api.processmind.com

Obtener una URL de subida pre‑firmada

Endpoint: GET /tenant/{tenantId}/datatable/{datatableId}/uploads/presignedurl Parámetros:

  • tenantId – ID del tenant (string).
  • datatableId – ID del datatable al que deseas subir (string).
  • apiKey – Tu API key (string).

Devuelve: Un objeto de respuesta con PreSignedUploadUrl, una URL temporal que puedes usar para subir un archivo directamente (normalmente con HTTP PUT).

Ejemplo (utilizando el helper):

const presignedUrl = await getPresignedUploadUrl({
  apiKey,
  tenantId: 'tenant-123',
  datatableId: 'table-456'
});
console.log(presignedUrl); // ej: https://s3.amazonaws.com/…?X-Amz-Signature=…

Listar datasets

Endpoint: GET /tenant/{tenantId}/datasets Parámetros:

  • tenantId – ID del tenant.
  • apiKey – Tu API key.

Devuelve: Un array de objetos dataset que pertenecen al tenant.

Ejemplo:

const datasets = await getDatasets({
  apiKey,
  tenantId: 'tenant-123'
});
console.log(datasets);

Obtener información del tenant

Endpoint: GET /tenant/{tenantId} Parámetros:

  • tenantId – ID del tenant.
  • apiKey – Tu API key.

Devuelve: Un objeto con los metadatos del tenant, como nombre, fecha de creación y tipo de plan.

Ejemplo:

const tenantInfo = await getTenant({
  apiKey,
  tenantId: 'tenant-123'
});
console.log(tenantInfo);

Consultar detalles de la organización

Endpoint: GET /tenant/{tenantId}/organization Parámetros:

  • tenantId – ID del tenant.
  • apiKey – Tu API key.

Devuelve: Información sobre la organización asociada al tenant (por ejemplo: nombre de la empresa, dirección, datos de contacto).

Ejemplo:

const org = await getOrganization({
  apiKey,
  tenantId: 'tenant-123'
});
console.log(org);

Subir un archivo

La función uploadFile muestra cómo subir un archivo usando la URL pre‑firmada. El flujo general es:

  1. Obtener la URL pre‑firmada usando getPresignedUploadUrl.
  2. Hacer una petición PUT a esa URL con el archivo. La URL pre‑firmada autoriza la subida directa al proveedor de almacenamiento, por lo que no necesitas más credenciales.
  3. (Opcional) Notificar a tu API que la subida finalizó, si tu backend lo requiere.

Aquí tienes un ejemplo simplificado usando fetch:

async function uploadFile({ apiKey, tenantId, datatableId, file }) {
  // Paso 1: Obtener la URL pre-firmada
  const uploadUrl = await getPresignedUploadUrl({ apiKey, tenantId, datatableId });
  
  // Paso 2: Subir el archivo por PUT
  await fetch(uploadUrl, {
    method: 'PUT',
    headers: {
      'Content-Type': file.type
    },
    body: file
  });
  
  // Paso 3: Opcional, notificar a tu API que finalizó
  // (depende de tu backend)
}

info

  • Las URLs pre‑firmadas expiran tras cierto tiempo (normalmente minutos). Úsalas enseguida tras obtenerlas.
  • Si la subida falla (ejemplo: interrupción de red), solicita una nueva URL antes de reintentar.
  • Mantén tu apiKey segura y no la expongas en el cliente (por ejemplo, en un front‑end público).

Ejemplo BASH

Script Bash básico para subir un archivo a ProcessMind usando dos llamadas curl, con campos de muestra para todos los valores.

Descargar ejemplo BASH

Ejemplo NodeJS

Sube un archivo CSV local a ProcessMind usando una presigned URL.

Pasos:

  1. Solicita una presigned upload URL del API.
  2. Lee el archivo local del disco.
  3. Sube el archivo a la presigned URL por HTTP PUT.

Configuración:

  • Ingresa tu API key, tenantId, datatableId y filePath al llamar a uploadFileToProcessMind().
  • La URL base de la API es https://api.processmind.com
Descargar ejemplo NodeJS

Ejemplo Python

Sube un archivo CSV local a una API remota usando una presigned URL.

Pasos:

  1. Solicita una presigned upload URL desde la API.
  2. Lee el archivo local desde disco.
  3. Sube el archivo a la presigned URL usando HTTP PUT.

Configuración:

  • Actualiza api_key, tenant_id, datatable_id y file_path según corresponda.
Descargar ejemplo Python