Skip to content
ver .md sin procesar

Plan · Comentarios y archivos

Comentarios, reacciones, adjuntos y el feed de actividad y registro de eventos de cada tarea. Parte de la API de Dailybot Plan (Beta).

En esta página

Beta

Plan está en beta. Todo lo que está bajo /plan en la aplicación web, los comandos del CLI y de la agent skill para proyectos, objetivos, tableros y tareas, y la API pública /v1/plan/ puede cambiar antes de la disponibilidad general. ¿Quieres probarlo con tu equipo? Escribe a [email protected].

GET/v1/plan/tasks/{task_id}/comments/BetaAPI keyCLI AuthPaginación por número de página

Listar los comentarios de una tarea

Los comentarios de la tarea, del más antiguo al más reciente, en una página. Cada comentario trae sus reacciones y sus attachments listos. Usa updated_since para traer solo lo que cambió desde tu última lectura.

Parámetros de ruta

NombreTipoRequeridoDescripción
task_idstringRequeridoUn uuid de tarea o su clave, como ENG-142, incluida una clave retirada por el cambio de nombre de un tablero. La resolución se limita primero a tu organización, así que la clave de otra organización es un 404 idéntico al de una inexistente. Los ids numéricos nunca se aceptan.

Parámetros de consulta

NombreTipoRequeridoDescripción
pageintegerOpcionalNúmero de página, empezando en 1.
page_sizeintegerOpcionalFilas por página. 50 por defecto, máximo 100. Los valores fuera de rango se ajustan, nunca se rechazan: pedir 500 devuelve 100.
updated_sincestringOpcionalUn filtro de marca de tiempo sobre esta lista paginada: devuelve {count, next, previous, results}, nunca un cursor. Para un feed de cambios usa el endpoint delta del tablero.

Objeto TaskComment

NombreTipoRequeridoDescripción
uuiduuidRequeridoIdentificador público estable.
bodystringRequeridoMarkdown tal como se escribió. Menciona a alguien con <@DB@{uuid}>, usando un uuid de la lista de mencionables. Máx. 10000 caracteres.
authorActorRef | nullRequeridoQuién escribió el comentario. Ver ActorRef.
executed_by_agentobject | nullOpcionalEl agente que ejecutó esto en nombre de la persona, o null si no se nombró a ninguno: un objeto con uuid, name, username y avatar. La persona del campo de autor sigue siendo la autora; el agente se muestra como quien lo ejecutó.
mentionsarray<ActorRef>OpcionalLas personas mencionadas. Léelas desde aquí, nunca analizando body. Ver ActorRef.
body_htmlstringOpcionalbody renderizado y sanitizado por el servidor. Nunca se acepta HTML del cliente.
reactionsarrayOpcionalReacciones con emoji, indicando si reaccionaste. Todos los campos están siempre presentes. Elementos: {emoji: string, count: integer, reacted: boolean}.
provenanceenumRequeridotyped por una persona, agent_authored, o retrieved desde otro sistema. Uno de typed, agent_authored, retrieved.
parent_commentuuid | nullOpcionalEl comentario al que responde este. Solo un nivel de hilo.
edited_atdate-time | nullOpcionalCuándo se editó el comentario por última vez.
is_deletedbooleanOpcionalLos comentarios eliminados conservan su fila con el cuerpo vacío.
created_atdate-timeRequeridoCuándo se creó la fila.
attachmentsarray<TaskAttachment>OpcionalLos adjuntos listos del comentario, ordenados por posición. Ver TaskAttachment.

Objeto ActorRef

NombreTipoRequeridoDescripción
kindstringRequerido—
uuidstringRequeridoIdentificador público estable.
namestringOpcionalNombre visible.
usernamestring | nullOpcional—
avatar_urlstring | nullOpcional—
has_photobooleanOpcional—

Objeto TaskAttachment

NombreTipoRequeridoDescripción
uuiduuidRequeridoIdentificador público estable.
filenamestringRequeridoNombre del archivo.
content_typestringRequeridoTipo MIME.
sizeintegerRequeridoTamaño en bytes.
urlstringRequeridoDónde descargar el archivo.
thumbnail_urluri | nullOpcionalMiniatura para imágenes.
widthinteger | nullOpcional—
heightinteger | nullOpcional—
statusenumRequeridoEstado actual. Uno de pending, ready, scanning, rejected.
uploaded_byActorRef | nullOpcionalQuién subió el archivo. Ver ActorRef.
executed_by_agentobject | nullOpcionalEl agente que ejecutó esto en nombre de la persona, o null si no se nombró a ninguno: un objeto con uuid, name, username y avatar. La persona del campo de autor sigue siendo la autora; el agente se muestra como quien lo ejecutó.
created_atdate-timeRequeridoCuándo se creó la fila.

Respuesta

NombreTipoRequeridoDescripción
countintegerRequeridoNúmero total de filas.
nexturiRequeridoURL de la página siguiente, o null.
previousuriRequeridoURL de la página anterior, o null.
resultsarray<TaskComment>RequeridoLas filas de esta página. Ver TaskComment.

Errores

EstadoCuándo
401Credencial ausente, vencida o con formato inválido (`credential_absent`, `credential_expired`, `credential_malformed`).
402Plan aún no está habilitado para tu organización (`plan_upgrade_required`). Es lo esperado durante la Beta: escribe a [email protected].
404No existe o no es visible para ti. Ambos casos devuelven el mismo cuerpo.
curl -sS "https://api.dailybot.com/v1/plan/tasks/ENG-142/comments/" \
  -H "X-API-KEY: $DAILYBOT_API_KEY"

Probarlo

Este es un asistente de solo copia — la solicitud no se envía desde tu navegador. Pega el comando en tu terminal para ejecutarlo.

  • Scope: `tasks:read`.
  • Límite de solicitudes: 120 lecturas por minuto por actor.
  • Funciona con una sesión iniciada, un token de usuario del CLI, una API key personal, o una key de agente o de la organización. Una key personal ve lo que ve su persona; una key de agente o de la organización actúa como actor del sistema y solo ve los tableros visibles para la organización.
POST/v1/plan/tasks/{task_id}/comments/BetaAPI keyCLI Auth

Comentar en una tarea

Agrega un comentario a la tarea. Menciona a alguien con <@DB@{uuid}>, usando un uuid de las personas mencionables del tablero. Envía un Idempotency-Key para reintentar sin riesgo.

Parámetros de ruta

NombreTipoRequeridoDescripción
task_idstringRequeridoUn uuid de tarea o su clave, como ENG-142, incluida una clave retirada por el cambio de nombre de un tablero. La resolución se limita primero a tu organización, así que la clave de otra organización es un 404 idéntico al de una inexistente. Los ids numéricos nunca se aceptan.

Encabezados

NombreTipoRequeridoDescripción
Idempotency-KeystringOpcionalUna clave que generas para esta intención. Una repetición con la misma clave y el mismo cuerpo devuelve la primera respuesta sin un segundo efecto secundario y lleva Idempotency-Replayed: true. Las claves se conservan durante 24 horas. La misma clave con un cuerpo distinto es 409 idempotency_key_payload_mismatch; una repetición mientras la primera llamada sigue en curso recibe 409 idempotency_in_progress durante hasta 120 segundos.
X-Dailybot-Agent-NamestringOpcionalEl nombre del agente que ejecutó esta escritura en nombre de la persona. Úsalo en escrituras multipart y sin cuerpo (DELETE, archivar, restaurar); en escrituras JSON envía el campo agent_name del cuerpo, que gana si vienen los dos. Codifica el valor con percent-encoding (UTF-8). Los caracteres de control se eliminan; un valor vacío significa sin agente. Más de 128 caracteres, o un valor que no se puede decodificar, es 400 invalid_agent_attribution (nunca se trunca). Una clave de tipo agente, que no está ligada a una persona, recibe 400 invalid_agent_attribution si lo envía. El sello nunca cambia una respuesta de permisos. Ver Atribución de agente.

Cuerpo de la solicitud

NombreTipoRequeridoDescripción
bodystringRequeridoMarkdown. Menciona a alguien con <@DB@{uuid}>, usando un uuid de la lista de mencionables. Máx. 10000 caracteres.
parent_commentuuid | nullOpcionalEl comentario al que responde este. Solo un nivel de hilo.
agent_namestringOpcionalEl nombre del agente que ejecutó esta escritura en nombre de la persona (máx. 128 caracteres, vacío significa sin agente). Tiene prioridad sobre el header X-Dailybot-Agent-Name. Ver Atribución de agente.

Respuesta

NombreTipoRequeridoDescripción
(body)TaskCommentRequeridoUn objeto TaskComment.

Errores

