Skip to content
BotServBotServ
NocoDBAirtablebase de datosNo-CodeSelf-HostingOpen SourceREST-API

NocoDB self-hosted: Alternativa a Airtable

NocoDB self-hosted: alternativa a Airtable, base de datos spreadsheet, REST-API, integración n8n e IA para datos estructurados.

S

schutzgeist

4 min read
NocoDB self-hosted: Alternativa a Airtable

NocoDB auto-hospedado: alternativa a Airtable como base de datos sin código

Qué cubre este artículo

  • Qué es NocoDB: alternativa open source a Airtable, base de datos con interfaz de hoja de cálculo.
  • Configuración con Docker y creación de la primera base.
  • API REST para automatización e integración con IA.
  • Flujos de n8n con NocoDB y Ollama.
  • Cuándo NocoDB es mejor que Postgres directo y cuándo no.

Introducción

NocoDB es la alternativa open source más popular a Airtable: una base de datos con interfaz tipo hoja de cálculo. Creas tablas como en Excel, pero detrás hay una verdadera base de datos (Postgres, MySQL o SQLite) con API REST, vistas, filtros, formularios y webhooks.

Para flujos con IA resulta práctica: mantienes datos estructurados (leads, tickets, índice de documentos) en una interfaz visual, los conectas vía API con n8n u Ollama, todo sin escribir SQL.

Casos de uso típicos

  • Sistema de tickets simple: ingresa solicitudes de soporte como registros en una tabla; la IA categoriza y n8n escala.
  • Calendario de contenidos: artículos, estado, canales: la IA genera borradores directamente en la tabla.
  • Gestión de leads: rastrear contactos, la IA redacta sugerencias de seguimiento.
  • Índice de documentos: metadatos de PDFs, la IA etiqueta automáticamente.
  • Mini-CRM: antes de Twenty o un CRM dedicado, suficiente para equipos pequeños.

Instalación: Docker

services:
  nocodb:
    image: nocodb/nocodb:latest
    ports:
      - "127.0.0.1:8081:8080"
    environment:
      - NC_DB=pg://db:5432?u=postgres&p=geheim&d=nocodb
      - NC_AUTH_JWT_SECRET=langer-zufaelliger-string
    depends_on: [db]
    restart: always

  db:
    image: postgres:16
    environment:
      POSTGRES_DB: nocodb
      POSTGRES_PASSWORD: geheim
    volumes: [pg_data:/var/lib/postgresql/data]
    restart: always

volumes:
  pg_data:

O mínimo con SQLite integrado:

services:
  nocodb:
    image: nocodb/nocodb:latest
    ports: ["127.0.0.1:8081:8080"]
    volumes: [nc_data:/usr/app/data]
    restart: always
volumes:
  nc_data:

El primer usuario en http://localhost:8081 será administrador.

Conceptos básicos

  • Base = proyecto o base de datos
  • Tabla = tabla con tipos de columna (texto, número, fecha, selección simple/múltiple, enlaces, archivos adjuntos)
  • Vistas: cuadrícula, kanban, galería, formulario; puedes tener varias por tabla
  • Token API: Configuración → Tokens API, necesario para automatización
  • Webhooks: dispara llamadas HTTP en cambios → n8n

API REST: usar datos programáticamente

# Crear token en la UI, luego:
curl -H "xc-token: DEIN_TOKEN" \
  "http://localhost:8081/api/v2/tables/TABLE_ID/records"

# Crear nuevo registro
curl -X POST -H "xc-token: DEIN_TOKEN" -H "Content-Type: application/json" \
  -d '{"Name": "Max", "Status": "Neu"}' \
  "http://localhost:8081/api/v2/tables/TABLE_ID/records"

La API es completa: CRUD, filtros (where=(Status,eq,Neu)), ordenamiento, paginación; todo lo que n8n o tus propios scripts necesitan.

Integración con n8n

n8n tiene un nodo nativo para NocoDB, pero también funciona con HTTP Request:

Webhook (formulario en sitio web)
    │
    ▼
Nodo Ollama: clasificar texto (categoría, prioridad)
    │
    ▼
