Skip to main content

Google Cloud Storage

With Google Cloud Storage modules in Make, you can monitor and publish messages and create, update, retrieve, and delete topics and subscriptions in your Google Cloud Storage account.

Getting Started with Google Cloud Storage

Prerequisites

Note

Make's use and transfer of information received from Google APIs to any other app will adhere to Google API Services User Data Policy.

Obtain client credentials

To obtain the client credentials, you need to have access to Google Cloud Console and must be able to create or edit the project.

  1. Sign in to Google Cloud console using your Google credentials.

  2. Click Select a project > NEW PROJECT. Enter the desired project name, and click the CREATE button.

    61f26f540fc73.gif
  3. Select the project you have created.

    61f26f58533ba.gif
  4. Go to APIs & Services > Library.

    61f26f5b27f1a.gif
  5. 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.

    61f26f5e01d32.gif
  6. Click the ENABLE button to enable the selected API.

  7. Navigate to APIs & Services > OAuth consent screen.

    61f26f606a4df.gif
  8. 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.

  9. Fill in the required fields as follows, and then click Save and Continue:

    App name

    Enter the name of the app asking for consent. For example Make.

    Authorized domains

    • make.com

    • integromat.com

  10. You don't have to set anything in the Scopes and Optional info sections. Click Save and Continue.

  11. In the Test Users section, click ADD USERS and enter the testing user email address to access the app.

    google-cloud-storage-1.png
  12. Navigate to Credentials. Click the +CREATE CREDENTIALS and select the OAuth Client ID option.

    61f26f63118aa.gif
  13. Fill in the required fields as follows, and then click the CREATE button to create the application:

    61f26f65799c3.gif

    Application type

    web application

    Name

    Name of the application. For example, Make.

    Authorized redirect URIs

    https://www.integromat.com/oauth/cb/google-custom

  14. A dialog containing the app's Client ID and Client Secret is displayed. Save them in a safe place for later use.

    61f26f68840d8.png

You have successfully created the client credentials.

Connect Google Cloud Storage to Make

To connect your Google Cloud Storage account to Make, you must have the project's client credentials from your Google Cloud Console.

  1. Log in to your Make account, add a Google Cloud Storage module to your scenario, and click Create a connection.

  2. Optional: In the Connection name field, enter a name for the connection.

  3. In the Client ID and Client Secret fields, enter the client credentials created in the Obtain client credentials section above.

  4. Optional: Click Show advanced settings and add additional scopes.

  5. Click the Sign in with Google button and select your Google account.

  6. A This app isn't verified window may appear. If not, continue to Step 9.

    Note

    The app = your OAuth client you have created above.

  7. Click the Advanced link, and then the Go to Make (unsafe) link to allow access using your custom OAuth client.

    61f26f6aba915.gif
  8. Click Allow twice to grant Make permission.

    61f26f6cea7cf.gif
  9. Click the Allow button to confirm your choices.

    You have successfully established the connection. You can now edit your scenario and add more Google Cloud Storage modules. If your connection requires reauthorization at any point, follow the connection renewal steps here.

    Note

    To use Google Cloud Storage modules, the billing must be enabled for your project. You can enable a free trial via Storage > Storage > Sign Up For a Free Trial.

    61f26f6f77708.png

Buckets

You can create, retrieve, list, update, and delete buckets with the following modules.

Creates a new bucket.

Connection

Establish a connection to your Google Cloud Storage.

Name

Enter the name of the bucket. The name can only contain lowercase letters (see naming requirements).

ACL

Add access control on the bucket to specify who has access to your data. Please find the description of ACL field resources in the BucketAccessControls documentation.

Labels

Specify key-value metadata pairs that allow you to group your buckets along with other Google Cloud resources such as virtual machine instances and persistent disks. For example, you can use labels to create a team key that has values alpha, beta, and delta, and apply the team:alpha, team:beta, and team:delta labels to different buckets in order to indicate which team is associated with those buckets. You can create a maximum of 64 labels.

Predefined ACL

Select a predefined set of access controls for this bucket.

  • authenticatedRead: Project team owners get OWNER access, and allAuthenticatedUsers get READER access.

  • private: Project team owners get OWNER access.

  • projectPrivate: Project team members get access according to their roles.

  • publicRead: Project team owners get OWNER access, and allUsers get READER access.

  • publicReadWrite: Project team owners get OWNER access, and allUsers get WRITER access.

Predefined Default Object ACL

