// Do not edit directly!
// This file was generated by camel-quarkus-maven-plugin:update-extension-doc-page
= Kafka
:page-aliases: extensions/kafka.adoc
:linkattrs:
:cq-artifact-id: camel-quarkus-kafka
:cq-native-supported: true
:cq-status: Stable
:cq-status-deprecation: Stable
:cq-description: Sent and receive messages to/from an Apache Kafka broker.
:cq-deprecated: false
:cq-jvm-since: 1.0.0
:cq-native-since: 1.0.0

[.badges]
[.badge-key]##JVM since##[.badge-supported]##1.0.0## [.badge-key]##Native since##[.badge-supported]##1.0.0##

Sent and receive messages to/from an Apache Kafka broker.

== What's inside

* xref:{cq-camel-components}::kafka-component.adoc[Kafka component], URI syntax: `kafka:topic`

Please refer to the above link for usage and configuration details.

== Maven coordinates

https://code.quarkus.io/?extension-search=camel-quarkus-kafka[Create a new project with this extension on code.quarkus.io, window="_blank"]

Or add the coordinates to your existing project:

[source,xml]
----
<dependency>
    <groupId>org.apache.camel.quarkus</groupId>
    <artifactId>camel-quarkus-kafka</artifactId>
</dependency>
----

Check the xref:user-guide/index.adoc[User guide] for more information about writing Camel Quarkus applications.

== Usage

=== Quarkus Kafka Dev Services

Camel Quarkus Kafka can take advantage of https://quarkus.io/guides/kafka-dev-services[Quarkus Kafka Dev services] to simplify development and testing with a local containerized Kafka broker.

Kafka Dev Services is enabled by default in dev & test mode.
The Camel Kafka component is automatically configured so that the `brokers` component option is set to point at the local containerized Kafka broker.
Meaning that there's no need to configure this option yourself.

This functionality can be disabled with the configuration property `quarkus.kafka.devservices.enabled=false`.


== Additional Camel Quarkus configuration

[width="100%",cols="80,5,15",options="header"]
|===
| Configuration property | Type | Default


| [[quarkus.camel.kafka.kubernetes-service-binding.merge-configuration]]`link:#quarkus.camel.kafka.kubernetes-service-binding.merge-configuration[quarkus.camel.kafka.kubernetes-service-binding.merge-configuration]`

If `true` then any Kafka configuration properties discovered by the Quarkus Kubernetes Service Binding extension (if configured) will be merged with those set via Camel Kafka component or endpoint options. If `false` then any Kafka configuration properties discovered by the Quarkus Kubernetes Service Binding extension are ignored, and all of the Kafka component configuration is driven by Camel.
| `boolean`
| `true`
|===

[.configuration-legend]
icon:lock[title=Fixed at build time] Configuration property fixed at build time. All other configuration properties are overridable at runtime.

