# Google Cloud Storage

## Set up Google Cloud Storage

For those considering using Google Cloud Storage, the following steps outline the process of integrating this custom storage option into your Updraft setup.

**What you need**

* **Google Cloud storage bucket:** You need to create a google cloud storage bucket.
* **Project ID**: Google Project ID where your bucket is located.
* **Service Account Key**: Service Account key to access the bucket. See [create service account key](https://cloud.google.com/iam/docs/keys-create-delete#iam-service-account-keys-create-console).

### Step 1: Create a google cloud project

1. In the Google Cloud Console, open the menu and navigate to "IAM & Admin," then select "Create Project."
2. On the "Create Project" page, enter a meaningful name for your project in the "Project Name" field. Optionally, you can click "Edit" to modify the **project ID**. Keep in mind that the project ID cannot be changed after the project is created, so choose one that will meet your needs for the entire project lifecycle.
3. In the "Location" field, click "Browse" to view potential locations for your project. After selecting the desired location, click "Select."

Note: If you cannot find your Google Workspace organization, it means you're not signed in to a Google Workspace account. Some of the features described in the Google Workspace Developer documentation are only available for projects associated with an organization.

4. Finally, click "Create." The Google Cloud Console will take you to the dashboard, and your project will be created within a few minutes.

### Step 2: Create a Google Cloud Storage Bucket

To store your backups in Google Cloud, you need to create a Cloud Storage bucket within your project.

1. Log in to your Google Cloud Console.
2. In the navigation menu, go to **Storage** > **Browser**.
3. Click **Create Bucket**.
4. Provide a **unique name** for your bucket.
5. Choose a **storage class** based on your needs. For regular backups, **Standard** is recommended.
6. Select the **location** where you want your data to be stored.
7. Configure the **access control**. You can use either fine-grained or uniform access.
8. Click **Create** to finalize the bucket creation.

### Step 3: Set Up Service Account and Key

For Updraft to communicate with Google Cloud, you need to create a service account and download a key.

1. In the Google Cloud Console, navigate to **IAM & Admin** > **Service Accounts**.
2. Click [**Create Service Account**](https://console.cloud.google.com/projectselector2/iam-admin/serviceaccounts/create?walkthrough_id=iam--create-service-account&_ga=2.63826476.2004847911.1726139795-123293152.1725956721#step_index=1).
3. Name your service account (e.g., `updraft-google`), and provide a description if necessary.
4. In the **Role** section, assign the service account the **Storage Admin** role to allow full access to the Cloud Storage bucket.

<figure><img src="/files/9OwhHmpVNxpACWrD24jQ" alt=""><figcaption></figcaption></figure>

5. Once created, navigate to the **Keys** section.
6. Click **Add Key** > **Create New Key** and select **JSON** format.
7. Download and save the JSON key file securely. You will use this key in Updraft.

### Step 4: Connect Google Cloud Storage with your Updraft organization

1. Log in to Updraft and go to "Profile -> Overview"
2. Click in the section "Custom Storage" the button "Enable"\
   ![](/files/TnDqj0EDCmy2bDicSGIT)
3. In the next step choose the option "Google Cloud Storage"
4. Enter your google cloud storage configuration in the next step\
   ![](/files/SD2gqVle12XWX2AWEYcV)

* **Project ID**: The google cloud project ID of your project
* **Credentials**: The Service Account Key you created to access the bucket as a .json file
* **Bucket name**: The name of the google cloud bucket.
* Password: type in your Updraft Account password to confirm

5. Click on enable to add your Google Cloud custom storage.

## Deactivate Google Cloud Custom Storage

Custom storage provides flexibility for storing your uploaded data, but there may be occasions when you need to deactivate or reactivate it.&#x20;

**Steps**

1. **Accessing Custom Storage Settings:** Navigate to your account overview settings and find the "Custom Storage" section.
2. Click on the "Deactivate Custom Storage" option.
3. Confirm your action by entering your account password.

**Uploading new app versions/builds:**

* Once custom storage is deactivated, new data will be stored on the Updraft DB system again.
* Ensure that you're aware of this change when uploading new builds.

**Old app versions/builds**

* Each previously uploaded build will not be available anymore
* If a build is stored on inaccessible custom storage, a proper information message will be displayed when attempting to download it.
* Custom storage settings are not removed from the database until the custom storage integration is deleted.
* **Reactivating Custom Storage:** If you choose to reactivate custom storage, the URLs from previously uploaded builds on custom storage become valid again.

**Conclusion:** Managing custom storage settings ensures control over where your data is stored. Following these steps allows for a seamless transition between storage options, maintaining accessibility and clarity regarding your uploaded builds.

*Note: Make sure to keep your account password secure and be mindful of the storage location information when interacting with builds.*<br>

{% hint style="info" %}
If you are using custom storage, new app versions (.aab, .apk, .ipa), app icons, custom AAB keystore will be stored on your custombucket.&#x20;
{% endhint %}

To get more infos and to enable this feature, please reach out to [info@getupdraft.com ](mailto:undefined)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.getupdraft.com/security/custom-storage/google-cloud-storage.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
