oCoreoCore Docs
API Reference

Database

Update instance configuration

Updates odoo.conf settings on a running instance.

POST
/instances/{id}/config

Authorization

Authorization<token>

JWT Bearer token (format: Bearer {token})

In: header

Request Body

application/jsonRequired

Key-value pairs to update in odoo.conf

settingsobject

Path Parameters

idRequiredstring

Instance ID (UUID)

curl -X POST "//api.ocore.dev/api/instances/<string>/config" \
  -H "Authorization: <token>" \
  -H "Content-Type: application/json" \
  -d '{
    "settings": {}
  }'

OK

{
  "message": "string"
}

Read live instance configuration

Reads odoo.conf values directly from the running container via SSH.

GET
/instances/{id}/config/live

Authorization

Authorization<token>

JWT Bearer token (format: Bearer {token})

In: header

Path Parameters

idRequiredstring

Instance ID (UUID)

curl -X GET "//api.ocore.dev/api/instances/<string>/config/live" \
  -H "Authorization: <token>"

OK

{
  "settings": {}
}

Delete database by name

Deletes a specific database by name. Cannot delete the active database.

DELETE
/instances/{id}/database/by-name

Authorization

Authorization<token>

JWT Bearer token (format: Bearer {token})

In: header

Request Body

application/jsonRequired

Database name and confirmation

confirmNamestring
databaseNamestring

Path Parameters

idRequiredstring

Instance ID (UUID)

curl -X DELETE "//api.ocore.dev/api/instances/<string>/database/by-name" \
  -H "Authorization: <token>" \
  -H "Content-Type: application/json" \
  -d '{
    "confirmName": "string",
    "databaseName": "string"
  }'

OK

{
  "message": "string"
}

Export database

Enqueues an async export job for the specified database. Returns 202 Accepted.

POST
/instances/{id}/database/export

Authorization

Authorization<token>

JWT Bearer token (format: Bearer {token})

In: header

Request Body

application/jsonRequired

Export payload (databaseName, includeFilestore, destinationId)

bodyRequiredobject

Path Parameters

idRequiredstring

Instance ID (UUID)

curl -X POST "//api.ocore.dev/api/instances/<string>/database/export" \
  -H "Authorization: <token>" \
  -H "Content-Type: application/json" \
  -d '{}'

Accepted

{}

Download database export

Streams the completed export ZIP without buffering it in application memory. Browser navigation uses the authenticated session; legacy one-time download tokens remain accepted.

GET
/instances/{id}/database/export/{operationId}/download

Authorization

Cookie<token>

Browser session JWT sent as the access_token cookie. Swagger 2 represents this cookie through the Cookie header.

In: header

Authorization<token>

oCore API key sent as Authorization: Bearer ocore_. JWT bearer tokens are not accepted in this header for these operations.

In: header

token<token>

Short-lived one-time token returned by the database export download preparation endpoint

In: query

Path Parameters

idRequiredstring

Instance ID (UUID)

operationIdRequiredstring

Operation ID (UUID)

Query Parameters

organization_idstring

Selected organization for session-authenticated browser downloads

tokenstring

Legacy short-lived one-time download token

curl -X GET "//api.ocore.dev/api/instances/<string>/database/export/<string>/download?organization_id=%3Cstring%3E&token=%3Cstring%3E" \
  -H "Cookie: <token>"

OK

"string"

Prepare database export download

Validates the selected tenant, instance, and completed export before returning a session-authenticated URL for a browser-native ZIP download.

POST
/instances/{id}/database/export/{operationId}/download-token

Authorization

Cookie<token>

Browser session JWT sent as the access_token cookie. Swagger 2 represents this cookie through the Cookie header.

In: header

Authorization<token>

oCore API key sent as Authorization: Bearer ocore_. JWT bearer tokens are not accepted in this header for these operations.

In: header

Path Parameters

idRequiredstring

Instance ID (UUID)

operationIdRequiredstring

Operation ID (UUID)

curl -X POST "//api.ocore.dev/api/instances/<string>/database/export/<string>/download-token" \
  -H "Cookie: <token>"

OK

{
  "download_url": "string"
}

Import database from upload

Accepts a multipart file upload (zip) and enqueues an async import job. Returns 202 Accepted.

POST
/instances/{id}/database/import/upload

Authorization

