Skip to main content
GET
Rechercher dans l’index pour développeurs
Recherchez les tickets GitHub, les pull requests fusionnées, les README de dépôts et les sites de documentation sélectionnés. Les résultats sont classés par pertinence et incluent les passages correspondants au format Markdown. POST est disponible sur le même chemin pour transmettre des filtres de tableau au format JSON. Les filtres répétables acceptent l’une ou l’autre forme avec GET : un paramètre de requête répété tel que types=issue&types=pull_request, ou une seule valeur séparée par des virgules telle que types=issue,pull_request. L’index comporte deux parties, et ces deux filtres en définissent indépendamment le périmètre :
  • repos définit le périmètre de la partie GitHub, c’est-à-dire des types issue, pull_request et readme
  • sources définit le périmètre de la partie documentation, c’est-à-dire du type doc
  • Fournir les deux combine les deux parties au lieu de les intersecter : vous obtenez donc des résultats correspondants de l’une ou l’autre
Comme chaque filtre ne s’applique qu’à une seule partie, un filtre qui ne peut correspondre à aucun type demandé est rejeté plutôt que de ne rien renvoyer silencieusement :
  • repos sans type GitHub dans types renvoie 400 avec repos cannot match any requested type; add github types or drop repos
  • sources sans doc dans types renvoie 400 avec sources cannot match any requested type; add doc or drop sources
Les sept filtres de dépôt — language (par exemple Rust), topic (par exemple async), license (par exemple MIT), min_stars, max_stars, archived et fork — décrivent un dépôt GitHub. La plupart des pages de documentation de l’index proviennent d’un site web exploré sans dépôt associé, et aucune propriété de dépôt ne peut inclure ou exclure une telle page. Une requête qui envoie l’un de ces filtres sans définir sources n’obtient donc aucun résultat doc. Sa réponse ne contient que des éléments GitHub : les types issue, pull_request et readme. La cartographie coverage indique que doc est unavailable, car la partie documentation de l’index n’a jamais été interrogée. C’est le comportement prévu, et non un problème d’indexation. Pour conserver les résultats de documentation, supprimez les filtres de dépôt. Vous pouvez également définir le périmètre de la partie documentation avec sources, puis consulter coverage pour confirmer que le type doc a répondu.

Valeurs acceptées par sources

sources n’est pas un enum fixe. Il accepte des identifiants de sources de documentation : chacun est une chaîne non vide de 512 caractères maximum, avec une limite de 20 par requête. Les identifiants correspondent aux sites de documentation présents dans l’index, et cette liste s’étoffe au fil du temps. Pour vérifier qu’un identifiant est résolu, transmettez-le et consultez le tableau sources ajouté à la réponse. Il n’apparaît que si vous avez envoyé sources et indique chaque identifiant exactement tel que vous l’avez demandé, ainsi que son statut d’indexation :
indexed: true signifie que la source possède une génération publiée et que des éléments de preuve issus de sa documentation peuvent donc apparaître. indexed: false signifie qu’aucun élément associé à cet identifiant ne peut correspondre, ce qui permet de distinguer un identifiant absent de l’index d’une requête qui n’a tout simplement rien trouvé. repos est renvoyé de la même façon, sous la forme d’un tableau repos indiquant indexed et une répartition par type sous types :

Interpréter coverage

coverage indique l’état de chaque type de résultat : ok, degraded, unavailable ou skipped. Vérifiez-le lorsqu’un type de résultat attendu est absent : Pour une vue d’ensemble du workflow, consultez le guide index développeur.

Autorisations

Authorization
string
header
requis

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

Paramètres de requête

query
string
requis

Question en langage naturel ou expression de recherche.

Minimum string length: 1
k
integer
défaut:10

Nombre de résultats classés à renvoyer.

Plage requise: 1 <= x <= 100
types
enum<string>[]

Types de résultats dans lesquels effectuer la recherche. Les quatre types sont inclus par défaut. Accepte un paramètre répété (types=issue&types=pull_request) ou une valeur séparée par des virgules (types=issue,pull_request).

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

