Knowledge Base

⌘K
  1. Home
  2. Docs
  3. Knowledge Base
  4. Inbox / Outbox Tab
  5. Conversation Search Syntax

Conversation Search Syntax

The Inbox/Outbox tab allows you to search for conversations.

Full Text Search

By default, Apptoto will perform a “full text search” on the messages in your conversations.

For example, to find all conversations with “reminder” in them… enter the following into the search box and hit .

reminder

To find all conversations with “reminder” and “haircut” in them:

reminder haircut

To find all conversations with the phrase “haircut reminder” in them:

"haircut reminder"

Default Fields

The fields that are searched by default are the following:

  • The “To” field including the name, email and phone
  • The content of the message
  • The subject of the message

Negative Search

To find all conversations that do not contain the word haircut in them:

-haircut

or

!haircut

Field Search

You can search a specific field by specifying the field first. For example, to search for conversation with someone named “fred”:

to:fred

To find all conversations with the word “haircut” in the subject:

subject:haircut

If you want to find all conversations whose subject is exactly “Haircut with Fred”, do:

subject="Haircut with Fred"

The : and = in the above examples are called search “operators”. The following operators are available:

OperatorData TypesNotes
:text, date, numberFor text fields, this operator performs a “full text search”. For Date fields, it searches the entire day specified. For other fields, it does an exact match
=text, date, number, booleanDoes an exact match. You can use “*” as a wildcard for text fields
!=text, date, number, booleanNot Equal
>date, numberGreater than.
>=date, numberGreater than or equal
<date, numberLess than
<date, numberLess than or equal

Special Values

Use the special keyword “empty” to search for fields that are empty. For example you can search:

subject != empty

or

subject = empty

Special Date Phrases

For date fields, you can use special phrases for “today”, “tomorrow”, and “yesterday”.

If you want to find all appointments on today:

at = today

If you want to find all the conversations since last week:

at >= "1 week ago"

Other dates can be specified in human readable format. e.g.

at > "January 20th, 2018" and at < "January 30th, 2018"

Would find all the conversations with messages was between “January 20th, 2018” and “January 30th, 2018”. You could also use “2018-01-20” and “2018-01-30” for that as well.

If you want to find all the conversations with messages on one specific day, you can use the “:” operator. For example, the following would find all the appointments on March 2nd, 2018.

at:2018-03-02

Boolean Logic

By default, all terms are searched assuming an AND query. For example, “Fred Smith” looks for all conversations containing both “Fred” AND “Smith”.

To find all conversations with “fred” OR “smith”:

fred or smith

The “or” operator takes precedence. For example the following would find all conversations who have “fred” in them or all conversations with both “smith” and “bob in them:

fred or smith and bob

So that is equivalent to:

fred or (smith and bob)

If you want to change how the query is evaluated, you can move the parenthesis. For example, to find all conversations that have “bob” in them and either “fred” or “smith”, do:

(fred or smith) and bob

Of course, you can use field specific queries with boolean logic as well. For example

(subject:haircut or subject:coloring) and nancy

Conversation Fields

Besides the default fields specified above and the “custom” fields… Apptoto also provides some interesting default fields that you can use to customize your searches. Here are some of those fields and example uses.

FieldTypeDescriptionNotes
confirmedbooleanIf the recipient confirmed during the conversationconfirmed:true would show you all the conversations that confirmed
cancelledbooleanIf the recipient cancelled during the conversationcancelled:true would show you all the conversations that cancelled
needs_reschedulebooleanIf the recipient requested a rescheduling during the conversationneeds_reschedule:true would show you all the conversations that requested reschedule
acceptedbooleanIf the recipient accepted a booking message during the conversationaccepted:true would show you all the conversations that accepted
declinedbooleanIf the recipient declined a booking message during the conversationaccepted:true would show you all the conversations that declined
incomingbooleanIf the conversation has an incoming messageincoming:true would show you all the conversations that are incoming
outgoingbooleanIf the conversation has an outgoing messageoutgoing:true would show you all the conversations that are outgoing
autobooleanIf the conversation has a message was sent automaticallyauto:true
archivedbooleanIf the conversation has been archivedarchived:true would show you all the conversations that are archived
send_failedbooleanIf the conversation has a message that failed to sendsend_failed:true would show you all the conversations that has a message that didn’t go out
delivery_failedbooleanIf the conversation has a message that failed to be delivereddelivery_failed:true would show you all the conversations that has a message that went out but was not delivered
conversation_starteddatetimeWhen the conversation beganconversation_started > yesterday all conversations that were started since yesterday
comm_typestringThe type of conversation “sms”, “email”, or “call”comm_type:sms all sms conversations. You can also use the fields “sms”, “text”, “email”, “call”, “voice”. e.g. sms:true or voice:true