Get message history
This function fetches historical messages from one or multiple channels. It's possible to control how messages are returned and in which time interval.
- if you specify only the
start
parameter (withoutend
), you will receive messages that are older than the start timetoken - if you specify only the
end
parameter (withoutstart
), you will receive messages from that end timetoken and newer - if you specify values for both
start
andend
parameters, you will retrieve messages between those timetokens (inclusive of the end value)
You will receive a maximum of 100 messages for a single channel or 25 messages for multiple channels (up to 500). If more messages meet the timetoken criteria, make iterative calls while adjusting the start timetoken to fetch the entire list of messages from Message Persistence.
Path Parameters |
---|
sub_key string — REQUIREDYour app's subscribe key from Admin Portal. Example:
|
channels string — REQUIREDThe channel names to perform the operation on. Example:
|
Query Parameters |
---|
start numberTimetoken delimiting the start of time slice (exclusive) to pull messages from. Exclusive means that the message associated with the timetoken will be excluded from the result. 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. Inclusive means that the message associated with the timetoken will be included in the result. 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:
|
encode_channels booleanSet to true to encode the channel names int he response data. Default is true. 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 Success
| |||||
400 Invalid request.
| |||||
403 Do not have permission
|