Saltar al contenido

Referencia · tasks

Listar tareas

GET/tasks

Requiere el scope tasks:read.

Incluye las tareas propias y las de proyectos compartidos donde el usuario es miembro activo. Orden estable por (createdAt, id) ascendente; el cursor es opaco y sobrevive a altas y bajas entre páginas.

Para polling (Zapier/Make/cron), usa updatedAfter con el mayor updatedAt visto: el filtro es estricto (updatedAt > updatedAfter).

Un projectId con formato de id inválido responde 422 con code validation_error (genérico, no invalid_query_param).

Parámetros de query

statusTaskStatus

Filtra por estado de la tarea.

Valores: backlogin_progressdone

projectIdstring

Filtra por proyecto (id de proyecto).

updatedAfterinteger

Solo tareas con updatedAt estrictamente mayor (epoch ms).

Rango: ≥ 0

limitinteger

Tamaño de página.

Rango: 1–100

cursorstring

Cursor opaco devuelto en nextCursor de la página anterior.

Respuestas

200

Página de tareas. nextCursor null = no hay más páginas.

dataarray<Task>obligatorio
Campos de Task
idstringobligatorio
titlestringobligatorio
statusTaskStatusobligatorio

Valores: backlogin_progressdone

priorityTaskPriorityobligatorio

Valores: highmediumlow

progressnumber | nullobligatorio

Rango: 0–100

notesstring | nullobligatorio
projectIdstring | nullobligatorio
deadlinenumber | nullobligatorio

Fin del intervalo o fecha exacta (epoch ms).

deadlineStartnumber | nullobligatorio

Inicio del intervalo (epoch ms).

deadlineTypeDeadlineType | nullobligatorio

Granularidad del deadline (deadline = fin o fecha exacta, deadlineStart = inicio opcional).

Valores: exactdateweekmonthcustom

recurrenceRecurrence | nullobligatorio

Solo la lleva la ocurrencia pendiente de una serie; las completadas van con null.

Campos de Recurrence
frequencyRecurrenceFrequencyobligatorio

Valores: dailyweeklymonthlyyearly

intervalnumber

Rango: 1–99

dayOfWeeknumber

0 = domingo … 6 = sábado.

Rango: 0–6

dayOfMonthnumber

-1 = último día del mes; si no, 1..31.

Rango: -1–31

seriesIdstring | nullobligatorio

Serie recurrente a la que pertenece (pendiente o completada); null si nunca se repitió.

createdAtnumberobligatorio
updatedAtnumberobligatorio
completedAtnumber | nullobligatorio
createdByPersonobligatorio

Cuenta de SecretarIA. Sin correo a propósito.

Campos de Person
idstringobligatorio
namestring | nullobligatorio

Nombre de pila; null si la cuenta ya no existe.

assigneePerson | nullobligatorio

Persona asignada en un proyecto compartido; null = sin asignar.

Campos de Person
idstringobligatorio
namestring | nullobligatorio

Nombre de pila; null si la cuenta ya no existe.

nextCursorstring | nullobligatorio

Cursor opaco para la página siguiente.

401

Key ausente, malformada, inexistente, revocada, expirada o API deshabilitada (invalid_api_key, indistinguibles a propósito).

Códigos: invalid_api_key

403

Scope insuficiente (insufficient_scope), recurso sin acceso (forbidden) o sincronización de calendario de una tarea que creó otra persona (calendar_creator_only).

Códigos: insufficient_scopeforbiddencalendar_creator_only

422

Entrada inválida (invalid_json, unknown_field, missing_field, invalid_field, invalid_query_param, empty_patch, body_too_large — cuerpos de más de 64 KB —, invalid_idempotency_key, validation_error, y al asignar assignee_not_member, task_not_shared, task_private).

Códigos: invalid_jsonunknown_fieldmissing_fieldinvalid_fieldinvalid_query_paramempty_patchbody_too_largeinvalid_idempotency_keyvalidation_errorassignee_not_membertask_not_sharedtask_private

429

Límite superado (rate_limited) — 60 req/min (ráfagas de 20) y 5.000 req/día por key. Reintentar tras Retry-After.

Códigos: rate_limited

Cabecera Retry-After: Segundos (enteros) a esperar antes de reintentar.

500

Error interno (internal_error). Cuerpo opaco a propósito; reintentar con backoff.

Códigos: internal_error

Documentación