For Agents
Manage versioned event schemas and API designs in Apicurio Registry: create artifacts, fetch content by global ID, configure compatibility rules, and search across schema groups.
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the Apicurio Registry API [v2], or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.
# On the machine that will host your Jentic One instance:
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | sh# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | sh
jentic register # connects your agent to your Jentic One instanceJentic One is in public beta. The setup above keeps your agent separate from the instance, which is what you want before using real credentials: an agent running as the same OS user as Jentic One can read its stored keys directly. Just evaluating? A single local install is fine to start. See the secure deployment guide for the tiers.
What an agent can do with Apicurio Registry API [v2] API.
Publish new versions of Avro, Protobuf, AsyncAPI, OpenAPI, JSON Schema, and WSDL artifacts under a group
Fetch artifact content by globalId or by group, artifact, and version for runtime schema resolution
Configure per-artifact and global compatibility rules to gate breaking schema changes
Search artifacts by name, group, label, or content for schema discovery across teams
GET STARTED
Use for: Publish a new Avro schema version under the orders group, Fetch the OpenAPI spec stored under group 'public' and artifact 'inventory', List all artifacts in the registry that match the label 'pii', Set a backward compatibility rule on the customers Avro artifact
Not supported: Does not handle schema execution, message brokering, or runtime serialization - use for storing, versioning, and validating schema artifacts only.
Apicurio Registry is a self-hosted datastore for event schemas and API designs. Teams use it to store, version, and validate Avro, AsyncAPI, Protobuf, GraphQL, JSON Schema, Kafka Connect, OpenAPI, WSDL, and XSD artifacts so that producers and consumers stay in sync as schemas evolve. The v2 REST API exposes 65 operations across artifacts, versions, metadata, content rules, and search, and supports admin operations like export, import, and global rule configuration. It is the integration surface for CI pipelines, schema-aware Kafka clients, and tooling that needs programmatic schema discovery.
Export and import the full registry contents to migrate or back up a deployment
Manage artifact metadata, state (enabled, disabled, deprecated), and version-level metadata
Patterns agents use Apicurio Registry API [v2] API for, with concrete tasks.
★ Kafka Schema Governance
Apicurio Registry stores Avro, Protobuf, and JSON Schema artifacts that Kafka producers and consumers reference at serialize and deserialize time. Compatibility rules (BACKWARD, FORWARD, FULL) at the artifact or global level prevent breaking schema changes from being published. Teams running Kafka on Strimzi or Confluent commonly run Apicurio for schema governance because it speaks the Confluent-compatible API as well as its own.
POST a new Avro schema version to /groups/orders/artifacts/order-created/versions and configure a BACKWARD compatibility rule via /groups/orders/artifacts/order-created/rules
API Design Versioning
Store OpenAPI, AsyncAPI, and GraphQL design documents alongside event schemas in a single versioned registry. Teams keep their public-facing API specs in Apicurio so that gateway configuration, mock servers, and client SDK pipelines can pull the canonical spec by group and artifact ID. Each artifact carries metadata, labels, and lifecycle state (enabled, deprecated, disabled).
Upload an OpenAPI 3 spec under /groups/public-api/artifacts/checkout-v1/versions and set its state to 'DEPRECATED' on the previous version via /groups/public-api/artifacts/checkout-v1/versions/1/state
CI/CD Schema Validation
Wire Apicurio into a CI pipeline so that every pull request that changes a schema is validated against the registry's compatibility rules before merge. The /groups/{groupId}/artifacts/{artifactId}/test endpoint accepts a candidate artifact and reports whether it would pass the configured compatibility checks, which lets teams catch breaking changes before they reach a Kafka topic or production API.
Send a candidate Avro payload to /groups/orders/artifacts/order-created/test and surface any compatibility error in the PR comment
Cross-Team Schema Discovery
When multiple teams produce events on shared topics, Apicurio's /search/artifacts endpoint lets them discover existing schemas before creating duplicates. Search supports name, group, label, and content filters, and returns globalIds that can be used directly by Kafka clients. This shortens onboarding for new services from days to minutes when the existing schema corpus is well-labelled.
Call /search/artifacts?name=invoice&labels=pii to list invoice-related schemas marked as containing PII
AI Agent Schema Lookup
Give an AI agent a tool to fetch the canonical schema for any event or API design before it generates code or test fixtures. Through Jentic, the agent searches for an intent like 'get avro schema by global id' and gets the matching Apicurio operation. The agent then loads the registry content directly instead of guessing field names from sample messages.
Search Jentic for 'fetch schema by global id', load the /ids/globalIds/{globalId} schema, and execute with globalId=42 to retrieve the Avro definition
65 endpoints — apicurio registry is a self-hosted datastore for event schemas and api designs.
METHOD
PATH
DESCRIPTION
/ids/globalIds/{globalId}
Fetch artifact content by global ID for runtime schema resolution
/groups/{groupId}/artifacts
Create a new artifact in a group
/groups/{groupId}/artifacts/{artifactId}/versions
List all versions of an artifact
/search/artifacts
Search artifacts across the registry
/groups/{groupId}/artifacts/{artifactId}/rules
Configure a compatibility or validity rule on an artifact
/admin/export
Export the full registry contents
/admin/import
Import a registry export back into a registry
/ids/globalIds/{globalId}
Fetch artifact content by global ID for runtime schema resolution
/groups/{groupId}/artifacts
Create a new artifact in a group
/groups/{groupId}/artifacts/{artifactId}/versions
List all versions of an artifact
/search/artifacts
Search artifacts across the registry
/groups/{groupId}/artifacts/{artifactId}/rules
Configure a compatibility or validity rule on an artifact
Three things that make agents converge on Jentic-routed access.
Credential isolation
Bearer tokens for Keycloak-protected Apicurio deployments are stored encrypted in the Jentic vault. Agents call registry operations through Jentic and the token is attached to the Authorization header at execution time, so raw tokens never appear in agent prompts or logs.
Intent-based discovery
Agents search by intent (for example 'register avro schema' or 'fetch schema by global id') and Jentic returns the matching Apicurio operation with its input schema. The agent does not have to read the 65-operation reference to find the right endpoint.
Time to first call
Direct Apicurio integration: 1-2 days to wire up auth, content-type handling, and rule configuration. Through Jentic: under 1 hour - search, load schema, execute.
Alternatives and complements available in the Jentic catalogue.
GitHub REST API
Source-control API used to host the schema files that get published to Apicurio
Pair with GitHub when schemas live in a Git repository and a CI workflow needs to read the file from a branch before publishing it to Apicurio
Swagger Generator API
Generates client and server code from an OpenAPI document stored in Apicurio
Use Swagger Generator after fetching an OpenAPI artifact from Apicurio to produce client SDKs in many languages without leaving the agent's tool chain
GitLab API
Alternative source-control surface for schema files referenced by Apicurio
Choose GitLab when the team uses GitLab pipelines to validate schemas before pushing them to Apicurio
Specific to using Apicurio Registry API [v2] API through Jentic.
What authentication does the Apicurio Registry API [v2] use?
The reference Apicurio Registry v2 OpenAPI spec does not declare a security scheme; production deployments typically front the registry with Keycloak or another OIDC provider, in which case calls require a bearer token. Through Jentic, any bearer token configured for your registry deployment is stored encrypted and injected at execution time.
Can I register a new Avro schema with this API?
Yes. POST the Avro JSON to /groups/{groupId}/artifacts with the X-Registry-ArtifactType header set to AVRO. Subsequent versions go to /groups/{groupId}/artifacts/{artifactId}/versions, and global ID lookup uses /ids/globalIds/{globalId} which is what Kafka serializers call at runtime.
How do I enforce backward compatibility on a schema with the Apicurio Registry API [v2]?
POST to /groups/{groupId}/artifacts/{artifactId}/rules with body {"type":"COMPATIBILITY","config":"BACKWARD"}. New versions that violate the rule are rejected. You can also set a global rule via /admin/rules so it applies registry-wide when an artifact has no specific rule.
What artifact types does the Apicurio Registry API [v2] support?
Apache Avro, AsyncAPI, Google Protocol Buffers, GraphQL schema, JSON Schema, Kafka Connect schema, OpenAPI, WSDL, and XSD. Call /admin/artifactTypes to enumerate the types accepted by your registry instance.
How do I search for a schema in the Apicurio Registry API [v2] through Jentic?
Search Jentic for 'search artifacts in apicurio registry', load the /search/artifacts schema, and execute with parameters like name, labels, or group. The returned list of SearchedArtifact entries gives you globalIds you can fetch via /ids/globalIds/{globalId}.
Is the Apicurio Registry free?
Apicurio Registry is open source under the Apache 2.0 licence and free to self-host. Red Hat sells a supported distribution as Service Registry on OpenShift; the API surface is the same in both.
/admin/export
Export the full registry contents
/admin/import
Import a registry export back into a registry