Odoo Online

Odoo Online offers private databases hosted and managed by Odoo. Odoo Online databases can be accessed using any web browser and do not require a local installation. They can be used for long-term production or to thoroughly test Odoo, including customizations that do not require custom code.

Tip

To quickly try out Odoo, shared demo databases are available for testing. No registration is required; however, each database is only available for a few hours.

Note

Odoo Online is incompatible with custom modules or modules from the Odoo Apps Store.

Database manager

To manage an Odoo Online database, open to the database manager and sign in as the database administrator.

Domain names

Configure a custom domain name by selecting a database and clicking Domain Names.

Tags

Add tags to identify and sort databases by selecting a database and clicking Tags. In the dialog box, enter a tag, click the (plus) button, and click Save.

Tip

Search for tags in the search bar at the top right.

Hide

Permanently hide the database from the database manager by selecting it and clicking Hide. In the dialog box, click Yes, I don’t need it anymore.

Note

It is possible to access a hidden database through its URL.

Manage

Access all other database management options by selecting it and clicking Manage.

Switch plans

Switch pricing plans by clicking Switch under the desired plan.

Upgrade

Launch a database upgrade by clicking Upgrade.

Note

This option is only displayed when an upgrade is available.

Rename

Rename and change the URL of a database by clicking Rename. In the dialog box, enter a New name and click Rename.

Duplicate

Create a copy of the database by clicking Duplicate. In the dialog box, enter a New name and click Duplicate.

Important

  • By default, the For testing purposes option is enabled. It disables all external actions (emails, payments, delivery orders, etc.) on the duplicated database.

  • Duplicates expire after 15 days.

  • A maximum of five duplicates can be created per database. Under extraordinary circumstances, contact Odoo Support to extend the limit.

Download a backup

Download a ZIP file containing a database backup by clicking Download Backup.

Note

  • Databases are backed up daily as per the Odoo Cloud Hosting SLA.

  • If the Download Backup option is disabled, it means the database is too large to be downloaded using the database manager. Contact Odoo Support to request an alternative download solution.

View admin activity logs

View the logs of all actions taken by Odoo employees or the database administrator on the database by clicking View Admin Activity Logs.

Note

Actions taken by Odoo employees are typically the result of requests submitted to Odoo support, done within the context of a quick start project, or necessary to maintain the database.

Transfer ownership

Create a support ticket to request a database ownership transfer by clicking Transfer Ownership.

Delete

Delete the database and close its related subscription by clicking Delete. In the dialog box, click Delete.

Danger

All the database’s data will be deleted instaneously for all users and cannot be restored. It is recommended to download a backup before deleting a database.

Note

After deletion, the database’s name becomes available to anyone.

Web services

Databases list

To retrieve a list of all databases displayed under the database manager programmatically, call the list method of the odoo.database model via the external JSON-2 API.

import requests

API_KEY = "your_api_key"

response = requests.post(
    "https://www.odoo.com/json/2/odoo.database/list",
    headers={
        "Authorization": f"bearer {API_KEY}",
    },
    json={},
)
response.raise_for_status()
databases = response.json()

Audit logs

To retrieve the admin activity logs of an Odoo Online database, call the get_audit_logs method of the odoo.database model via the external JSON-2 API.

The request must provide either db_uuid or subscription_code. If db_uuid is provided, the logs for that database are returned. Otherwise, subscription_code can be used to retrieve logs for all databases and projects belonging to the subscription.

The optional cursor is an opaque value returned by a previous request. When provided, only logs more recent than the cursor are returned.

Audit log retrieval is subject to rate limits and must not be performed more than once every 5 minutes.

import requests

API_KEY = "your_api_key"

response = requests.post(
    "https://www.odoo.com/json/2/odoo.database/get_audit_logs",
    headers={"Authorization": f"bearer {API_KEY}"},
    json={"db_uuid": "<DB_UUID>"},
)
response.raise_for_status()
result = response.json()

The response is a JSON object containing the logs and an opaque cursor for retrieving the next batch:

{
   "logs": [
      {
         "date": "2026-09-04 12:13:14",
         "user": "John Doe [Odoo: Foo]",
         "database": "my-database",
         "subscription": "sub-code",
         "ip": "1.2.3.4",
         "action": "Connect as",
         "details": "Connected as Admin",
         "authorized": true
      }
   ],
   "next_cursor": "opaque-cursor-value"
}

The request parameters are:

  • db_uuid (string): the UUID of the database. If provided, subscription_code is ignored.

  • subscription_code (string): the subscription code. Used when db_uuid is not provided.

  • cursor (string): an opaque cursor returned by a previous request. When provided, only logs more recent than the cursor are returned.

Each log entry contains:

  • date (string): the log date and time in UTC.

  • user (string): the user who performed the action

  • database (string): the database concerned by the action, when applicable.

  • subscription (string): the subscription code.

  • ip (string): the IP address from which the action was performed.

  • action (string): the type of action.

  • details (string): additional information about the action.

  • authorized (boolean): whether the action was authorized.

The next_cursor value is an opaque cursor that can be provided as cursor in a subsequent request.