Asana
Descripción
Sección titulada «Descripción»Integración con Asana a través de su API REST 1.0. La familia cubre el ciclo de vida de una tarea: crearla en un proyecto, leerla, actualizar cualquier campo, listar todo lo que hay en un proyecto, comentar y borrar.
La autenticación la resuelve el módulo de credenciales (proveedor asana) con un token Bearer: un Personal Access Token (PAT) de Asana.
Operaciones
Sección titulada «Operaciones»Los nodos de un vistazo
Sección titulada «Los nodos de un vistazo»| Nodo | Nombre interno | Llamada HTTP |
|---|---|---|
| Asana: Crear tarea | asanaCreateTask | POST /tasks |
| Asana: Leer tarea | asanaGetTask | GET /tasks/{gid} |
| Asana: Actualizar tarea | asanaUpdateTask | PUT /tasks/{gid} |
| Asana: Listar tareas | asanaListTasks | GET /tasks?project={gid} |
| Asana: Borrar tarea | asanaDeleteTask | DELETE /tasks/{gid} |
| Asana: Comentar tarea | asanaAddComment | POST /tasks/{gid}/stories |
Configuración
Sección titulada «Configuración»Todos los nodos de la familia comparten un parámetro; el resto está documentado en la página de cada operación.
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
| credentials_id | credencial | Sí | Credencial de Asana (proveedor asana) |
Credenciales
Sección titulada «Credenciales»Proveedor: asana. Creala en Credenciales → Agregar → Asana.
| Campo | Descripción |
|---|---|
access_token | Personal Access Token, generado en app.asana.com/0/my-apps. Se enmascara en los logs. |
default_workspace_gid | Opcional. gid del workspace que se usa cuando un nodo no especifica ninguno. |
timeout | Opcional. Tiempo máximo de espera en milisegundos (por defecto 20000). |
La autenticación es Bearer (Authorization: Bearer <PAT>). El botón Test llama a GET /users/me y devuelve el nombre de la cuenta autenticada.
Importante: los identificadores gid
Sección titulada «Importante: los identificadores gid»En Asana cada objeto se identifica con un gid: una cadena de dígitos, no un número. Tareas, proyectos, workspaces, usuarios y comentarios usan uno. Guardalos siempre como texto en tu workflow para no perder dígitos por el camino.
El gid de un proyecto se lee en su URL dentro de Asana (app.asana.com/0/<project_gid>/…), o descubriendo recursos con el nodo HTTP.
Importante: el envoltorio data
Sección titulada «Importante: el envoltorio data»Asana envuelve tanto la petición como la respuesta dentro de un { "data": … }. Los nodos se ocupan de eso por vos: envuelven lo que enviás y desenvuelven lo que llega, así que al nodo siguiente le llega el objeto directo, sin un nivel data extra que haya que atravesar.
Cada nodo devuelve la respuesta de Asana en data, más un objeto _meta con la versión del módulo y los tiempos:
{ "data": { "gid": "1209876543210987", "resource_type": "task", "name": "Seguimiento: ACME S.A.", "completed": false }, "_meta": { "moduleVersion": "1.0.0", "success": true, "gid": "1209876543210987", "totalMs": 305 }}Si algo falla, el nodo corta la rama y devuelve un objeto error en lugar de continuar:
{ "data": {}, "error": { "message": "project: Not a recognized ID", "type": "validation", "status": 400 }}API utilizada
Sección titulada «API utilizada»- API REST 1.0 de Asana — https://developers.asana.com/reference/rest-api-reference
- Las variables dinámicas tipo
{{data.cliente}}se resuelven en los parámetros de texto:name,notes,project_gid,assignee,due_on,task_gidytext. No se resuelven dentro del JSONfields, ni enopt_fields, ni enlimit, ni enworkspace_gid. - Los reintentos son automáticos, con un tope de 3 intentos y espera exponencial, ante errores de red, timeouts,
429(respetandoRetry-After) y5xx. Los errores de validación,404y de autenticación no se reintentan. - El tiempo máximo de espera por defecto es de 20 segundos; podés subirlo con el campo
timeoutde la credencial. - El token nunca se escribe completo en los logs: solo aparece enmascarado, del estilo
1/12…9f0a.
Ver también
Sección titulada «Ver también»- Jira (Atlassian) — la familia equivalente para tickets e incidencias.
- Variables dinámicas — cómo se resuelve
{{data.campo}}. - Cola de reintentos (DLQ) — cómo se reintentan las ejecuciones que fallan.
- Nodo HTTP — para endpoints de Asana que estos nodos no cubren.