GitScrum / Docs

Tareas

Crea, actualiza, filtra, completa y gestiona tareas. El recurso principal para elementos de trabajo del proyecto.

REST API — Todos los endpoints requieren autenticación mediante Bearer token. Incluye Authorization: Bearer {token} en cada solicitud. Los tokens se gestionan en Configuración de GitScrum → API. Base URL: https://services.gitscrum.com — Todas las rutas de solicitud en esta documentación son relativas a esta URL base.

Las tareas son los elementos de trabajo principales en GitScrum. Cada tarea pertenece a un proyecto y puede asignarse a usuarios, organizarse en sprints, vincularse a historias de usuario, etiquetarse y rastrearse a través de columnas Kanban.

Listar tareas (Filtrar)

Devuelve una lista paginada de tareas que coinciden con los filtros especificados.

GET /tasks?company_slug={slug}&project_slug={slug}

Parámetros de query

ParámetroTipoRequeridoDescripción
company_slugstringIdentificador del workspace
project_slugstringIdentificador del proyecto
statusstringNoFiltrar por estado: todo, in-progress, done
sprintstringNoSlug del sprint
user_storystringNoSlug de la historia de usuario
usersstringNoNombres de usuario separados por comas
labelsstringNoTítulos de etiquetas separados por comas
typestringNoTítulo del tipo de tarea
effortstringNoTítulo del nivel de esfuerzo
workflowstringNoTítulo de la columna Kanban
is_blockerbooleanNoFiltrar tareas bloqueadoras
is_archivedbooleanNoFiltrar tareas archivadas
unassignedbooleanNoSolo tareas sin asignar
created_atstringNoRango de fechas YYYY-MM-DD=YYYY-MM-DD
closed_atstringNoRango de fechas YYYY-MM-DD=YYYY-MM-DD
per_pageintegerNoResultados por página (1–100, predeterminado 50)

Ejemplo de solicitud

curl -X GET "https://services.gitscrum.com/tasks?company_slug=acme&project_slug=web-app&status=in-progress&per_page=10" \
  -H "Authorization: Bearer {token}"

Ejemplo de respuesta

{
  "data": [
    {
      "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
      "code": "WEB-42",
      "title": "Implement user authentication",
      "slug": "implement-user-authentication",
      "description": "Add JWT-based authentication flow",
      "state": 0,
      "workflow": {
        "id": 2,
        "title": "In Progress"
      },
      "type": {
        "id": 1,
        "title": "Feature",
        "color": "4A90D9"
      },
      "effort": {
        "id": 3,
        "title": "High"
      },
      "users": [
        {
          "username": "johndoe",
          "name": "John Doe"
        }
      ],
      "labels": [],
      "settings": {
        "is_blocker": false,
        "is_bug": false,
        "is_draft": false,
        "is_archived": false
      },
      "due_date": "2026-02-15",
      "created_at": "2026-01-20T10:30:00Z"
    }
  ],
  "meta": {
    "current_page": 1,
    "per_page": 10,
    "total": 42
  }
}

Obtener tarea

Devuelve los detalles completos de una tarea individual.

GET /tasks/{uuid}?company_slug={slug}&project_slug={slug}

Parámetros de ruta

ParámetroTipoDescripción
uuidstringUUID de la tarea

Obtener tarea por código

Recupera una tarea usando su código legible.

GET /tasks/by-code/{code}?company_slug={slug}&project_slug={slug}

Parámetros de ruta

ParámetroTipoDescripción
codestringCódigo de la tarea (ej., PROJ-123)

Mis tareas

Devuelve las tareas asignadas al usuario autenticado en todos los workspaces.

GET /tasks/all-workspaces

Tareas de hoy

Devuelve las tareas asignadas al usuario autenticado que vencen hoy.

GET /tasks/my-today

Crear tarea

Crea una nueva tarea en el proyecto especificado.

POST /tasks

Cuerpo de la solicitud

CampoTipoRequeridoDescripción
titlestringTítulo de la tarea
company_slugstringIdentificador del workspace
project_slugstringIdentificador del proyecto
descriptionstringNoDescripción de la tarea (markdown)
columnstringNoNombre de la columna Kanban (ej., "In Progress")
workflow_idintegerNoID de la columna Kanban (alternativa a column)
type_idintegerNoID del tipo de tarea
effort_idintegerNoID del nivel de esfuerzo/prioridad
sprint_slugstringNoSprint al que asignar la tarea
userstoryslugstringNoHistoria de usuario a vincular
usernamesarrayNoNombres de usuario a asignar
label_idsarrayNoIDs de etiquetas a adjuntar
due_datestringNoFecha límite (YYYY-MM-DD)
start_datestringNoFecha de inicio (YYYY-MM-DD)
estimated_minutesintegerNoEstimación de tiempo en minutos
is_blockerbooleanNoMarcar como bloqueadora
is_bugbooleanNoMarcar como bug
parent_idstringNoUUID de la tarea padre (crea subtarea)

Ejemplo de solicitud