Authorization<token>

JWT Bearer token (format: Bearer {token})

In: header

Request Body

multipart/form-dataRequired
fileRequiredfile

Database dump file (zip, maximum request size 20 GB)

Format: "binary"
databaseNameRequiredstring

Target database name

neutralizeboolean

Neutralize after import

runUpgradeboolean

Run upgrade after import

Path Parameters

idRequiredstring

Instance ID (UUID)

curl -X POST "//api.ocore.dev/api/instances/<string>/database/import/upload" \
  -H "Authorization: <token>" \
  -F file="string" \
  -F databaseName="string" \
  -F neutralize="true" \
  -F runUpgrade="true"

Accepted

{}

Import database from URL

Accepts a URL to download a database dump and enqueues an async import job. Returns 202 Accepted.

POST
/instances/{id}/database/import/url

Authorization

Authorization<token>

JWT Bearer token (format: Bearer {token})

In: header

Request Body

application/jsonRequired

Import URL payload (url, databaseName, neutralize, runUpgrade)

bodyRequiredobject

Path Parameters

idRequiredstring

Instance ID (UUID)

curl -X POST "//api.ocore.dev/api/instances/<string>/database/import/url" \
  -H "Authorization: <token>" \
  -H "Content-Type: application/json" \
  -d '{}'

Accepted

{}

List databases

Returns all databases on the instance with sizes and active database indicator.

GET
/instances/{id}/database/list

Authorization

Authorization<token>

JWT Bearer token (format: Bearer {token})

In: header

Path Parameters

idRequiredstring

Instance ID (UUID)

curl -X GET "//api.ocore.dev/api/instances/<string>/database/list" \
  -H "Authorization: <token>"

OK

{
  "activeDatabase": "string",
  "databases": [
    {}
  ]
}

List database operations

Returns recent import/export operations for the instance.

GET
/instances/{id}/database/operations

Authorization

Authorization<token>

JWT Bearer token (format: Bearer {token})

In: header

Path Parameters

idRequiredstring

Instance ID (UUID)

Query Parameters

limitinteger

Max operations to return (1-100)

Default: 20
curl -X GET "//api.ocore.dev/api/instances/<string>/database/operations?limit=20" \
  -H "Authorization: <token>"

OK

{
  "operations": [
    {}
  ],
  "total": 0
}

Get operation progress

Returns the current progress of an import/export operation.

GET
/instances/{id}/database/operations/{operationId}/progress

Authorization

Authorization<token>

JWT Bearer token (format: Bearer {token})

In: header

Path Parameters

idRequiredstring

Instance ID (UUID)

operationIdRequiredstring

Operation ID (UUID)

curl -X GET "//api.ocore.dev/api/instances/<string>/database/operations/<string>/progress" \
  -H "Authorization: <token>"

OK

{}

Switch active database

Switches which database is the active one on the instance.

POST
/instances/{id}/database/switch

Authorization

Authorization<token>

JWT Bearer token (format: Bearer {token})

In: header

Request Body

application/jsonRequired

Database to activate

databaseNamestring

Path Parameters

idRequiredstring

Instance ID (UUID)

curl -X POST "//api.ocore.dev/api/instances/<string>/database/switch" \
  -H "Authorization: <token>" \
  -H "Content-Type: application/json" \
  -d '{
    "databaseName": "string"
  }'

OK

{
  "message": "string"
}

Fix filestore permissions

Fixes file ownership and permissions on the instance's filestore directory.

POST
/instances/{id}/fix-filestore

Authorization

Authorization<token>

JWT Bearer token (format: Bearer {token})

In: header

Path Parameters

idRequiredstring

Instance ID (UUID)

curl -X POST "//api.ocore.dev/api/instances/<string>/fix-filestore" \
  -H "Authorization: <token>"

OK

{
  "message": "string",
  "output": "string"
}

Pull and recreate containers

Pulls latest Docker images and recreates the instance containers.

POST
/instances/{id}/pull-recreate

Authorization

Authorization<token>

JWT Bearer token (format: Bearer {token})

In: header

Path Parameters

idRequiredstring

Instance ID (UUID)

curl -X POST "//api.ocore.dev/api/instances/<string>/pull-recreate" \
  -H "Authorization: <token>"

OK

{
  "message": "string",
  "output": "string"
}

Was this page helpful?