filter_conditions est un tableau optionnel unique sur le corps de la requête. Chaque entrée fait passer un filtre à valeurs multiples du comportement par défaut OR (« correspond à au moins un ») à AND (« correspond à tous »), ou inversement. Les filtres que vous ne listez pas conservent leur comportement par défaut.
Schéma
key et operator sont tous deux obligatoires pour chaque entrée. Une entrée ne comportant que operator est silencieusement ignorée — il n’existe pas de remplacement global.Pourquoi c’est important
L’opérateur par défaut est OR car la plupart des workflows de prospection recherchent une large couverture : « personnes dans n’importe lequel de ces pays », « entreprises taguées avec n’importe laquelle de ces verticales ». Pour un ciblage de haute précision — « utilise toutes les technologiesSalesforce + HubSpot + Marketo » — vous avez besoin de AND.
Le coût d’une erreur :
- Vous vouliez AND, vous avez eu OR : la réponse sur-rappelle — vous voyez des entreprises qui ne correspondent qu’à un seul tag, pas à l’ensemble de la stack. Facile à repérer, coûte en qualité de résultat.
- Vous vouliez OR, vous avez eu AND : la réponse sous-rappelle — elle retourne généralement un nombre de lignes proche de zéro sur les filtres AND à valeurs multiples, car les tableaux du monde réel contiennent rarement toutes les valeurs demandées. Facile à repérer, ressemble à une requête cassée.
&& (chevauchement) pour OR, @> (contient) pour AND. Les deux sont compatibles avec les index, donc la différence de coût se situe dans la taille du résultat, pas dans la latence de la requête.
Clés prises en charge
L’ensemble exact des clés dépend du endpoint que vous appelez :Exemples
- Toutes les technologies (entreprises)
- Lieux au choix + exclusion
- Campagnes publicitaires multi-régions
- Personnes dans des entreprises multi-stack
Objectif : des entreprises qui utilisent toutes les technologies Python, PostgreSQL et Kubernetes — pas seulement une seule.Supprimez l’entrée
filter_conditions pour élargir la recherche à n’importe laquelle des trois technologies.Erreurs courantes
Oublier key, n'envoyer que operator
Oublier key, n'envoyer que operator
Il n’existe pas de bascule globale « opérateur par défaut ». Chaque entrée doit nommer un filtre spécifique :
S'attendre à ce que les entrées se combinent
S'attendre à ce que les entrées se combinent
Les entrées sont des remplacements indépendants par clé — elles ne s’enchaînent pas. Lister à la fois
technologies et verticals ne crée pas d’expression booléenne entre elles ; chacune définit simplement l’opérateur de son propre tableau.La combinaison entre les clés de filtre est toujours AND (chaque filtre doit correspondre). Vous ne pouvez pas combiner en OR deux dimensions de filtre distinctes via filter_conditions. Si vous avez besoin d’une véritable recherche OR entre différents filtres, exécutez deux requêtes et fusionnez les résultats côté client.Utiliser AND sur un long tableau
Utiliser AND sur un long tableau
AND correspond à
column @> ARRAY[…] — chaque valeur doit être présente. Avec 8 valeurs ou plus, vous obtenez presque toujours zéro ligne, car le tagging en conditions réelles est épars. Limitez les tableaux avec AND à 2-4 valeurs ; utilisez OR pour un filtrage exploratoire ou au niveau catégorie.Mauvaise clé sur les filtres d'entreprise de /people/search
Mauvaise clé sur les filtres d'entreprise de /people/search
Sur Table de remappage complète sur la page Filtres personnes + entreprise.
/people/search, le nom côté API people est company_places / company_locations. Mais à l’intérieur de filter_conditions[].key, vous devez utiliser le nom du moteur — places, locations. Le remappage se fait en interne avant que filter_conditions ne soit consulté.Voir aussi
Vue d'ensemble des filtres
Le modèle mental — commencez ici si
filter_conditions est votre première étape.Filtres personnes + entreprise
Comment intégrer des filtres d’entreprise dans
/people/search, y compris le remappage des clés.Référence Recherche entreprise
Schéma complet de la requête pour
/companies/search (inclut company_filter_conditions).Référence Recherche personnes
Schéma complet de la requête pour
/people/search (inclut people_filter_conditions).
