| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
Discuss (mail)
|
| Lines of code | 1365 |
| Technical Name |
cap_cloud_storage_google_drive |
| License | OPL-1 |
| Website | https://www.captivea.com/ |
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
Discuss (mail)
|
| Lines of code | 1365 |
| Technical Name |
cap_cloud_storage_google_drive |
| License | OPL-1 |
| Website | https://www.captivea.com/ |
Odoo Google Drive Cloud Storage — Store large chatter attachments on Google Drive
Overview
Integrate Google Drive with Odoo 19's built-in Cloud Storage framework so large files attached in chatter are uploaded to Google Drive instead of the Odoo filestore. Configure per-company connection instances, test connectivity, and keep API secrets safe.
Choose Google Account (OAuth2) for personal @gmail.com My Drive, or Service Account with a Google Workspace Shared Drive for team storage. Set a minimum file size in Settings — only attachments above that threshold are sent to Drive; smaller files stay in Odoo as usual.
Key Features
- Google Drive API v3 — resumable uploads for large chatter files
- Server-side upload (no browser direct-to-Drive upload)
- Per-company Google Drive Instance records
- Test Connection — validates folder access and upload permission
- OAuth2 sign-in with refresh token stored on the instance
- Service account JSON for Workspace Shared Drives
- Settings → Cloud Storage provider: Google Drive
- Configurable minimum file size (default 20 MB)
- Attachment metadata + Drive file ID in Odoo (file bytes on Drive)
- Integrates with mail chatter on CRM, Sales, and other models
- Depends on Odoo CE module cloud_storage
- Python:
google-auth,requests
How It Works
01 — Google Drive Instance & Authentication
Open Settings → Technical → Google Drive Storage → Configuration and create an instance for your company. For personal Gmail, set Authentication to Google Account (OAuth2), enter your OAuth Client ID and Secret from Google Cloud Console, click Connect Google Account, then set the Root Folder ID from your My Drive folder URL. For Workspace, use Service Account: paste the JSON key, add the service account email as Content manager on a Shared Drive, and set both Shared Drive ID and Root Folder ID. Click Test Connection to verify folder access and upload rights.
02 — Enable Cloud Storage in Settings
Go to Settings → General Settings → Cloud Storage. Set Cloud Storage Provider to Google Drive, select your Google Drive Instance, and configure Minimum File Size (files larger than this threshold are uploaded to Drive). Save. The instance must pass Test Connection before the provider can be enabled.
03 — Upload Large Attachments from Chatter
On any record with chatter (e.g. Sales Order, CRM Lead), attach a file larger than the minimum size. Odoo sends the file to the server, uploads it to your configured Google Drive folder via the Drive API, and stores the attachment in Odoo as a link with the Drive file ID — the binary is not kept in the Odoo filestore. Users can open the attachment from chatter; access uses Odoo permissions and the server-stored Google credentials (OAuth refresh token or service account).
04 — Verify Files on Google Drive
Open your root folder in Google Drive (personal My Drive or Shared Drive). Uploaded files appear with
the same filename as in Odoo and include a custom property odooAttachmentId for lookup.
Administrators can see the Google Drive Link on attachment records (technical field
google_drive_file_id). Replace the placeholder screenshots in
static/description/img/ with your own UI captures before publishing to the Apps store.
Setup Requirements
- Google Cloud project with Google Drive API enabled
- OAuth 2.0 client (Web application) for personal Gmail — redirect URI must match the instance
- Or Service Account JSON key + Workspace Shared Drive for business deployments
- Odoo CE modules: cloud_storage, mail
pip install google-authin the Odoo Python environment- Public HTTPS
web.base.urlfor OAuth callback (or tunnel URL on the instance)
Full step-by-step API setup is documented in the module readme.txt.
Need Help?
Odoo Proprietary License v1.0 This software and associated files (the "Software") may only be used (executed, modified, executed after modifications) if you have purchased a valid license from the authors, typically via Odoo Apps, or if you have received a written agreement from the authors of the Software (see the COPYRIGHT file). You may develop Odoo modules that use the Software as a library (typically by depending on it, importing it and using its resources), but without copying any source code or material from the Software. You may distribute those modules under the license of your choice, provided that this license is compatible with the terms of the Odoo Proprietary License (For example: LGPL, MIT, or proprietary licenses similar to this one). It is forbidden to publish, distribute, sublicense, or sell copies of the Software or modified copies of the Software. The above copyright notice and this permission notice must be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Please log in to comment on this module