Slugs de dépôt permettant de limiter la partie GitHub de l’index, par exemple firecrawl/firecrawl. S’applique uniquement aux types issue, pull_request et readme. Envoyées avec sources, les deux parties sont combinées plutôt qu’intersectées, de sorte que les résultats correspondants proviennent de l’une ou l’autre. Renvoie 400 avec repos cannot match any requested type; add github types or drop repos lorsqu’aucun type GitHub ne figure dans types.

sources
string[]

Identifiants de source de documentation permettant de limiter la partie documentation, dans la limite de 20. S’applique uniquement au type doc. Il ne s’agit pas d’une énumération fixe : les identifiants reflètent les sites de documentation de l’index et l’ensemble s’enrichit au fil du temps. Vérifiez donc qu’un identifiant est résolu en l’envoyant et en lisant le tableau sources dans la réponse. Renvoie 400 avec sources cannot match any requested type; add doc or drop sources lorsque doc ne figure pas dans types.

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

Définissez la valeur sur only pour limiter la recherche aux fichiers de compétences d’agent indexés.

Options disponibles:
only
passages
integer
défaut:1

Passages correspondants à renvoyer par résultat.

Plage requise: 1 <= x <= 5
language
string

Langage principal du dépôt, tel que Rust. S’applique uniquement aux résultats GitHub ; l’envoyer sans définir le périmètre sources ne renvoie aucun résultat doc. Consultez comment les filtres de dépôt définissent le périmètre d’une recherche.

Exemple:

"Rust"

topic
string

Thème du dépôt, tel que async. S’applique uniquement aux résultats GitHub ; l’envoi sans périmètre sources ne renvoie aucun résultat doc.

Exemple:

"async"

license
string

Licence du dépôt, telle que MIT. S’applique uniquement aux résultats GitHub ; l’envoi sans périmètre sources ne renvoie aucun résultat doc.

Exemple:

"MIT"

min_stars
integer

Limite inférieure du nombre d’étoiles du dépôt. S’applique uniquement aux résultats GitHub ; l’envoi sans périmètre sources ne renvoie aucun résultat doc.

Plage requise: x >= 0
max_stars
integer

Limite supérieure du nombre d’étoiles des dépôts. S’applique uniquement aux résultats GitHub ; l’envoi de ce paramètre sans définir de périmètre sources ne renvoie aucun résultat doc.

Plage requise: x >= 0
archived
boolean

Inclure ou exclure les dépôts archivés. S’applique uniquement aux résultats GitHub ; l’envoi de ce paramètre sans définir de périmètre sources ne renvoie aucun résultat doc.

fork
boolean

Inclure ou exclure les forks. S’applique uniquement aux résultats GitHub ; l’envoi de ce paramètre sans définir de périmètre sources ne renvoie aucun résultat doc.

Réponse

Résultats pour développeurs classés avec passages correspondants.

coverage
object

Statut pour chaque type de résultat. Vérifiez-le lorsqu’un type de résultat attendu est absent : skipped signifie que votre valeur types n’a pas demandé ce type, tandis que degraded ou unavailable signifie que l’absence provient de l’index ou d’un filtre, et non de la requête. Un filtre de dépôt est l’une de ces causes — consultez comment les filtres de dépôt définissent le périmètre d’une recherche.

repos
object[]

Présent uniquement lorsque repos a été envoyé. Renvoie chaque slug avec l’indication de son indexation, ainsi qu’une répartition par type sous types.

Exemple:
reranked
boolean

Indique si la liste classée est passée par l’étape de reclassement.

results
object[]
sources
object[]

Présent uniquement lorsque sources a été envoyé. Indique chaque identifiant exactement comme demandé, ainsi que son statut d’indexation. indexed: true signifie que la source possède une génération publiée, de sorte que des éléments probants issus de sa documentation peuvent apparaître ; indexed: false signifie qu’aucun élément de cet identifiant ne peut correspondre, ce qui distingue un identifiant absent de l’index d’une requête qui n’a simplement rien trouvé.

Exemple:
success
boolean