La API usa tipos de medios personalizados para permitir que los consumidores elijan el formato de los datos que desean recibir. Esto se hace al agregar uno o más de los siguientes tipos al encabezado Accept
cuando realiza una solicitud. Los tipos de medios son específicos de los recursos, lo que les permite cambiar de forma independiente y admitir formatos que otros recursos no admiten.
Todos los tipos de medios de GitHub se ven así:
application/vnd.github.param[+json]
Los tipos de medios más básicos que la API acepta son:
application/vnd.github+json
application/json
Nota: En el pasado, se recomendaba incluir v3
en el encabezado Accept
. Esto ya no es necesario y no tendrá ningún impacto en las solicitudes de API.
Si va a especificar una propiedad (como full/raw/etc, como se define más adelante), colóquela después de github
:
application/vnd.github.raw+json
Porpiedades del cuerpo del comentario
El cuerpo de un comentario se puede escribir en GitHub Flavored Markdown. Las API para administrar incidencias, comentarios de incidencias, comentarios de solicitudes de incorporación de cambios y comentarios de gists aceptan estos tipos de medios:
Tipo de medio sin formato para las propiedades del cuerpo del comentario
application/vnd.github.raw+json
Devuelve el cuerpo en markdown sin procesar. La respuesta incluirá body
. Esto es lo predeterminado si no pasas ningún tipo de medios específico.
Tipo de medio de texto para las propiedades del cuerpo del comentario
application/vnd.github.text+json
Devuelve una presentación únicamente de texto para el cuerpo de markdown. La respuesta incluirá body_text
.
Tipo de medio HTML para las propiedades del cuerpo del comentario
application/vnd.github.html+json
Duevuelve el HTML interpretado del markdown del cuerpo. La respuesta incluirá body_html
.
Tipo de medio completo para las propiedades del cuerpo del comentario
application/vnd.github.full+json
Devuelve las representaciones de HTML, texto y sin procesar. La respuesta incluirá body
, body_text
y body_html
:
Propiedades de los blobs de Git
Se permiten los siguientes tipos de medios al obtener un blob:
Tipo de medio JSON para las propiedades de blob de Git
application/vnd.github+json
application/json
Devuelve la representación JSON del blob con content
como una cadena codificada en Base64. Esto es lo predeterminado si no se pasa nada más.
Tipo de medio sin formato para las propiedades de blob de Git
application/vnd.github.raw
Devuelve los datos del blob sin procesar.
Confirmaciones, comparación de la confirmación, y solicitudes de extracción
La API REST para administrar confirmaciones y solicitudes de incorporación de cambios admite formatos diff y patch:
Tipo de medio diff para confirmaciones, comparación de confirmaciones y solicitudes de incorporación de cambios
application/vnd.github.diff
Tipo de medio patch para confirmaciones, comparación de confirmaciones y solicitudes de incorporación de cambios
application/vnd.github.patch
Tipo de medio sha para confirmaciones, comparación de confirmaciones y solicitudes de incorporación de cambios
application/vnd.github.sha
Contenidos del repositorio
Tipo de medio sin formato para el contenido del repositorio
application/vnd.github.raw
Devuelve el contenido sin procesar de un archivo. Esto es lo predeterminado si no pasas ningún tipo de medios específico.
Tipo de medio HTML para el contenido del repositorio
application/vnd.github.html
Para archivos de marcado como Markdown o AsciiDoc, puede recuperar el código HTML representado si usa el tipo de medios .html
. Los lenguajes de marcado se representan en HTML mediante nuestra biblioteca de marcado de código abierto.
Gists
Tipo de medio sin formato para gists
application/vnd.github.raw
Devuelve el contenido sin procesar de un gist. Esto es lo predeterminado si no pasas ningún tipo de medios específico.
Tipo de medio base64 para gists
application/vnd.github.base64
El contenido del gist se codifica en Base64 antes de enviarse. Esto puede ser útil si el gist contiene secuencias UTF-8 no válidas.