Select a predefined set of default object access controls for this bucket.

  • authenticatedRead: Object owner gets OWNER access, and allAuthenticatedUsers get READER access.

  • bucketOwnerFullControl: Object owner gets OWNER access, and project team owners get OWNER access.

  • bucketOwnerRead: Object owner gets OWNER access, and project team owners get READER access.

  • private: Object owner gets OWNER access.

  • projectPrivate: Object owner gets OWNER access, and project team members get access according to their roles.

  • publicRead: Object owner gets OWNER access, and allUsers get READER access.

Projection

Select the properties you want to return.

  • full: Include all properties.

  • noAcl: Omit owner, acl, and defaultObjectAcl properties.

User Project

Enter the project ID of the project to be billed for this request if the target bucket is a requester-pays bucket.

Requester Pays

Select the Yes option to enable Requester Pays for this bucket.

CORS

Specify the bucket's Cross-Origin Resource Sharing (CORS) configuration.

Default Event Based Hold

Select the Yes option to automatically apply an eventBasedHold to new objects added to the bucket.

For more information about this module's fields, please refer to the Google Cloud Storage Documentation.

Retrieves bucket details.

Connection

Establish a connection to your Google Cloud Storage.

Project ID

Select the project or map the ID of the project that contains the bucket you want to retrieve details for.

Bucket

Add access control on the bucket to specify who has access to your data. Please find the description of ACL field resources in the BucketAccessControls documentation.

For more information about this module's fields, please refer to the Google Cloud Storage Documentation.

Retrieves a list of buckets for a specified project.

Connection

Establish a connection to your Google Cloud Storage.

Project ID

Select the project or map the ID of the project you want to list buckets from.

Max Results

Set the maximum number of buckets Make will return during one execution cycle.

Prefix

Enter the name prefix used to filter returned buckets.

Updates an existing bucket.

Connection

Establish a connection to your Google Cloud Storage.

Project ID

Select the project or map the ID of the project you want to update a bucket for.

Bucket

Enter the name of the bucket you want to update.

Please find the descriptions of the fields in the Create a Bucket section above.

Permanently deletes an empty bucket.

Connection

Establish a connection to your Google Cloud Storage.

Project ID

Select the project or map the ID of the project you want to delete a bucket from.

Bucket

Enter the name of the bucket you want to delete.

If Metageneration Match

Fill in these fields to delete the bucket if its metageneration matches the entered value.

If Metageneration Not Match

Fill in these fields to delete the bucket if its metageneration does not match the entered value.

User Project

Enter the ID of the project to be billed for this request. Required for requester-pays buckets.

Objects

You can watch, clone, upload, retrieve, merge, update, and delete objects with the following modules.

Triggers when an object is created, updated, copied, rewritten, or archived, or when an object's metadata are updated in the specified bucket.

Webhook name

Enter the webhook name. E.g., "Object archived".

Connection

Establish a connection to your Google Cloud Storage.

Project ID

Select the project or map the ID of the project you want to watch the object for.

Bucket

Enter the name of the bucket where you want to watch objects.

Topic

Fill in these fields to delete the bucket if its metageneration matches the entered value.

Event Types

Select events that will trigger the Watch Objects module.

Stores a new object.

Note

The uploaded object replaces any existing object with the same name.

Connection

Establish a connection to your Google Cloud Storage.

Project ID

Select the project or map the ID of the project that contains the bucket where you want to store a new object.

Bucket

Enter the name of the bucket where you want to store a new object.

Source File

Map the file you want to upload from the previous module (e.g., HTTP > Get a File or Google Drive > Download a File), or enter the file name and file data manually.

The maximum size is 5 TB.

Content Type

Specify Content-Type of the object data. If an object is stored without a Content-Type, it is served as application/octet-stream.

Upload Type

Select the type of upload:

  • Simple upload. Upload the object data only, without any metadata.

  • Resumable upload. Upload the object data in a resumable fashion, using a series of at least two requests where the first request includes the metadata.

Composes a new object from a list of existing objects.

Connection

Establish a connection to your Google Cloud Storage.

Project ID

Select the project or map the ID of the project that contains the bucket with objects you want to merge.

Bucket

Enter the name of the bucket that contains objects you want to merge.

Source Objects

Select the objects you want to merge into the destination object.

Destination Object

Enter the name of the new object. For information about how to URL encode object names to be path safe, see Encoding URI path parts.

Retrieves object details.

Connection

Establish a connection to your Google Cloud Storage.

Project ID

Select the project or map the ID of the project that contains the bucket with the object you want to retrieve details.

Bucket

Enter the name of the bucket that contains the object you want to retrieve details.

Object

Enter the name of the object you want to retrieve details for.

Download the File

Enable this option to retrieve the object's data also.

Generation

If present, select a specific revision of this object (as opposed to the latest version, which is the default).

Retrieves objects matching specified criteria.

Connection

