GitScrum / Docs

Discussões

Gerencie canais e mensagens de discussão. Crie canais, envie mensagens e pesquise conversas.

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âmetroTipoObrigatórioDescrição
company_slugstringSimIdentificador do workspace
project_slugstringSimIdentificador 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âmetroTipoDescrição
uuidstringUUID do canal

Criar Canal

Cria um novo canal de discussão.

POST /discussions/channels

Corpo da Requisição

CampoTipoObrigatórioDescrição
titlestringSimNome do canal
company_slugstringSimIdentificador do workspace
project_slugstringSimIdentificador do projeto
descriptionstringNãoDescriçã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âmetroTipoDescrição
uuidstringUUID 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âmetroTipoDescrição
uuidstringUUID do canal

Corpo da Requisição

CampoTipoObrigatórioDescrição
messagestringSimConteú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âmetroTipoDescrição
idintegerID da mensagem

Corpo da Requisição

CampoTipoObrigatórioDescrição
messagestringSimConteúdo atualizado da mensagem

Excluir Mensagem

Exclui uma mensagem.

DELETE /discussions/messages/{id}?company_slug={slug}&project_slug={slug}

Parâmetros de Caminho

ParâmetroTipoDescrição
idintegerID 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âmetroTipoDescrição
uuidstringUUID do canal

Corpo da Requisição

CampoTipoObrigatórioDescrição
titlestringNãoNome atualizado do canal
descriptionstringNãoDescriçã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âmetroTipoDescrição
uuidstringUUID 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âmetroTipoDescrição
uuidstringUUID do canal

Parâmetros de Query

ParâmetroTipoObrigatórioDescrição
qstringSimTermo 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âmetroTipoDescrição
idintegerID 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âmetroTipoDescrição
idintegerID da mensagem pai

Corpo da Requisição

CampoTipoObrigatórioDescrição
messagestringSimConteú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âmetroTipoDescrição
idintegerID da mensagem

Corpo da Requisição

CampoTipoObrigatórioDescrição
reactionstringSimEmoji 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

CampoTipoDescrição
uuidstringIdentificador único do canal
titlestringNome do canal
descriptionstringDescrição do canal
messages_countintegerContagem total de mensagens
last_messageobjectMensagem mais recente
created_atstringTimestamp de criação

Mensagens

CampoTipoDescrição
idintegerIdentificador da mensagem
messagestringConteúdo da mensagem
userobjectAutor (username, name)
created_atstringTimestamp de criação