oCoreoCore Docs
API Reference

Storage Browser

Get project storage summary

Returns aggregated storage analytics for all backup destinations used by a project.

GET
/projects/{id}/storage

Authorization

Authorization<token>

JWT Bearer token (format: Bearer {token})

In: header

Path Parameters

idRequiredstring

Project ID (UUID)

curl -X GET "//api.ocore.dev/api/projects/<string>/storage" \
  -H "Authorization: <token>"

OK

{}

Get storage analytics

Returns the most recent storage scan result for a backup destination.

GET
/storage/destinations/{destId}/analytics

Authorization

Authorization<token>

JWT Bearer token (format: Bearer {token})

In: header

Path Parameters

destIdRequiredstring

Backup Destination ID (UUID)

curl -X GET "//api.ocore.dev/api/storage/destinations/<string>/analytics" \
  -H "Authorization: <token>"

OK

{
  "analytics": {}
}

Browse backup destination

Lists files in a backup destination at an optional prefix path.

GET
/storage/destinations/{destId}/browse

Authorization

Authorization<token>

JWT Bearer token (format: Bearer {token})

In: header

Path Parameters

destIdRequiredstring

Backup Destination ID (UUID)

Query Parameters

prefixstring

Path prefix to filter by

curl -X GET "//api.ocore.dev/api/storage/destinations/<string>/browse?prefix=%3Cstring%3E" \
  -H "Authorization: <token>"

OK

{
  "files": [
    {}
  ]
}

Trigger orphan file cleanup

Enqueues a cleanup job that deletes orphan files (not linked to any backup/snapshot) older than the retention window. Returns 202 Accepted.

POST
/storage/destinations/{destId}/cleanup-orphans

Authorization

Authorization<token>

JWT Bearer token (format: Bearer {token})

In: header

Request Body

application/jsonOptional

Retention days (default 30)

retention_daysinteger

Path Parameters

destIdRequiredstring

Backup Destination ID (UUID)

curl -X POST "//api.ocore.dev/api/storage/destinations/<string>/cleanup-orphans" \
  -H "Authorization: <token>" \
  -H "Content-Type: application/json" \
  -d '{
    "retention_days": 0
  }'

Accepted

{
  "message": "string"
}

Download file from destination

Returns a presigned URL or streams the file content directly from a backup destination.

GET
/storage/destinations/{destId}/download

Authorization

Authorization<token>

JWT Bearer token (format: Bearer {token})

In: header

Path Parameters

destIdRequiredstring

Backup Destination ID (UUID)

Query Parameters

pathRequiredstring

File path to download

curl -X GET "//api.ocore.dev/api/storage/destinations/<string>/download?path=%3Cstring%3E" \
  -H "Authorization: <token>"

OK

{
  "url": "string"
}

Delete file from destination

Removes a file from remote backup storage. The file path can be supplied as a query parameter (preferred for DELETE requests) or in the JSON request body.

DELETE
/storage/destinations/{destId}/files

Authorization

Authorization<token>

JWT Bearer token (format: Bearer {token})

In: header

Request Body

application/jsonOptional

File path to delete (alternative to query param)

pathstring

Path Parameters

destIdRequiredstring

Backup Destination ID (UUID)

Query Parameters

pathstring

File path to delete (preferred)

curl -X DELETE "//api.ocore.dev/api/storage/destinations/<string>/files?path=%3Cstring%3E" \
  -H "Authorization: <token>" \
  -H "Content-Type: application/json" \
  -d '{
    "path": "string"
  }'

OK

{
  "message": "string"
}

Trigger storage scan

Enqueues a background storage scan job for the destination. Returns 202 Accepted.

POST
/storage/destinations/{destId}/scan

Authorization

Authorization<token>

JWT Bearer token (format: Bearer {token})

In: header

Path Parameters

destIdRequiredstring

Backup Destination ID (UUID)

curl -X POST "//api.ocore.dev/api/storage/destinations/<string>/scan" \
  -H "Authorization: <token>"

Accepted

{
  "message": "string"
}

Scan and cleanup stale records

Enqueues a storage scan that also removes stale backup/snapshot records whose remote files no longer exist. Returns 202 Accepted.

POST
/storage/destinations/{destId}/scan-cleanup

Authorization

Authorization<token>

JWT Bearer token (format: Bearer {token})

In: header

Path Parameters

destIdRequiredstring

Backup Destination ID (UUID)

curl -X POST "//api.ocore.dev/api/storage/destinations/<string>/scan-cleanup" \
  -H "Authorization: <token>"

Accepted

{
  "message": "string"
}

Upload file to destination

Uploads a file to the specified path in a backup destination.

POST
/storage/destinations/{destId}/upload

Authorization

Authorization<token>

JWT Bearer token (format: Bearer {token})

In: header

Request Body

multipart/form-dataRequired
fileRequiredfile

File to upload

Format: "binary"

Path Parameters

destIdRequiredstring

Backup Destination ID (UUID)

Query Parameters

pathRequiredstring

Target file path

curl -X POST "//api.ocore.dev/api/storage/destinations/<string>/upload?path=%3Cstring%3E" \
  -H "Authorization: <token>" \
  -F file="string"

OK

{
  "message": "string",
  "path": "string"
}

Was this page helpful?