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 discusiones proporcionan canales de mensajería con hilos dentro de los proyectos para comunicación del equipo, toma de decisiones y compartición de conocimiento.
Listar todas las discusiones
Devuelve todas las discusiones de un proyecto.
GET /discussions/all?company_slug={slug}&project_slug={slug}
Parámetros de query
| Parámetro | Tipo | Requerido | Descripción |
|---|
company_slug | string | Sí | Identificador del workspace |
project_slug | string | Sí | Identificador del proyecto |
Listar canales
Devuelve los canales de discusión de un proyecto.
GET /discussions/channels?company_slug={slug}&project_slug={slug}
Ejemplo de solicitud
curl -X GET "https://services.gitscrum.com/discussions/channels?company_slug=acme&project_slug=web-app" \
-H "Authorization: Bearer {token}"
Ejemplo de respuesta
{
"data": [
{
"uuid": "e5f6a7b8-c9d0-1234-ef01-23456789abcd",
"title": "Backend Architecture",
"description": "Discuss API design and backend decisions",
"messages_count": 47,
"last_message": {
"id": 892,
"message": "Agreed. Let's go with the event-driven approach.",
"user": {
"username": "janedoe",
"name": "Jane Doe"
},
"created_at": "2026-02-06T16:45:00Z"
},
"created_at": "2026-01-05T09:00:00Z"
}
]
}
Obtener canal
Devuelve los detalles de un canal individual.
GET /discussions/channels/{uuid}?company_slug={slug}&project_slug={slug}
Parámetros de ruta
| Parámetro | Tipo | Descripción |
|---|
uuid | string | UUID del canal |
Crear canal
Crea un nuevo canal de discusión.
POST /discussions/channels
Cuerpo de la solicitud
| Campo | Tipo | Requerido | Descripción |
|---|
title | string | Sí | Nombre del canal |
company_slug | string | Sí | Identificador del workspace |
project_slug | string | Sí | Identificador del proyecto |
description | string | No | Descripción del canal |
Ejemplo de solicitud
curl -X POST "https://services.gitscrum.com/discussions/channels" \
-H "Authorization: Bearer {token}" \
-H "Content-Type: application/json" \
-d '{
"title": "Release Planning",
"company_slug": "acme",
"project_slug": "web-app",
"description": "Coordinate release schedules and blockers"
}'
Mensajes del canal
Devuelve los mensajes de un canal, con paginación basada en cursor.
GET /discussions/channels/{uuid}/messages?company_slug={slug}&project_slug={slug}
Parámetros de ruta
| Parámetro | Tipo | Descripción |
|---|
uuid | string | UUID del canal |
Ejemplo de respuesta
{
"data": [
{
"id": 893,
"message": "Deployment to staging is complete.",
"user": {
"username": "johndoe",
"name": "John Doe"
},
"created_at": "2026-02-07T10:00:00Z"
}
]
}
Enviar mensaje
Envía un mensaje a un canal.
POST /discussions/channels/{uuid}/messages?company_slug={slug}&project_slug={slug}
Parámetros de ruta
| Parámetro | Tipo | Descripción |
|---|
uuid | string | UUID del canal |
Cuerpo de la solicitud
| Campo | Tipo | Requerido | Descripción |
|---|
message | string | Sí | Contenido del mensaje |
Ejemplo de solicitud
curl -X POST "https://services.gitscrum.com/discussions/channels/e5f6a7b8-c9d0-1234-ef01-23456789abcd/messages?company_slug=acme&project_slug=web-app" \
-H "Authorization: Bearer {token}" \
-H "Content-Type: application/json" \
-d '{
"message": "QA sign-off received. Ready for production deploy."
}'
Actualizar mensaje
Actualiza un mensaje existente.
PUT /discussions/messages/{id}?company_slug={slug}&project_slug={slug}
Parámetros de ruta
| Parámetro | Tipo | Descripción |
|---|
id | integer | ID del mensaje |
Cuerpo de la solicitud
| Campo | Tipo | Requerido | Descripción |
|---|
message | string | Sí | Contenido actualizado del mensaje |
Eliminar mensaje
Elimina un mensaje.
DELETE /discussions/messages/{id}?company_slug={slug}&project_slug={slug}
Parámetros de ruta
| Parámetro | Tipo | Descripción |
|---|
id | integer | ID del mensaje |
Actualizar canal
Actualiza un canal de discusión existente.
PUT /discussions/channels/{uuid}?company_slug={slug}&project_slug={slug}
Parámetros de ruta
| Parámetro | Tipo | Descripción |
|---|
uuid | string | UUID del canal |
Cuerpo de la solicitud
| Campo | Tipo | Requerido | Descripción |
|---|
title | string | No | Nombre actualizado del canal |
description | string | No | Descripción actualizada |
Eliminar canal
Elimina un canal de discusión y todos sus mensajes.
DELETE /discussions/channels/{uuid}?company_slug={slug}&project_slug={slug}
Parámetros de ruta
| Parámetro | Tipo | Descripción |
|---|
uuid | string | UUID del canal |
Buscar mensajes del canal
Busca mensajes dentro de un canal específico.
GET /discussions/channels/{uuid}/search?company_slug={slug}&project_slug={slug}&q={query}
Parámetros de ruta
| Parámetro | Tipo | Descripción |
|---|
uuid | string | UUID del canal |
Parámetros de query
| Parámetro | Tipo | Requerido | Descripción |
|---|
q | string | Sí | Consulta de búsqueda |
Respuestas del hilo
Devuelve las respuestas de un mensaje específico.
GET /discussions/messages/{id}/replies?company_slug={slug}&project_slug={slug}
Parámetros de ruta
| Parámetro | Tipo | Descripción |
|---|
id | integer | ID del mensaje padre |
Responder mensaje
Envía una respuesta a un mensaje específico, creando un hilo.
POST /discussions/messages/{id}/replies?company_slug={slug}&project_slug={slug}
Parámetros de ruta
| Parámetro | Tipo | Descripción |
|---|
id | integer | ID del mensaje padre |
Cuerpo de la solicitud
| Campo | Tipo | Requerido | Descripción |
|---|
message | string | Sí | Contenido de la respuesta |
Agregar reacción
Agrega una reacción a un mensaje.
POST /discussions/messages/{id}/reactions?company_slug={slug}&project_slug={slug}
Parámetros de ruta
| Parámetro | Tipo | Descripción |
|---|
id | integer | ID del mensaje |
Cuerpo de la solicitud
| Campo | Tipo | Requerido | Descripción |
|---|
reaction | string | Sí | Emoji de reacción |
Marcar como leído
Marca todos los mensajes de un canal como leídos.
POST /discussions/channels/{uuid}/read?company_slug={slug}&project_slug={slug}
Referencia de campos
Canales
| Campo | Tipo | Descripción |
|---|
uuid | string | Identificador único del canal |
title | string | Nombre del canal |
description | string | Descripción del canal |
messages_count | integer | Cantidad total de mensajes |
last_message | object | Mensaje más reciente |
created_at | string | Timestamp de creación |
Mensajes
| Campo | Tipo | Descripción |
|---|
id | integer | Identificador del mensaje |
message | string | Contenido del mensaje |
user | object | Autor (username, name) |
created_at | string | Timestamp de creación |