class ProjectsSubscriptions extends Resource (View source)

The "subscriptions" collection of methods.

Typical usage is:

 $pubsubService = new Google\Service\Pubsub(...);
 $subscriptions = $pubsubService->projects_subscriptions;

Methods

acknowledge(string $subscription, AcknowledgeRequest $postBody, array $optParams = [])

Acknowledges the messages associated with the ack_ids in the AcknowledgeRequest. The Pub/Sub system can remove the relevant messages from the subscription. Acknowledging a message whose ack deadline has expired may succeed, but such a message may be redelivered later. Acknowledging a message more than once will not result in an error.

create(string $name, Subscription $postBody, array $optParams = [])

Creates a subscription to a given topic. See the [resource name rules] (https://cloud.google.com/pubsub/docs/pubsub-basics#resource_names). If the subscription already exists, returns ALREADY_EXISTS. If the corresponding topic doesn't exist, returns NOT_FOUND. If the name is not provided in the request, the server will assign a random name for this subscription on the same project as the topic, conforming to the [resource name format] (https://cloud.google.com/pubsub/docs/pubsub-basics#resource_names). The generated name is populated in the returned Subscription object. Note that for REST API requests, you must specify a name in the request.

delete(string $subscription, array $optParams = [])

Deletes an existing subscription. All messages retained in the subscription are immediately dropped. Calls to Pull after deletion will return NOT_FOUND. After a subscription is deleted, a new one may be created with the same name, but the new one has no association with the old subscription or its topic unless the same topic is specified. (subscriptions.delete)

detach(string $subscription, array $optParams = [])

Detaches a subscription from this topic. All messages retained in the subscription are dropped. Subsequent Pull and StreamingPull requests will return FAILED_PRECONDITION. If the subscription is a push subscription, pushes to the endpoint will stop. (subscriptions.detach)

get(string $subscription, array $optParams = [])

Gets the configuration details of a subscription. (subscriptions.get)

getIamPolicy(string $resource, array $optParams = [])

Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set. (subscriptions.getIamPolicy)

listProjectsSubscriptions(string $project, array $optParams = [])

Lists matching subscriptions. (subscriptions.listProjectsSubscriptions)

modifyAckDeadline(string $subscription, ModifyAckDeadlineRequest $postBody, array $optParams = [])

Modifies the ack deadline for a specific message. This method is useful 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. Note that this does not modify the subscription-level ackDeadlineSeconds used for subsequent messages.

modifyPushConfig(string $subscription, ModifyPushConfigRequest $postBody, array $optParams = [])

Modifies the PushConfig for a specified subscription. This may be used to change a push subscription to a pull one (signified by an empty PushConfig) or vice versa, or change the endpoint URL and other attributes of a push subscription. Messages will accumulate for delivery continuously through the call regardless of changes to the PushConfig.

patch(string $name, UpdateSubscriptionRequest $postBody, array $optParams = [])

Updates an existing subscription by updating the fields specified in the update mask. Note that certain properties of a subscription, such as its topic, are not modifiable. (subscriptions.patch)

pull(string $subscription, PullRequest $postBody, array $optParams = [])

Pulls messages from the server. (subscriptions.pull)

seek(string $subscription, SeekRequest $postBody, array $optParams = [])

Seeks an existing subscription to a point in time or to a given snapshot, whichever is provided in the request. Snapshots are used in [Seek] (https://cloud.google.com/pubsub/docs/replay-overview) operations, which allow you to manage message acknowledgments in bulk. That is, you can set the acknowledgment state of messages in an existing subscription to the state captured by a snapshot. Note that both the subscription and the snapshot must be on the same topic. (subscriptions.seek)

setIamPolicy(string $resource, SetIamPolicyRequest $postBody, array $optParams = [])

Sets the access control policy on the specified resource. Replaces any existing policy. Can return NOT_FOUND, INVALID_ARGUMENT, and PERMISSION_DENIED errors. (subscriptions.setIamPolicy)

testIamPermissions(string $resource, TestIamPermissionsRequest $postBody, array $optParams = [])

Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a NOT_FOUND error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking.

Details

PubsubEmpty acknowledge(string $subscription, AcknowledgeRequest $postBody, array $optParams = [])

Acknowledges the messages associated with the ack_ids in the AcknowledgeRequest. The Pub/Sub system can remove the relevant messages from the subscription. Acknowledging a message whose ack deadline has expired may succeed, but such a message may be redelivered later. Acknowledging a message more than once will not result in an error.

(subscriptions.acknowledge)

Parameters

string $subscription

Required. The subscription whose message is being acknowledged. Format is projects/{project}/subscriptions/{sub}.

AcknowledgeRequest $postBody
array $optParams

Optional parameters.

Return Value

PubsubEmpty

Exceptions

Exception

Subscription create(string $name, Subscription $postBody, array $optParams = [])

Creates a subscription to a given topic. See the [resource name rules] (https://cloud.google.com/pubsub/docs/pubsub-basics#resource_names). If the subscription already exists, returns ALREADY_EXISTS. If the corresponding topic doesn't exist, returns NOT_FOUND. If the name is not provided in the request, the server will assign a random name for this subscription on the same project as the topic, conforming to the [resource name format] (https://cloud.google.com/pubsub/docs/pubsub-basics#resource_names). The generated name is populated in the returned Subscription object. Note that for REST API requests, you must specify a name in the request.

(subscriptions.create)

Parameters

string $name

Required. The name of the subscription. It must have the format "projects/{project}/subscriptions/{subscription}". {subscription} must start with a letter, and contain only letters ([A-Za-z]), numbers ([0-9]), dashes (-), underscores (_), periods (.), tildes (~), plus (+) or percent signs (%). It must be between 3 and 255 characters in length, and it must not start with "goog".

Subscription $postBody
array $optParams

Optional parameters.

Return Value

Subscription

Exceptions

Exception

PubsubEmpty delete(string $subscription, array $optParams = [])

Deletes an existing subscription. All messages retained in the subscription are immediately dropped. Calls to Pull after deletion will return NOT_FOUND. After a subscription is deleted, a new one may be created with the same name, but the new one has no association with the old subscription or its topic unless the same topic is specified. (subscriptions.delete)

Parameters

string $subscription

Required. The subscription to delete. Format is projects/{project}/subscriptions/{sub}.

array $optParams

Optional parameters.

Return Value

PubsubEmpty

Exceptions

Exception

DetachSubscriptionResponse detach(string $subscription, array $optParams = [])

Detaches a subscription from this topic. All messages retained in the subscription are dropped. Subsequent Pull and StreamingPull requests will return FAILED_PRECONDITION. If the subscription is a push subscription, pushes to the endpoint will stop. (subscriptions.detach)

Parameters

string $subscription

Required. The subscription to detach. Format is projects/{project}/subscriptions/{subscription}.

array $optParams

Optional parameters.

Return Value

DetachSubscriptionResponse

Exceptions

Exception

Subscription get(string $subscription, array $optParams = [])

Gets the configuration details of a subscription. (subscriptions.get)

Parameters

string $subscription

Required. The name of the subscription to get. Format is projects/{project}/subscriptions/{sub}.

array $optParams

Optional parameters.

Return Value

Subscription

Exceptions

Exception

Policy getIamPolicy(string $resource, array $optParams = [])

Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set. (subscriptions.getIamPolicy)

Parameters

string $resource

REQUIRED: The resource for which the policy is being requested. See Resource names for the appropriate value for this field.

array $optParams

Optional parameters.

Return Value

Policy

Exceptions

Exception

ListSubscriptionsResponse listProjectsSubscriptions(string $project, array $optParams = [])

Lists matching subscriptions. (subscriptions.listProjectsSubscriptions)

Parameters

string $project

Required. The name of the project in which to list subscriptions. Format is projects/{project-id}.

array $optParams

Optional parameters.

Return Value

ListSubscriptionsResponse

Exceptions

Exception

PubsubEmpty modifyAckDeadline(string $subscription, ModifyAckDeadlineRequest $postBody, array $optParams = [])

Modifies the ack deadline for a specific message. This method is useful 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. Note that this does not modify the subscription-level ackDeadlineSeconds used for subsequent messages.

(subscriptions.modifyAckDeadline)

Parameters

string $subscription

Required. The name of the subscription. Format is projects/{project}/subscriptions/{sub}.

ModifyAckDeadlineRequest $postBody
array $optParams

Optional parameters.

Return Value

PubsubEmpty

Exceptions

Exception

PubsubEmpty modifyPushConfig(string $subscription, ModifyPushConfigRequest $postBody, array $optParams = [])

Modifies the PushConfig for a specified subscription. This may be used to change a push subscription to a pull one (signified by an empty PushConfig) or vice versa, or change the endpoint URL and other attributes of a push subscription. Messages will accumulate for delivery continuously through the call regardless of changes to the PushConfig.

(subscriptions.modifyPushConfig)

Parameters

string $subscription

Required. The name of the subscription. Format is projects/{project}/subscriptions/{sub}.

ModifyPushConfigRequest $postBody
array $optParams

Optional parameters.

Return Value

PubsubEmpty

Exceptions

Exception

Subscription patch(string $name, UpdateSubscriptionRequest $postBody, array $optParams = [])

Updates an existing subscription by updating the fields specified in the update mask. Note that certain properties of a subscription, such as its topic, are not modifiable. (subscriptions.patch)

Parameters

string $name

Required. The name of the subscription. It must have the format "projects/{project}/subscriptions/{subscription}". {subscription} must start with a letter, and contain only letters ([A-Za-z]), numbers ([0-9]), dashes (-), underscores (_), periods (.), tildes (~), plus (+) or percent signs (%). It must be between 3 and 255 characters in length, and it must not start with "goog".

UpdateSubscriptionRequest $postBody
array $optParams

Optional parameters.

Return Value

Subscription

Exceptions

Exception

PullResponse pull(string $subscription, PullRequest $postBody, array $optParams = [])

Pulls messages from the server. (subscriptions.pull)

Parameters

string $subscription

Required. The subscription from which messages should be pulled. Format is projects/{project}/subscriptions/{sub}.

PullRequest $postBody
array $optParams

Optional parameters.

Return Value

PullResponse

Exceptions

Exception

SeekResponse seek(string $subscription, SeekRequest $postBody, array $optParams = [])

Seeks an existing subscription to a point in time or to a given snapshot, whichever is provided in the request. Snapshots are used in [Seek] (https://cloud.google.com/pubsub/docs/replay-overview) operations, which allow you to manage message acknowledgments in bulk. That is, you can set the acknowledgment state of messages in an existing subscription to the state captured by a snapshot. Note that both the subscription and the snapshot must be on the same topic. (subscriptions.seek)

Parameters

string $subscription

Required. The subscription to affect.

SeekRequest $postBody
array $optParams

Optional parameters.

Return Value

SeekResponse

Exceptions

Exception

Policy setIamPolicy(string $resource, SetIamPolicyRequest $postBody, array $optParams = [])

Sets the access control policy on the specified resource. Replaces any existing policy. Can return NOT_FOUND, INVALID_ARGUMENT, and PERMISSION_DENIED errors. (subscriptions.setIamPolicy)

Parameters

string $resource

REQUIRED: The resource for which the policy is being specified. See Resource names for the appropriate value for this field.

SetIamPolicyRequest $postBody
array $optParams

Optional parameters.

Return Value

Policy

Exceptions

Exception

TestIamPermissionsResponse testIamPermissions(string $resource, TestIamPermissionsRequest $postBody, array $optParams = [])

Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a NOT_FOUND error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking.

This operation may "fail open" without warning. (subscriptions.testIamPermissions)

Parameters

string $resource

REQUIRED: The resource for which the policy detail is being requested. See Resource names for the appropriate value for this field.

TestIamPermissionsRequest $postBody
array $optParams

Optional parameters.

Return Value

TestIamPermissionsResponse

Exceptions

Exception