Get message history with actions
Show history messages within the given time range, along with their actions.
-
The response is a list of messages, ordered by ascending
timetoken
, wherein some of the message objects may by augmented with actions. -
The actions for a given
message
are organized first by type, then by value. For a given (type, value) pair, all the unique UUIDs who posted that action will be shown, along with thetimetoken
when the post occurred. Pagination can be controlled withstart
,end
, andmax
parameters, similar to theget_actions_by_timetoken
operation. -
The server may truncate the number of messages in the response, due to internal limits on the number of queries which can be performed per request. However, the server will always give "complete" messages, in the sense that the messages returned here will always have all their actions. If truncation of the original query occurs, a
more
link will be provided. This indicates that internal limiting has occurred, and the more link itself can be used to continue fetching the originally requested range of messages.
Consider the scenario where most messages have relatively few actions (<250
), but the first message has somehow accumulated 25000 actions. If the user requests 25
messages with actions, the first request to history with actions would return only the first message, with all of its 25000 actions underneath it, and provide a more
link to signal that truncation has occurred. Then the next request would contain the other 24 messages along with all their actions.
Path Parameters |
---|
sub_key string — REQUIREDYour app's subscribe key from Admin Portal. Example:
|
channel string — REQUIREDThe channel name to perform the operation on. Example:
|
Query Parameters |
---|
start numberTimetoken delimiting the start of time slice (exclusive) to pull messages from. If provided, lets you select a start date, in Timetoken format. If not provided, it will default to current time. Page through results by providing a start OR end time token. Retrieve a slice of the time line by providing both a start AND end time token. start is exclusive, that is, the first item returned will be the one immediately after the start Timetoken value. Example:
|
end numberTimetoken delimiting the end of time slice (inclusive) to pull messages from. If provided, lets you select an end date, in Timetoken format. Page through results by providing a start OR end time token. Retrieve a slice of the time line by providing both a start AND end time token. End is inclusive, that is, if a message is associated exactly with the end Timetoken, it will be included in the result. Example:
|
max integerThe max number of messages to return. Default (and maximum value) is 100 messages where number of channels is 1, and 25 messages for any number of channels greater than one (or when retrieving message actions). The batch history is limited to 500 channels. Example:
|
include_meta booleanSet to true to include metadata with returned messages. This metadata is set using the meta parameter with the publish operation. Default is false. Example:
|
include_uuid booleanSet to true to include uuid with returned messages. This is set using the uuid parameter with the publish operation. Default is false. Example:
|
include_message_type booleanSet to true to include pubnub message type with returned messages. Default is false. Example:
|
include_custom_message_type booleanSet to true to include custom message type with returned messages. Default is false. Example:
|
auth stringString which is either the auth key (PAM v2) or a valid token (Access Manager) used to authorize the operation if access control is enabled. Example:
|
uuid stringA UTF-8 encoded string of up to 92 characters used to identify the client. Example:
|
signature stringSignature used to verify that the request was signed with the secret key associated with the subscriber key. If Access Manager is enabled, either a valid authorization token or a signature are required. See Access Manager documentation for details on how to compute the signature. |
timestamp integerUnix epoch timestamp used as a nonce for signature computation. Must have no more than ± 60 second offset from NTP. Required if |
Responses | |||||||||
---|---|---|---|---|---|---|---|---|---|
200 OK
| |||||||||
400 The request was invalid.
|