REST API — Todos os endpoints requerem autenticação via Bearer token. Inclua Authorization: Bearer {token} em cada requisição. Os tokens são gerenciados em Configurações do GitScrum → API. Base URL: https://services.gitscrum.com — Todos os caminhos de requisição nesta documentação são relativos a esta URL base.
Discussões fornecem canais de mensagens com threads dentro de projetos para comunicação da equipe, decisões e compartilhamento de conhecimento.
Listar Todas as Discussões
Retorna todas as discussões de um projeto.
GET /discussions/all?company_slug={slug}&project_slug={slug}
Parâmetros de Query
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|
company_slug | string | Sim | Identificador do workspace |
project_slug | string | Sim | Identificador do projeto |
Listar Canais
Retorna canais de discussão de um projeto.
GET /discussions/channels?company_slug={slug}&project_slug={slug}
Exemplo de Requisição
curl -X GET "https://services.gitscrum.com/discussions/channels?company_slug=acme&project_slug=web-app" \
-H "Authorization: Bearer {token}"
Exemplo de Resposta
{
"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"
}
]
}
Obter Canal
Retorna detalhes de um único canal.
GET /discussions/channels/{uuid}?company_slug={slug}&project_slug={slug}
Parâmetros de Caminho
| Parâmetro | Tipo | Descrição |
|---|
uuid | string | UUID do canal |
Criar Canal
Cria um novo canal de discussão.
POST /discussions/channels
Corpo da Requisição
| Campo | Tipo | Obrigatório | Descrição |
|---|
title | string | Sim | Nome do canal |
company_slug | string | Sim | Identificador do workspace |
project_slug | string | Sim | Identificador do projeto |
description | string | Não | Descrição do canal |
Exemplo de Requisição
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"
}'
Mensagens do Canal
Retorna mensagens de um canal, com paginação baseada em cursor.
GET /discussions/channels/{uuid}/messages?company_slug={slug}&project_slug={slug}
Parâmetros de Caminho
| Parâmetro | Tipo | Descrição |
|---|
uuid | string | UUID do canal |
Exemplo de Resposta
{
"data": [
{
"id": 893,
"message": "Deployment to staging is complete.",
"user": {
"username": "johndoe",
"name": "John Doe"
},
"created_at": "2026-02-07T10:00:00Z"
}
]
}
Enviar Mensagem
Envia uma mensagem para um canal.
POST /discussions/channels/{uuid}/messages?company_slug={slug}&project_slug={slug}
Parâmetros de Caminho
| Parâmetro | Tipo | Descrição |
|---|
uuid | string | UUID do canal |
Corpo da Requisição
| Campo | Tipo | Obrigatório | Descrição |
|---|
message | string | Sim | Conteúdo da mensagem |
Exemplo de Requisição
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."
}'
Atualizar Mensagem
Atualiza uma mensagem existente.
PUT /discussions/messages/{id}?company_slug={slug}&project_slug={slug}
Parâmetros de Caminho
| Parâmetro | Tipo | Descrição |
|---|
id | integer | ID da mensagem |
Corpo da Requisição
| Campo | Tipo | Obrigatório | Descrição |
|---|
message | string | Sim | Conteúdo atualizado da mensagem |
Excluir Mensagem
Exclui uma mensagem.
DELETE /discussions/messages/{id}?company_slug={slug}&project_slug={slug}
Parâmetros de Caminho
| Parâmetro | Tipo | Descrição |
|---|
id | integer | ID da mensagem |
Atualizar Canal
Atualiza um canal de discussão existente.
PUT /discussions/channels/{uuid}?company_slug={slug}&project_slug={slug}
Parâmetros de Caminho
| Parâmetro | Tipo | Descrição |
|---|
uuid | string | UUID do canal |
Corpo da Requisição
| Campo | Tipo | Obrigatório | Descrição |
|---|
title | string | Não | Nome atualizado do canal |
description | string | Não | Descrição atualizada |
Excluir Canal
Exclui um canal de discussão e todas as suas mensagens.
DELETE /discussions/channels/{uuid}?company_slug={slug}&project_slug={slug}
Parâmetros de Caminho
| Parâmetro | Tipo | Descrição |
|---|
uuid | string | UUID do canal |
Pesquisar Mensagens do Canal
Pesquisa mensagens dentro de um canal específico.
GET /discussions/channels/{uuid}/search?company_slug={slug}&project_slug={slug}&q={query}
Parâmetros de Caminho
| Parâmetro | Tipo | Descrição |
|---|
uuid | string | UUID do canal |
Parâmetros de Query
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|
q | string | Sim | Termo de pesquisa |
Respostas de Thread
Retorna respostas de uma mensagem específica.
GET /discussions/messages/{id}/replies?company_slug={slug}&project_slug={slug}
Parâmetros de Caminho
| Parâmetro | Tipo | Descrição |
|---|
id | integer | ID da mensagem pai |
Responder Mensagem
Envia uma resposta a uma mensagem específica, criando uma thread.
POST /discussions/messages/{id}/replies?company_slug={slug}&project_slug={slug}
Parâmetros de Caminho
| Parâmetro | Tipo | Descrição |
|---|
id | integer | ID da mensagem pai |
Corpo da Requisição
| Campo | Tipo | Obrigatório | Descrição |
|---|
message | string | Sim | Conteúdo da resposta |
Adicionar Reação
Adiciona uma reação a uma mensagem.
POST /discussions/messages/{id}/reactions?company_slug={slug}&project_slug={slug}
Parâmetros de Caminho
| Parâmetro | Tipo | Descrição |
|---|
id | integer | ID da mensagem |
Corpo da Requisição
| Campo | Tipo | Obrigatório | Descrição |
|---|
reaction | string | Sim | Emoji de reação |
Marcar como Lida
Marca todas as mensagens de um canal como lidas.
POST /discussions/channels/{uuid}/read?company_slug={slug}&project_slug={slug}
Referência de Campos
Canais
| Campo | Tipo | Descrição |
|---|
uuid | string | Identificador único do canal |
title | string | Nome do canal |
description | string | Descrição do canal |
messages_count | integer | Contagem total de mensagens |
last_message | object | Mensagem mais recente |
created_at | string | Timestamp de criação |
Mensagens
| Campo | Tipo | Descrição |
|---|
id | integer | Identificador da mensagem |
message | string | Conteúdo da mensagem |
user | object | Autor (username, name) |
created_at | string | Timestamp de criação |