Skip to main content

Sobre a API do GraphQL

A API do GraphQL de GitHub oferece flexibilidade e a capacidade de definir precisamente os dados que você deseja buscar.

Visão geral

Aqui estão alguns links rápidos para ajudar você a colocar em funcionamento a API do GraphQL:

  •         [Autenticação](/graphql/guides/forming-calls-with-graphql#authenticating-with-graphql)
    
  •         [Ponto de extremidade raiz](/graphql/guides/forming-calls-with-graphql#the-graphql-endpoint)
    
  •         [Introspecção de esquema](/graphql/guides/introduction-to-graphql#discovering-the-graphql-api)
    
  •         [Limites de taxa](/graphql/overview/resource-limitations)
    
  •         [Migração da REST](/graphql/guides/migrating-from-rest-to-graphql)
    

Para saber mais sobre as APIs do GitHub, confira Comparando a API REST do GitHub e a API GraphQL.

Sobre o GraphQL

A linguagem de consulta de dados GraphQL é:

  •         **Uma [especificação](https://spec.graphql.org/June2018/).** A especificação determina a validade do [esquema](/graphql/guides/introduction-to-graphql#schema) no servidor de API. O esquema determina a validade das chamadas dos clientes.
    
  •         **
            [Fortemente tipada](#about-the-graphql-schema-reference).** O esquema define o sistema de tipos e todas as relações de objeto de uma API.
    
  •         **
            [Introspectiva](/graphql/guides/introduction-to-graphql#discovering-the-graphql-api).** Um cliente pode consultar o esquema para ver detalhes sobre o esquema.
    
  •         **
            [Hierárquica](/graphql/guides/forming-calls-with-graphql).** A forma de uma chamada do GraphQL espelha a forma dos dados JSON retornados. Os [campos aninhados](/graphql/guides/migrating-from-rest-to-graphql#example-nesting) permitem consultar e receber apenas os dados especificados em uma só ida e volta.
    
  •         **Uma camada de aplicativo.** O GraphQL não é um modelo de armazenamento nem uma linguagem de consulta de banco de dados. O _grafo_ refere-se a estruturas de grafo definidas no esquema, em que [nós](/graphql/guides/introduction-to-graphql#node) definem os objetos e [bordas](/graphql/guides/introduction-to-graphql#edge) definem as relações entre objetos. A API percorre e retorna dados do aplicativo com base nas definições do esquema, independentemente de como os dados são armazenados.
    

Por que o GitHub está usando GraphQL

O GitHub escolheu o GraphQL, porque oferece muito mais flexibilidade para os nossos integradores. A capacidade de definir com precisão os dados desejados (e — os dados desejados) são uma excelente vantagem em relação aos pontos de extremidade tradicionais da API REST. O GraphQL permite que você substitua várias solicitações da REST por uma só chamada para buscar os dados especificados.

Para obter mais detalhes sobre por que o GitHub investiu no GraphQL, confira a postagem no blog do comunicado original.

Sobre a referência do esquema do GraphQL

A documentação na barra lateral é gerada com base no esquema do GraphQL do GitHub. Todas as chamadas são validadas e executadas contra o esquema. Use estes documentos para descobrir quais dados você pode chamar:

Para obter outras informações, como detalhes de autenticação e limite de taxa, confira os guias.

Solicitar suporte

Em caso de dúvidas, relatórios de bug e discussões sobre o GitHub Apps, o OAuth apps e o desenvolvimento de API, explore o Categoria de API e Webhooks nas Discussões da Comunidade do GitHub. As discussões são moderadas e mantidas pela equipe GitHub e respondidas pela comunidade GitHub.

Considere a possibilidade de entrar em contato diretamente com o Suporte do GitHub usando o formulário de contato para:

  • Resposta garantida da equipe do GitHub
  • Solicitações de suporte que envolvem dados confidenciais ou questões privadas
  • Solicitações de recursos
  • Comentários sobre os produtos do GitHub

Se você observar falhas inesperadas, poderá usar o githubstatus.com ou a API de status da GitHub para verificar se há incidentes que afetam a API.