Ir al contenido

Monday.com

Los nodos Monday.com conectan tus workflows con Monday.com a través de su API GraphQL. Con ellos podés automatizar tu gestión de trabajo: crear un ítem cuando entra un pedido, actualizar el estado de una columna al avanzar un proceso, agregar un update (comentario) con el resultado, o leer un ítem para procesarlo.

A diferencia de una API REST clásica, Monday tiene un solo endpoint GraphQL: POST https://api.monday.com/v2. Cada operación es una query o mutation.

Hay seis nodos:

NodoOperaciónGraphQL
Monday: Crear ítem (mondayCreateItem)Crea un ítem en un tableromutation create_item
Monday: Leer ítem (mondayGetItem)Lee un ítem por su idquery items
Monday: Actualizar ítem (mondayUpdateItem)Actualiza valores de columnasmutation change_multiple_column_values
Monday: Borrar ítem (mondayDeleteItem)Borra un ítemmutation delete_item
Monday: Agregar update (mondayAddUpdate)Agrega un update/comentariomutation create_update
Monday: Query GraphQL (mondayQuery)Ejecuta GraphQL crudocualquier query/mutation

Los nodos usan una credencial de tipo Monday. Creala en Credenciales → Agregar → Monday con este campo:

CampoDescripción
tokenEl token personal, desde Monday → Avatar → Developers → My access tokens (o Admin → API). Nunca se muestra en logs.

La autenticación de Monday envía el token en el header Authorization tal cual (sin prefijo Bearer). Los nodos agregan además el header API-Version: 2024-10. Podés probar la credencial con el botón Test, que ejecuta la query { me { name } }.

Nota importante: GraphQL, ids, column_values y errores 200

Sección titulada «Nota importante: GraphQL, ids, column_values y errores 200»
  • Un solo endpoint GraphQL. No hay rutas REST: todo va como query/mutation a https://api.monday.com/v2.
  • Monday responde HTTP 200 aunque haya errores. Un error de GraphQL (columna inexistente, argumento inválido, límite de complejidad) llega igual con status 200 y el detalle en errors[]. Los nodos detectan errors[] y propagan el error con su mensaje, en vez de darte por bueno un ítem que no se creó.
  • column_values es un JSON stringificado, no un objeto. En el editor lo cargás como JSON normal (ej. {"status":{"label":"Done"}}) y el nodo lo convierte a string antes de enviarlo como variable GraphQL de tipo JSON.
  • Los ids son numéricos: board_id, item_id, group_id. El id de un tablero lo ves en la URL del tablero en Monday; el id de un ítem, al abrirlo.
  • Límite por complejidad (429). Monday cobra cada query por su “complejidad”: pasado el presupuesto, devuelve ComplexityException / rate limit. Los nodos lo tratan como reintentable y respetan el Retry-After.
ParámetroTipoRequeridoDescripción
credentials_idcredencialSíCredencial de Monday
board_idtextoSíid numérico del tablero
group_idtextoNoid del grupo dentro del tablero
item_nametextoSíNombre del ítem
column_valuesJSONNoValores de columnas, ej. {"status":{"label":"Done"}} (se envía como JSON stringificado)

Salida: el ítem creado, con su id y name.

ParámetroTipoRequeridoDescripción
credentials_idcredencialSíCredencial de Monday
item_idtextoSíid numérico del ítem

Salida: el ítem con sus column_values (id, text, value).

ParámetroTipoRequeridoDescripción
credentials_idcredencialSíCredencial de Monday
board_idtextoSíid numérico del tablero
item_idtextoSíid numérico del ítem
column_valuesJSONSíValores a actualizar, ej. {"status":{"label":"Working on it"}}
ParámetroTipoRequeridoDescripción
credentials_idcredencialSíCredencial de Monday
item_idtextoSíid numérico del ítem a borrar
ParámetroTipoRequeridoDescripción
credentials_idcredencialSíCredencial de Monday
item_idtextoSíid numérico del ítem
bodytextoSíTexto del update/comentario

Escape hatch para todo lo que no cubren los nodos anteriores (crear tableros, subtareas, columnas, webhooks, consultas complejas…).

ParámetroTipoRequeridoDescripción
credentials_idcredencialSíCredencial de Monday
querytextoSíQuery o mutation GraphQL
variablesJSONNoVariables de la operación

Salida: el res.data completo que devuelve Monday.

Crear un ítem a partir de un formulario:

  • Nodo: Monday: Crear ítem
  • board_id: 1234567890
  • item_name: Pedido: {{data.cliente}}
  • column_values: {"status":{"label":"Nuevo"},"text":"{{data.detalle}}"}

Salida:

{
"id": "9876543210",
"name": "Pedido: ACME S.A."
}

Cada nodo clasifica los errores para que el motor sepa si tiene sentido reintentar. Recordá que Monday responde 200 con errors[]: el nodo los detecta y clasifica por el código de extensions.code.

SituaciónReintentableQué hacer
Validación (GraphQL errors[])NoMonday devuelve el motivo (columna inexistente, column_values inválido, board_id inválido). Corregí los datos.
Autenticación (UserUnauthorizedException / 401/403)NoToken inválido o sin permiso. Revisá la credencial.
Límite de complejidad / tasa (ComplexityException / 429)SíSe respeta el Retry-After y se reintenta automáticamente.
Servidor (5xx)SíError temporal de Monday; se reintenta automáticamente.
Red / TimeoutSíProblema pasajero; se reintenta automáticamente.