---
title: "Get UI config"
method: GET
path: "/system/uiConfig"
tags: ["System"]
---

# Get UI config

`GET /system/uiConfig`

## Request

- The document declares no server URL.
- Auth: none declared

Returns the UI configuration properties for this server.  The registry UI can be
connected to a backend using just a URL.  The rest of the UI configuration can then
be fetched from the backend using this operation.  This allows UI and backend to
both be configured in the same place.

This operation may fail for one of the following reasons:

* A server error occurred (HTTP error `500`)

## Response `200`

The UI config.

- UserInterfaceConfig: Defines the user interface configuration data type.
  - `ui` UserInterfaceConfigUi
    - `contextPath` string
    - `navPrefixPath` string
    - `oaiDocsUrl` string
    - `editorsUrl` string
  - `auth` UserInterfaceConfigAuth, required
    - `type` 'none' | 'basic' | 'oidc'
    - `rbacEnabled` boolean, required
    - `obacEnabled` boolean, required
    - `options` Labels: User-defined name-value pairs. Name and value must be strings.
  - `features` UserInterfaceConfigFeatures
    - `readOnly` boolean
    - `readOnlyReason` 'storage' | 'config': Why the registry is in read-only mode: storage (inherently read-only, e.g. GitOps), config (manual configuration), or absent when not read-only.
    - `storageName` string: The active storage variant name (e.g. gitops, kubernetesops, sql). Populated when readOnlyReason is storage.
    - `breadcrumbs` boolean
    - `roleManagement` boolean
    - `settings` boolean
    - `deleteGroup` boolean
    - `deleteArtifact` boolean
    - `deleteVersion` boolean
    - `draftMutability` boolean
    - `agents` boolean
    - `searchIndex` boolean
    - `urlImportMaxContentLength` integer: Maximum content length (in bytes) for UI 'Import from URL' responses.

## Other responses

- `500`: Common response for all operations that can fail with an unexpected server error.

## Changes

- **2026-10-31** `ff9684af2aad`: 5 info
  - added the optional property `ruleViolation/causes/items/code` to the response with the `500` status
  - added the optional property `ruleViolation/causes/items/direction` to the response with the `500` status
  - added the optional property `ruleViolation/causes/items/existing` to the response with the `500` status
  - added the optional property `ruleViolation/causes/items/proposed` to the response with the `500` status
  - …1 more
- **2026-10-29** `f17f5df4e79c`: 1 info
  - added the optional property `ruleViolation` to the response with the `500` status
- **2025-09-22** `f79d7a05e751`: 1 info
  - added the optional property `ui/editorsUrl` to the response with the `200` status
- **2024-09-06** `948bffd5d083`: 2 warning, 4 info
  - removed the optional property `error_code` from the response with the `500` status
  - removed the optional property `message` from the response with the `500` status
  - added the optional property `instance` to the response with the `500` status
  - added the optional property `type` to the response with the `500` status
  - …2 more
- **2024-01-30** `dcd0a64978fb`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/apicurio/apis/apicurio-registry-api-v3/changes/system/uiConfig/get.md)

---

[API](https://skmtc.dev/apicurio/apis/apicurio-registry-api-v3.md) - [All operations](https://skmtc.dev/apicurio/apis/apicurio-registry-api-v3/llms.txt) - [OpenAPI document](https://skmtc.dev/apicurio/apis/apicurio-registry-api-v3/revisions/ff9684af2aad?raw)
