Available on Agent 2.0.0 and above.
Allows to search messages based on multiple search parameters.
Optional attributes returned
Note that some attributes are returned in the payload only under specific conditions:
sharedMessage
only when the message represented by this class is a wall post sharing another message;initialMessageId
,initialTimestamp
, andreplacing
only when the corresponding message is sent as an update to another message thanks to Update Message endpoint. Note that the first two attributes relate to the original (and therefore first) message sent, whereas thereplacing
attribute relates to the message that has been updated by this message;replacedBy
only when this message has been updated by a new message. It contains the id of the replacing message.parentMessageId
only when this message is a reply or a forward of another message which id is returned in this attribute.
Important
You should use the POST Message Search endpoint where the query string is specified in the request body if your Agent is in-cloud. With this GET endpoint, query strings will be transmitted in the clear.
Allow to search messages across the message space the authenticated user has access to. This means all rooms this user is a member of and all public rooms.
Query arguments
The query
parameter supports the following combination of arguments. When multiple arguments are supported, the search results are the union of all query arguments, defined as argument:value
pairs combined by the operator "AND". Only a certain combination of arguments is supported.
Argument | Usage | Comment |
---|---|---|
hashtag | Searches for a specific hashtag across messages to or in a specific streamType . | • Can be used in conjunction with cashtag or mention .• Can be used in conjunction to author or text only for a specific streamId . |
cashtag | Searches for a specific cashtag across all messages or in a specific streamType . | • Can be used in conjunction with hashtag or mention .• Can be used in conjunction to author or text only for a specific streamId . |
mention | Searches for a specific user mention, by user id, across all messages or in a specific streamType . | • Can be used in conjunction with hashtag or cashtag .• Can be used in conjunction to author or text only for a specific streamId . |
author | Searches for a specific message author, by user id, across all messages or for a specific streamId . | • (1.52 and later) You can now search for an author in conjunction with a specific streamType . |
text | Searches for plain text field in a specific message, not including any hashtag, cashtag or user mention. | • Requires a streamId to be provided.• Searching for text across all messages or a specific streamType is not supported.• Multi-word search is allowed. Syntax: text:"Hello world" . |
streamType | Searches for messages in a specific stream type, either: • CHAT (1-1 instant messages and multi-party instant messages),• IM (1-1 instant message),• MIM (multi-party instant message),• ROOM , or• POST (user profile wall posts). | • Can be used in conjunction with author , hashtag , cashtag or mention . |
streamId | Searches for messages in a specific stream. See Conversation ID for streamId format. | Can be used in conjunction with hashtag , cashtag , mention , text or author . |
Usage
- At least one argument in the list above is required.
- To provide multiple arguments, the query is formatted as
argument:value
, and separated with the operatorAND
. Returned messages will include messages that match all the arguments. - Arguments names and values are case-insensitive.
- The same argument cannot be used multiple times.
- Search terms cannot contain the following reserved characters: colon
:
, parentheses( )
and whitespaces (except when applying multi-word text search. See thetext
argument in the table above).
Date selector
The query
parameter can optionally support the following date selectors:
fromDate
: selects messages sent afterfromDate
. Supported for all query parameters above.toDate
: selects messages sent beforetoDate
. Supported for all query parameters above.
The date selector parameter is inclusive: a message sent at exactly the same time as the queryfromDate
will be included in the results
Examples
query=hashtag:newWorld
query=hashtag:newWorld AND mention:7627861917906
query=hashtag:newWorld AND author:7627861917906 AND streamId:YQ_Q3ml8vMp98so2WRK_W3___qTUhq1_dA
query=author:7627861917906
Note
Spaces are expected between query arguments joined with AND.
See also
Message
MessageML
Message ID
Message Format - MessageML
PresentationML
Message Format - ExtensionML
Colors
Symphony Elements