EstadoCuándo
400La validación falló, o no se reconoció un valor de filtro, orden o `include`. El `code` de la respuesta indica cuál. `invalid_agent_attribution` significa que el nombre del agente no es válido.
401Credencial ausente, vencida o con formato inválido (`credential_absent`, `credential_expired`, `credential_malformed`).
402Plan aún no está habilitado para tu organización (`plan_upgrade_required`). Es lo esperado durante la Beta: escribe a [email protected].
404No existe o no es visible para ti. Ambos casos devuelven el mismo cuerpo.
curl -sS -X POST "https://api.dailybot.com/v1/plan/tasks/ENG-142/comments/" \
  -H "X-API-KEY: $DAILYBOT_API_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{
    "body": "Looks good. <@DB@00000000-0000-4000-8000-00000000000c> can you review the rollout plan?"
  }'

Probarlo

Este es un asistente de solo copia — la solicitud no se envía desde tu navegador. Pega el comando en tu terminal para ejecutarlo.

  • Scope: `tasks:write`.
  • Límite de solicitudes: 60 escrituras por minuto por actor.
  • Funciona con una sesión iniciada, un token de usuario del CLI, una API key personal, o una key de agente o de la organización. Una key personal ve lo que ve su persona; una key de agente o de la organización actúa como actor del sistema y solo ve los tableros visibles para la organización.
PATCH/v1/plan/tasks/{task_id}/comments/{comment_id}/BetaAPI keyCLI Auth

Editar un comentario

Edita el cuerpo de un comentario. Solo su autor puede editarlo (403 comment_not_author); la respuesta fija edited_at.

Parámetros de ruta

NombreTipoRequeridoDescripción
task_idstringRequeridoUn uuid de tarea o su clave, como ENG-142, incluida una clave retirada por el cambio de nombre de un tablero. La resolución se limita primero a tu organización, así que la clave de otra organización es un 404 idéntico al de una inexistente. Los ids numéricos nunca se aceptan.
comment_idstringRequeridoEl uuid del comentario.

Encabezados

NombreTipoRequeridoDescripción
X-Dailybot-Agent-NamestringOpcionalEl nombre del agente que ejecutó esta escritura en nombre de la persona. Úsalo en escrituras multipart y sin cuerpo (DELETE, archivar, restaurar); en escrituras JSON envía el campo agent_name del cuerpo, que gana si vienen los dos. Codifica el valor con percent-encoding (UTF-8). Los caracteres de control se eliminan; un valor vacío significa sin agente. Más de 128 caracteres, o un valor que no se puede decodificar, es 400 invalid_agent_attribution (nunca se trunca). Una clave de tipo agente, que no está ligada a una persona, recibe 400 invalid_agent_attribution si lo envía. El sello nunca cambia una respuesta de permisos. Ver Atribución de agente.

Cuerpo de la solicitud

NombreTipoRequeridoDescripción
bodystringRequeridoMarkdown. Menciona a alguien con <@DB@{uuid}>, usando un uuid de la lista de mencionables. Máx. 10000 caracteres.
parent_commentuuid | nullOpcionalEl comentario al que responde este. Solo un nivel de hilo.
agent_namestringOpcionalEl nombre del agente que ejecutó esta escritura en nombre de la persona (máx. 128 caracteres, vacío significa sin agente). Tiene prioridad sobre el header X-Dailybot-Agent-Name. Ver Atribución de agente.

Respuesta

NombreTipoRequeridoDescripción
(body)TaskCommentRequeridoUn objeto TaskComment.

Errores

EstadoCuándo
400El nombre del agente no es válido (`invalid_agent_attribution`).
401Credencial ausente, vencida o con formato inválido (`credential_absent`, `credential_expired`, `credential_malformed`).
402Plan aún no está habilitado para tu organización (`plan_upgrade_required`). Es lo esperado durante la Beta: escribe a [email protected].
403Autenticado pero sin permiso: falta el scope (`insufficient_scope`, que es también lo que recibe una key de agente o de la organización en una operación que requiere una persona, y lo que recibe una key personal cuando sus scopes de Plan explícitos no cubren el endpoint) o es una cuenta de invitado (`guest_not_allowed`).
404No existe o no es visible para ti. Ambos casos devuelven el mismo cuerpo.
curl -sS -X PATCH "https://api.dailybot.com/v1/plan/tasks/ENG-142/comments/00000000-0000-4000-8000-000000000008/" \
  -H "X-API-KEY: $DAILYBOT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "body": "Looks good. Rollout plan attached."
  }'

Probarlo

Este es un asistente de solo copia — la solicitud no se envía desde tu navegador. Pega el comando en tu terminal para ejecutarlo.

  • Scope: `tasks:write`.
  • Límite de solicitudes: 60 escrituras por minuto por actor.
  • Funciona con una sesión iniciada, un token de usuario del CLI, una API key personal, o una key de agente o de la organización. Una key personal ve lo que ve su persona; una key de agente o de la organización actúa como actor del sistema y solo ve los tableros visibles para la organización.
DELETE/v1/plan/tasks/{task_id}/comments/{comment_id}/BetaAPI keyCLI Auth

Eliminar un comentario

Una eliminación lógica: la fila se conserva para que sus eventos sigan resolviéndose, y el cuerpo queda vacío.

Parámetros de ruta

NombreTipoRequeridoDescripción
task_idstringRequeridoUn uuid de tarea o su clave, como ENG-142, incluida una clave retirada por el cambio de nombre de un tablero. La resolución se limita primero a tu organización, así que la clave de otra organización es un 404 idéntico al de una inexistente. Los ids numéricos nunca se aceptan.
comment_idstringRequeridoEl uuid del comentario.

Encabezados

NombreTipoRequeridoDescripción
X-Dailybot-Agent-NamestringOpcionalEl nombre del agente que ejecutó esta escritura en nombre de la persona. Úsalo en escrituras multipart y sin cuerpo (DELETE, archivar, restaurar); en escrituras JSON envía el campo agent_name del cuerpo, que gana si vienen los dos. Codifica el valor con percent-encoding (UTF-8). Los caracteres de control se eliminan; un valor vacío significa sin agente. Más de 128 caracteres, o un valor que no se puede decodificar, es 400 invalid_agent_attribution (nunca se trunca). Una clave de tipo agente, que no está ligada a una persona, recibe 400 invalid_agent_attribution si lo envía. El sello nunca cambia una respuesta de permisos. Ver Atribución de agente.

Errores

EstadoCuándo
400El nombre del agente no es válido (`invalid_agent_attribution`).
401Credencial ausente, vencida o con formato inválido (`credential_absent`, `credential_expired`, `credential_malformed`).
402Plan aún no está habilitado para tu organización (`plan_upgrade_required`). Es lo esperado durante la Beta: escribe a [email protected].
403Autenticado pero sin permiso: falta el scope (`insufficient_scope`, que es también lo que recibe una key de agente o de la organización en una operación que requiere una persona, y lo que recibe una key personal cuando sus scopes de Plan explícitos no cubren el endpoint) o es una cuenta de invitado (`guest_not_allowed`).
404No existe o no es visible para ti. Ambos casos devuelven el mismo cuerpo.
curl -sS -X DELETE "https://api.dailybot.com/v1/plan/tasks/ENG-142/comments/00000000-0000-4000-8000-000000000008/" \
  -H "X-API-KEY: $DAILYBOT_API_KEY"

Probarlo

Este es un asistente de solo copia — la solicitud no se envía desde tu navegador. Pega el comando en tu terminal para ejecutarlo.

  • Scope: `tasks:write`.
  • Límite de solicitudes: 60 escrituras por minuto por actor.
  • Funciona con una sesión iniciada, un token de usuario del CLI, una API key personal, o una key de agente o de la organización. Una key personal ve lo que ve su persona; una key de agente o de la organización actúa como actor del sistema y solo ve los tableros visibles para la organización.
POST/v1/plan/tasks/{task_id}/comments/{comment_id}/reactions/BetaAPI keyCLI Auth

Agregar una reacción con emoji a un comentario (idempotente)

Agrega tu reacción emoji al comentario. Es idempotente: agregar la misma reacción otra vez no cambia nada. La respuesta es el comentario con sus reacciones actualizadas.

Parámetros de ruta

NombreTipoRequeridoDescripción
task_idstringRequeridoUn uuid de tarea o su clave, como ENG-142, incluida una clave retirada por el cambio de nombre de un tablero. La resolución se limita primero a tu organización, así que la clave de otra organización es un 404 idéntico al de una inexistente. Los ids numéricos nunca se aceptan.
comment_idstringRequeridoEl uuid del comentario.

Encabezados

NombreTipoRequeridoDescripción
X-Dailybot-Agent-NamestringOpcionalEl nombre del agente que ejecutó esta escritura en nombre de la persona. Úsalo en escrituras multipart y sin cuerpo (DELETE, archivar, restaurar); en escrituras JSON envía el campo agent_name del cuerpo, que gana si vienen los dos. Codifica el valor con percent-encoding (UTF-8). Los caracteres de control se eliminan; un valor vacío significa sin agente. Más de 128 caracteres, o un valor que no se puede decodificar, es 400 invalid_agent_attribution (nunca se trunca). Una clave de tipo agente, que no está ligada a una persona, recibe 400 invalid_agent_attribution si lo envía. El sello nunca cambia una respuesta de permisos. Ver Atribución de agente.

