Usar a API do GraphQL para discussões - GitHub Docs
Aprenda a usar a API do GraphQL de GitHub Discussions.
A API do GraphQL do GitHub Discussions permite que você obtenha, crie, edite e exclua publicações de discussão. Para obter mais informações sobre GitHub Discussions, consulte "Sobre discussões".
Esta API está disponível para usuários autenticados, aplicativos OAuth e aplicativos GitHub. Os tokens de acesso exigem o escopo repo para repositórios privados e o escopo public_repo para repositórios públicos. Para obter mais informações, consulte "Escopos para aplicativos OAuth".
Liste as discussões dentro de um repositório. Se categoriyId for especificado, apenas os resultados dentro dessa categoria serão retornados.
Retorna as categorias de discussão disponíveis definidas neste repositório. Cada repositório pode ter até 10 categorias. Para obter mais informações sobre as categorias de discussão, consulte "Sobre discussões".
Obter discussão. Retorna null se a discussão com o ID especificado não existe.
Discussões de retorno fixadas a este repositório, ordenada pela posição do da marcação.
Observação: Por brevidade, os tipos de conexão não são expandidos aqui. Cada tipo de conexão mencionada no esquema segue o mesmo padrão que outras conexões na API do GraphQL. Para obter mais informações, consulte "Introdução ao GraphQL".
São implementados pelos tipos Usuário e Organização. Observação: Uma Organização só terá discussões associadas, se for tiver sido convertida a partir de um Usuário.
Também são implementados pelos tipos de Usuário e Organização.
Essas mutações seguem o mesmo padrão de implementação das outras mutações na API do GraphQL. Cada mutação aceita um único argumento de um tipo de Input, que leva o nome da mutação e retorna um tipo de carga que contém os campos especificados.
Por exemplo, esta é uma mutação básica de createDiscussion que irá criar uma nova discussão:
body: String! O texto da nova discussão.
title: String! O título da nova discussão.
repositoryId: ID! TO ID de um repositório no qual criar uma discussão.
categoryId: ID! O ID de uma DiscussionCategory com esse repositório.
clientMutationId: String Um identificador único para o cliente que realiza a mutação.
clientMutationId: String O identificador único fornecido como entrada.
discussion: Discussion A discussão que foi criada.
discussionId: ID! O ID do nó da discussão a ser atualizado.
body: String O novo conteúdo do texto da discussão.
title: String O novo título da discussão.
CategyId: ID O ID do nó de uma DiscussionCategory dentro do mesmo repositório para alterar esta discussão.
discussion: Discussion A discussão que foi modificada.
id: ID! O ID do nó da discussão a ser excluído.
discussion: Discussion A discussão que foi excluída.
body: String! Os conteúdos do comentário.
discussionId: ID! O ID do nó da discussão sobre o qual comentar.
replyToId: ID O ID do nó do comentário de discussão ao qual responder. Se ausente, o comentário criado será um comentário de nível superior.
comment: DiscussionComment O comentário da discussão que foi criado.
body: String! Os novos conteúdos do texto do comentário.
commentId: ID! O ID do nó do comentário da discussão a ser atualizado.
comment: DiscussionComment O comentário de discussão que foi atualizado.
id: ID! O ID do nó do comentário de discussão a ser excluído.
comment: DiscussionComment O comentário das discussões que foi excluído.
id: ID! O ID do nó do comentário de discussão para marcar como uma resposta.
discussion: Discussion A discussão que inclui o comentário escolhido.
ID: ID! O ID do nó do comentário de discussão para desmarcar como uma resposta.
discussion: Discussion A discussão que inclui o comentário não avaliado.
A discussão pode ser retornada do campo de pesquisa de alto nível. Para pesquisar uma discussão, especifique o tipo como DSCUSSÃO. O tipo SearchResultItemConnection tem um campo discussionCount para relatar o número de discussões retornadas, e o tipo Discussão é adicionado à união DE SearchResultItem. Para obter mais informações, consulte "Consultas" e "Pesquisando discussões".