Get a realm export
const url = 'http://localhost:8000/realm-exports/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0';
const options = {
method: 'GET',
headers: {'API-Version': '2026-06-01.beta', 'API-Key': '<API-Key>'}
};
try {
const response = await fetch(url, options);
const data = await response.json();
console.log(data);
} catch (error) {
console.error(error);
}curl --request GET \
--url http://localhost:8000/realm-exports/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0 \
--header 'API-Key: <API-Key>' \
--header 'API-Version: 2026-06-01.beta'Returns a single realm export. Poll to observe status and progress until the export is
completed or failed; when completed, download_url is a presigned link valid until
expires_at (bounded by the 24h retention window, so a link fetched late in the window is
valid for less time). Fetch it promptly: Skycloak deletes the artifact at expires_at.
Required scope: clusters:exports:read
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”Header Parameters
Section titled “Header Parameters”Responses
Section titled “Responses”The request has succeeded.
object
The exported realm’s name (Keycloak realm id).
Percent complete, 0-100.
Keycloak version that produced the export. An import target must run this version or newer. Only set once status is completed.
SHA-256 checksum of the produced encrypted archive (hex). Only set once status is completed.
Time-limited presigned URL to download the encrypted archive. Only set when status is completed and expires_at is in the future. Skycloak does not retain the artifact past expires_at.
When the archive is deleted from storage (24h after completion).
Failure description. Only set when status is failed.
Example
{
"id": "5fa3e1a0-2c9b-4d2f-9b3a-1e8c4d2f9b3a",
"cluster_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"realm": "cust-brasilia",
"scope": "full",
"status": "completed",
"progress": 100,
"source_version": "26.6.1",
"sha256_checksum": "9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08",
"download_url": "https://exports.skycloak.io/.../cust-brasilia.zip.enc?X-Amz-Signature=...",
"expires_at": "2026-07-20T14:15:00Z",
"error_message": null,
"created_at": "2026-07-19T14:00:00Z",
"completed_at": "2026-07-19T14:12:00Z"
}Access is unauthorized.
RFC 9457 Problem Details object.
object
Example generated
{
"type": "https://example.com",
"title": "example",
"status": 1,
"detail": "example",
"instance": "https://example.com"
}Access is forbidden.
RFC 9457 Problem Details object.
object
Example generated
{
"type": "https://example.com",
"title": "example",
"status": 1,
"detail": "example",
"instance": "https://example.com"
}The server cannot find the requested resource.
RFC 9457 Problem Details object.
object
Example generated
{
"type": "https://example.com",
"title": "example",
"status": 1,
"detail": "example",
"instance": "https://example.com"
}Client error
RFC 9457 Problem Details object.
object
Example generated
{
"type": "https://example.com",
"title": "example",
"status": 1,
"detail": "example",
"instance": "https://example.com"
}Headers
Section titled “Headers”Server error
RFC 9457 Problem Details object.
object
Example generated
{
"type": "https://example.com",
"title": "example",
"status": 1,
"detail": "example",
"instance": "https://example.com"
}Server error
RFC 9457 Problem Details object.
object
Example generated
{
"type": "https://example.com",
"title": "example",
"status": 1,
"detail": "example",
"instance": "https://example.com"
}