Cuerpo de la solicitud

NombreTipoRequeridoDescripción
emojistringRequeridoEl emoji. Máx. 32 caracteres.
agent_namestringOpcionalEl nombre del agente que ejecutó esta escritura en nombre de la persona (máx. 128 caracteres, vacío significa sin agente). Tiene prioridad sobre el header X-Dailybot-Agent-Name. Ver Atribución de agente.

Respuesta

NombreTipoRequeridoDescripción
(body)TaskCommentRequeridoUn objeto TaskComment.

Errores

EstadoCuándo
400La validación falló, o no se reconoció un valor de filtro, orden o `include`. El `code` de la respuesta indica cuál. `invalid_agent_attribution` significa que el nombre del agente no es válido.
401Credencial ausente, vencida o con formato inválido (`credential_absent`, `credential_expired`, `credential_malformed`).
402Plan aún no está habilitado para tu organización (`plan_upgrade_required`). Es lo esperado durante la Beta: escribe a [email protected].
404No existe o no es visible para ti. Ambos casos devuelven el mismo cuerpo.
curl -sS -X POST "https://api.dailybot.com/v1/plan/tasks/ENG-142/comments/00000000-0000-4000-8000-000000000008/reactions/" \
  -H "X-API-KEY: $DAILYBOT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "emoji": "👍"
  }'

Probarlo

Este es un asistente de solo copia — la solicitud no se envía desde tu navegador. Pega el comando en tu terminal para ejecutarlo.

  • Scope: `tasks:write`.
  • Límite de solicitudes: 60 escrituras por minuto por actor.
  • Funciona con una sesión iniciada, un token de usuario del CLI, una API key personal, o una key de agente o de la organización. Una key personal ve lo que ve su persona; una key de agente o de la organización actúa como actor del sistema y solo ve los tableros visibles para la organización.
DELETE/v1/plan/tasks/{task_id}/comments/{comment_id}/reactions/{emoji}/BetaAPI keyCLI Auth

Quitar la reacción con emoji de quien llama en un comentario

Quita tu reacción con este emoji del comentario. Responde 204 aunque la reacción ya no estuviera.

Parámetros de ruta

NombreTipoRequeridoDescripción
task_idstringRequeridoUn uuid de tarea o su clave, como ENG-142, incluida una clave retirada por el cambio de nombre de un tablero. La resolución se limita primero a tu organización, así que la clave de otra organización es un 404 idéntico al de una inexistente. Los ids numéricos nunca se aceptan.
comment_idstringRequeridoEl uuid del comentario.
emojistringRequeridoEl emoji a quitar, tal como se envió al agregarlo (máx. 32 caracteres), codificado para URL en la ruta.

Encabezados

NombreTipoRequeridoDescripción
X-Dailybot-Agent-NamestringOpcionalEl nombre del agente que ejecutó esta escritura en nombre de la persona. Úsalo en escrituras multipart y sin cuerpo (DELETE, archivar, restaurar); en escrituras JSON envía el campo agent_name del cuerpo, que gana si vienen los dos. Codifica el valor con percent-encoding (UTF-8). Los caracteres de control se eliminan; un valor vacío significa sin agente. Más de 128 caracteres, o un valor que no se puede decodificar, es 400 invalid_agent_attribution (nunca se trunca). Una clave de tipo agente, que no está ligada a una persona, recibe 400 invalid_agent_attribution si lo envía. El sello nunca cambia una respuesta de permisos. Ver Atribución de agente.

Errores

EstadoCuándo
400La validación falló, o no se reconoció un valor de filtro, orden o `include`. El `code` de la respuesta indica cuál. `invalid_agent_attribution` significa que el nombre del agente no es válido.
401Credencial ausente, vencida o con formato inválido (`credential_absent`, `credential_expired`, `credential_malformed`).
402Plan aún no está habilitado para tu organización (`plan_upgrade_required`). Es lo esperado durante la Beta: escribe a [email protected].
404No existe o no es visible para ti. Ambos casos devuelven el mismo cuerpo.
curl -sS -X DELETE "https://api.dailybot.com/v1/plan/tasks/ENG-142/comments/00000000-0000-4000-8000-000000000008/reactions/%F0%9F%91%8D/" \
  -H "X-API-KEY: $DAILYBOT_API_KEY"

Probarlo

Este es un asistente de solo copia — la solicitud no se envía desde tu navegador. Pega el comando en tu terminal para ejecutarlo.

  • Scope: `tasks:write`.
  • Límite de solicitudes: 60 escrituras por minuto por actor.
  • Funciona con una sesión iniciada, un token de usuario del CLI, una API key personal, o una key de agente o de la organización. Una key personal ve lo que ve su persona; una key de agente o de la organización actúa como actor del sistema y solo ve los tableros visibles para la organización.
GET/v1/plan/tasks/{task_id}/comments/{comment_id}/attachments/BetaAPI keyCLI AuthPaginación por número de página

Listar los adjuntos de un comentario

Los adjuntos del comentario, ordenados por posición. El comentario ya trae sus adjuntos listos en attachments. Cada url es un enlace de descarga. No lo guardes: conserva el uuid del adjunto y vuelve a leerlo cuando necesites el archivo.

Parámetros de ruta

NombreTipoRequeridoDescripción
task_idstringRequeridoUn uuid de tarea o su clave, como ENG-142, incluida una clave retirada por el cambio de nombre de un tablero. La resolución se limita primero a tu organización, así que la clave de otra organización es un 404 idéntico al de una inexistente. Los ids numéricos nunca se aceptan.
comment_idstringRequeridoEl uuid del comentario.

Parámetros de consulta

NombreTipoRequeridoDescripción
pageintegerOpcionalNúmero de página, empezando en 1.
page_sizeintegerOpcionalFilas por página. 50 por defecto, máximo 100. Los valores fuera de rango se ajustan, nunca se rechazan: pedir 500 devuelve 100.

Respuesta

NombreTipoRequeridoDescripción
countintegerRequeridoNúmero total de filas.
nexturiRequeridoURL de la página siguiente, o null.
previousuriRequeridoURL de la página anterior, o null.
resultsarray<TaskAttachment>RequeridoLas filas de esta página. Ver TaskAttachment.

Errores

EstadoCuándo
401Credencial ausente, vencida o con formato inválido (`credential_absent`, `credential_expired`, `credential_malformed`).
402Plan aún no está habilitado para tu organización (`plan_upgrade_required`). Es lo esperado durante la Beta: escribe a [email protected].
404La tarea, el comentario o el adjunto no existe o no puedes verlo (`not_found`), nunca un 403.
curl -sS "https://api.dailybot.com/v1/plan/tasks/ENG-142/comments/00000000-0000-4000-8000-000000000008/attachments/" \
  -H "X-API-KEY: $DAILYBOT_API_KEY"

Probarlo

Este es un asistente de solo copia — la solicitud no se envía desde tu navegador. Pega el comando en tu terminal para ejecutarlo.

  • Scope: `tasks:read`.
  • Límite de solicitudes: 120 lecturas por minuto por actor.
  • Funciona con una sesión iniciada, un token de usuario del CLI, una API key personal, o una key de agente o de la organización. Una key personal ve lo que ve su persona; una key de agente o de la organización actúa como actor del sistema y solo ve los tableros visibles para la organización.
POST/v1/plan/tasks/{task_id}/comments/{comment_id}/attachments/BetaAPI keyCLI Auth

Subir un adjunto a un comentario

Adjunta un archivo a un comentario. Solo el autor del comentario puede adjuntarle archivos. Envía multipart/form-data con el campo file y un caption opcional; aquí no hay flujo de prefirmado. El límite es de 5 MiB en todos los entornos: un archivo más grande es 400 attachment_too_large, con extra.max_size_bytes. El tipo de archivo se verifica por su contenido contra la misma lista que los adjuntos de tareas (attachment_invalid_type). Un comentario admite como máximo 50 adjuntos (attachment_limit_reached).

Parámetros de ruta

NombreTipoRequeridoDescripción
task_idstringRequeridoUn uuid de tarea o su clave, como ENG-142, incluida una clave retirada por el cambio de nombre de un tablero. La resolución se limita primero a tu organización, así que la clave de otra organización es un 404 idéntico al de una inexistente. Los ids numéricos nunca se aceptan.
comment_idstringRequeridoEl uuid del comentario.

Encabezados