curl -X POST "https://services.gitscrum.com/tasks" \
  -H "Authorization: Bearer {token}" \
  -H "Content-Type: application/json" \
  -d '{
    "title": "Add password reset flow",
    "company_slug": "acme",
    "project_slug": "web-app",
    "column": "To Do",
    "type_id": 1,
    "usernames": ["johndoe"],
    "due_date": "2026-02-28",
    "estimated_minutes": 120
  }'

Ejemplo de respuesta

{
  "data": {
    "uuid": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
    "code": "WEB-43",
    "title": "Add password reset flow",
    "state": 0,
    "workflow": {
      "id": 1,
      "title": "To Do"
    },
    "due_date": "2026-02-28",
    "estimated_minutes": 120,
    "created_at": "2026-02-07T14:00:00Z"
  }
}

Actualizar tarea

Actualiza una tarea existente. Soporta actualización de título, descripción, fechas, workflow, tipo, esfuerzo, sprint, historia de usuario, bloqueador, bug, borrador, archivado y campos de estimación de tiempo.

PUT /tasks/{uuid}

Cuerpo de la solicitud

Acepta los mismos campos opcionales que Crear tarea, más companyslug y projectslug.

Ejemplo de solicitud

curl -X PUT "https://services.gitscrum.com/tasks/b2c3d4e5-f6a7-8901-bcde-f12345678901" \
  -H "Authorization: Bearer {token}" \
  -H "Content-Type: application/json" \
  -d '{
    "company_slug": "acme",
    "project_slug": "web-app",
    "column": "In Progress",
    "is_blocker": true
  }'

Eliminar tarea

Elimina permanentemente una tarea. Esta acción no se puede deshacer.

DELETE /tasks/{uuid}?company_slug={slug}&project_slug={slug}

Parámetros de ruta

ParámetroTipoDescripción
uuidstringUUID de la tarea
curl -X DELETE "https://services.gitscrum.com/tasks/b2c3d4e5-f6a7-8901-bcde-f12345678901?company_slug=acme&project_slug=web-app" \
  -H "Authorization: Bearer {token}"

Marcar tarea como hecha

Alterna el estado de completado de una tarea.

PUT /tasks/{uuid}/done?company_slug={slug}&project_slug={slug}

Parámetros de ruta

ParámetroTipoDescripción
uuidstringUUID de la tarea

Actualizar estimación

Actualiza los story points o estimación de una tarea.

PUT /tasks/{uuid}/estimative?company_slug={slug}&project_slug={slug}

Parámetros de ruta

ParámetroTipoDescripción
uuidstringUUID de la tarea

Cuerpo de la solicitud

CampoTipoRequeridoDescripción
estimativestringValor de story points o estimación

Mover al tablero

Mueve una tarea a un tablero de proyecto diferente.

PUT /tasks/{uuid}/project_board?company_slug={slug}&project_slug={slug}

Parámetros de ruta

ParámetroTipoDescripción
uuidstringUUID de la tarea

Cuerpo de la solicitud

CampoTipoRequeridoDescripción
board_uuidstringUUID del tablero destino

Duplicar tarea

Crea una copia de la tarea especificada.

POST /tasks/{uuid}/duplicate?company_slug={slug}&project_slug={slug}

Mover tarea a proyecto

Mueve una tarea a un proyecto diferente.

POST /tasks/{uuid}/move?company_slug={slug}&project_slug={slug}

Cuerpo de la solicitud

CampoTipoRequeridoDescripción
newprojectslugstringSlug del proyecto destino
newworkflowidintegerID de la columna Kanban destino

Subtareas

Listar subtareas

Devuelve las subtareas de una tarea padre.

GET /tasks/{uuid}/sub-tasks?company_slug={slug}&project_slug={slug}

Vincular subtarea

Vincula una tarea existente como subtarea.

POST /tasks/{uuid}/sub-tasks/{subtask_uuid}?company_slug={slug}&project_slug={slug}

Desvincular subtarea

Elimina la relación de subtarea sin eliminar la tarea.

DELETE /tasks/{uuid}/sub-tasks/{subtask_uuid}?company_slug={slug}&project_slug={slug}

Subtareas disponibles

Busca tareas que se pueden vincular como subtareas.

GET /tasks/{uuid}/available-subtasks?company_slug={slug}&project_slug={slug}

Tareas relacionadas

Devuelve las tareas relacionadas con la tarea especificada.

GET /tasks/{uuid}/related-tasks?company_slug={slug}&project_slug={slug}

Asignados

Asignar miembro

Asigna un usuario a una tarea.

POST /task-assignees

Cuerpo de la solicitud

CampoTipoRequeridoDescripción
task_uuidstringUUID de la tarea
usernamestringNombre de usuario a asignar
company_slugstringIdentificador del workspace
project_slugstringIdentificador del proyecto

Desasignar miembro

Elimina un usuario de una tarea.

DELETE /task-assignees

Cuerpo de la solicitud

CampoTipoRequeridoDescripción
task_uuidstringUUID de la tarea
usernamestringNombre de usuario a desasignar
company_slugstringIdentificador del workspace
project_slugstringIdentificador del proyecto

Checklists

Listar checklists

Devuelve los checklists de una tarea.

GET /task-checklists?task_uuid={uuid}&company_slug={slug}&project_slug={slug}

