filter à une recherche ou à une suppression pour cibler des documents selon leurs métadonnées.
{ "team": "support", "year": { "$gte": 2024 } }
Opérateurs
| Opérateur | Correspond à |
|---|---|
{ "key": value }, $eq | Égal à la valeur ; sur un tableau, contient la valeur |
$in | Égal à l’une des valeurs d’une liste |
$ne, $nin | Différent de la valeur, ou de toutes celles d’une liste (recherches uniquement) |
$gt, $gte, $lt, $lte | Supérieur à, au moins, inférieur à, au plus |
$and, $or | Tous, ou l’un, d’une liste de filtres |
Exemples
| Filtre | Correspond à |
|---|---|
{ "tags": "billing" } | Documents dont le tableau tags contient billing |
{ "lang": { "$in": ["en", "de"] } } | Documents en anglais ou en allemand |
{ "$or": [{ "team": "support" }, { "year": { "$in": [2024, 2025] } }] } | Documents de l’équipe support, ou tout document de 2024 ou 2025 |
{ "published_at": { "$gte": "2025-06-01" } } | Documents publiés le 1er juin 2025 ou après |
{ "file_id": "report.pdf" } | Un fichier importé |
{ "file_id": "report.pdf", "page": 3 } | La page 3 de ce fichier |
Règles
| Règle | |
|---|---|
| Égalité | Compare en texte : 3, 3.0 et "3" correspondent entre eux |
| Plages | Nombres avec nombres, chaînes avec chaînes, octet par octet ; écrivez les dates en ISO 8601 dans un seul format (2025-06-01 ou 2025-06-01T10:00:00Z) |
| Jamais dans une plage | Booléens, éléments de tableau et chaînes de plus de 222 octets |
| Clés manquantes | Un document sans la clé correspond à $ne et $nin |
| Négations | Une négation qui exclut la plupart des documents peut renvoyer moins de résultats que top_k |
| Taille | Jusqu’à 256 conditions, imbriquées sur 8 niveaux au plus ; chaque $and, $or et $in multivaleur compte pour une |
| Listes | $in et $nin acceptent jusqu’à 255 valeurs |
| Clés inconnues | Ne sont pas vérifiées : une clé mal orthographiée ne correspond à rien |
| Erreurs | Un filtre invalide renvoie 400 invalid_filter |