NombreTipoRequeridoDescripción
X-Dailybot-Agent-NamestringOpcionalEl nombre del agente que ejecutó esta escritura en nombre de la persona. Úsalo en escrituras multipart y sin cuerpo (DELETE, archivar, restaurar); en escrituras JSON envía el campo agent_name del cuerpo, que gana si vienen los dos. Codifica el valor con percent-encoding (UTF-8). Los caracteres de control se eliminan; un valor vacío significa sin agente. Más de 128 caracteres, o un valor que no se puede decodificar, es 400 invalid_agent_attribution (nunca se trunca). Una clave de tipo agente, que no está ligada a una persona, recibe 400 invalid_agent_attribution si lo envía. El sello nunca cambia una respuesta de permisos. Ver Atribución de agente.

Cuerpo de la solicitud

NombreTipoRequeridoDescripción
filebinaryRequeridoEl archivo a subir (máximo 5 MiB por esta vía).
captionstringOpcionalPie de texto opcional. Máximo 255 caracteres.

Respuesta

NombreTipoRequeridoDescripción
(body)TaskAttachmentRequeridoUn objeto TaskAttachment.

Errores

EstadoCuándo
400Falta el archivo, es demasiado grande (`attachment_too_large`, más de 5 MiB), su tipo no se admite (`attachment_invalid_type`) o se alcanzó el límite de 50 (`attachment_limit_reached`). `invalid_agent_attribution` significa que el nombre del agente no es válido.
401Credencial ausente, vencida o con formato inválido (`credential_absent`, `credential_expired`, `credential_malformed`).
402Plan aún no está habilitado para tu organización (`plan_upgrade_required`). Es lo esperado durante la Beta: escribe a [email protected].
403No eres el autor del comentario (`comment_not_author`).
404La tarea, el comentario o el adjunto no existe o no puedes verlo (`not_found`), nunca un 403.
curl -sS -X POST "https://api.dailybot.com/v1/plan/tasks/ENG-142/comments/00000000-0000-4000-8000-000000000008/attachments/" \
  -H "X-API-KEY: $DAILYBOT_API_KEY" \
  -F "file=@./screenshot.png" \
  -F "caption=Staging dashboard"

Probarlo

Este es un asistente de solo copia — la solicitud no se envía desde tu navegador. Pega el comando en tu terminal para ejecutarlo.

  • Scope: `tasks:write`.
  • Límite de solicitudes: 60 escrituras por minuto por actor.
  • Funciona con una sesión iniciada, un token de usuario del CLI, una API key personal, o una key de agente o de la organización. Una key personal ve lo que ve su persona; una key de agente o de la organización actúa como actor del sistema y solo ve los tableros visibles para la organización.
GET/v1/plan/tasks/{task_id}/comments/{comment_id}/attachments/{attachment_id}/content/BetaAPI keyCLI Auth

Descargar los bytes de un adjunto de un comentario

Transmite el archivo con el tipo de contenido registrado al subirlo, X-Content-Type-Options: nosniff y Cache-Control: no-store. Nunca redirige al almacenamiento. Se autoriza como cualquier otra lectura de la tarea.

Parámetros de ruta

NombreTipoRequeridoDescripción
task_idstringRequeridoUn uuid de tarea o su clave, como ENG-142, incluida una clave retirada por el cambio de nombre de un tablero. La resolución se limita primero a tu organización, así que la clave de otra organización es un 404 idéntico al de una inexistente. Los ids numéricos nunca se aceptan.
comment_idstringRequeridoEl uuid del comentario.
attachment_idstringRequeridoEl uuid del adjunto.

Errores

EstadoCuándo
401Credencial ausente, vencida o con formato inválido (`credential_absent`, `credential_expired`, `credential_malformed`).
402Plan aún no está habilitado para tu organización (`plan_upgrade_required`). Es lo esperado durante la Beta: escribe a [email protected].
404La tarea, el comentario o el adjunto no existe o no puedes verlo (`not_found`), nunca un 403.
curl -sS "https://api.dailybot.com/v1/plan/tasks/ENG-142/comments/00000000-0000-4000-8000-000000000008/attachments/00000000-0000-4000-8000-000000000009/content/" \
  -H "X-API-KEY: $DAILYBOT_API_KEY"

Probarlo

Este es un asistente de solo copia — la solicitud no se envía desde tu navegador. Pega el comando en tu terminal para ejecutarlo.

  • Scope: `tasks:read`.
  • Límite de solicitudes: 120 lecturas por minuto por actor.
  • Funciona con una sesión iniciada, un token de usuario del CLI, una API key personal, o una key de agente o de la organización. Una key personal ve lo que ve su persona; una key de agente o de la organización actúa como actor del sistema y solo ve los tableros visibles para la organización.
DELETE/v1/plan/tasks/{task_id}/comments/{comment_id}/attachments/{attachment_id}/BetaAPI keyCLI Auth

Quitar un adjunto de un comentario

Quita el adjunto del comentario. Pueden hacerlo quien lo subió, el autor del comentario o un administrador de la organización.

Parámetros de ruta

NombreTipoRequeridoDescripción
task_idstringRequeridoUn uuid de tarea o su clave, como ENG-142, incluida una clave retirada por el cambio de nombre de un tablero. La resolución se limita primero a tu organización, así que la clave de otra organización es un 404 idéntico al de una inexistente. Los ids numéricos nunca se aceptan.
comment_idstringRequeridoEl uuid del comentario.
attachment_idstringRequeridoEl uuid del adjunto.

Encabezados

NombreTipoRequeridoDescripción
X-Dailybot-Agent-NamestringOpcionalEl nombre del agente que ejecutó esta escritura en nombre de la persona. Úsalo en escrituras multipart y sin cuerpo (DELETE, archivar, restaurar); en escrituras JSON envía el campo agent_name del cuerpo, que gana si vienen los dos. Codifica el valor con percent-encoding (UTF-8). Los caracteres de control se eliminan; un valor vacío significa sin agente. Más de 128 caracteres, o un valor que no se puede decodificar, es 400 invalid_agent_attribution (nunca se trunca). Una clave de tipo agente, que no está ligada a una persona, recibe 400 invalid_agent_attribution si lo envía. El sello nunca cambia una respuesta de permisos. Ver Atribución de agente.

Errores

EstadoCuándo
400El nombre del agente no es válido (`invalid_agent_attribution`).
401Credencial ausente, vencida o con formato inválido (`credential_absent`, `credential_expired`, `credential_malformed`).
402Plan aún no está habilitado para tu organización (`plan_upgrade_required`). Es lo esperado durante la Beta: escribe a [email protected].
403No eres quien lo subió, el autor del comentario ni un administrador de la organización (`attachment_delete_forbidden`).
404La tarea, el comentario o el adjunto no existe o no puedes verlo (`not_found`), nunca un 403.
curl -sS -X DELETE "https://api.dailybot.com/v1/plan/tasks/ENG-142/comments/00000000-0000-4000-8000-000000000008/attachments/00000000-0000-4000-8000-000000000009/" \
  -H "X-API-KEY: $DAILYBOT_API_KEY"

Probarlo

Este es un asistente de solo copia — la solicitud no se envía desde tu navegador. Pega el comando en tu terminal para ejecutarlo.

  • Scope: `tasks:write`.
  • Límite de solicitudes: 60 escrituras por minuto por actor.
  • Funciona con una sesión iniciada, un token de usuario del CLI, una API key personal, o una key de agente o de la organización. Una key personal ve lo que ve su persona; una key de agente o de la organización actúa como actor del sistema y solo ve los tableros visibles para la organización.
GET/v1/plan/tasks/{task_id}/attachments/BetaAPI keyCLI AuthPaginación por número de página

Listar los adjuntos de una tarea

Los adjuntos de la tarea, ordenados por posición, en una página. Cada url es un enlace de descarga; no lo guardes. Vuelve a leer el adjunto para obtener el actual o descarga con el endpoint de contenido.

Parámetros de ruta

NombreTipoRequeridoDescripción
task_idstringRequeridoUn uuid de tarea o su clave, como ENG-142, incluida una clave retirada por el cambio de nombre de un tablero. La resolución se limita primero a tu organización, así que la clave de otra organización es un 404 idéntico al de una inexistente. Los ids numéricos nunca se aceptan.

Parámetros de consulta

NombreTipoRequeridoDescripción
pageintegerOpcionalNúmero de página, empezando en 1.
page_sizeintegerOpcionalFilas por página. 50 por defecto, máximo 100. Los valores fuera de rango se ajustan, nunca se rechazan: pedir 500 devuelve 100.

Respuesta

NombreTipoRequeridoDescripción
countintegerRequeridoNúmero total de filas.
nexturiRequeridoURL de la página siguiente, o null.
previousuriRequeridoURL de la página anterior, o null.
resultsarray<TaskAttachment>RequeridoLas filas de esta página. Ver TaskAttachment.

Errores

EstadoCuándo
401Credencial ausente, vencida o con formato inválido (`credential_absent`, `credential_expired`, `credential_malformed`).
402Plan aún no está habilitado para tu organización (`plan_upgrade_required`). Es lo esperado durante la Beta: escribe a [email protected].
404No existe o no es visible para ti. Ambos casos devuelven el mismo cuerpo.
curl -sS "https://api.dailybot.com/v1/plan/tasks/ENG-142/attachments/" \
  -H "X-API-KEY: $DAILYBOT_API_KEY"

