Skip to main content
GET
Buscar en el índice para desarrolladores
Busca issues de GitHub, pull requests fusionadas, README de repositorios y sitios de documentación seleccionados. Los resultados se clasifican e incluyen los pasajes coincidentes en markdown. POST está disponible en la misma ruta si quieres pasar filtros de tipo array como JSON. Los filtros repetibles aceptan cualquiera de las dos formas en GET: un parámetro query repetido como types=issue&types=pull_request, o un valor separado por comas como types=issue,pull_request. El índice se divide en dos partes, y estos dos filtros las acotan de forma independiente:
  • repos acota la parte de GitHub, es decir, los tipos issue, pull_request y readme
  • sources acota la parte de documentación, es decir, el tipo doc
  • Al pasar ambos, se combinan las dos partes en lugar de intersectarse, por lo que obtendrás resultados coincidentes de cualquiera de las dos
Como cada filtro solo se aplica a una parte, se rechaza un filtro que no puede coincidir con ninguno de los tipos solicitados, en lugar de no devolver resultados de forma silenciosa:
  • repos sin ningún tipo de GitHub en types devuelve 400 con repos cannot match any requested type; add github types or drop repos
  • sources sin doc en types devuelve 400 con sources cannot match any requested type; add doc or drop sources
Los siete filtros de repositorio — language (como Rust), topic (como async), license (como MIT), min_stars, max_stars, archived y fork — describen un repositorio de GitHub. La mayoría de las páginas de documentación del índice proceden de sitios web rastreados que no tienen un repositorio asociado, y ningún dato del repositorio puede incluir o excluir ese tipo de páginas. Por lo tanto, una solicitud que envía uno de estos filtros sin acotar sources no obtiene resultados de tipo doc. Su respuesta solo contiene evidencia de GitHub: los tipos issue, pull_request y readme. El mapa coverage indica que doc está unavailable, porque la parte de documentación del índice nunca se ejecutó. Esto es intencional, no un fallo del índice. Para conservar los resultados de documentación, elimina los filtros de repositorio. También puedes acotar la parte de documentación con sources y, después, consultar coverage para confirmar que el tipo doc respondió.

Valores que acepta sources

sources no es un enum fijo. Acepta ids de fuentes de documentación: cada uno debe ser una cadena no vacía de hasta 512 caracteres, con un máximo de 20 por solicitud. Los ids corresponden a los sitios de documentación del índice, y el conjunto crece con el tiempo. Para confirmar que un id se resuelve, inclúyelo y consulta el array sources que añade la respuesta. Solo aparece cuando enviaste sources e indica cada id exactamente como lo solicitaste, junto con si está indexado:
indexed: true significa que la fuente tiene una generación publicada, por lo que pueden aparecer pruebas de documentación procedentes de ella. indexed: false significa que nada de ese id puede coincidir, lo que distingue un id que no está en el índice de una consulta que simplemente no encontró nada. repos se devuelve de la misma forma, como un array repos que indica indexed y un desglose por tipo en types:

Interpretar coverage

coverage indica el estado de cada tipo de resultado: ok, degraded, unavailable o skipped. Revísalo si falta algún tipo de resultado que esperabas:
  • skipped significa que el valor de types no solicitó ese tipo
  • degraded o unavailable significa que la ausencia se debe al índice o a un filtro, no a la consulta. Un filtro de repositorio es una de estas causas, como se describe en cómo los filtros de repositorio acotan una búsqueda
Para obtener una visión general del flujo de trabajo, consulta la guía de Developer Index.

Autorizaciones

Authorization
string
header
requerido

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Parámetros de consulta

query
string
requerido

Pregunta en lenguaje natural o frase de búsqueda.

Minimum string length: 1
k
integer
predeterminado:10

Número de resultados clasificados que se devolverán.

Rango requerido: 1 <= x <= 100
types
enum<string>[]