Crear elemento de checklist

Crea un nuevo elemento de checklist. Incluye parent_id para crear un sub-elemento.

POST /task-checklists

Cuerpo de la solicitud

CampoTipoRequeridoDescripción
titlestringTexto del elemento
task_uuidstringUUID de la tarea
company_slugstringIdentificador del workspace
project_slugstringIdentificador del proyecto
parent_idintegerNoID del elemento de checklist padre (para sub-elementos)

Actualizar elemento de checklist

Actualiza el título de un elemento de checklist.

PUT /task-checklists/{id}

Cuerpo de la solicitud

CampoTipoRequeridoDescripción
titlestringTexto actualizado
company_slugstringIdentificador del workspace

Alternar elemento de checklist

Marca un elemento de checklist como hecho o no hecho.

PUT /task-checklists/{id}/toggle

Eliminar elemento de checklist

Elimina un elemento de checklist.

DELETE /task-checklists/{id}?company_slug={slug}&project_slug={slug}

Etiquetas de tarea

Listar etiquetas de la tarea

Devuelve las etiquetas adjuntas a una tarea.

GET /task-labels?task_uuid={uuid}&company_slug={slug}&project_slug={slug}

Listar etiquetas disponibles

Devuelve las etiquetas aún no asignadas a la tarea.

GET /task-labels/not-added?task_uuid={uuid}&company_slug={slug}&project_slug={slug}

Crear y adjuntar etiqueta

Crea una nueva etiqueta y la adjunta a la tarea.

POST /task-labels

Cuerpo de la solicitud

CampoTipoRequeridoDescripción
titlestringNombre de la etiqueta
colorstringColor hexadecimal sin #
task_uuidstringUUID de la tarea
company_slugstringIdentificador del workspace
project_slugstringIdentificador del proyecto

Adjuntar etiqueta

Adjunta una etiqueta existente a una tarea.

POST /task-labels/{label_id}/attach

Cuerpo de la solicitud

CampoTipoRequeridoDescripción
task_uuidstringUUID de la tarea
company_slugstringIdentificador del workspace
project_slugstringIdentificador del proyecto

Desadjuntar etiqueta

Elimina una etiqueta de una tarea.

DELETE /task-labels/{label_id}/detach

Cuerpo de la solicitud

CampoTipoRequeridoDescripción
task_uuidstringUUID de la tarea
company_slugstringIdentificador del workspace
project_slugstringIdentificador del proyecto

Importar tareas

Vista previa de importación

Sube un archivo CSV y devuelve una vista previa de los datos a importar.

POST /tasks/import/preview

Cuerpo de la solicitud (multipart/form-data)

CampoTipoRequeridoDescripción
filefileArchivo CSV
company_slugstringIdentificador del workspace
project_slugstringIdentificador del proyecto

Confirmar importación

Confirma la importación y crea tareas a partir de los datos previsualizados.

POST /tasks/import/confirm

Cuerpo de la solicitud

CampoTipoRequeridoDescripción
company_slugstringIdentificador del workspace
project_slugstringIdentificador del proyecto
dataarrayDatos de importación mapeados desde la vista previa

Exportar tareas

Conteo de tareas

Devuelve el conteo total de tareas para exportación.

GET /{company_slug}/{project_slug}/tasks/count

Exportar como Excel

Descarga las tareas como archivo Excel.

GET /{company_slug}/{project_slug}/tasks/excel

Favoritos

Listar favoritos

Devuelve todas las tareas marcadas como favoritas por el usuario autenticado.

GET /favorites?company_slug={slug}

Alternar favorito

Agrega o elimina una tarea de favoritos.

POST /favorites/{task_uuid}

Cuerpo de la solicitud

CampoTipoRequeridoDescripción
company_slugstringIdentificador del workspace
project_slugstringIdentificador del proyecto

Notificaciones

Devuelve las notificaciones relacionadas con tareas del usuario autenticado.

GET /tasks/notifications

Referencia de campos

CampoTipoDescripción
uuidstringIdentificador único
codestringCódigo legible (ej., WEB-42)
titlestringTítulo de la tarea
slugstringIdentificador amigable para URL
descriptionstringDescripción de la tarea (markdown)
stateinteger0 = abierta, 1 = cerrada
estimativestringStory points o etiqueta de estimación
estimated_minutesintegerEstimación de tiempo en minutos
totaltrackedminutesintegerTiempo total rastreado en minutos
parent_idstringUUID de la tarea padre (si es subtarea)
typeobjectTipo de tarea (id, title, color)
effortobjectNivel de esfuerzo (id, title)
workflowobjectColumna Kanban (id, title)
labelsarrayEtiquetas adjuntas
userobjectCreador
usersarrayUsuarios asignados
settingsobjectisblocker, isbug, isdraft, isarchived
statsobjectEstadísticas de la tarea
companyobjectReferencia al workspace
projectobjectReferencia al proyecto
boardobjectReferencia al tablero
sprintobjectReferencia al sprint
user_storyobjectHistoria de usuario vinculada
start_datestringFecha de inicio
due_datestringFecha límite
created_atstringTimestamp de creación