Probarlo

Este es un asistente de solo copia — la solicitud no se envía desde tu navegador. Pega el comando en tu terminal para ejecutarlo.

  • Scope: `tasks:read`.
  • Límite de solicitudes: 120 lecturas por minuto por actor.
  • Funciona con una sesión iniciada, un token de usuario del CLI, una API key personal, o una key de agente o de la organización. Una key personal ve lo que ve su persona; una key de agente o de la organización actúa como actor del sistema y solo ve los tableros visibles para la organización.
POST/v1/plan/tasks/{task_id}/attachments/BetaAPI keyCLI Auth

Subir un adjunto en una sola solicitud

Sube un archivo en una sola solicitud, hasta 5 MiB. Para archivos de hasta 25 MiB, usa prefirmar → subir → confirmar.

Parámetros de ruta

NombreTipoRequeridoDescripción
task_idstringRequeridoUn uuid de tarea o su clave, como ENG-142, incluida una clave retirada por el cambio de nombre de un tablero. La resolución se limita primero a tu organización, así que la clave de otra organización es un 404 idéntico al de una inexistente. Los ids numéricos nunca se aceptan.

Encabezados

NombreTipoRequeridoDescripción
X-Dailybot-Agent-NamestringOpcionalEl nombre del agente que ejecutó esta escritura en nombre de la persona. Úsalo en escrituras multipart y sin cuerpo (DELETE, archivar, restaurar); en escrituras JSON envía el campo agent_name del cuerpo, que gana si vienen los dos. Codifica el valor con percent-encoding (UTF-8). Los caracteres de control se eliminan; un valor vacío significa sin agente. Más de 128 caracteres, o un valor que no se puede decodificar, es 400 invalid_agent_attribution (nunca se trunca). Una clave de tipo agente, que no está ligada a una persona, recibe 400 invalid_agent_attribution si lo envía. El sello nunca cambia una respuesta de permisos. Ver Atribución de agente.

Cuerpo de la solicitud

NombreTipoRequeridoDescripción
filebinaryRequeridoEl archivo a subir (máximo 5 MiB por esta vía).
captionstringOpcionalPie de texto opcional. Máximo 255 caracteres.

Respuesta

NombreTipoRequeridoDescripción
(body)TaskAttachmentRequeridoUn objeto TaskAttachment.

Errores

EstadoCuándo
400La validación falló, o no se reconoció un valor de filtro, orden o `include`. El `code` de la respuesta indica cuál. `invalid_agent_attribution` significa que el nombre del agente no es válido.
401Credencial ausente, vencida o con formato inválido (`credential_absent`, `credential_expired`, `credential_malformed`).
402Plan aún no está habilitado para tu organización (`plan_upgrade_required`). Es lo esperado durante la Beta: escribe a [email protected].
404No existe o no es visible para ti. Ambos casos devuelven el mismo cuerpo.
curl -sS -X POST "https://api.dailybot.com/v1/plan/tasks/ENG-142/attachments/" \
  -H "X-API-KEY: $DAILYBOT_API_KEY" \
  -F "file=@./screenshot.png" \
  -F "caption=Staging dashboard"

Probarlo

Este es un asistente de solo copia — la solicitud no se envía desde tu navegador. Pega el comando en tu terminal para ejecutarlo.

  • Scope: `tasks:write`.
  • Límite de solicitudes: 60 escrituras por minuto por actor.
  • Funciona con una sesión iniciada, un token de usuario del CLI, una API key personal, o una key de agente o de la organización. Una key personal ve lo que ve su persona; una key de agente o de la organización actúa como actor del sistema y solo ve los tableros visibles para la organización.
POST/v1/plan/tasks/{task_id}/attachments/presign/BetaAPI keyCLI Auth

Reservar un adjunto y recibir un destino de carga

Reserva un adjunto y obtén un destino de carga. El size declarado puede ser de hasta 25 MiB cuando el servidor tiene almacenamiento de objetos; de lo contrario, las cargas se limitan a 5 MiB y las declaraciones mayores se rechazan con attachment_too_large.

Parámetros de ruta

NombreTipoRequeridoDescripción
task_idstringRequeridoUn uuid de tarea o su clave, como ENG-142, incluida una clave retirada por el cambio de nombre de un tablero. La resolución se limita primero a tu organización, así que la clave de otra organización es un 404 idéntico al de una inexistente. Los ids numéricos nunca se aceptan.

Encabezados

NombreTipoRequeridoDescripción
X-Dailybot-Agent-NamestringOpcionalEl nombre del agente que ejecutó esta escritura en nombre de la persona. Úsalo en escrituras multipart y sin cuerpo (DELETE, archivar, restaurar); en escrituras JSON envía el campo agent_name del cuerpo, que gana si vienen los dos. Codifica el valor con percent-encoding (UTF-8). Los caracteres de control se eliminan; un valor vacío significa sin agente. Más de 128 caracteres, o un valor que no se puede decodificar, es 400 invalid_agent_attribution (nunca se trunca). Una clave de tipo agente, que no está ligada a una persona, recibe 400 invalid_agent_attribution si lo envía. El sello nunca cambia una respuesta de permisos. Ver Atribución de agente.

Cuerpo de la solicitud

NombreTipoRequeridoDescripción
filenamestringRequeridoNombre del archivo. Máx. 255 caracteres.
content_typestringRequeridoTipo MIME. Máx. 127 caracteres.
sizeintegerRequeridoTamaño en bytes. De 1 a 26214400.
agent_namestringOpcionalEl nombre del agente que ejecutó esta escritura en nombre de la persona (máx. 128 caracteres, vacío significa sin agente). Tiene prioridad sobre el header X-Dailybot-Agent-Name. Ver Atribución de agente.

Objeto TaskAttachmentPresignResponse

NombreTipoRequeridoDescripción
upload_urlstringRequeridoDónde subir los bytes.
methodstringRequeridoMétodo HTTP para la carga.
headersobjectRequeridoHeaders que se envían con la carga.
expires_inintegerRequeridoSegundos hasta que vence el destino de carga.
attachmentTaskAttachmentRequeridoEl adjunto pendiente. Ver TaskAttachment.

Respuesta

NombreTipoRequeridoDescripción
(body)TaskAttachmentPresignResponseRequeridoUn objeto TaskAttachmentPresignResponse.

Errores

EstadoCuándo
400La validación falló, o no se reconoció un valor de filtro, orden o `include`. El `code` de la respuesta indica cuál. `invalid_agent_attribution` significa que el nombre del agente no es válido.
401Credencial ausente, vencida o con formato inválido (`credential_absent`, `credential_expired`, `credential_malformed`).
402Plan aún no está habilitado para tu organización (`plan_upgrade_required`). Es lo esperado durante la Beta: escribe a [email protected].
404No existe o no es visible para ti. Ambos casos devuelven el mismo cuerpo.
curl -sS -X POST "https://api.dailybot.com/v1/plan/tasks/ENG-142/attachments/presign/" \
  -H "X-API-KEY: $DAILYBOT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "filename": "screenshot.png",
    "content_type": "image/png",
    "size": 482133
  }'

Probarlo

Este es un asistente de solo copia — la solicitud no se envía desde tu navegador. Pega el comando en tu terminal para ejecutarlo.

  • Scope: `tasks:write`.
  • Límite de solicitudes: 60 escrituras por minuto por actor.
  • Funciona con una sesión iniciada, un token de usuario del CLI, una API key personal, o una key de agente o de la organización. Una key personal ve lo que ve su persona; una key de agente o de la organización actúa como actor del sistema y solo ve los tableros visibles para la organización.
GET/v1/plan/tasks/{task_id}/attachments/{attachment_id}/content/BetaAPI keyCLI Auth

Descargar los bytes de un adjunto a través de la API

Transmite el archivo, autorizado como cualquier otra lectura de la tarea. En servidores sin almacenamiento de objetos, este es el url del adjunto; de lo contrario, url es un enlace de descarga y este endpoint es la alternativa para clientes que prefieren enviar su credencial. 409 attachment_not_ready si la carga nunca se completó.

Parámetros de ruta

NombreTipoRequeridoDescripción
task_idstringRequeridoUn uuid de tarea o su clave, como ENG-142, incluida una clave retirada por el cambio de nombre de un tablero. La resolución se limita primero a tu organización, así que la clave de otra organización es un 404 idéntico al de una inexistente. Los ids numéricos nunca se aceptan.
attachment_idstringRequeridoEl uuid del adjunto.

Errores

