For the complete documentation index, see llms.txt. This page is also available as Markdown.

Google Cloud Storage

Connect Google Cloud Storage — keep a project's files in your Cloud Storage bucket.

Google Cloud Storage keeps the project's files in a bucket of your Google Cloud project. Norbix reaches it with a service account's JSON key.

Get your credentials

  1. In the Google Cloud console, create a bucket, for example acme-shop-assets, with Prevent public access on — Create buckets.

  2. Create a service account, for example norbix-files — Create service accounts.

  3. On the bucket's Permissions tab, grant that service account the role Storage Object Admin (read, write and delete objects) — Use IAM permissions.

  4. For uploads from Cloud: set a CORS rule on the bucket that allows your Cloud address with PUT, GET and HEAD and the header content-type — Set up CORS. The browser sends the bytes straight to the bucket.

  5. On the service account's Keys tab, press Add key → Create new key → JSON. The browser downloads the key file — Create and delete service account keys. Keep it secret.

Connect it in Cloud

Where: Files → Integrations → Add New Integration → Google Cloud Storage → Connect

Field
Required
What it does
Example

Bucket Name

yes

The bucket the files go into.

acme-shop-assets

Service Account JSON Key

yes

The whole content of the key file. It is stored encrypted and never shown again.

{ "type": "service_account", "project_id": "acme-shop-demo", … } (not a real key)

Integration Name

yes

The name in the list.

Shop assets

New Google Cloud Storage Integration: Bucket Name acme-shop-assets, the Service Account JSON Key box with a placeholder JSON, Integration Name Shop assets
The filled form (placeholder values).

Press Save. The page becomes Editing Google Cloud Storage integration with the id and the badges ENABLED · NOT TESTED; the key box is empty again. To save a later change, paste the key again.

Editing Google Cloud Storage integration Shop assets with the badges ENABLED and NOT TESTED, the id int_4ypF2CHTAWfAwzXIbCW0Uw and an empty key box with the Info box
After save.

Test and set as default

Test integration uploads, reads, lists and deletes a probe file in the bucket — see Test an integration. With the placeholder key the test fails on UploadFile; the lines below it were not run, although Cloud draws them as Success:

Test failed: UploadFile Failed, Failed to create Google Cloud Storage client: Error deserializing JSON credential data; GetFile, GetAllFiles, DeleteFile shown as Success
A failed test with the placeholder key.

Actions → Set as default makes it the storage file calls use when they name none — see Set as default.

Common errors

Message
Cause
Fix

Failed to create Google Cloud Storage client: Error deserializing JSON credential data.

The box does not hold a complete service-account key (a part of it, or another kind of JSON).

Paste the whole downloaded key file.

Required under Service Account JSON Key when you save a change

The secret is never sent back to the form.

Paste the key again, then Save.

Do it from code

The client setup is on the Files page. API: Save Files Integration · Test Files Integration

Last updated

Was this helpful?