Establish a connection to your Google Cloud Storage.

Project ID

Select the project or map the ID of the project that contains the bucket where you want to search for objects.

Bucket

Enter the name of the bucket you want to search for objects.

Limit

Set the maximum number of objects Make will return during one execution cycle.

For more information about this module's fields, please refer to the Google Cloud Storage Documentation.

Copies a source object to a destination object.

Connection

Establish a connection to your Google Cloud Storage.

Project ID

Select the project or map the ID of the project that contains the bucket with the object you want to clone.

Source Bucket

Enter the name of the bucket that contains the object you want to clone.

Source Object

Enter the name of the source object you want to clone.

Destination Bucket

Enter the name of the bucket in which to store the new object.

Destination Object

Enter the name of the new object. This overrides the object metadata's name value, if any.

Metadata

Add user-provided metadata as key-value pairs.

Updates metadata of the existing object.

Connection

Establish a connection to your Google Cloud Storage.

Project ID

Select the project or map the ID of the project that contains the bucket with the object you want to update.

Bucket

Enter the name of the bucket that contains the object you want to update.

Object

Enter the name of the object you want to update.

Acl

Set access controls on the object, containing one or more objectAccessControls Resources.

Metadata

Add user-provided metadata to update as key-value pairs.

Permanently deletes an object.

Connection

Establish a connection to your Google Cloud Storage.

Project ID

Select the project or map the ID of the project you want to delete the object from.

Bucket

Enter the name of the bucket in which the object you want to delete resides.

Object

Enter the name of the object you want to delete.

Generation

If specified, permanently delete a specific revision of this object (as opposed to the latest version, which is the default).

Bucket ACLs

You can create, retrieve, list, update, and delete bucket ACLs with the following modules.

Creates a new ACL entry on the specified bucket.

Connection

Establish a connection to your Google Cloud Storage.

Project ID

Select the project or map the ID of the project for which you want to create a bucket ACL.

Bucket

Enter the name of the bucket.

Entity

The entity holding the permission, in one of the following forms:

  • user-email

  • group-groupId

  • group-email

  • domain-domain

  • project-team-projectId

  • allUsers

  • allAuthenticatedUsers

Examples:

Role

Select the access permission for the entity.

User Project

Enter the ID of the project to be billed for this request. Required for requester-pays buckets.

Returns the ACL entry for the specified entity on the specified bucket.

Connection

Establish a connection to your Google Cloud Storage.

Project ID

Select the project or map the ID of the project for which you want to create a bucket ACL.

Bucket

Enter the name of the bucket.

Entity

The entity holding the permission, in one of the following forms:

  • user-email

  • group-groupId

  • group-email

  • domain-domain

  • project-team-projectId

  • allUsers

  • allAuthenticatedUsers

Examples:

User Project

Enter the ID of the project to be billed for this request. Required for requester-pays buckets.

Retrieves ACL entries on a specified bucket.

Connection

Establish a connection to your Google Cloud Storage.

Project ID

Select the project or map the ID of the project you want to list bucket ACLs from.

Bucket

Enter the name of the bucket.

Limit

Set the maximum number of ACLs Make will return during one execution cycle.

User Project

Enter the ID of the project to be billed for this request to filter results. Required for requester-pays buckets.

Updates an ACL entry on the specified bucket.

Connection

Establish a connection to your Google Cloud Storage.

Project ID

Select the project or map the ID of the project you want to update.

Bucket

Enter the name of the bucket.

Acl

Set access controls on the object, containing one or more objectAccessControls Resources.

Metadata

Add user-provided metadata to update as key-value pairs.

Permanently deletes the ACL entry for the specified entity on the specified bucket.

Connection

Establish a connection to your Google Cloud Storage.

Project ID

Select the project or map the ID of the project you want to delete the bucket ACL from.

Bucket

Enter the name of the bucket.

Entity

The entity holding the permission. Can be user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.

User Project

Enter the ID of the project to be billed for this request. Required for requester-pays buckets.

Bucket Default Objects ACLs

You can create, update, list, retrieve, and delete bucket default object ACLs with the following modules.

Creates a new default object ACL entry on the specified bucket.

Connection

Establish a connection to your Google Cloud Storage.

Project ID

Select the project or map the ID of the project where you want to create a default object ACL.

Bucket

Enter the name of the bucket.

Entity

The entity holding the permission, in one of the following forms:

  • user-email

  • group-groupId

  • group-email

  • domain-domain

  • project-team-projectId

  • allUsers

  • allAuthenticatedUsers

Examples:

Role

Select the access permission for the entity.

User Project

Enter the ID of the project to be billed for this request. Required for requester-pays buckets.