EstadoCuándo
401Credencial ausente, vencida o con formato inválido (`credential_absent`, `credential_expired`, `credential_malformed`).
402Plan aún no está habilitado para tu organización (`plan_upgrade_required`). Es lo esperado durante la Beta: escribe a [email protected].
404No existe o no es visible para ti. Ambos casos devuelven el mismo cuerpo.
409La carga nunca se completó ni se confirmó (`attachment_not_ready`).
curl -sS "https://api.dailybot.com/v1/plan/tasks/ENG-142/attachments/00000000-0000-4000-8000-000000000009/content/" \
  -H "X-API-KEY: $DAILYBOT_API_KEY"

Probarlo

Este es un asistente de solo copia — la solicitud no se envía desde tu navegador. Pega el comando en tu terminal para ejecutarlo.

  • Scope: `tasks:read`.
  • Límite de solicitudes: 120 lecturas por minuto por actor.
  • Funciona con una sesión iniciada, un token de usuario del CLI, una API key personal, o una key de agente o de la organización. Una key personal ve lo que ve su persona; una key de agente o de la organización actúa como actor del sistema y solo ve los tableros visibles para la organización.
PUT/v1/plan/tasks/{task_id}/attachments/{attachment_id}/content/BetaAPI keyCLI Auth

Subir los bytes de un adjunto prefirmado (alternativa local/de desarrollo)

Sube los bytes de un adjunto prefirmado cuando el destino de carga apunta de vuelta a la API (servidores sin almacenamiento de objetos). Limitado a 5 MiB.

Parámetros de ruta

NombreTipoRequeridoDescripción
task_idstringRequeridoUn uuid de tarea o su clave, como ENG-142, incluida una clave retirada por el cambio de nombre de un tablero. La resolución se limita primero a tu organización, así que la clave de otra organización es un 404 idéntico al de una inexistente. Los ids numéricos nunca se aceptan.
attachment_idstringRequeridoEl uuid del adjunto.

Encabezados

NombreTipoRequeridoDescripción
X-Dailybot-Agent-NamestringOpcionalEl nombre del agente que ejecutó esta escritura en nombre de la persona. Úsalo en escrituras multipart y sin cuerpo (DELETE, archivar, restaurar); en escrituras JSON envía el campo agent_name del cuerpo, que gana si vienen los dos. Codifica el valor con percent-encoding (UTF-8). Los caracteres de control se eliminan; un valor vacío significa sin agente. Más de 128 caracteres, o un valor que no se puede decodificar, es 400 invalid_agent_attribution (nunca se trunca). Una clave de tipo agente, que no está ligada a una persona, recibe 400 invalid_agent_attribution si lo envía. El sello nunca cambia una respuesta de permisos. Ver Atribución de agente.

Respuesta

NombreTipoRequeridoDescripción
(body)TaskAttachmentRequeridoUn objeto TaskAttachment.

Errores

EstadoCuándo
400La validación falló, o no se reconoció un valor de filtro, orden o `include`. El `code` de la respuesta indica cuál. `invalid_agent_attribution` significa que el nombre del agente no es válido.
401Credencial ausente, vencida o con formato inválido (`credential_absent`, `credential_expired`, `credential_malformed`).
402Plan aún no está habilitado para tu organización (`plan_upgrade_required`). Es lo esperado durante la Beta: escribe a [email protected].
404No existe o no es visible para ti. Ambos casos devuelven el mismo cuerpo.
curl -sS -X PUT "https://api.dailybot.com/v1/plan/tasks/ENG-142/attachments/00000000-0000-4000-8000-000000000009/content/" \
  -H "X-API-KEY: $DAILYBOT_API_KEY" \
  -H "Content-Type: image/png" \
  --data-binary @./screenshot.png

Probarlo

Este es un asistente de solo copia — la solicitud no se envía desde tu navegador. Pega el comando en tu terminal para ejecutarlo.

  • Scope: `tasks:write`.
  • Límite de solicitudes: 60 escrituras por minuto por actor.
  • Funciona con una sesión iniciada, un token de usuario del CLI, una API key personal, o una key de agente o de la organización. Una key personal ve lo que ve su persona; una key de agente o de la organización actúa como actor del sistema y solo ve los tableros visibles para la organización.
POST/v1/plan/tasks/{task_id}/attachments/{attachment_id}/confirm/BetaAPI keyCLI Auth

Marcar un adjunto prefirmado como listo después de subirlo

El último paso de prefirmar → subir → confirmar: marca el adjunto como listo una vez subidos sus bytes. Hasta entonces, descargarlo responde 409 attachment_not_ready.

Parámetros de ruta

NombreTipoRequeridoDescripción
task_idstringRequeridoUn uuid de tarea o su clave, como ENG-142, incluida una clave retirada por el cambio de nombre de un tablero. La resolución se limita primero a tu organización, así que la clave de otra organización es un 404 idéntico al de una inexistente. Los ids numéricos nunca se aceptan.
attachment_idstringRequeridoEl uuid del adjunto.

Encabezados

NombreTipoRequeridoDescripción
X-Dailybot-Agent-NamestringOpcionalEl nombre del agente que ejecutó esta escritura en nombre de la persona. Úsalo en escrituras multipart y sin cuerpo (DELETE, archivar, restaurar); en escrituras JSON envía el campo agent_name del cuerpo, que gana si vienen los dos. Codifica el valor con percent-encoding (UTF-8). Los caracteres de control se eliminan; un valor vacío significa sin agente. Más de 128 caracteres, o un valor que no se puede decodificar, es 400 invalid_agent_attribution (nunca se trunca). Una clave de tipo agente, que no está ligada a una persona, recibe 400 invalid_agent_attribution si lo envía. El sello nunca cambia una respuesta de permisos. Ver Atribución de agente.

Respuesta

NombreTipoRequeridoDescripción
(body)TaskAttachmentRequeridoUn objeto TaskAttachment.

Errores

EstadoCuándo
400El nombre del agente no es válido (`invalid_agent_attribution`).
401Credencial ausente, vencida o con formato inválido (`credential_absent`, `credential_expired`, `credential_malformed`).
402Plan aún no está habilitado para tu organización (`plan_upgrade_required`). Es lo esperado durante la Beta: escribe a [email protected].
404No existe o no es visible para ti. Ambos casos devuelven el mismo cuerpo.
curl -sS -X POST "https://api.dailybot.com/v1/plan/tasks/ENG-142/attachments/00000000-0000-4000-8000-000000000009/confirm/" \
  -H "X-API-KEY: $DAILYBOT_API_KEY"

Probarlo

Este es un asistente de solo copia — la solicitud no se envía desde tu navegador. Pega el comando en tu terminal para ejecutarlo.

  • Scope: `tasks:write`.
  • Límite de solicitudes: 60 escrituras por minuto por actor.
  • Funciona con una sesión iniciada, un token de usuario del CLI, una API key personal, o una key de agente o de la organización. Una key personal ve lo que ve su persona; una key de agente o de la organización actúa como actor del sistema y solo ve los tableros visibles para la organización.
DELETE/v1/plan/tasks/{task_id}/attachments/{attachment_id}/BetaAPI keyCLI Auth

Quitar un adjunto

Quita el adjunto de la tarea. El archivo almacenado se elimina cuando nada más lo referencia.

Parámetros de ruta

NombreTipoRequeridoDescripción
task_idstringRequeridoUn uuid de tarea o su clave, como ENG-142, incluida una clave retirada por el cambio de nombre de un tablero. La resolución se limita primero a tu organización, así que la clave de otra organización es un 404 idéntico al de una inexistente. Los ids numéricos nunca se aceptan.
attachment_idstringRequeridoEl uuid del adjunto.

Encabezados

NombreTipoRequeridoDescripción
X-Dailybot-Agent-NamestringOpcionalEl nombre del agente que ejecutó esta escritura en nombre de la persona. Úsalo en escrituras multipart y sin cuerpo (DELETE, archivar, restaurar); en escrituras JSON envía el campo agent_name del cuerpo, que gana si vienen los dos. Codifica el valor con percent-encoding (UTF-8). Los caracteres de control se eliminan; un valor vacío significa sin agente. Más de 128 caracteres, o un valor que no se puede decodificar, es 400 invalid_agent_attribution (nunca se trunca). Una clave de tipo agente, que no está ligada a una persona, recibe 400 invalid_agent_attribution si lo envía. El sello nunca cambia una respuesta de permisos. Ver Atribución de agente.

Errores

EstadoCuándo
400El nombre del agente no es válido (`invalid_agent_attribution`).
401Credencial ausente, vencida o con formato inválido (`credential_absent`, `credential_expired`, `credential_malformed`).
402Plan aún no está habilitado para tu organización (`plan_upgrade_required`). Es lo esperado durante la Beta: escribe a [email protected].
403Autenticado pero sin permiso: falta el scope (`insufficient_scope`, que es también lo que recibe una key de agente o de la organización en una operación que requiere una persona, y lo que recibe una key personal cuando sus scopes de Plan explícitos no cubren el endpoint) o es una cuenta de invitado (`guest_not_allowed`).
404No existe o no es visible para ti. Ambos casos devuelven el mismo cuerpo.
curl -sS -X DELETE "https://api.dailybot.com/v1/plan/tasks/ENG-142/attachments/00000000-0000-4000-8000-000000000009/" \
  -H "X-API-KEY: $DAILYBOT_API_KEY"