Tipos de resultados en los que buscar. De forma predeterminada, se incluyen los cuatro. Acepta un parámetro repetido (types=issue&types=pull_request) o un único valor separado por comas (types=issue,pull_request).

Opciones disponibles:
doc,
issue,
pull_request,
readme
repos
string[]

Slugs de repositorios para acotar la parte de GitHub del índice, como firecrawl/firecrawl. Se aplica solo a los tipos issue, pull_request y readme. Si se envía junto con sources, las dos partes se combinan en lugar de intersectarse, por lo que se devuelven resultados coincidentes de cualquiera de las dos. Devuelve un error 400 con repos cannot match any requested type; add github types or drop repos cuando types no incluye ningún tipo de GitHub.

sources
string[]

IDs de fuentes de documentación para acotar la parte de documentación, con un máximo de 20. Se aplica solo al tipo doc. No es una enumeración fija: los IDs reflejan los sitios de documentación del índice y el conjunto crece con el tiempo, así que comprueba que un ID se resuelva enviándolo y leyendo el array sources de la respuesta. Devuelve un error 400 con sources cannot match any requested type; add doc or drop sources cuando types no incluye doc.

Maximum array length: 20
Required string length: 1 - 512
skills
enum<string>

Configúralo como only para limitar la búsqueda a archivos de skills de agentes indexados.

Opciones disponibles:
only
passages
integer
predeterminado:1

Pasajes coincidentes que se devolverán por resultado.

Rango requerido: 1 <= x <= 5
language
string

Lenguaje principal del repositorio, como Rust. Se aplica solo a los resultados de GitHub; enviarlo sin acotar sources no devuelve resultados doc. Consulta cómo los filtros de repositorio acotan una búsqueda.

Ejemplo:

"Rust"

topic
string

Tema del repositorio, como async. Se aplica solo a los resultados de GitHub; enviarlo sin acotar sources no devuelve resultados de doc.

Ejemplo:

"async"

license
string

Licencia del repositorio, como MIT. Se aplica solo a los resultados de GitHub; enviarlo sin acotar sources no devuelve resultados de doc.

Ejemplo:

"MIT"

min_stars
integer

Límite inferior de estrellas del repositorio. Se aplica solo a los resultados de GitHub; enviarlo sin acotar sources no devuelve resultados de doc.

Rango requerido: x >= 0
max_stars
integer

Límite superior de estrellas del repositorio. Solo se aplica a los resultados de GitHub; enviarlo sin acotar sources no devuelve resultados doc.

Rango requerido: x >= 0
archived
boolean

Incluir o excluir repositorios archivados. Solo se aplica a los resultados de GitHub; enviarlo sin acotar sources no devuelve resultados doc.

fork
boolean

Incluir o excluir bifurcaciones. Solo se aplica a los resultados de GitHub; enviarlo sin acotar sources no devuelve resultados doc.

Respuesta

Resultados para desarrolladores clasificados con pasajes coincidentes.

coverage
object

Estado del índice por tipo de resultado. Compruebe esto cuando falte un tipo de resultado esperado: skipped significa que el valor de types no solicitó ese tipo, mientras que degraded o unavailable significa que la ausencia se debe al índice o a un filtro, y no a la consulta. Un filtro de repositorio es una de esas causas; consulte cómo los filtros de repositorio acotan una búsqueda.

repos
object[]

Solo está presente cuando se envía repos. Incluye cada slug e indica si está indexado, además de un desglose por tipo en types.

Ejemplo:
reranked
boolean

Indica si la lista clasificada pasó por la etapa de reclasificación.

results
object[]
sources
object[]

Solo está presente cuando se envía sources. Incluye cada id exactamente como se solicitó e indica si está indexado. indexed: true significa que la fuente tiene una generación publicada, por lo que puede aparecer evidencia documental de ella; indexed: false significa que nada de ese id puede coincidir, lo que distingue un id que no está en el índice de una consulta que simplemente no encontró nada.

Ejemplo:
success
boolean