Notion
Descripción
Sección titulada «Descripción»Los nodos Notion conectan tus workflows con Notion a través de su API REST. Con ellos podés automatizar tu workspace: crear una página (fila) en una base de datos cuando entra un lead, consultar una base de datos con filtros, agregar contenido a una página o dejar un comentario.
Hay seis nodos:
| Nodo | Operación | Método HTTP |
|---|---|---|
Notion: Crear página (notionCreatePage) | Crea una página (fila de una base de datos o subpágina) | POST /pages |
Notion: Leer página (notionGetPage) | Lee una página por su id | GET /pages/{id} |
Notion: Actualizar página (notionUpdatePage) | Actualiza propiedades / archiva | PATCH /pages/{id} |
Notion: Consultar base de datos (notionQueryDatabase) | Consulta con filtros y orden | POST /databases/{id}/query |
Notion: Agregar contenido (notionAppendBlocks) | Agrega bloques a una página | PATCH /blocks/{id}/children |
Notion: Comentar página (notionAddComment) | Agrega un comentario | POST /comments |
Credencial
Sección titulada «Credencial»Los nodos usan una credencial de tipo Notion. Creala en Credenciales → Agregar → Notion con este campo:
| Campo | Descripción |
|---|---|
| Token de integración | El Internal Integration Secret, desde notion.so/my-integrations. Nunca se muestra en logs. |
La autenticación es Bearer con el token de la integración. Podés probar la credencial con el botón Test, que llama a GET /users/me.
Nota importante: properties tipadas
Sección titulada «Nota importante: properties tipadas»En Notion las propiedades de una página son objetos tipados según el tipo de columna (título, texto, select, fecha, número, relación…). Por eso los campos properties, filter y sorts se pasan como JSON con el formato de la API de Notion. Por ejemplo, el título:
{ "Name": { "title": [ { "text": { "content": "Nuevo lead" } } ] } }Notion: Crear página (notionCreatePage)
Sección titulada «Notion: Crear página (notionCreatePage)»| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
| credentials_id | credencial | Sí | Credencial de Notion |
| database_id | texto | No* | id de la base de datos padre (la página es una fila) |
| parent_page_id | texto | No* | id de la página padre (si no es una base de datos) |
| properties | JSON | Sí | Propiedades de la página (formato Notion) |
| children | JSON | No | Bloques de contenido inicial |
*Necesitás uno de database_id o parent_page_id. Salida: la página creada, con su id y url.
Notion: Leer página (notionGetPage)
Sección titulada «Notion: Leer página (notionGetPage)»| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
| credentials_id | credencial | Sí | Credencial de Notion |
| page_id | texto | Sí | id de la página |
Notion: Actualizar página (notionUpdatePage)
Sección titulada «Notion: Actualizar página (notionUpdatePage)»| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
| credentials_id | credencial | Sí | Credencial de Notion |
| page_id | texto | Sí | id de la página |
| properties | JSON | No | Propiedades a actualizar (formato Notion) |
| archived | texto | No | true para archivar, false para restaurar |
Notion: Consultar base de datos (notionQueryDatabase)
Sección titulada «Notion: Consultar base de datos (notionQueryDatabase)»| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
| credentials_id | credencial | Sí | Credencial de Notion |
| database_id | texto | Sí | id de la base de datos |
| filter | JSON | No | Filtro (formato Notion) |
| sorts | JSON | No | Orden (array, formato Notion) |
| page_size | número | No | Máximo de resultados (1-100) |
Salida: el array de páginas (results) que cumplen la consulta.
Notion: Agregar contenido (notionAppendBlocks)
Sección titulada «Notion: Agregar contenido (notionAppendBlocks)»| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
| credentials_id | credencial | Sí | Credencial de Notion |
| block_id | texto | Sí | id de la página o bloque padre |
| text | texto | No | Texto simple (crea un párrafo) |
| children | JSON | No | Bloques de contenido (formato Notion) |
Pasá children (bloques a medida) o text (párrafo simple). Si das ambos, mandan los bloques.
Notion: Comentar página (notionAddComment)
Sección titulada «Notion: Comentar página (notionAddComment)»| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
| credentials_id | credencial | Sí | Credencial de Notion |
| page_id | texto | Sí | id de la página |
| text | texto | Sí | Texto del comentario |
Ejemplo
Sección titulada «Ejemplo»Crear una fila en una base de datos de leads a partir de un formulario:
- Nodo: Notion: Crear página
- database_id:
1a2b3c4d5e6f7a8b9c0d1e2f3a4b5c6d - properties:
{ "Name": { "title": [ { "text": { "content": "{{data.cliente}}" } } ] }, "Email": { "email": "{{data.email}}" }, "Estado":{ "select": { "name": "Nuevo" } }}Salida:
{ "id": "8b9c0d1e-2f3a-4b5c-6d7e-8f9a0b1c2d3e", "url": "https://www.notion.so/8b9c0d1e2f3a4b5c6d7e8f9a0b1c2d3e", "object": "page"}Manejo de errores
Sección titulada «Manejo de errores»Cada nodo clasifica los errores para que el motor sepa si tiene sentido reintentar:
| Situación | Reintentable | Qué hacer |
|---|---|---|
| Validación (400) | No | Notion devuelve el motivo (ej. propiedad inexistente o tipo incorrecto). Corregí el JSON. |
| No encontrado (404) | No | La página/base de datos no existe o no está compartida con la integración. Compartila y revisá el id. |
| Autenticación (401/403) | No | Token inválido o sin permiso. Revisá la credencial. |
| Conflicto (409) | Sí | Conflicto temporal de Notion; se reintenta automáticamente. |
| Servidor (500) | Sí | Error temporal de Notion; se reintenta. |
| Límite de tasa (429) | Sí | Se respeta el Retry-After de Notion (≈3 req/s) y se reintenta. |
| Red / Timeout | Sí | Problema pasajero; se reintenta automáticamente. |
Ver también
Sección titulada «Ver también»- Jira (Atlassian), Asana y Trello — otras integraciones de gestión de trabajo.
- Cola de reintentos (DLQ) — cómo se reintentan las ejecuciones que fallan.
- Nodo HTTP — para endpoints de Notion no cubiertos por estos nodos (search, users, blocks…).