Returns the default object ACL entry for the specified entity on the specified bucket.

Connection

Establish a connection to your Google Cloud Storage.

Project ID

Select the project or map the ID of the project you want to retrieve a default object ACL from.

Bucket

Enter the name of the bucket.

Entity

The entity holding the permission. Can be user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.

User Project

Enter the ID of the project to be billed for this request. Required for requester-pays buckets.

Retrieves default object ACL entries on the specified bucket.

Connection

Establish a connection to your Google Cloud Storage.

Project ID

Select the project or map the ID of the project from which you want to list a default object ACL.

Bucket

Enter the name of the bucket.

Limit

Set the maximum number of default object ACL entries Make will return during one execution cycle.

Updates a default object ACL entry on the specified bucket.

Connection

Establish a connection to your Google Cloud Storage.

Project ID

Select the project or map the ID of the project where you want to update a default object ACL.

Bucket

Enter the name of the bucket.

Entity

The entity holding the permission. Can be user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.

New Role

Select the access permission for the entity.

User Project

Enter the ID of the project to be billed for this request. Required for requester-pays buckets.

Permanently deletes the default object ACL entry for the specified entity on the specified bucket.

Connection

Establish a connection to your Google Cloud Storage.

Project ID

Select the project or map the ID of the project you want to delete the default object ACL from.

Bucket

Enter the name of the bucket.

Entity

The entity holding the permission. Can be user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.

User Project

Enter the ID of the project to be billed for this request. Required for requester-pays buckets.

Object ACLs

You can create, retrieve, list, update, and delete object ACLs with the following modules.

Creates a new ACL entry on the specified object.

Connection

Establish a connection to your Google Cloud Storage.

Project ID

Select the project or map the ID of the project that contains the object you want to create an ACL entry for.

Bucket

Enter the name of the bucket.

Object

Enter the name of the object you want to create an ACL entry for.

Entity

Specify the entity holding the permission, in one of the following forms:

  • user-email

  • group-groupId

  • group-email

  • domain-domain

  • project-team-projectId

  • allUsers

  • allAuthenticatedUsers

Examples:

Role

Select the access permission for the entity.

Retrieves the ACL entry for the specified entity on the specified object.

Connection

Establish a connection to your Google Cloud Storage.

Project ID

Select the project or map the ID of the project that contains the object you want to retrieve an ACL entry for.

Bucket

Enter the name of the bucket.

Object

Enter the name of the object you want to retrieve an ACL entry for.

Entity

The entity holding the permission. Can be user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.

Generation

If specified, select a specific revision of this object (as opposed to the latest version, which is the default).

User Project

Specify the project to be billed for this request. Required for requester-pays buckets.

Retrieves ACL entries on the specified object.

Connection

Establish a connection to your Google Cloud Storage.

Project ID

Select the project or map the ID of the project that contains the object you want to retrieve ACL entries for.

Bucket

Enter the name of the bucket.

Object

Enter the name of the object you want to retrieve ACL entries for.

Limit

Set the maximum number of ACL entries Make will return during one execution cycle.

Generation

If specified, select a specific revision of this object (as opposed to the latest version, which is the default).

User Project

Specify the project to be billed for this request. Required for requester-pays buckets.

Updates an ACL entry on the specified object.

Connection

Establish a connection to your Google Cloud Storage.

Project ID

Select the project or map the ID of the project that contains the object you want to update an ACL entry for.

Bucket

Enter the name of the bucket.

Object

Enter the name of the object you want to update an ACL entry for.

Entity

Specify the entity holding the permission. Can be user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.

Role

Select the access permission for the entity.

Permanently deletes the ACL entry for the specified entity on the specified object.

Connection

Establish a connection to your Google Cloud Storage.

Project ID

Select the project or map the ID of the project that contains the object you want to delete an ACL entry from.

Bucket

Enter the name of the bucket.

Object

Enter the name of the object you want to delete an ACL entry from.

Entity

Specify the entity holding the permission. Can be user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.

Generation

If specified, select a specific revision of this object (as opposed to the latest version, which is the default).

User Project

Specify the project to be billed for this request. Required for requester-pays buckets.

Other

You can call APIs with the following module.

Allows you to perform a custom API call.

Connection

Establish a connection to your Google Cloud Storage.

URL

Enter a path relative to https://www.googleapis.com/storage.For example: /v1/b/{bucket_name}.

Note

For the list of available endpoints, refer to the Google Cloud Storage API Reference.

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 dashboards in your Cloud Storage:

URL:

/v1/b

Method:

GET

Query String:

Key:

project

Value:

{project_id}

61f26f70a4d89.png

The result can be found in the module's Output under Bundle > Body.