Compatibility Apicurio Confluent-Kafka Python libraries. #3330
-
Hello. I am noob developing with python and I am not sure if it is possible what I am trying to do. I thought that Apicurio Registry was compatible with Confluent Schema Registry, in order to use confluent-kafka-python libraries. I have deployed an Apicurio registry (last release in memory image , in Kubernetes v1.22.3 minikube). Everything right till now, I am able to create, update or delete artifacts by the API rest or the UI. But I am not pretty sure if I can use confluent library python to develop a producer with Apicurio registry as Schema registry. I am trying to run and example from: https://github.com/confluentinc/confluent-kafka-python/blob/master/examples/json_producer.py
Does I missing some parameters? Maybe a group.id in apicurio named "subjects"...? |
Beta Was this translation helpful? Give feedback.
Replies: 7 comments
-
Thank you for reporting an issue! Pinging @jsenko to respond or triage. |
Beta Was this translation helpful? Give feedback.
-
The Confluent Python libraries are, as far as I know, built to work with the Confluent Schema Registry API specification. Apicurio implements a compatibility mode, but you will have to change the API path to It looks like it will only work for schemas which are in the default group, i.e where no group has been assigned in the Apicurio UI. |
Beta Was this translation helpful? Give feedback.
-
I have the same error with that URL...
On other hand... do you know any example code or a producer/consumer in python that use the Apicurio Registry Client Python?. Thanks. |
Beta Was this translation helpful? Give feedback.
-
Sorry for being late to the party. @juliantxo163 which Apicurio Registry version are you using? The About the Apicurio Registry Python client, I don't have any examples, but you should be able to use the ccompat API and the confluent libraries. |
Beta Was this translation helpful? Give feedback.
-
Hello @carlesarnal thank you very much, it works with the http://localhost:8082/apis/ccompat/v6 path!!. Do you have in mind any documentation where explain why this path, and the properties that are compatible with Confluent Schema registry and considerations for baring in mind if we use it? I am not able to find really good information about it. Thanks in advance!! |
Beta Was this translation helpful? Give feedback.
-
Hello, About why this path, there's no documentation on the why, it's just by design. We support a set of different APIs and that is the one for the confluent compatibility API. About the different options yes, you have more information here -> https://www.apicur.io/registry/docs/apicurio-registry/2.4.x/getting-started/assembly-configuring-the-registry.html#_category_ccompat. |
Beta Was this translation helpful? Give feedback.
The Confluent Python libraries are, as far as I know, built to work with the Confluent Schema Registry API specification.
Apicurio implements a compatibility mode, but you will have to change the API path to
http://localhost:8082/apis/ccompat/v7
.It looks like it will only work for schemas which are in the default group, i.e where no group has been assigned in the Apicurio UI.