Ir al contenido

Identificadores

Cada id de recurso es una cadena de la forma <prefix>_<value>. El prefijo nombra el tipo de recurso, de modo que pasar un id del tipo incorrecto se rechaza con 422 validation_error (invalid_request) en lugar de resolver silenciosamente el recurso equivocado.

Prefijo Recurso Ejemplo
task_ tarea task_6594a1b2c3d4e5f6a7b8c9d0
subtask_ subtarea compuesto — ver abajo
time_log_ bloque de tiempo (time log) compuesto — ver abajo
event_ evento programado event_6594a1b2c3d4e5f6a7b8c9e0
proj_ proyecto proj_6594a1b2c3d4e5f6a7b8c9a0
user_ miembro del espacio de trabajo user_6594a1b2c3d4e5f6a7b8c9b0
tag_ etiqueta tag_6594a1b2c3d4e5f6a7b8c9c0
task_status_ estado de tarea task_status_6594a1b2c3d4e5f6a7b8c9d2
task_type_ tipo de tarea task_type_6594a1b2c3d4e5f6a7b8c9d3
event_type_ tipo de evento event_type_6594a1b2c3d4e5f6a7b8c9d4
proj_status_ estado de proyecto proj_status_6594a1b2c3d4e5f6a7b8c9d5
cf_ campo personalizado cf_6594a1b2c3d4e5f6a7b8c9d6
cf_option_ opción de campo personalizado cf_option_6594a1b2c3d4e5f6a7b8c9d7
attachment_ adjunto attachment_6594a1b2c3d4e5f6a7b8c9d8
chat_message_ mensaje de chat chat_message_6594a1b2c3d4e5f6a7b8c9d9

La mayoría de los recursos usan la forma simple <prefix>_<value>. Dos cosas añaden partes adicionales: subtareas/bloques de tiempo (time logs) (que codifican su tarea padre) y repeticiones de series recurrentes (que añaden una fecha).

Id compuestos: subtareas y bloques de tiempo (time logs)

Sección titulada «Id compuestos: subtareas y bloques de tiempo (time logs)»

Una subtarea o un bloque de tiempo (time log) siempre se direcciona junto con su tarea padre, por lo que su id lleva ambos — primero el hijo, luego la tarea padre:

subtask_<child>_<parent task>
time_log_<child>_<parent task>

Para una tarea task_6594a1b2c3d4e5f6a7b8c9d0:

Recurso Id de ejemplo
subtarea subtask_6594a1b2c3d4e5f6a7b8c9d1_6594a1b2c3d4e5f6a7b8c9d0
bloque de tiempo (time log) time_log_6594a1b2c3d4e5f6a7b8c9d2_6594a1b2c3d4e5f6a7b8c9d0

El 6594a1b2c3d4e5f6a7b8c9d0 final es el valor de la tarea padre. Sigue siendo una única cadena opaca — pasas el conjunto completo como un solo id, no lo ensamblas a partir de partes.

Una serie recurrente tiene un id simple — task_<value> o event_<value> — que direcciona la serie completa (leerla, editar la regla, eliminar cada repetición).

Una única repetición (occurrence) de esa serie se direcciona añadiendo la hora de inicio de la repetición (UTC, YYYYMMDDTHHMMSSZ):

task_<series>_<date> e.g. task_6594a1b2c3d4e5f6a7b8c9d0_20260113T090000Z
event_<series>_<date> e.g. event_6594a1b2c3d4e5f6a7b8c9e0_20260113T090000Z

Cuando editas esta repetición y todas las siguientes, la API puede devolverte un id de serie marcado con una R antes de la fecha — esta es una serie distinta “de aquí en adelante”, que sigue siendo opaca:

task_6594a1b2c3d4e5f6a7b8c9d0_R20260113T090000Z

Cualquier cosa que pertenezca a una repetición lleva el mismo sufijo de fecha después de la parte compuesta — así que una subtarea o un bloque de tiempo (time log) de una repetición se ve así:

subtask_6594a1b2c3d4e5f6a7b8c9d1_6594a1b2c3d4e5f6a7b8c9d0_20260113T090000Z
time_log_6594a1b2c3d4e5f6a7b8c9d2_6594a1b2c3d4e5f6a7b8c9d0_20260113T090000Z
Quieres… Usa
Leer/actualizar/eliminar la serie completa el id simple de la serie — task_<series>
Actuar sobre una repetición el id de la repetición — task_<series>_<date>
Actuar sobre una repetición y todas las siguientes el id marcado con R que devolvió la API

Como tratas cada id como opaco, los mismos endpoints funcionan sin importar la forma. GET /tasks/{id} acepta un id simple de tarea, un id de repetición o un id de serie marcado con R — no tratas el formato como un caso especial, y no necesitas saber cuál tienes. Lee los id de las respuestas, guárdalos enteros y devuélvelos exactamente como los recibiste.