Probarlo

Este es un asistente de solo copia — la solicitud no se envía desde tu navegador. Pega el comando en tu terminal para ejecutarlo.

  • Scope: `tasks:write`.
  • Límite de solicitudes: 60 escrituras por minuto por actor.
  • Funciona con una sesión iniciada, un token de usuario del CLI, una API key personal, o una key de agente o de la organización. Una key personal ve lo que ve su persona; una key de agente o de la organización actúa como actor del sistema y solo ve los tableros visibles para la organización.
GET/v1/plan/tasks/{task_id}/events/BetaAPI keyCLI AuthPaginación por número de página

La actividad de una tarea, generada a partir del registro de eventos

Los eventos contienen ids, miembros de enums, números, booleanos y fechas, nunca texto escrito por usuarios. No hay título, descripción, cuerpo de comentario ni nombre de etiqueta en un payload. Combina lo que tienes derecho a leer: los cuerpos de los comentarios vienen del endpoint de comentarios y los títulos, de la propia tarea.

Parámetros de ruta

NombreTipoRequeridoDescripción
task_idstringRequeridoUn uuid de tarea o su clave, como ENG-142, incluida una clave retirada por el cambio de nombre de un tablero. La resolución se limita primero a tu organización, así que la clave de otra organización es un 404 idéntico al de una inexistente. Los ids numéricos nunca se aceptan.

Parámetros de consulta

NombreTipoRequeridoDescripción
pageintegerOpcionalNúmero de página, empezando en 1.
page_sizeintegerOpcionalFilas por página. 50 por defecto, máximo 100. Los valores fuera de rango se ajustan, nunca se rechazan: pedir 500 devuelve 100.
event_typearrayOpcionalFiltra por uno o más tipos de evento.

Objeto TaskEvent

NombreTipoRequeridoDescripción
uuidstringRequeridoIdentificador público estable.
event_typestringRequeridoEl tipo de evento. Se agregan tipos nuevos con el tiempo: ignora los que no reconozcas.
entityobjectOpcional—
payloadobjectOpcionalSolo ids, valores de enum, números, booleanos y fechas; nunca texto escrito por usuarios.
actorobjectOpcionalQuién actuó.
executed_by_agentobject | nullOpcionalEl agente que ejecutó esto en nombre de la persona, o null si no se nombró a ninguno: un objeto con uuid, name, username y avatar. La persona del campo de autor sigue siendo la autora; el agente se muestra como quien lo ejecutó.
originstringOpcional—
correlation_idstring | nullOpcional—
observed_atstringOpcionalCuándo se registró.
occurred_atstringRequeridoCuándo ocurrió.

Respuesta

NombreTipoRequeridoDescripción
countintegerRequeridoNúmero total de filas.
nexturiRequeridoURL de la página siguiente, o null.
previousuriRequeridoURL de la página anterior, o null.
resultsarray<TaskEvent>RequeridoLas filas de esta página. Ver TaskEvent.

Errores

EstadoCuándo
401Credencial ausente, vencida o con formato inválido (`credential_absent`, `credential_expired`, `credential_malformed`).
402Plan aún no está habilitado para tu organización (`plan_upgrade_required`). Es lo esperado durante la Beta: escribe a [email protected].
404No existe o no es visible para ti. Ambos casos devuelven el mismo cuerpo.
curl -sS "https://api.dailybot.com/v1/plan/tasks/ENG-142/events/" \
  -H "X-API-KEY: $DAILYBOT_API_KEY"

Probarlo

Este es un asistente de solo copia — la solicitud no se envía desde tu navegador. Pega el comando en tu terminal para ejecutarlo.

  • Scope: `tasks:read`.
  • Límite de solicitudes: 120 lecturas por minuto por actor.
  • Funciona con una sesión iniciada, un token de usuario del CLI, una API key personal, o una key de agente o de la organización. Una key personal ve lo que ve su persona; una key de agente o de la organización actúa como actor del sistema y solo ve los tableros visibles para la organización.
GET/v1/plan/tasks/{task_id}/activity/BetaAPI keyCLI AuthPaginación por número de página

El feed de actividad de una tarea, enriquecido para mostrar

Paginado, con la misma forma de fila que GET /v1/plan/activity/ (tarjeta de tarea más changes[{field, from, to}] resueltos). Es lo que ?include=activity incrusta en el detalle de la tarea. Para el registro de eventos sin procesar usa GET …/tasks/{task_id}/events/.

Parámetros de ruta

NombreTipoRequeridoDescripción
task_idstringRequeridoUn uuid de tarea o su clave, como ENG-142, incluida una clave retirada por el cambio de nombre de un tablero. La resolución se limita primero a tu organización, así que la clave de otra organización es un 404 idéntico al de una inexistente. Los ids numéricos nunca se aceptan.

Parámetros de consulta

NombreTipoRequeridoDescripción
pageintegerOpcionalNúmero de página, empezando en 1.
page_sizeintegerOpcionalFilas por página. 50 por defecto, máximo 100. Los valores fuera de rango se ajustan, nunca se rechazan: pedir 500 devuelve 100.

Objeto ActivityEvent

NombreTipoRequeridoDescripción
uuidstringRequeridoIdentificador público estable.
typestringRequeridoEl tipo de evento. Se agregan tipos nuevos con el tiempo: ignora los que no reconozcas.
actorobjectRequeridoQuién actuó.
executed_by_agentobject | nullOpcionalEl agente que ejecutó esto en nombre de la persona, o null si no se nombró a ninguno: un objeto con uuid, name, username y avatar. La persona del campo de autor sigue siendo la autora; el agente se muestra como quien lo ejecutó.
created_atstringRequeridoCuándo se creó la fila.
taskobjectOpcionalForma: {uuid, key, title, board {uuid, key, name} | null} | null.
payloadobjectRequeridoSolo ids, valores de enum, números, booleanos y fechas; nunca texto escrito por usuarios.
changesarrayRequeridoCambios de campos resueltos, [{field, from, to}].

Respuesta

NombreTipoRequeridoDescripción
countintegerRequeridoNúmero total de filas.
nexturiRequeridoURL de la página siguiente, o null.
previousuriRequeridoURL de la página anterior, o null.
resultsarray<ActivityEvent>RequeridoLas filas de esta página. Ver ActivityEvent.

Errores

EstadoCuándo
401Credencial ausente, vencida o con formato inválido (`credential_absent`, `credential_expired`, `credential_malformed`).
402Plan aún no está habilitado para tu organización (`plan_upgrade_required`). Es lo esperado durante la Beta: escribe a [email protected].
404No existe o no es visible para ti. Ambos casos devuelven el mismo cuerpo.
curl -sS "https://api.dailybot.com/v1/plan/tasks/ENG-142/activity/" \
  -H "X-API-KEY: $DAILYBOT_API_KEY"

Probarlo

Este es un asistente de solo copia — la solicitud no se envía desde tu navegador. Pega el comando en tu terminal para ejecutarlo.

  • Scope: `tasks:read`.
  • Límite de solicitudes: 120 lecturas por minuto por actor.
  • Funciona con una sesión iniciada, un token de usuario del CLI, una API key personal, o una key de agente o de la organización. Una key personal ve lo que ve su persona; una key de agente o de la organización actúa como actor del sistema y solo ve los tableros visibles para la organización.
GET/v1/plan/attachments/resolve/BetaAPI keyCLI Auth

Resolver referencias de adjuntos

Convierte las referencias de adjuntos que tienes (por ejemplo los marcadores attachment:{uuid} de una descripción, o un content_url guardado) en el url actual de cada adjunto. Pasa de 1 a 50 uuids en ids, separados por comas; cubre adjuntos de tareas, comentarios, proyectos, objetivos, tableros, hitos y actualizaciones de proyecto. Un id que no existe, que no puedes ver o cuyo adjunto no está ready simplemente no aparece en resolved: los tres casos se ven igual y no hay error. No guardes url ni la pegues en lugares públicos: trátala como opaca. url_expires_at es null o una marca de tiempo ISO, así que vuelve a pedirla al renderizar. Para descargar, prefiere GET …/attachments/{attachment_id}/content/ con tu credencial.

Parámetros de consulta

NombreTipoRequeridoDescripción
idsstringRequeridoUuids de adjuntos, separados por comas.

Respuesta

NombreTipoRequeridoDescripción
resolvedobjectRequeridoUn mapa desde cada uuid de adjunto que puedes ver hacia {url, url_expires_at}. Los ids ausentes no se listan.
resolved.{uuid}.urlstringRequeridoEl enlace de descarga actual del adjunto.
resolved.{uuid}.url_expires_atstring | nullRequeridoCuándo deja de funcionar el enlace, como fecha ISO, o null cuando no vence.

