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:
-
Tipos definidos por esquema: escalares, objetos, enumerações, interfaces, uniões e objetos de entrada.
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.