Apicurio System API
The System API from Apicurio — 2 operation(s) for system.
The System API from Apicurio — 2 operation(s) for system.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/apicurio-system-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Apicurio Registry Admin System API
version: 3.1.x
description: Apicurio Registry is a high-performance, runtime registry for schemas and API designs. It stores and manages OpenAPI, AsyncAPI, Avro, JSON Schema, Protobuf, and other artifact types, providing a REST API for schema management with compatibility checking and content versioning.
contact:
name: Apicurio
url: https://www.apicur.io/
license:
name: Apache 2.0
url: https://www.apache.org/licenses/LICENSE-2.0
servers:
- url: http://localhost:8080/apis/registry/v3
description: Local Apicurio Registry
tags:
- name: System
paths:
/system/info:
summary: Retrieve system information
get:
tags:
- System
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/SystemInfo'
description: On success, returns the system information.
'500':
$ref: '#/components/responses/ServerError'
operationId: getSystemInfo
summary: Get system information
description: 'This operation retrieves information about the running registry system, such as the version
of the software and when it was built.'
/system/uiConfig:
summary: Get UI configuration
description: "This endpoint is used by the user interface to retrieve UI specific configuration\nin a JSON payload. This allows the UI and the backend to be configured in the \nsame place (the backend process/pod). When the UI loads, it will make an API call\nto this endpoint to determine what UI features and options are configured."
get:
tags:
- System
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/UserInterfaceConfig'
description: The UI config.
'500':
$ref: '#/components/responses/ServerError'
operationId: getUIConfig
summary: Get UI config
description: '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`)
'
components:
schemas:
UserInterfaceConfigUi:
title: Root Type for UserInterfaceConfigUi
description: ''
type: object
properties:
contextPath:
type: string
navPrefixPath:
type: string
oaiDocsUrl:
type: string
editorsUrl:
type: string
example:
contextPath: /
navPrefixPath: /
oaiDocsUrl: https://registry.apicur.io/docs
editorsUrl: https://registry.apicur.io/editors
ProblemDetails:
title: Root Type for Error
description: 'All error responses, whether `4xx` or `5xx` will include one of these as the response
body.'
required:
- title
- status
type: object
properties:
detail:
description: A human-readable explanation specific to this occurrence of the problem.
type: string
type:
description: A URI reference [RFC3986] that identifies the problem type.
type: string
title:
description: A short, human-readable summary of the problem type.
type: string
status:
format: int32
description: The HTTP status code.
type: integer
instance:
description: A URI reference that identifies the specific occurrence of the problem.
type: string
name:
description: The name of the error (typically a server exception class name).
type: string
example:
status: 500
name: NullPointerException
title: An error occurred somewhere.
UserInterfaceConfig:
title: Root Type for UserInterfaceConfig
description: Defines the user interface configuration data type.
required:
- auth
type: object
properties:
ui:
$ref: '#/components/schemas/UserInterfaceConfigUi'
properties:
contextPath:
type: string
navPrefixPath:
type: string
oaiDocsUrl:
type: string
editorsUrl:
type: string
auth:
$ref: '#/components/schemas/UserInterfaceConfigAuth'
properties:
type:
type: string
rbacEnabled:
type: boolean
obacEnabled:
type: boolean
options:
type: object
properties:
url:
type: string
redirectUri:
type: string
clientId:
type: string
features:
$ref: '#/components/schemas/UserInterfaceConfigFeatures'
properties:
readOnly:
type: boolean
breadcrumbs:
type: boolean
roleManagement:
type: boolean
settings:
type: boolean
example:
ui:
contextPath: /
navPrefixPath: /
oaiDocsUrl: https://registry.apicur.io/docs
editorsUrl: https://registry.apicur.io/editors
auth:
type: oidc
rbacEnabled: true
obacEnabled: false
options:
url: https://auth.apicur.io/realms/apicurio
redirectUri: http://registry.apicur.io
clientId: apicurio-registry-ui
features:
readOnly: false
breadcrumbs: true
roleManagement: false
settings: true
UserInterfaceConfigAuth:
title: Root Type for UserInterfaceConfigAuth
description: ''
required:
- obacEnabled
- rbacEnabled
type: object
properties:
type:
enum:
- none
- basic
- oidc
type: string
rbacEnabled:
type: boolean
obacEnabled:
type: boolean
options:
$ref: '#/components/schemas/Labels'
example:
type: oidc
rbacEnabled: true
obacEnabled: false
options:
url: https://auth.apicur.io/realms/apicurio
redirectUri: https://registry.apicur.io
clientId: registry-ui
Labels:
description: User-defined name-value pairs. Name and value must be strings.
type: object
additionalProperties:
type: string
x-codegen-inline: true
x-codegen-type: StringMap
SystemInfo:
title: Root Type for SystemInfo
description: ''
type: object
properties:
name:
type: string
description:
type: string
version:
type: string
builtOn:
format: date-time
type: string
example:
name: Apicurio Registry (SQL)
description: The Apicurio Registry application.
version: 2.0.0.Final
builtOn: '2021-03-19T12:55:00Z'
UserInterfaceConfigFeatures:
title: Root Type for UserInterfaceConfigFeatures
description: ''
type: object
properties:
readOnly:
type: boolean
breadcrumbs:
type: boolean
roleManagement:
type: boolean
settings:
type: boolean
deleteGroup:
description: ''
type: boolean
deleteArtifact:
description: ''
type: boolean
deleteVersion:
description: ''
type: boolean
draftMutability:
description: ''
type: boolean
agents:
description: ''
type: boolean
searchIndex:
description: ''
type: boolean
example:
readOnly: false
breadcrumbs: true
roleManagement: false
settings: true
responses:
ServerError:
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
examples:
ErrorExample:
value:
error_code: 500
message: Lost connection to the database.
description: Common response for all operations that can fail with an unexpected server error.
securitySchemes:
BasicAuth:
type: http
scheme: basic
OAuth2:
type: oauth2
flows:
clientCredentials:
tokenUrl: https://example.com/realms/apicurio/protocol/openid-connect/token
scopes:
read: Read access
write: Write access
admin: Admin access
x-codegen:
suppress-date-time-formatting: true
bean-annotations:
- io.quarkus.runtime.annotations.RegisterForReflection
- annotation: lombok.experimental.SuperBuilder
excludeEnums: true
- annotation: lombok.AllArgsConstructor
excludeEnums: true
- annotation: lombok.NoArgsConstructor
excludeEnums: true
- annotation: lombok.EqualsAndHashCode
excludeEnums: true
- annotation: lombok.ToString(callSuper = true)
excludeEnums: true