Google Cloud Pub/Sub
The Google Cloud Pub/Sub modules enable you to monitor and publish messages or create, update, retrieve, and delete topics and subscriptions in your Google Cloud Pub/Sub.
Getting Started with Google Cloud Pub/Sub
Prerequisites
A Google account
A project created in the Google Cloud Console
In order to use Google Cloud Pub/Sub with Make, it is necessary to have a Google account. If you do not have one, you can create a Google Cloud Pub/Sub account at accounts.google.com.
Note
The module dialog fields that are displayed in bold (in the Make scenario, not in this documentation article) are mandatory!
Connecting Google Cloud Pub/Sub to Make
To connect your Google Cloud Pub/Sub account to Make, you'll need to obtain the project's Client ID and Client Secret in the Google Cloud Console.
Sign in to Google Cloud console using your Google credentials.
Click Select a project > NEW PROJECT. Enter the desired project name and click the CREATE button.
Select the project you have created.
Go to APIs & Services > Library.
Search and enable the following required APIs:
Cloud Resource Manager API
The desired service option should display as you type. Click on the API/service you want to connect to Make.
Click the ENABLE button to enable the selected API.
Open APIs & Services > Library, and search and enable the two remaining required APIs (see step 5 above).
Open Big Data > Pub/Sub. This will enable the rest of the required APIs in your project.
Navigate to APIs & Services > OAuth consent screen.
Choose the External option, and click the CREATE button.
Note
You will not be charged when selecting this option! For more details, please refer to Google's Exceptions to verification requirements.
Fill the required fields as follows and then click the Save and Continue button:
App name
Enter the name of the app asking for consent.
For example
Make
.Authorized domains
Make.com
You don't have to set anything in the Scopes and Optional info sections. Click Save and Continue.
Navigate to Credentials. Click on the +CREATE CREDENTIALS, and select the OAuth Client ID option.
Fill in the required fields as follows, and then click the CREATE button to create the application:
Application type
Web application
Name
e.g.
Make
Authorized redirect URIs
https://www.Make.com/oauth/cb/google-custom
A dialog containing the app's Client ID and Client Secret is displayed. Save them to a safe place for later use.
Go to Make, open the Create a connection dialog of the desired Google Cloud Pub/Sub module, enter the Client ID and Client Secret from step 15 above to the respective fields, and click Continue.
Sign in with your Google account.
This app isn't verified window may appear.
Note
The app is your OAuth client you have created above.
Click on the Advanced link, and then on the Go to Make (unsafe) link to allow access using your custom OAuth client.
Click Allow to grant Make permission.
Click the Allow button to confirm your choices.
The connection to your Google Cloud Pub/Sub has been established.
Message
Triggers when a message is published for the specified topic.
Webhook name | Enter the name for the webhook. |
Connection | |
Project | Select the project that contains the topic you want to watch for published messages. |
Topic Name | Select the topic you want to watch for published messages. |
Subscription Filter | Set the filter according to the filter syntax. If the filter is set, only messages that match this filter are returned. |
Message Retention Duration | Enter the duration in seconds. Specify how long to retain unacknowledged messages in the subscription's backlog, from the moment a message is published. Minimum 10 minutes, maximum 7 days. The default is 7 days.Duration in seconds with up to nine fractional digits, terminated by 's'. Example: |
Order Messages with an Ordering Key | If enabled, messages published with the same |
Enable Dead Lettering | Check to enable a dead letter policy, which specifies the conditions for dead lettering messages.Then, set the name of the topic to which dead letter messages should be published and the number of delivery attempts. |
Retry after Exponential Backoff Delay | Check to enable a policy that specifies how Pub/Sub retries message delivery. Uncheck to retry immediately. Retry delay will be exponential based on provided minimum and maximum backoffs. https://en.wikipedia.org/wiki/Exponential_backoff. Set the minimum and maximum backoff (in seconds). |
Labels | Specify labels. See Creating and managing labels. An object containing a list of |
Publishes a message to the specified topic.
Connection | |||||
Topic Name | Enter the topic path in the following format: Or use the Search button to browse the desired topic. | ||||
Messages | Either message or attribute will be required to publish.
|
Topic
Returns a list of topics in the specified project.
Connection | |
Project | Select or map the ID of the project you want to retrieve topics from. |
Limit | Set the maximum number of topics Make will return during one execution cycle. |
Returns a list of topic subscriptions.
Connection | |
Topic Name | Enter the topic path in the following format: Or use the Search button to browse the desired topic you want to list subscriptions for. |
Limit | Set the maximum number of subscriptions Make will return during one execution cycle. |
Creates a new subscription to a specified topic.
Connection | |
Subscription ID | Specify the unique resource name. |
Project | Select the project or map the ID of the project that contains the topic you want to create a subscription for. |
Topic Name | Select the topic or map the ID of the topic you want to create a subscription for. |
Enable Push Delivery | Check this option to use Push delivery instead of Pull delivery. |
Enable Subscription Expiration | Check to enable a policy that specifies the conditions for this subscription's expiration. A subscription is considered active as long as any connected subscriber is successfully consuming messages from the subscription or is issuing operations on the subscription. |
Time To Live | Specify the "time-to-live" duration for an associated resource in seconds. The resource expires if it is not active for a period of Indicate the duration in seconds with up to nine fractional digits, terminated by ' |
Acknowledgement Deadline in Seconds | Enter the approximate amount of time (on a best-effort basis) Pub/Sub waits for the subscriber to acknowledge receipt before resending the message. In the interval after the message is delivered and before it is acknowledged, it is considered to be outstanding. During that time period, the message will not be redelivered (on a best-effort basis). |
Subscription Filter | Set the filter according the filter syntax. If the filter is set, only messages that match this filter are returned. |
Message Retention Duration | Enter the duration in seconds. Define how long to retain unacknowledged messages in the subscription's backlog, from the moment a message is published. Minimum 10 minutes, maximum 7 days. The default is 7 days.Duration in seconds with up to nine fractional digits, terminated by 's'. Example: |
Retain Acknowledged Messages | If enabled, messages are not expunged from the subscription's backlog, even if they are acknowledged, until they fall out of the |
Order Messages with an Ordering Key | If enabled, messages published with the same |
Enabled Dead Lettering | Check to enable a dead letter policy, the policy that specifies the conditions for dead lettering messages.Then, set the name of the topic to which dead letter messages should be published and the number of delivery attempts. |
Retry after Exponential Backoff Delay | Check to enable a policy that specifies how Pub/Sub retries message delivery. Uncheck to retry immediately. Retry delay will be exponential based on provided minimum and maximum backoffs. https://en.wikipedia.org/wiki/Exponential_backoff. Set the minimum and maximum backoff (in seconds). |
Labels | Specify labels. See Creating and managing labels. An object containing a list of |
Updates an existing subscription.
Connection | |
Subscription Name | Enter the path to the subscription you want to update in the following format: |
Please find the descriptions of the fields in the Create a Subscription section above.
Deletes a subscription. All messages retained in the subscription are immediately dropped.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.
Connection | |
Subscription Name | Enter the path to the subscription you want to delete in the following format: |
Other
Allows you to perform a custom API call.
Connection | |
URL | Enter a path relative to NoteFor the list of available endpoints, refer to the Pub/Sub API Documentation. |
Method | Select the HTTP method you want to use: GET to retrieve information for an entry. POST to create a new entry. PUT to update/replace an existing entry. PATCH to make a partial entry update. DELETE to delete an entry. |
Headers | Enter the desired request headers. You don't have to add authorization headers; we've already added those for you. |
Query String | Enter the request query string. |
Body | Enter the body content for your API call. |
The following API call returns all snapshots in the specified topic:
URL:
/v1/projects/{project}/topics/{topic}/snapshots/
Method:
GET
![]() |
The result can be found in the module's Output under Bundle > Body > snapshots.
In our example, 3 snapshots were returned:
![]() |