StreamingPullRequest

Request for the StreamingPull streaming RPC method. This request is used to establish the initial stream as well as to stream acknowledgements and ack deadline modifications from the client to the server.

JSON representation
{
  "subscription": string,
  "ackIds": [
    string
  ],
  "modifyDeadlineSeconds": [
    number
  ],
  "modifyDeadlineAckIds": [
    string
  ],
  "streamAckDeadlineSeconds": number
}
Fields
subscription

string

The subscription for which to initialize the new stream. This must be provided in the first request on the stream, and must not be set in subsequent requests from client to server. Format is projects/{project}/subscriptions/{sub}.

ackIds[]

string

List of acknowledgement IDs for acknowledging previously received messages (received on this stream or a different stream). If an ack ID has expired, the corresponding message may be redelivered later. Acknowledging a message more than once will not result in an error. If the acknowledgement ID is malformed, the stream will be aborted with status INVALID_ARGUMENT.

modifyDeadlineSeconds[]

number

The list of new ack deadlines for the IDs listed in modifyDeadlineAckIds. The size of this list must be the same as the size of modifyDeadlineAckIds. If it differs the stream will be aborted with INVALID_ARGUMENT. Each element in this list is applied to the element in the same position in modifyDeadlineAckIds. The new ack deadline is with respect to the time this request was sent to the Pub/Sub system. Must be >= 0. For example, if the value is 10, the new ack deadline will expire 10 seconds after this request is received. If the value is 0, the message is immediately made available for another streaming or non-streaming pull request. If the value is < 0 (an error), the stream will be aborted with status INVALID_ARGUMENT.

modifyDeadlineAckIds[]

string

List of acknowledgement IDs whose deadline will be modified based on the corresponding element in modifyDeadlineSeconds. This field can be used to indicate that more time is needed to process a message by the subscriber, or to make the message available for redelivery if the processing was interrupted.

streamAckDeadlineSeconds

number

The ack deadline to use for the stream. This must be provided in the first request on the stream, but it can also be updated on subsequent requests from client to server. The minimum deadline you can specify is 10 seconds. The maximum deadline you can specify is 600 seconds (10 minutes).

Was this page helpful? Let us know how we did:

Send feedback about...

Cloud Pub/Sub