Errores

EstadoCuándo
400`ids` está vacío o tiene un uuid mal formado (`invalid_filter_value`, se rechaza en vez de omitirse), o tiene más de 50 valores (`too_many_filter_values`).
401Credencial ausente, vencida o con formato inválido (`credential_absent`, `credential_expired`, `credential_malformed`).
402Plan aún no está habilitado para tu organización (`plan_upgrade_required`). Es lo esperado durante la Beta: escribe a [email protected].
curl -sS "https://api.dailybot.com/v1/plan/attachments/resolve/?ids=00000000-0000-4000-8000-000000000009,00000000-0000-4000-8000-000000000010" \
  -H "Authorization: Bearer $DAILYBOT_TOKEN"

Probarlo

Este es un asistente de solo copia — la solicitud no se envía desde tu navegador. Pega el comando en tu terminal para ejecutarlo.

  • Scope: `tasks:read`.
  • Límite de solicitudes: 120 lecturas por minuto por actor.
  • Funciona con una sesión iniciada, un token de usuario del CLI, una API key personal, o una key de agente o de la organización. Una key personal ve lo que ve su persona; una key de agente o de la organización actúa como actor del sistema y solo ve los tableros visibles para la organización.
PATCH/v1/plan/tasks/{task_id}/comments/{comment_id}/attachments/{attachment_id}/BetaAPI keyCLI Auth

Renombrar un adjunto del comentario

Cambia el nombre visible del archivo; los bytes guardados no cambian. Cualquiera que pueda escribir en el elemento padre puede renombrar sus adjuntos.

Parámetros de ruta

NombreTipoRequeridoDescripción
task_idstringRequeridoUn uuid de tarea o su clave, como ENG-142, incluida una clave retirada por el cambio de nombre de un tablero. La resolución se limita primero a tu organización, así que la clave de otra organización es un 404 idéntico al de una inexistente. Los ids numéricos nunca se aceptan.
comment_idstringRequeridoEl uuid del comentario.
attachment_iduuidRequeridoEl uuid del adjunto.

Encabezados

NombreTipoRequeridoDescripción
X-Dailybot-Agent-NamestringOpcionalEl nombre del agente que ejecutó esta escritura en nombre de la persona. Úsalo en escrituras multipart y sin cuerpo (DELETE, archivar, restaurar); en escrituras JSON envía el campo agent_name del cuerpo, que gana si vienen los dos. Codifica el valor con percent-encoding (UTF-8). Los caracteres de control se eliminan; un valor vacío significa sin agente. Más de 128 caracteres, o un valor que no se puede decodificar, es 400 invalid_agent_attribution (nunca se trunca). Una clave de tipo agente, que no está ligada a una persona, recibe 400 invalid_agent_attribution si lo envía. El sello nunca cambia una respuesta de permisos. Ver Atribución de agente.

Cuerpo de la solicitud

NombreTipoRequeridoDescripción
filenamestringRequeridoEl nuevo nombre del archivo (1–255 caracteres). Los bytes guardados no cambian.
agent_namestringOpcionalEl nombre del agente que ejecutó esta escritura en nombre de la persona (máx. 128 caracteres, vacío significa sin agente). Tiene prioridad sobre el header X-Dailybot-Agent-Name. Ver Atribución de agente.

Respuesta

NombreTipoRequeridoDescripción
(body)TaskAttachmentRequeridoUn objeto TaskAttachment.

Errores

EstadoCuándo
400La validación falló; el `code` de la respuesta indica qué campo. `invalid_agent_attribution` significa que el nombre del agente no es válido.
401Credencial ausente, vencida o con formato inválido (`credential_absent`, `credential_expired`, `credential_malformed`).
402Plan aún no está habilitado para tu organización (`plan_upgrade_required`). Es lo esperado durante la Beta: escribe a [email protected].
403No puedes escribir aquí (`insufficient_scope`), o eres invitado (`guest_not_allowed`).
404El elemento padre o el adjunto no existe o no puedes verlo (`not_found`), nunca un 403.
curl -sS -X PATCH "https://api.dailybot.com/v1/plan/tasks/ENG-142/comments/00000000-0000-4000-8000-000000000008/attachments/00000000-0000-4000-8000-000000000009/" \
  -H "X-API-KEY: $DAILYBOT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "filename": "spec-v2.pdf"
}'

Probarlo

Este es un asistente de solo copia — la solicitud no se envía desde tu navegador. Pega el comando en tu terminal para ejecutarlo.

  • Scope: `tasks:write`.
  • Límite de solicitudes: 60 escrituras por minuto por actor.
  • Funciona con una sesión iniciada, un token de usuario del CLI, una API key personal, o una key de agente o de la organización. Una key personal ve lo que ve su persona; una key de agente o de la organización actúa como actor del sistema y solo ve los tableros visibles para la organización.
GET/v1/plan/tasks/{task_id}/comments/{comment_id}/reactions/BetaAPI keyCLI AuthPaginación por número de página

Listar quién reaccionó a un comentario

Todos los que reaccionaron, del más antiguo al más reciente, como una página: la lista completa detrás de la vista previa limitada users de cada reacción del comentario. emoji la reduce a un solo emoji.

Parámetros de ruta

NombreTipoRequeridoDescripción
task_idstringRequeridoUn uuid de tarea o su clave, como ENG-142, incluida una clave retirada por el cambio de nombre de un tablero. La resolución se limita primero a tu organización, así que la clave de otra organización es un 404 idéntico al de una inexistente. Los ids numéricos nunca se aceptan.
comment_idstringRequeridoEl uuid del comentario.

Parámetros de consulta

NombreTipoRequeridoDescripción
pageintegerOpcionalNúmero de página, empezando en 1.
page_sizeintegerOpcionalFilas por página. 50 por defecto, máximo 100. Los valores fuera de rango se ajustan, nunca se rechazan: pedir 500 devuelve 100.
emojistringOpcionalUn emoji; todos los emojis si se omite. La misma regla que en las escrituras: cualquier otra cosa es 400 reaction_invalid_emoji.

Objeto Reactor

NombreTipoRequeridoDescripción
emojistringRequerido—
userActorRefRequeridoQuién reaccionó.
executed_by_agentAgentRef | nullOpcionalEl agente que ejecutó la reacción por esa persona, o null.
created_atdatetimeRequerido—

Objeto ActorRef

NombreTipoRequeridoDescripción
kindstringRequerido—
uuidstringRequeridoIdentificador público estable.
namestringOpcionalNombre visible.
usernamestring | nullOpcional—
avatar_urlstring | nullOpcional—
has_photobooleanOpcional—

Respuesta

NombreTipoRequeridoDescripción
countintegerRequeridoNúmero total de filas.
nexturiRequeridoURL de la página siguiente, o null.
previousuriRequeridoURL de la página anterior, o null.
resultsarray<Reactor>RequeridoLa página de objetos Reactor.

Errores

EstadoCuándo
400`emoji` no es un solo emoji (`reaction_invalid_emoji`), o un valor de paginación no es válido.
401Credencial ausente, vencida o con formato inválido (`credential_absent`, `credential_expired`, `credential_malformed`).
402Plan aún no está habilitado para tu organización (`plan_upgrade_required`). Es lo esperado durante la Beta: escribe a [email protected].
404La tarea o el comentario no existe o no puedes verlo (`not_found`), nunca un 403.
curl -sS "https://api.dailybot.com/v1/plan/tasks/ENG-142/comments/00000000-0000-4000-8000-000000000008/reactions/?emoji=%F0%9F%91%8D" \
  -H "X-API-KEY: $DAILYBOT_API_KEY"

Probarlo

Este es un asistente de solo copia — la solicitud no se envía desde tu navegador. Pega el comando en tu terminal para ejecutarlo.

  • Scope: `tasks:read`.
  • Límite de solicitudes: 120 lecturas por minuto por actor.
  • Funciona con una sesión iniciada, un token de usuario del CLI, una API key personal, o una key de agente o de la organización. Una key personal ve lo que ve su persona; una key de agente o de la organización actúa como actor del sistema y solo ve los tableros visibles para la organización.

Esta página es la referencia de Plan · Comentarios y archivos. Todos los endpoints viven bajo https://api.dailybot.com/v1/plan/ y responden JSON.

Autentícate con una sesión iniciada o un token de usuario del CLI (Authorization: Bearer …), o con una API key (X-API-KEY). Una API key personal actúa como su persona y puede hacer todo lo que esa persona puede hacer en Dailybot; una key de agente o de la organización nunca actúa como una persona y se rechaza en los endpoints que la requieren. En un endpoint, la insignia API key significa que también se acepta una key de agente o de la organización. Consulta Autenticación para Plan, Autenticación y Errores para las reglas comunes a todas las APIs de Dailybot.

Si es tu primera vez con Plan, lee la introducción para entender el modelo: proyectos, tableros, estados, claves, orden, versiones y archivado.