RikaidoDeveloper

GET /v1/graph

Le graphe alimentaire

Un ingrédient entre ; ce que le graphe en sait sort. De quoi il est fait, ce qui le remplace, et son voisinage.

GEThttps://api.rikaido.app/v1/graph/ingredients/:name

Le graphe est ce qui sait que « beurre d’arachide » brise « arachide », que « lait de coco » ne brise pas « lait », et que le miel remplace le sucre à 7 pour 8. C’est la moitié privée du harnais ; par cette porte, tu la lis un ingrédient à la fois.

La requête

:namestring · requis
Le nom de l’ingrédient, en français ou en anglais, tel qu’une personne l’écrit. « beurre d’arachide », « peanut butter », « cuisse de poulet ».
?neighbours=1flag
Ajoute le voisinage — les nœuds et arêtes autour de l’ingrédient : ce avec quoi il va, ce qu’il remplace, ce qui le contient.

La réponse

200
{
  "query": "beurre d’arachide",
  "canonical": "peanut butter",
  "known": true,
  "facts": {
    "allergens": ["peanut"],
    "animalFlesh": false,
    "animalProduct": false,
    "seafood": false,
    "matched": ["peanut butter"]
  },
  "substitutions": [],
  "art": { "slug": "peanut_butter", "kawaii": true, "toy": true }
}
knownboolean
false quand le graphe n’a jamais vu cet aliment. Ça ne veut pas dire « ne contient rien » — ça veut dire qu’il n’a rien pu lire. Le harnais nomme ce cas unknown-ingredient.
facts.allergens[]string[]
Parmi les neuf : peanut, tree-nut, milk, egg, wheat, soy, fish, shellfish, sesame.
facts.matched[]string[]
Les mots qui ont décidé, du plus long au plus court. C’est ce qui permet à une carte de refus de nommer la chose refusée, pas toute la ligne.
substitutions[]{ swap, ratio, preservesRole, why, caveat? }
Les remplacements que la table tient, avec le ratio et le rôle préservé. Vide pour la longue traîne — jamais inventé.
art{ slug, kawaii, toy }
Le même slug que le cast lit, et ce qu’il a dessiné.
neighbourhoodobject | null
Avec ?neighbours=1 : { found, focusId, nodes[], edges[] }. null quand le graphe hébergé n’est pas joignable — jamais un voisinage vide qui aurait l’air vrai.

Chercher

GEThttps://api.rikaido.app/v1/graph/search?q=&limit=&locale=

La recherche du graphe lui-même, lexicale et sémantique : q (jusqu’à 80 caractères), limit (1–20, 8 par défaut), locale (fr ou en ; les étiquettes reviennent dans cette langue). Répond 503 graph_not_configured quand le graphe hébergé n’est pas joignable.

Ce que ça coûte

0,002 $ l’appel, chercher ou lire. Un 400, un 404 et un 503 ne sont pas comptés.