Port87 Help

Using Search

Port87's search feature is extremely powerful, here you can learn how to use it well

Port87’s search bar is a full‑text, query‑language powered engine. It can search subjects, bodies, attachments, labels, dates, and more, without leaving the UI. In fact, every mail list you see inside Port87, like when you click the links in the sidebar, uses queries in the search bar to work.

When you type simple text into the search bar, Port87 will use a full text search on the subject, from address, sender address, body text, body html, and attachments.

A simple search works well, but when you need to really dig deep and find exactly what you're looking for, understanding Port87's powerful search feature can help.

Query Parser

Port87’s search bar is built on our open‑source Nymph.js Query Parser using the below properties. See its docs for full grammar and feature reference.

Port87's Full-Text Search engine is an open source implementation using our SciActive Tokenizer. This tokenizer performs word stemming using the Snowball algorithm, so the word "delivered" in an email will match queries like "deliver", "delivery", and "delivers", but not "liver". Stop words and punctuation are removed from both the search index and queries, so words like "is" and "the" will not match.

Our Full-Text Search engine supports search-engine-like syntax features:

QRef Clauses

A "qref" (query reference) clause uses a subquery to find mail that references something that matches the subquery. Practically, this means mail that has a "body", "headers", or "labels" object that matches a given subquery. Because mail is stored in Port87 in three parts (Mail, Body, and Headers) and also references the labels it belongs to, qref clauses let you search for mail across all of these parts.

A qref clause identifies both the property that contains the reference, and the type of object (its class name) the reference refers to:

propertyname<{ClassName inner query}>

This is why you'll see both "body" and "Body" in a qref query for the body of an email, or "labels" and "Label" in a qref query for the labels of an email.

Examples

Full Text Search

Matching the subject.

subject:delivered

or

subject(delivered)

Matching the from address.

from:[email protected]

or

from([email protected])

Matching the body text. This uses a "qref" clause to find all mail that has a body that matches the text "your receipt".

body<{Body html:'your receipt'}>

Matching attachment names. This also uses a "qref" clause, because attachment names are stored on the body entity.

body<{Body attachments:family.jpg}>

More

Automatically Appended Parameters

When you search using the search bar, Port87 will automatically append some additional query parameters to the search to help with organization.

Example: subject:hello becomes subject:hello limit:10 reverse:true -<sent> -[trash] [delivered] -<spam> -<bare> -<autoreply> -<draft>

If you'd like to eliminate these added parameters, you can use an "or" selector to select for both possibilities.

Example: subject:hello (| [delivered] -[delivered]) will find messages regardless of whether the sender has passed the screening check.

Port87 includes controls at the top of the search results to adjust these search settings. You'll notice that by using them, your search query is adjusted on the fly.