Skip to main content

Acerca de la API de GraphQL

La API de GraphQL de GitHub ofrece flexibilidad y la capacidad de definir precisamente los datos que quieres recuperar.

Información general

Aquí tienes algunos enlaces rápidos para ayudarte a iniciar con la API de GraphQL:

  •         [Authentication](/graphql/guides/forming-calls-with-graphql#authenticating-with-graphql)
    
  •         [Punto de entrada raíz](/graphql/guides/forming-calls-with-graphql#the-graphql-endpoint)
    
  •         [Introspección del esquema](/graphql/guides/introduction-to-graphql#discovering-the-graphql-api)
    
  •         [Límites de velocidad](/graphql/overview/resource-limitations)
    
  •         [Migrando desde REST](/graphql/guides/migrating-from-rest-to-graphql)
    

Para más información sobre las API de GitHub, consulta Comparación de la API REST de GitHub y GraphQL API.

Acerca de GraphQL

El lenguaje de consulta de datos GraphQL es:

  •         **una [especificación](https://spec.graphql.org/June2018/).** La especificación determina la validez del [schema](/graphql/guides/introduction-to-graphql#schema) en el servidor de API. El modelo determina la validez de las llamadas al cliente.
    
  •         **
            [Establecimiento inflexible de tipos](#about-the-graphql-schema-reference).** El esquema define el sistema de tipos de una API y todas las relaciones de objetos.
    
  •         **
            [Introspective](/graphql/guides/introduction-to-graphql#discovering-the-graphql-api).** Un cliente puede consultar el esquema para obtener más información sobre él.
    
  •         **
            [Jerárquico](/graphql/guides/forming-calls-with-graphql).** La forma de una llamada de GraphQL refleja la forma de los datos JSON que se devuelven. 
            [Nested fields](/graphql/guides/migrating-from-rest-to-graphql#example-nesting) permite consultar y recibir solo los datos que especifique en un solo recorrido de ida y vuelta.
    
  •         **Nivel de aplicación.** GraphQL no es un modelo de storage ni un lenguaje de consulta de base de datos. El _graph_ hace referencia a las estructuras de grafos definidas en el esquema, donde [nodes](/graphql/guides/introduction-to-graphql#node) definen objetos y [edges](/graphql/guides/introduction-to-graphql#edge) definen relaciones entre objetos. La API recorre y recupera datos de la aplicación basándose en las definiciones del modelo, independientemente de cómo se almacenan los datos.
    

Por qué GitHub usa GraphQL

GitHub eligió GraphQL porque ofrece una flexibilidad significativamente mayor para nuestros integradores. La capacidad de definir exactamente los datos que desea— y solo los datos que desea— es una potente ventaja en comparación con los puntos de conexión de API de REST tradicionales. GraphQL le permite reemplazar varias solicitudes de REST con una sola llamada para obtener los datos que especifique.

Para obtener más información sobre por qué GitHub invierte en GraphQL, consulte la entrada de blog del anuncio original.

Acerca de la referencia del modelo de GraphQL

Los documentos de la barra lateral se generan a partir de los datos GitHub GraphQL schema. Todas las llamadas se validan y ejecutan contra el modelo. Utiliza estos documentos para encontrar los datos a los que puedes llamar:

Para obtener otra información, como la autenticación y los detalles del límite de velocidad, consulte el guides.

Solicitar soporte

Para las preguntas, reportes de errores y debates sobre las GitHub Apps, OAuth apps y el desarrollo de la API, explora Categoría API y webhooks en las discusiones de la comunidad de GitHub. El personal de GitHub modera y mantiene las discusiones y la comunidad de GitHub las responde.

Considera la posibilidad de ponerse en contacto con Soporte de GitHub directamente mediante el formulario de contacto para:

  • Respuestas garantizadas del personal de GitHub
  • Solicitudes de soporte que involucren preocupaciones sobre datos confidenciales o privados
  • Solicitud de función
  • Comentarios sobre los productos de GitHub

Si observa errores inesperados, puede usar githubstatus.com o la API de estado GitHub para comprobar si hay incidentes que afectan a la API.