Nodo NocoDB: crear registro con categoría de IA
    │
    ▼
Si prioridad=alta → alerta Telegram

Este es el flujo clásico de “IA como enriquecimiento de datos”: entrada sin estructura → IA la estructura → resultado limpio llega a NocoDB.

Ejemplo práctico: triage de tickets con IA

import requests
import ollama

NC = "http://nocodb:8081"
TOKEN = "dein-token"
HEADERS = {"xc-token": TOKEN}
TABLE = "tickets_table_id"

client = ollama.Client(host="http://ollama:11434")

def triage(text):
    resp = client.chat(model="llama3.1:8b", messages=[{
        "role": "user",
        "content": f"Klassifiziere: Kategorie (Bug/Feature/Frage) + "
                   f"Priorität (niedrig/mittel/hoch). Antworte JSON.\n\n{text}"
    }], format="json")
    return resp["message"]["content"]

# Obtener nuevos tickets de NocoDB (Status=Neu)
tickets = requests.get(f"{NC}/api/v2/tables/{TABLE}/records",
    headers=HEADERS, params={"where": "(Status,eq,Neu)"}).json()["list"]

for t in tickets:
    result = triage(t["Beschreibung"])
    import json as j
    data = j.loads(result)
    requests.patch(f"{NC}/api/v2/tables/{TABLE}/records",
        headers=HEADERS,
        json={"Id": t["Id"], "Kategorie": data["kategorie"],
              "Prioritaet": data["prioritaet"], "Status": "Triaigiert"})

Seguridad

  • Configura JWT-Secret (NC_AUTH_JWT_SECRET), de lo contrario se genera de forma insegura.
  • Tokens API: un token por integración, nunca compartas el token admin.
  • Login: por defecto usuario y contraseña; para equipos es posible SSO/LDAP (versión Enterprise).
  • HTTPS: en acceso externo usa proxy inverso con TLS.

NocoDB vs. alternativas

HerramientaFortalezaDebilidad
NocoDBOpen source, API REST, compatible con Airtablesin fórmulas reales
AirtableMaduro, con fórmulascloud, caro, datos en EE.UU.
Baserowsimilar, también open sourceecosistema más pequeño
Postgres directopotentesin interfaz para no técnicos
SupabasePostgres + Auth + Realtimemás complejo, herramienta de desarrollo

Enlaces relacionados

Puntos clave:

  • NocoDB = Airtable open source: interfaz de tablas + base de datos real + API REST.
  • Ideal como capa de datos estructurada para flujos de IA (la IA completa, humanos verifican).
  • Setup con Docker en minutos, Postgres o SQLite detrás.
  • n8n tiene nodo nativo; API REST para tus propios scripts.
  • Para lógica compleja es más potente Supabase/Postgres: NocoDB es el puente sin código.

FAQ

¿NocoDB o Airtable?

NocoDB si quieres auto-hospedarlo y la privacidad es importante: open source, base de datos propia, gratuito. Airtable es más maduro (fórmulas, automatizaciones) pero es cloud y caro.

¿Qué base de datos hay detrás?

NocoDB usa Postgres, MySQL o SQLite como almacenamiento. Para setups pequeños es suficiente SQLite integrado; para equipos usa Postgres en el mismo stack de Compose.

¿Tiene API NocoDB?

Sí, API REST completa (v2) con CRUD, filtros, ordenamiento. Además webhooks para cambios. Es el hub de datos ideal para automatización.

¿Cómo conecto NocoDB con IA?

Típicamente: n8n o tu propio script obtiene registros vía API → Ollama clasifica o resume → escribe el resultado en campos de NocoDB. IA como enriquecedor de datos.

¿Dónde están los límites?

No tiene columnas con fórmulas reales como Airtable, ni lógica de negocio compleja. Para eso necesitas Supabase/Postgres con código propio o un CRM como Twenty.

¿Múltiples usuarios?

Sí: usuarios y roles (Owner, Creator, Editor, Viewer). Completamente suficiente para equipos pequeños; SSO/LDAP disponibles en versión Enterprise.

Fuentes y lecturas adicionales

Volver al blog
Share:

Entradas relacionadas