Skip to main content
Jarvi fa girare un motore di ricerca full-text sui tuoi dati. Nomi, email, numeri di telefono, titoli di lavoro, competenze e valori dei campi personalizzati sono indicizzati, e _search interroga quegli indici. Filtrare con _ilike "%termine%" fa tutt’altro: PostgreSQL scorre ogni record del tuo spazio e lo confronta con il pattern. Su una base di produzione, un solo _ilike su un cognome è stato misurato a 2,4 secondi; la stessa ricerca tramite l’indice risponde in qualche decina di millisecondi.
_ilike, _like, _nilike e _nlike saranno ritirati dall’API pubblica il 31 luglio 2027.Sugli endpoint REST non devi fare nulla: i filtri _ilike vengono già tradotti in una ricerca indicizzata al posto tuo, e la risposta indica quale filtro ha sostituito il tuo. Tramite l’endpoint /graphql la query è tua e può puntare a qualunque tabella, quindi sta a te cambiarla.

Usare l’operatore

Un filtro prende il nome di un bersaglio di ricerca e un termine:
Combinane più d’uno con _and, _or e _not, come con qualsiasi altro filtro:

Sintassi della query

Il termine è esso stesso una query, non una semplice stringa:

Parole intere, non frammenti

I nomi sono indicizzati parola per parola, dall’inizio: Dupo trova Dupont, upont no. Lo stesso vale per i nomi di aziende e progetti. Email e numeri di telefono sono indicizzati diversamente e accettano un frammento in qualsiasi posizione: un numero si ritrova dalle ultime cifre, un’email dal suo dominio.

I filtri, risorsa per risorsa

Tutti i filtri qui sotto si appoggiano a un indice. Le altre colonne e relazioni Hasura restano accettate, ma non sono né ottimizzate né garantite.

Profiles

Companies

Projects

Questi elenchi sono generati dal motore di ricerca stesso, quindi corrispondono sempre a ciò che l’API accetta. Le stesse definizioni sono servite come JSON Schema da GET /openapi, sotto ProfilesFilters, CompaniesFilters e ProjectsFilters.

Ordinare

Il parametro orderBy di ogni endpoint REST associa un campo e una direzione:
I campi accettati da una risorsa sono elencati nella documentazione del parametro stesso, sulla pagina dell’endpoint. Ordinare su qualcos’altro ricade sull’ordine predefinito invece di fallire.

Cercare tramite GraphQL

La query search restituisce identificatori e un totale, che carichi poi con una seconda chiamata. Questa divisione in due tempi è ciò che mantiene veloce una ricerca, qualunque sia la dimensione delle schede:
resource vale profiles, companies o projects. filters prende lo stesso oggetto del parametro where del REST.

Lasciare _ilike

Un identificatore o una URL non è mai una ricerca: usa _eq, che passa dal proprio indice.
Ti manca qualcosa, o non trovi un filtro che ti aspettavi? Scrivici — l’elenco qui sopra è guidato dal motore, aggiungerci un filtro è una modifica piccola.