Skip to content

Get a database export

GET
/clusters/{cluster_id}/exports/{export_id}
curl --request GET \
  --url http://localhost:8000/clusters/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/exports/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0 \
  --header 'API-Key: <API-Key>' \
  --header 'API-Version: 2026-06-01.beta'

Returns a single export. Poll this endpoint to observe status and progress until the export is completed or failed.

Required scope: clusters:exports:read

cluster_id
required
string format: uuid
export_id
required
string format: uuid
API-Version
required
string
Allowed values: 2026-06-01.beta

The request has succeeded.

Media typeapplication/json
object
id
required
string format: uuid
cluster_id
required
string format: uuid
format
required
string
Allowed values: sql pgdump
status
required
string
Allowed values: pending processing completed failed
expires_at
required

When the archive will be deleted from storage.

string format: date-time
nullable
created_at
required
string format: date-time
started_at
required
string format: date-time
nullable
completed_at
required
string format: date-time
nullable
progress
required

Completion percentage of the export job, from 0 to 100.

integer
<= 100
include_credentials
required

Whether the dump includes the credential and related Keycloak tables.

boolean
is_encrypted
required

Whether the archive is AES-256-CBC encrypted with the password provided at creation time.

boolean
file_size_bytes
required

Size of the produced ZIP archive in bytes. Only set once status is completed.

integer
nullable
sha256_checksum
required

SHA-256 checksum of the produced ZIP archive (hex). Only set once status is completed.

string
nullable
download_url
required

Time-limited presigned URL to download the archive. Only set when status is completed and expires_at is in the future. Returned URLs are valid for at least one hour.

string format: uri
nullable
error_message
required

Failure description. Only set when status is failed.

string
nullable

Example

{
  "id": "5fa3e1a0-2c9b-4d2f-9b3a-1e8c4d2f9b3a",
  "cluster_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "format": "pgdump",
  "status": "completed",
  "progress": 100,
  "include_credentials": false,
  "is_encrypted": false,
  "file_size_bytes": 4823104,
  "sha256_checksum": "9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08",
  "download_url": "https://exports.skycloak.io/.../export.zip?X-Amz-Signature=...",
  "expires_at": "2026-04-29T10:15:00Z",
  "error_message": null,
  "created_at": "2026-04-28T10:00:00Z",
  "started_at": "2026-04-28T10:00:05Z",
  "completed_at": "2026-04-28T10:15:00Z"
}

Access is unauthorized.

Media typeapplication/problem+json

RFC 9457 Problem Details object.

object
type
required
string format: uri
title
required
string
status
required
integer
detail
required
string
instance
string format: uri

Example generated

{
  "type": "https://example.com",
  "title": "example",
  "status": 1,
  "detail": "example",
  "instance": "https://example.com"
}

Access is forbidden.

Media typeapplication/problem+json

RFC 9457 Problem Details object.

object
type
required
string format: uri
title
required
string
status
required
integer
detail
required
string
instance
string format: uri

Example generated

{
  "type": "https://example.com",
  "title": "example",
  "status": 1,
  "detail": "example",
  "instance": "https://example.com"
}

The server cannot find the requested resource.

Media typeapplication/problem+json

RFC 9457 Problem Details object.

object
type
required
string format: uri
title
required
string
status
required
integer
detail
required
string
instance
string format: uri

Example generated

{
  "type": "https://example.com",
  "title": "example",
  "status": 1,
  "detail": "example",
  "instance": "https://example.com"
}

Client error

Media typeapplication/problem+json

RFC 9457 Problem Details object.

object
type
required
string format: uri
title
required
string
status
required
integer
detail
required
string
instance
string format: uri

Example generated

{
  "type": "https://example.com",
  "title": "example",
  "status": 1,
  "detail": "example",
  "instance": "https://example.com"
}
Retry-After
integer
RateLimit-Limit
integer
RateLimit-Remaining
integer
RateLimit-Reset
integer
X-RateLimit-Limit-Second
integer
X-RateLimit-Remaining-Second
integer
X-RateLimit-Limit-Minute
integer
X-RateLimit-Remaining-Minute
integer
X-RateLimit-Limit-Hour
integer
X-RateLimit-Remaining-Hour
integer
X-RateLimit-Limit-Day
integer
X-RateLimit-Remaining-Day
integer

Server error

Media typeapplication/problem+json

RFC 9457 Problem Details object.

object
type
required
string format: uri
title
required
string
status
required
integer
detail
required
string
instance
string format: uri

Example generated

{
  "type": "https://example.com",
  "title": "example",
  "status": 1,
  "detail": "example",
  "instance": "https://example.com"
}

Server error

Media typeapplication/problem+json

RFC 9457 Problem Details object.

object
type
required
string format: uri
title
required
string
status
required
integer
detail
required
string
instance
string format: uri

Example generated

{
  "type": "https://example.com",
  "title": "example",
  "status": 1,
  "detail": "example",
  "instance": "https://example.com"
}