Airtable
Descripcion
Sección titulada «Descripcion»Este modulo permite interactuar con la API de Airtable para gestionar bases de datos, tablas y registros. Soporta operaciones CRUD completas: listar bases, obtener el schema de tablas, listar registros con filtros y paginacion, obtener un registro especifico, crear registros, actualizar registros (con soporte upsert) y eliminar registros.
La autenticacion se realiza mediante OAuth2 a traves del servicio airtableOAuthService. Los registros pueden resolverse desde la configuracion del nodo o desde los datos de entrada del workflow, incluyendo soporte para variables dinamicas con sintaxis {{path.to.value}}.
Configuracion
Sección titulada «Configuracion»| Parametro | Tipo | Requerido | Descripcion |
|---|---|---|---|
| credentials_id | credentials | Si | Cuenta de Airtable (OAuth) |
| operation | select | Si | Operacion: listBases, getSchema, listRecords, getRecord, createRecords, updateRecords, deleteRecords |
| baseId | text | Condicional | ID de la base (empieza con app…) |
| tableId | text | Condicional | ID de la tabla (tbl…) o nombre |
| recordId | text | Condicional | ID del registro (rec…) para getRecord |
| filterFormula | text | No | Formula de filtro Airtable (ej: {Status} = ‘Active’) |
| view | text | No | Nombre de la vista a utilizar |
| pageSize | number | No | Registros por pagina (max 100, default: 100) |
| fields | array | No | Campos especificos a retornar |
| sort | array | No | Configuracion de ordenamiento |
| records | array | Condicional | Registros a crear o actualizar |
| recordIds | array | Condicional | IDs de registros a eliminar |
| upsert | boolean | No | Crear registros si no existen (default: false) |
| mergeFields | array | No | Campos para emparejar en modo upsert |
| outputKey | text | No | Clave donde se almacenan los resultados |
Credenciales
Sección titulada «Credenciales»Tipo de servicio: airtable. Se gestionan mediante OAuth2 a traves del servicio airtableOAuthService.
Campos de configuracion:
- Autenticacion OAuth2 con permisos de lectura/escritura sobre bases y registros
{ "success": true, "operation": "listRecords", "baseId": "appXXXXXXXXXXXXXX", "tableId": "tblXXXXXXXXXXXXXX", "records": [ { "id": "recXXXXXXXXXXXXXX", "fields": { "Name": "Ejemplo", "Status": "Active", "Email": "ejemplo@email.com" } } ], "offset": null}Ejemplo de Uso
Sección titulada «Ejemplo de Uso»Caso basico - Listar registros
Sección titulada «Caso basico - Listar registros»{ "credentials_id": 1, "operation": "listRecords", "baseId": "appABC123", "tableId": "Clientes", "filterFormula": "{Status} = 'Active'", "pageSize": 50}API Utilizada
Sección titulada «API Utilizada»- Airtable Web API
- Documentacion: https://airtable.com/developers/web/api
- El limite de registros por pagina es 100 (impuesto por Airtable)
- Los filtros usan la sintaxis de formulas de Airtable:
{Campo}= ‘Valor’ - Las operaciones de creacion y actualizacion aceptan arrays de registros para procesamiento por lotes
- El modo upsert permite crear registros si no se encuentra coincidencia en mergeFields
- Los valores de configuracion soportan variables dinamicas con sintaxis
{{path.to.value}} - Los registros pueden provenir de la configuracion del nodo, de input.records o de input.data
- La paginacion usa el campo offset retornado por Airtable para obtener la siguiente pagina
Nodos Relacionados
Sección titulada «Nodos Relacionados»- Supabase - Base de datos PostgreSQL como servicio
- Google Sheets - Hojas de calculo de Google