- HTTP request
- Path parameters
- Request body
- Response body
- Authorization Scopes
- ReceivedMessage
- Try it!
Pulls messages from the server. The server may return UNAVAILABLE
if there are too many concurrent pull requests pending for the given subscription.
HTTP request
POST https://pubsub.googleapis.com/v1/{subscription}:pull
Path parameters
Parameters | |
---|---|
subscription |
Required. The subscription from which messages should be pulled. Format is |
Request body
The request body contains data with the following structure:
JSON representation |
---|
{ "returnImmediately": boolean, "maxMessages": integer } |
Fields | |
---|---|
returnImmediately |
Optional. If this field set to true, the system will respond immediately even if it there are no messages available to return in the |
maxMessages |
Required. The maximum number of messages to return for this request. Must be a positive integer. The Pub/Sub system may return fewer than the number specified. |
Response body
If successful, the response body contains data with the following structure:
Response for the subscriptions.pull
method.
JSON representation |
---|
{
"receivedMessages": [
{
object ( |
Fields | |
---|---|
receivedMessages[] |
Received Pub/Sub messages. The list will be empty if there are no more messages available in the backlog. For JSON, the response can be entirely empty. The Pub/Sub system may return fewer than the |
Authorization Scopes
Requires one of the following OAuth scopes:
https://www.googleapis.com/auth/pubsub
https://www.googleapis.com/auth/cloud-platform
For more information, see the Authentication Overview.
ReceivedMessage
A message and its corresponding acknowledgment ID.
JSON representation |
---|
{
"ackId": string,
"message": {
object ( |
Fields | |
---|---|
ackId |
This ID can be used to acknowledge the received message. |
message |
The message. |
deliveryAttempt |
The approximate number of times that Cloud Pub/Sub has attempted to deliver the associated message to a subscriber. More precisely, this is 1 + (number of NACKs) + (number of ack_deadline exceeds) for this message. A NACK is any call to subscriptions.modifyAckDeadline with a 0 deadline. An ack_deadline exceeds event is whenever a message is not acknowledged within ack_deadline. Note that ack_deadline is initially Subscription.ackDeadlineSeconds, but may get extended automatically by the client library. Upon the first delivery of a given message, If a DeadLetterPolicy is not set on the subscription, this will be 0. |